:root{
  --green-950:#0b1d13;
  --green-900:#0f2418;
  --green-800:#173123;
  --green-700:#204a31;
  --green-600:#2f6a44;
  --gold-600:#b97d1f;
  --gold-500:#dca63f;
  --gold-300:#f4d68d;
  --maroon:#7c1c1c;
  --rose:#b5455f;
  --blue:#356ca5;
  --cream:#fbf4e4;
  --cream-2:#f4e7cd;
  --paper:#fffdf8;
  --white:#fff;
  --ink:#2a1c10;
  --muted:#6f5b48;
  --line:rgba(42,28,16,.13);
  --shadow:0 14px 40px rgba(42,28,16,.12);
  --font-display:"Fraunces",Georgia,serif;
  --font-body:"Poppins",system-ui,-apple-system,"Segoe UI",sans-serif;
}

*,*::before,*::after{box-sizing:border-box}
html{min-width:320px;background:var(--cream);scroll-behavior:smooth}
body{min-width:320px;min-height:100vh;margin:0;background:var(--cream);color:var(--ink);font-family:var(--font-body);line-height:1.5;-webkit-font-smoothing:antialiased}
body,button,input,textarea{letter-spacing:0}
button,input,textarea{font:inherit}
button{border:0;background:none;color:inherit;cursor:pointer}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
h1,h2,h3,p{margin:0}
h1,h2,h3{font-family:var(--font-display);line-height:1.15}
svg{display:block}
:focus-visible{outline:3px solid rgba(220,166,63,.45);outline-offset:2px}

.account-sprite{position:absolute;overflow:hidden}
.account-header{position:sticky;top:0;z-index:20;border-bottom:1px solid var(--line);background:rgba(255,253,248,.96);backdrop-filter:blur(12px)}
.account-header__inner{width:min(1200px,100%);height:74px;margin:0 auto;padding:0 24px;display:flex;align-items:center;gap:30px}
.account-brand{display:flex;align-items:center;gap:11px;min-width:0}
.account-brand__mark{width:42px;height:42px;display:grid;place-items:center;flex:0 0 auto;border-radius:8px;background:var(--green-800);color:var(--gold-500);box-shadow:inset 0 0 0 1px rgba(244,214,141,.24)}
.account-brand__mark svg{width:34px;height:34px}
.account-brand__copy{display:flex;min-width:0;flex-direction:column;line-height:1.05}
.account-brand__copy b{color:var(--maroon);font-family:var(--font-display);font-size:1.25rem}
.account-brand__copy small{margin-top:3px;color:var(--green-600);font-size:.57rem;font-weight:600;text-transform:uppercase;white-space:nowrap}
.account-header__nav{display:flex;align-items:center;gap:25px;margin-left:auto}
.account-header__nav a{padding:8px 0;color:var(--muted);font-size:.82rem;font-weight:600}
.account-header__nav a:hover{color:var(--green-700)}
.account-header__back{min-height:40px;display:inline-flex;align-items:center;gap:8px;padding:9px 14px;border:1px solid var(--line);border-radius:8px;background:var(--white);font-size:.78rem;font-weight:700;white-space:nowrap;transition:border-color .2s,background .2s,transform .2s}
.account-header__back:hover{transform:translateY(-1px);border-color:rgba(32,74,49,.35);background:#f7fbf7}
.account-header__back span{font-size:1.05rem}

.account-main{min-height:calc(100vh - 138px)}
.account-page-loading{min-height:calc(100vh - 138px);display:grid;place-items:center;align-content:center;gap:10px;color:var(--muted);text-align:center}
.account-page-loading b{color:var(--ink);font-family:var(--font-display);font-size:1.1rem}
.account-page-loading small{font-size:.72rem}
.account-spinner{width:38px;height:38px;margin-bottom:5px;border:3px solid var(--cream-2);border-top-color:var(--green-600);border-radius:50%;animation:account-spin .8s linear infinite}
@keyframes account-spin{to{transform:rotate(360deg)}}

.account-footer{border-top:1px solid var(--line);background:var(--paper)}
.account-footer>div{width:min(1200px,100%);min-height:64px;margin:0 auto;padding:14px 24px;display:flex;align-items:center;gap:22px;color:var(--muted);font-size:.7rem}
.account-footer a{font-weight:600}.account-footer a:hover{color:var(--green-700)}
.account-footer span:first-child{margin-right:auto}

/* Signed-out access */
.account-auth-page{width:min(1080px,100%);margin:0 auto;padding:40px 24px 56px}
.account-breadcrumb{display:flex;align-items:center;gap:8px;margin-bottom:16px;color:var(--muted);font-size:.7rem;font-weight:600}
.account-breadcrumb svg{width:15px;height:15px;color:var(--green-600)}
.account-auth-shell{min-height:610px;display:grid;grid-template-columns:minmax(0,.88fr) minmax(420px,1.12fr);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white);box-shadow:var(--shadow)}
.account-auth-visual{position:relative;min-height:100%;overflow:hidden;background:var(--green-900);color:var(--white)}
.account-auth-visual img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.account-auth-visual::after{content:"";position:absolute;inset:0;background:rgba(8,24,16,.54)}
.account-auth-visual__copy{position:absolute;z-index:1;left:30px;right:30px;bottom:32px}
.account-auth-visual__copy span{display:inline-flex;margin-bottom:10px;padding:5px 8px;border:1px solid rgba(255,255,255,.35);border-radius:5px;background:rgba(15,36,24,.72);font-size:.61rem;font-weight:700;text-transform:uppercase}
.account-auth-visual__copy h1{max-width:340px;color:var(--white);font-size:2rem}
.account-auth-visual__copy p{max-width:340px;margin-top:9px;color:rgba(255,255,255,.83);font-size:.75rem;line-height:1.6}
.account-auth-pane{padding:36px 40px;background:var(--paper)}
.account-auth-pane__head>span{color:var(--green-600);font-size:.64rem;font-weight:700;text-transform:uppercase}
.account-auth-pane__head h2{margin-top:5px;font-size:1.8rem}
.account-auth-pane__head p{margin-top:7px;color:var(--muted);font-size:.75rem;line-height:1.55}
.account-auth-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin-top:24px;padding:4px;border-radius:8px;background:var(--cream)}
.account-auth-tabs button{min-height:42px;border-radius:6px;color:var(--muted);font-size:.76rem;font-weight:700}
.account-auth-tabs button.active{background:var(--white);color:var(--maroon);box-shadow:0 3px 10px rgba(42,28,16,.1)}

.account-form{display:flex;flex-direction:column;gap:14px;margin-top:22px}
.account-form__grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.account-form label{display:flex;min-width:0;flex-direction:column;gap:6px;color:var(--ink);font-size:.69rem;font-weight:700}
.account-form label>span{color:var(--muted);font-weight:500}
.account-form input,.account-form textarea{width:100%;min-height:45px;padding:10px 12px;border:1.5px solid var(--line);border-radius:7px;background:var(--white);color:var(--ink);font-size:.78rem;outline:0;transition:border-color .2s,box-shadow .2s,background .2s}
.account-form textarea{min-height:78px;resize:vertical;line-height:1.5}
.account-form input:focus,.account-form textarea:focus{border-color:var(--gold-600);box-shadow:0 0 0 3px rgba(220,166,63,.15)}
.account-form input[readonly]{background:#f2eee6;color:var(--muted)}
.account-form__password{display:flex!important;flex-direction:row!important;align-items:center;gap:8px!important;color:var(--muted)!important;font-weight:500!important}
.account-form__password input{width:17px;height:17px;min-height:0;padding:0;accent-color:var(--green-700)}
.account-form__error{min-height:0;color:var(--maroon);font-size:.72rem;line-height:1.45}
.account-form__fine{color:var(--muted);font-size:.62rem;line-height:1.5;text-align:center}
.account-form.busy{pointer-events:none;opacity:.65}
.account-primary{min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:11px 18px;border-radius:7px;background:var(--gold-500);color:#372300;font-size:.78rem;font-weight:800;box-shadow:0 8px 18px rgba(185,125,31,.23);transition:transform .2s,background .2s}
.account-primary:hover{transform:translateY(-1px);background:#e4af49}
.account-help{color:var(--maroon);font-size:.68rem;font-weight:600;text-align:center;text-decoration:underline;text-underline-offset:3px}
.account-switch{padding:5px;color:var(--green-700);font-size:.71rem;font-weight:700;text-align:center}
.account-turnstile:empty{display:none}
.account-service-error{margin-bottom:16px;padding:10px 12px;border-left:3px solid var(--maroon);background:#fff0ed;color:var(--maroon);font-size:.72rem}

/* Signed-in profile */
.account-identity{background:var(--green-800);color:var(--white)}
.account-identity__inner{width:min(1200px,100%);margin:0 auto;padding:30px 24px 28px}
.account-identity__top{display:flex;align-items:center;gap:16px}
.account-avatar{width:66px;height:66px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.2);border-radius:8px;background:var(--rose);color:var(--white);font-family:var(--font-display);font-size:1.45rem;font-weight:700;box-shadow:0 10px 24px rgba(0,0,0,.17)}
.account-identity__copy{min-width:0}
.account-identity__copy>span{display:block;color:var(--gold-300);font-size:.62rem;font-weight:700;text-transform:uppercase}
.account-identity__copy h1{margin-top:3px;color:var(--white);font-size:1.85rem}
.account-identity__copy p{margin-top:3px;color:rgba(255,255,255,.72);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-identity__actions{display:flex;gap:9px;margin-left:auto}
.account-identity__actions a,.account-identity__actions button{min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:9px 13px;border:1px solid rgba(255,255,255,.25);border-radius:7px;color:var(--white);font-size:.7rem;font-weight:700}
.account-identity__actions a{background:var(--gold-500);border-color:var(--gold-500);color:#372300}
.account-identity__actions button:hover{background:rgba(255,255,255,.08)}
.account-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:24px}
.account-metric{min-width:0;padding:13px 14px;border-left:3px solid var(--metric,var(--gold-500));border-radius:6px;background:rgba(255,255,255,.08)}
.account-metric:nth-child(2){--metric:#62bd8c}.account-metric:nth-child(3){--metric:#e57b93}.account-metric:nth-child(4){--metric:#7fafe0}
.account-metric__icon{width:25px;height:25px;display:grid;place-items:center;color:var(--metric,var(--gold-300))}
.account-metric__icon svg{width:17px;height:17px}
.account-metric b{display:block;margin-top:3px;color:var(--white);font-family:var(--font-display);font-size:1.15rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-metric b.metric-ref{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}
.account-metric small{display:block;margin-top:2px;color:rgba(255,255,255,.62);font-size:.58rem;text-transform:uppercase;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.account-workspace{width:min(1200px,100%);margin:0 auto;padding:28px 24px 50px;display:grid;grid-template-columns:230px minmax(0,1fr);gap:30px;align-items:start}
.account-nav{position:sticky;top:102px;padding-right:18px;border-right:1px solid var(--line)}
.account-nav__label{display:block;margin:0 10px 8px;color:var(--muted);font-size:.58rem;font-weight:700;text-transform:uppercase}
.account-nav button{width:100%;min-height:46px;display:grid;grid-template-columns:30px minmax(0,1fr) 16px;align-items:center;gap:8px;padding:8px 10px;border-left:3px solid transparent;border-radius:0 7px 7px 0;color:var(--muted);font-size:.74rem;font-weight:700;text-align:left}
.account-nav button svg{width:18px;height:18px}.account-nav button .nav-chevron{width:15px;height:15px;opacity:.45}
.account-nav button.active{border-left-color:var(--gold-600);background:#fff7e8;color:var(--maroon)}
.account-nav button:hover:not(.active){background:rgba(255,255,255,.65);color:var(--green-700)}
.account-nav__member{margin-top:20px;padding:14px 10px 0;border-top:1px solid var(--line);color:var(--muted);font-size:.62rem;line-height:1.55}
.account-nav__member b{display:block;color:var(--ink);font-size:.67rem}.account-nav__member a{display:inline-block;margin-top:8px;color:var(--green-700);font-weight:700}
.account-mobile-tabs{display:none}
.account-content{min-width:0}
.account-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:20px;padding-bottom:15px;border-bottom:1px solid var(--line)}
.account-section-head h2{font-size:1.45rem}.account-section-head p{margin-top:4px;color:var(--muted);font-size:.7rem}
.account-action{min-height:38px;display:inline-flex;align-items:center;gap:7px;padding:8px 11px;border:1px solid var(--line);border-radius:7px;background:var(--white);color:var(--green-700);font-size:.68rem;font-weight:700;white-space:nowrap}
.account-action:hover{border-color:rgba(32,74,49,.34);background:#f6fbf7}
.account-action span{font-size:1rem;line-height:1}

.account-overview-grid{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr);gap:14px}
.account-info{min-width:0;padding:17px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.account-info__head{display:flex;align-items:center;gap:10px;margin-bottom:14px}
.account-info__icon{width:38px;height:38px;display:grid;place-items:center;flex:0 0 auto;border-radius:7px;background:#fff2d8;color:var(--maroon)}
.account-info__icon.location{background:#e8f4ea;color:var(--green-700)}
.account-info__icon.heart{background:#fdebf0;color:var(--rose)}
.account-info__icon svg{width:19px;height:19px}
.account-info__head div{min-width:0}.account-info__head small{display:block;color:var(--muted);font-size:.58rem;text-transform:uppercase}.account-info__head b{display:block;margin-top:2px;font-size:.78rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.account-info__head button{margin-left:auto;padding:5px;color:var(--green-700);font-size:.65rem;font-weight:700}
.account-info__body{color:var(--muted);font-size:.7rem;line-height:1.6}
.account-info__body strong{display:block;color:var(--ink);font-size:.78rem;font-weight:600}
.account-info__body a{color:var(--green-700);font-weight:700}
.account-recent{margin-top:26px}
.account-subhead{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;margin-bottom:12px}
.account-subhead h3{font-size:1.08rem}.account-subhead p{margin-top:3px;color:var(--muted);font-size:.65rem}.account-subhead button{padding:5px;color:var(--green-700);font-size:.68rem;font-weight:700}

.account-orders{display:flex;flex-direction:column;gap:11px}
.account-order{overflow:hidden;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.account-order__head{display:flex;align-items:flex-start;justify-content:space-between;gap:15px;padding:14px 16px;border-bottom:1px solid var(--line);background:#fffaf0}
.account-order__ref{min-width:0;display:flex;flex-direction:column}.account-order__ref b{color:var(--maroon);font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.76rem}.account-order__ref span{margin-top:2px;color:var(--muted);font-size:.61rem}
.account-status{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;background:#fff1d3;color:#8b5a0f;font-size:.57rem;font-weight:800;text-transform:uppercase;white-space:nowrap}
.account-status.status-confirmed,.account-status.status-delivered{background:#e5f5e9;color:#276d47}.account-status.status-packed,.account-status.status-shipped{background:#e8f1fb;color:#356497}.account-status.status-cancelled{background:#fde8e8;color:#9b3434}
.account-order__body{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:18px;padding:14px 16px;align-items:center}
.account-order__items{min-width:0;display:flex;align-items:center;gap:10px}
.account-order__thumbs{display:flex;flex:0 0 auto}.account-order__thumb{width:42px;height:42px;margin-left:-7px;overflow:hidden;border:2px solid var(--white);border-radius:7px;background:var(--cream)}.account-order__thumb:first-child{margin-left:0}.account-order__thumb img{width:100%;height:100%;object-fit:cover}.account-order__thumb.fallback{display:grid;place-items:center;color:var(--gold-600)}.account-order__thumb.fallback svg{width:19px;height:19px}
.account-order__summary{min-width:0;color:var(--muted);font-size:.66rem;line-height:1.45}.account-order__summary b{display:block;color:var(--ink);font-size:.72rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.account-order__summary span{display:-webkit-box;margin-top:2px;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}
.account-order__total{text-align:right}.account-order__total small{display:block;color:var(--muted);font-size:.57rem;text-transform:uppercase}.account-order__total strong{display:block;margin-top:1px;font-family:var(--font-display);font-size:1rem}
.account-order__progress{display:grid;grid-template-columns:repeat(5,1fr);padding:0 16px 13px}
.account-progress-step{position:relative;padding-top:12px;color:#9e9387;font-size:.53rem;text-align:center}.account-progress-step::before{content:"";position:absolute;z-index:1;top:2px;left:50%;width:8px;height:8px;transform:translateX(-50%);border:2px solid var(--white);border-radius:50%;background:#d6cec5;box-shadow:0 0 0 1px #d6cec5}.account-progress-step::after{content:"";position:absolute;top:5px;left:-50%;width:100%;height:2px;background:#d6cec5}.account-progress-step:first-child::after{display:none}.account-progress-step.done{color:var(--green-700);font-weight:700}.account-progress-step.done::before,.account-progress-step.done::after{background:var(--green-600);box-shadow:0 0 0 1px var(--green-600)}
.account-empty{padding:42px 20px;border:1px dashed rgba(42,28,16,.22);border-radius:8px;background:rgba(255,255,255,.55);text-align:center}.account-empty svg{width:37px;height:37px;margin:0 auto;color:var(--gold-600)}.account-empty h3{margin-top:10px;font-size:1rem}.account-empty p{max-width:400px;margin:5px auto 0;color:var(--muted);font-size:.68rem;line-height:1.55}.account-empty a{min-height:39px;display:inline-flex;align-items:center;margin-top:14px;padding:8px 13px;border-radius:7px;background:var(--green-700);color:var(--white);font-size:.68rem;font-weight:700}

.account-details-layout{display:grid;grid-template-columns:minmax(0,1fr) 260px;gap:22px;align-items:start}
.account-profile-form{margin:0;padding:20px;border:1px solid var(--line);border-radius:8px;background:var(--white)}
.account-profile-form .account-form__grid{gap:14px}
.account-profile-form .account-primary{align-self:flex-start;min-width:160px}
.account-security{padding:18px;border-left:3px solid var(--blue);border-radius:0 8px 8px 0;background:#eef5fb}
.account-security svg{width:25px;height:25px;color:var(--blue)}
.account-security h3{margin-top:10px;font-size:.96rem}.account-security p{margin-top:6px;color:#4e6377;font-size:.65rem;line-height:1.55}.account-security button{margin-top:15px;color:var(--maroon);font-size:.68rem;font-weight:700}

.account-toast{position:fixed;z-index:50;right:20px;bottom:20px;max-width:min(360px,calc(100vw - 40px));padding:11px 14px;border-radius:7px;background:var(--green-900);color:var(--white);font-size:.72rem;font-weight:600;box-shadow:0 14px 35px rgba(15,36,24,.3);opacity:0;transform:translateY(15px);pointer-events:none;transition:opacity .25s,transform .25s}
.account-toast.show{opacity:1;transform:translateY(0)}

@media(max-width:900px){
  .account-header__nav{display:none}
  .account-auth-shell{grid-template-columns:minmax(280px,.8fr) minmax(400px,1.2fr)}
  .account-workspace{grid-template-columns:1fr;gap:18px}
  .account-nav{display:none}
  .account-mobile-tabs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px;padding:4px;border-radius:8px;background:var(--cream-2)}
  .account-mobile-tabs button{min-height:42px;border-radius:6px;color:var(--muted);font-size:.68rem;font-weight:700}
  .account-mobile-tabs button.active{background:var(--white);color:var(--maroon);box-shadow:0 3px 9px rgba(42,28,16,.09)}
  .account-details-layout{grid-template-columns:minmax(0,1fr) 230px}
}

@media(max-width:720px){
  .account-header__inner{height:66px;padding:0 16px}.account-brand__mark{width:38px;height:38px}.account-brand__mark svg{width:30px;height:30px}.account-brand__copy b{font-size:1.08rem}.account-brand__copy small{display:none}.account-header__back{padding:8px 10px}.account-header__back span{font-size:1rem}
  .account-main{min-height:calc(100vh - 126px)}
  .account-auth-page{padding:22px 14px 36px}.account-breadcrumb{margin-left:2px}
  .account-auth-shell{min-height:0;grid-template-columns:1fr}
  .account-auth-visual{min-height:178px}.account-auth-visual__copy{left:20px;right:20px;bottom:18px}.account-auth-visual__copy span{display:none}.account-auth-visual__copy h1{font-size:1.45rem}.account-auth-visual__copy p{margin-top:5px;font-size:.67rem}
  .account-auth-pane{padding:25px 20px}.account-auth-pane__head h2{font-size:1.5rem}.account-auth-tabs{margin-top:18px}.account-form{margin-top:18px}.account-form__grid{grid-template-columns:1fr;gap:14px}
  .account-identity__inner{padding:23px 16px 20px}.account-identity__top{align-items:flex-start}.account-avatar{width:56px;height:56px;font-size:1.2rem}.account-identity__copy h1{font-size:1.4rem}.account-identity__actions{margin-left:auto}.account-identity__actions button{display:none}.account-identity__actions a{min-height:36px;padding:7px 10px;font-size:.62rem}
  .account-metrics{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:20px}.account-metric{min-height:78px;padding:10px 11px}.account-metric b{font-size:1rem}
  .account-workspace{padding:18px 14px 38px}.account-section-head{margin-bottom:15px}.account-section-head h2{font-size:1.2rem}.account-section-head p{font-size:.64rem}
  .account-overview-grid{grid-template-columns:1fr}.account-info{padding:15px}
  .account-details-layout{grid-template-columns:1fr}.account-profile-form{padding:16px}.account-security{order:2}
  .account-order__body{grid-template-columns:1fr;gap:10px}.account-order__total{text-align:left;padding-left:52px}.account-order__progress{padding-left:10px;padding-right:10px}.account-progress-step{font-size:.48rem}
  .account-footer>div{min-height:60px;padding:12px 16px;gap:14px}.account-footer a{display:none}
}

@media(max-width:430px){
  .account-brand__copy b{font-size:1rem}.account-header__back{font-size:0;gap:0}.account-header__back span{font-size:1.12rem}
  .account-identity__top{display:grid;grid-template-columns:52px minmax(0,1fr)}.account-avatar{width:52px;height:52px}.account-identity__actions{grid-column:1/-1;width:100%;margin:3px 0 0}.account-identity__actions a{width:100%}
  .account-order__thumb:nth-child(n+3){display:none}.account-order__summary b{font-size:.68rem}
}

@media(prefers-reduced-motion:reduce){*,*::before,*::after{scroll-behavior:auto!important;animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}
