:root{
  --account-green:#2f8f21;
  --account-green-dark:#174d16;
  --account-soft:#f2f8ee;
  --account-line:#dbe9d5;
  --account-blue:#eaf2ff;
}
.account-auth-page{min-height:100vh;margin:0;display:grid;place-items:center;padding:28px;background:#bccbb7;position:relative;overflow-x:hidden;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;color:#173b17}
.account-auth-page::before{content:"";position:fixed;inset:-30px;background:linear-gradient(rgba(22,55,22,.18),rgba(22,55,22,.35)),var(--account-bg-image) center/cover no-repeat;filter:blur(9px);transform:scale(1.05);z-index:-2}
.account-auth-page::after{content:"";position:fixed;inset:0;background:linear-gradient(135deg,rgba(235,244,231,.76),rgba(23,77,22,.22));z-index:-1}
.account-dialog{width:min(560px,100%);border:1px solid rgba(255,255,255,.74);border-radius:38px;background:rgba(255,255,255,.97);box-shadow:0 34px 80px rgba(20,55,20,.28);overflow:hidden}
.account-dialog__header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:32px 38px 24px;border-bottom:1px solid #edf2eb}
.account-dialog__title{display:flex;align-items:flex-start;gap:16px}
.account-dialog__icon{display:grid;place-items:center;flex:0 0 auto;width:56px;height:56px;border-radius:17px;background:linear-gradient(145deg,#238118,#3e9c2d);color:#fff;box-shadow:0 12px 22px rgba(47,143,33,.24)}
.account-dialog__icon svg{width:27px;height:27px}
.account-dialog__eyebrow{margin:0 0 6px;color:#4c9f37;font-size:12px;font-weight:900;letter-spacing:.18em;text-transform:uppercase}
.account-dialog h1{margin:0;color:#174516;font-size:29px;line-height:1.12;letter-spacing:-.035em}
.account-dialog__intro{margin:16px 0 0;color:#748091;font-size:16px;line-height:1.55}
.account-close{display:grid;place-items:center;flex:0 0 auto;width:50px;height:50px;border:1px solid var(--account-line);border-radius:50%;background:#fff;color:#2f8424;box-shadow:0 5px 14px rgba(32,74,28,.09)}
.account-close svg{width:21px;height:21px}
.account-dialog__body{padding:28px 38px 34px}
.account-google-wrap{min-height:73px}
.account-google-button,.account-google-placeholder{display:flex;align-items:center;justify-content:center;gap:14px;width:100%;min-height:73px;border:1px solid var(--account-line);border-radius:19px;background:#fff;color:#245c1f;font-size:16px;font-weight:850;box-shadow:0 5px 12px rgba(24,68,22,.09)}
.account-google-placeholder{cursor:pointer}
.account-google-placeholder:hover{border-color:#a9cda0;background:#fbfef9}
.account-google-g{display:grid;place-items:center;width:42px;height:42px;border:1px solid var(--account-line);border-radius:50%;font-size:18px;font-weight:900;color:#4285f4;background:#fff}
.account-google-note{margin:10px 0 0;color:#8a94a4;font-size:12px;text-align:center}
.account-divider{display:flex;align-items:center;gap:15px;margin:24px 0;color:#9aa3b1;font-size:12px;font-weight:850;letter-spacing:.08em;text-transform:uppercase}
.account-divider::before,.account-divider::after{content:"";height:1px;flex:1;background:#e7ece5}
.account-form{display:grid;gap:18px}
.account-field{display:grid;gap:8px}
.account-field label{color:#1e4a1c;font-size:15px;font-weight:850}
.account-field input,.account-field textarea,.account-field select{width:100%;border:1px solid var(--account-line);border-radius:18px;background:var(--account-blue);color:#17232f;outline:none;transition:.18s}
.account-field input,.account-field select{height:58px;padding:0 20px}
.account-field textarea{min-height:100px;padding:16px 20px;resize:vertical}
.account-field input:focus,.account-field textarea:focus,.account-field select:focus{border-color:#74b867;box-shadow:0 0 0 4px rgba(47,143,33,.12);background:#fff}
.account-field small{color:#8893a2;font-size:12px}
.account-password{position:relative}
.account-password input{padding-right:58px}
.account-password button{position:absolute;right:10px;top:50%;transform:translateY(-50%);display:grid;place-items:center;width:40px;height:40px;border:0;border-radius:12px;background:transparent;color:#5c6c7a}
.account-password button svg{width:20px;height:20px;fill:none;stroke:currentColor;stroke-width:1.8}
.account-button{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:55px;padding:0 25px;border:1px solid transparent;border-radius:999px;font-size:16px;font-weight:900;cursor:pointer;text-decoration:none}
.account-button--primary{background:linear-gradient(135deg,#238118,#4ca337);color:#fff;box-shadow:0 13px 24px rgba(47,143,33,.22)}
.account-button--primary:hover{filter:brightness(.97);transform:translateY(-1px)}
.account-button--secondary{border-color:var(--account-line);background:#fff;color:#25631f}
.account-submit{width:100%}
.account-switch{margin:20px 0 0;text-align:center;color:#748091;font-size:15px}
.account-switch a{color:#2f8f21;font-weight:900}
.account-alert{margin-bottom:16px;padding:13px 15px;border-radius:14px;font-size:13px;line-height:1.5}
.account-alert--error{background:#fff0ee;color:#a02a20;border:1px solid #ffd1cc}
.account-alert--success{background:#eef9ed;color:#25631f;border:1px solid #cde9c8}
.account-check{display:flex;align-items:flex-start;gap:10px;color:#65707f;font-size:13px;line-height:1.5}
.account-check input{margin-top:3px;accent-color:var(--account-green)}
.account-check a{color:var(--account-green-dark);font-weight:800}

.customer-shell{padding:46px 0 78px;background:linear-gradient(180deg,#fbfdf9 0,#fff 36%)}
.customer-heading{display:flex;align-items:end;justify-content:space-between;gap:22px;margin-bottom:25px}
.customer-heading h1{margin:5px 0 0;font-size:clamp(34px,4vw,48px);letter-spacing:-.045em}
.customer-heading p{margin:8px 0 0;color:#667085}
.customer-avatar{display:grid;place-items:center;width:56px;height:56px;border-radius:18px;background:linear-gradient(145deg,#238118,#53a83c);color:#fff;font-size:18px;font-weight:900;box-shadow:0 14px 24px rgba(47,143,33,.18)}
.customer-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:24px;align-items:start}
.customer-sidebar,.customer-card{border:1px solid #e2eadf;border-radius:24px;background:#fff;box-shadow:0 14px 35px rgba(35,73,31,.07)}
.customer-sidebar{position:sticky;top:112px;padding:18px}
.customer-profile-mini{display:flex;align-items:center;gap:12px;padding:9px 8px 17px;border-bottom:1px solid #edf1eb}
.customer-profile-mini strong{display:block;font-size:14px}.customer-profile-mini small{display:block;color:#7b8794;font-size:12px;margin-top:2px;word-break:break-word}
.customer-nav{display:grid;gap:5px;padding-top:12px}.customer-nav a{display:flex;align-items:center;gap:10px;padding:11px 12px;border-radius:13px;color:#485568;font-size:13px;font-weight:750}.customer-nav a:hover,.customer-nav a.is-active{background:#eef7eb;color:#24651d}.customer-nav a.is-danger{color:#a6382d}
.customer-main{display:grid;gap:20px}.customer-card{padding:24px}.customer-card h2{margin:0 0 5px;font-size:21px}.customer-card__intro{margin:0 0 20px;color:#7a8594;font-size:13px}
.customer-stat-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.customer-stat{padding:18px;border:1px solid #e6ede3;border-radius:18px;background:linear-gradient(145deg,#fbfef9,#f1f8ee)}.customer-stat small{display:block;color:#748091;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.08em}.customer-stat strong{display:block;margin-top:6px;color:#1d4a1b;font-size:24px}
.customer-order-list{display:grid;gap:10px}.customer-order{display:grid;grid-template-columns:minmax(0,1.2fr) .8fr .7fr auto;align-items:center;gap:14px;padding:15px;border:1px solid #e7ede4;border-radius:16px}.customer-order strong{display:block;font-size:13px}.customer-order small{display:block;color:#7b8794;font-size:11px;margin-top:3px}.customer-status{display:inline-flex;width:max-content;padding:5px 9px;border-radius:999px;background:#fff5df;color:#8a5900;font-size:10px;font-weight:850}.customer-status--done{background:#eaf7e8;color:#25631f}.customer-empty{padding:34px 20px;border:1px dashed #d7e2d3;border-radius:18px;text-align:center;color:#748091}.customer-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.customer-form-grid .account-field--full{grid-column:1/-1}.customer-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:20px}
.checkout-account-prompt{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-bottom:18px;padding:14px 16px;border:1px solid #dce9d7;border-radius:16px;background:#f5faf2}.checkout-account-prompt strong{display:block;font-size:13px}.checkout-account-prompt small{display:block;margin-top:3px;color:#748091}.checkout-account-prompt a{white-space:nowrap;color:#2f8124;font-size:13px;font-weight:850}

@media(max-width:760px){.account-auth-page{padding:12px}.account-dialog{border-radius:29px}.account-dialog__header{padding:24px 22px 20px}.account-dialog__body{padding:22px}.account-dialog__icon{width:50px;height:50px}.account-dialog h1{font-size:25px}.account-dialog__intro{font-size:14px}.customer-grid{grid-template-columns:1fr}.customer-sidebar{position:static}.customer-stat-grid{grid-template-columns:1fr}.customer-order{grid-template-columns:1fr 1fr}.customer-form-grid{grid-template-columns:1fr}.customer-form-grid .account-field--full{grid-column:auto}.customer-heading{align-items:flex-start;flex-direction:column}.checkout-account-prompt{align-items:flex-start;flex-direction:column}}
.account-dialog__icon--logo{overflow:hidden;background:linear-gradient(145deg,#fff3df,#ffdca5);border-color:#f2d0ae}.account-dialog__icon--logo img{width:48px;height:48px;object-fit:contain}.account-dialog__eyebrow{color:#d3341b}.account-button--primary{background:linear-gradient(135deg,#ef2315,#ff8615);box-shadow:0 12px 26px rgba(239,35,21,.23)}.account-button--primary:hover{background:linear-gradient(135deg,#d91d12,#ff8615)}
