/* =====================================================================
   CEVAGA — CUSTOMER ACCOUNT PAGES (shared)
   ===================================================================== */
:root{
  --gold:#F9AF2D; --gold-deep:#C6821A; --gold-wash:#FDF3E0;
  --ink:#1A1714; --graphite:#6E6862;
  --porcelain:#FAF7F2; --paper:#FFFFFF; --line:#E9E2D7;
  --green:#2E7D5B; --green-wash:#E8F3EE;
  --red:#B4342B;
  --maxw:1280px; --gutter:40px;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;background:var(--porcelain);color:var(--ink);font-family:'Schibsted Grotesk',system-ui,-apple-system,sans-serif;-webkit-font-smoothing:antialiased;}
img{display:block;max-width:100%;}
a{color:inherit;text-decoration:none;}
button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit;padding:0;}
h1,h2,h3{margin:0;font-family:'Instrument Serif',Georgia,serif;font-weight:400;line-height:1.1;letter-spacing:-.01em;}
p{margin:0;} ul{margin:0;padding:0;list-style:none;}
:focus-visible{outline:2px solid var(--gold-deep);outline-offset:3px;}
.wrap{max-width:var(--maxw);margin:0 auto;padding-left:var(--gutter);padding-right:var(--gutter);}
.label{font-family:'Space Mono',monospace;font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--graphite);}

/* ===== HEADER ===== */
header{position:sticky;top:0;z-index:60;background:rgba(250,247,242,.94);backdrop-filter:blur(12px);border-bottom:1px solid var(--line);}
.header-inner{max-width:var(--maxw);margin:0 auto;padding:12px var(--gutter);display:grid;grid-template-columns:auto 1fr auto;align-items:center;column-gap:32px;}
.brand img{height:52px;width:auto;max-width:200px;object-fit:contain;}
nav.main{display:flex;gap:22px;justify-self:center;}
nav.main a{font-size:.85rem;white-space:nowrap;padding:6px 0;position:relative;color:var(--graphite);}
nav.main a:hover{color:var(--ink);}
nav.main a.is-current{color:var(--gold-deep);font-weight:500;}
.head-actions{display:flex;align-items:center;gap:6px;justify-self:end;}
.ico{position:relative;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:999px;transition:background .2s;}
.ico:hover{background:#EFE8DC;}

/* ===== PAGE SHELL ===== */
.page-head{padding:44px 0 8px;text-align:center;}
.page-head h1{font-size:clamp(1.9rem,4vw,2.6rem);margin-bottom:6px;}
.page-head p{color:var(--graphite);font-size:.92rem;}
.page-body{padding:28px 0 80px;}
.card{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:28px;}
.narrow{max-width:480px;margin:0 auto;}

/* ===== FORMS ===== */
.field{margin-bottom:16px;}
.field label{display:block;font-family:'Space Mono',monospace;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--graphite);margin-bottom:6px;}
.field label .req{color:var(--red);}
.field input{width:100%;padding:12px 16px;border:1px solid var(--line);border-radius:999px;font-family:inherit;font-size:.87rem;background:var(--paper);color:var(--ink);transition:border-color .2s ease;}
.field input:focus{border-color:var(--gold);outline:none;}
.field input.error{border-color:var(--red);}
.form-msg{display:none;margin:14px 0 0;padding:11px 16px;border-radius:10px;font-size:.84rem;line-height:1.5;}
.form-msg.err{display:block;background:#FBEBEA;color:var(--red);border:1px solid #EFC7C4;}
.form-msg.ok{display:block;background:var(--green-wash);color:var(--green);border:1px solid #BFDCCF;}

/* ===== BUTTONS ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:9px;padding:14px 28px;font-size:.78rem;letter-spacing:.1em;text-transform:uppercase;border:1px solid var(--ink);border-radius:999px;transition:all .25s ease;white-space:nowrap;background:none;}
.btn-solid{background:var(--ink);color:#FAF7F2;}
.btn-solid:hover{background:var(--gold-deep);border-color:var(--gold-deep);}
.btn-gold{background:var(--gold);border-color:var(--gold);color:var(--ink);}
.btn-gold:hover{background:var(--gold-deep);border-color:var(--gold-deep);color:#fff;}
.btn-line:hover{background:var(--ink);color:#FAF7F2;}
.btn[disabled]{opacity:.55;pointer-events:none;}
.btn-block{width:100%;}
.alt-links{margin-top:18px;text-align:center;font-size:.84rem;color:var(--graphite);line-height:1.9;}
.alt-links a{color:var(--gold-deep);border-bottom:1px solid var(--gold);}

/* ===== DASHBOARD ===== */
.dash-grid{display:grid;grid-template-columns:280px 1fr;gap:28px;align-items:start;}
.side-nav{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:14px;position:sticky;top:88px;}
.side-user{padding:12px 12px 16px;border-bottom:1px solid var(--line);margin-bottom:10px;}
.side-user .who{font-weight:600;font-size:.95rem;line-height:1.35;}
.side-user .mail{font-size:.78rem;color:var(--graphite);word-break:break-all;}
.side-nav a{display:flex;align-items:center;gap:11px;padding:11px 12px;border-radius:8px;font-size:.88rem;color:var(--graphite);transition:all .15s;}
.side-nav a svg{flex:none;}
.side-nav a:hover{background:var(--gold-wash);color:var(--ink);}
.side-nav a.is-current{background:var(--gold-wash);color:var(--gold-deep);font-weight:600;}
.stat-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:24px;}
.stat{background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:18px 20px;}
.stat .n{font-family:'Space Mono',monospace;font-size:1.5rem;}
.stat .t{font-size:.72rem;color:var(--graphite);margin-top:3px;}

/* ===== ORDER LIST ===== */
.order-row{display:flex;align-items:center;gap:18px;background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:16px 20px;margin-bottom:12px;transition:border-color .2s;}
.order-row:hover{border-color:var(--gold);}
.order-thumbs{display:flex;flex:none;}
.order-thumbs img{width:46px;height:46px;object-fit:cover;border-radius:3px;background:#EFE9DE;border:2px solid var(--paper);margin-left:-14px;}
.order-thumbs img:first-child{margin-left:0;}
.order-meta{flex:1;min-width:0;}
.order-ref{font-family:'Space Mono',monospace;font-size:.8rem;font-weight:700;}
.order-sub{font-size:.76rem;color:var(--graphite);margin-top:3px;}
.order-amt{font-family:'Space Mono',monospace;font-size:.86rem;flex:none;text-align:right;}
.badge{display:inline-flex;align-items:center;gap:6px;font-family:'Space Mono',monospace;font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;padding:5px 11px;border-radius:999px;border:1px solid;flex:none;}
.badge .dot{width:7px;height:7px;border-radius:999px;background:currentColor;}
.st-created{color:var(--gold-deep);border-color:var(--gold);background:var(--gold-wash);}
.st-paid{color:var(--green);border-color:#BFDCCF;background:var(--green-wash);}
.st-shipped{color:#1D5FA8;border-color:#C3D9F0;background:#EBF3FC;}
.st-delivered{color:var(--green);border-color:#BFDCCF;background:var(--green-wash);}
.st-failed,.st-cancelled{color:var(--red);border-color:#EFC7C4;background:#FBEBEA;}
.empty{text-align:center;padding:48px 16px;color:var(--graphite);font-size:.9rem;}
.empty a{color:var(--gold-deep);border-bottom:1px solid var(--gold);}

/* ===== ORDER DETAILS / TRACKING ===== */
.detail-grid{display:grid;grid-template-columns:1fr 340px;gap:28px;align-items:start;}
.timeline{margin:18px 0 4px;}
.tl-step{display:flex;gap:14px;position:relative;padding-bottom:26px;}
.tl-step:last-child{padding-bottom:0;}
.tl-step::before{content:"";position:absolute;left:13px;top:30px;bottom:2px;width:2px;background:var(--line);}
.tl-step:last-child::before{display:none;}
.tl-dot{width:28px;height:28px;border-radius:999px;border:2px solid var(--line);background:var(--paper);flex:none;display:flex;align-items:center;justify-content:center;font-family:'Space Mono',monospace;font-size:.66rem;color:var(--graphite);z-index:1;}
.tl-step.done .tl-dot{background:var(--green);border-color:var(--green);color:#fff;}
.tl-step.now .tl-dot{background:var(--gold);border-color:var(--gold);color:var(--ink);}
.tl-body h4{margin:3px 0 2px;font-family:'Schibsted Grotesk',sans-serif;font-size:.88rem;font-weight:600;}
.tl-body p{font-size:.78rem;color:var(--graphite);line-height:1.5;}
.sum-item{display:flex;gap:12px;padding:11px 0;border-bottom:1px solid var(--line);align-items:center;}
.sum-item:last-child{border-bottom:none;}
.sum-item img{width:50px;height:50px;object-fit:cover;border-radius:3px;background:#EFE9DE;flex:none;}
.sum-item .nm{flex:1;font-size:.83rem;line-height:1.4;min-width:0;}
.sum-item .qt{font-family:'Space Mono',monospace;font-size:.64rem;color:var(--graphite);margin-top:2px;}
.sum-item .pr{font-family:'Space Mono',monospace;font-size:.82rem;flex:none;}
.sum-total{display:flex;justify-content:space-between;padding:14px 0 0;margin-top:6px;border-top:2px solid var(--ink);font-family:'Space Mono',monospace;font-size:.95rem;}
.kv{display:flex;justify-content:space-between;gap:14px;font-size:.82rem;padding:7px 0;border-bottom:1px solid var(--line);}
.kv:last-child{border-bottom:none;}
.kv .k{color:var(--graphite);flex:none;}
.kv .v{text-align:right;font-family:'Space Mono',monospace;font-size:.78rem;}
.track-form{display:grid;grid-template-columns:1fr 1fr auto;gap:10px;align-items:end;}
.track-form .field{margin-bottom:0;}

/* ===== FOOTER ===== */
footer{background:var(--porcelain);border-top:1px solid var(--line);}
.foot-bot{max-width:var(--maxw);margin:0 auto;padding:20px var(--gutter);display:flex;justify-content:space-between;align-items:center;gap:14px;flex-wrap:wrap;font-family:'Space Mono',monospace;font-size:.64rem;letter-spacing:.06em;color:var(--graphite);}

/* ===== RESPONSIVE ===== */
@media (max-width:1024px){
  nav.main{display:none;}
  .dash-grid{grid-template-columns:1fr;}
  .side-nav{position:static;display:flex;flex-wrap:wrap;gap:4px;}
  .side-user{width:100%;border-bottom:1px solid var(--line);}
  .detail-grid{grid-template-columns:1fr;}
}
@media (max-width:640px){
  :root{--gutter:20px;}
  .brand img{height:42px;}
  .card{padding:20px 16px;}
  .stat-cards{grid-template-columns:1fr 1fr;}
  .order-row{flex-wrap:wrap;}
  .track-form{grid-template-columns:1fr;}
}
@media (prefers-reduced-motion:reduce){*{transition:none !important;animation:none !important;}html{scroll-behavior:auto;}}

/* ===== CONTENT PAGES ===== */
.prose{max-width:760px;margin:0 auto;background:var(--paper);border:1px solid var(--line);border-radius:4px;padding:36px 40px;}
.prose h2{font-size:1.35rem;margin:26px 0 10px;}
.prose h2:first-child{margin-top:0;}
.prose h3{font-family:'Schibsted Grotesk',sans-serif;font-size:.98rem;font-weight:600;margin:18px 0 6px;}
.prose p,.prose li{font-size:.9rem;line-height:1.75;color:#4A453F;}
.prose ul,.prose ol{margin:8px 0 14px 22px;list-style:disc;}
.prose ol{list-style:decimal;}
.prose li{margin-bottom:6px;}
.prose strong{color:var(--ink);}
.prose a{color:var(--gold-deep);border-bottom:1px solid var(--gold);}
.prose .updated{font-family:'Space Mono',monospace;font-size:.64rem;letter-spacing:.08em;text-transform:uppercase;color:var(--graphite);border-top:1px solid var(--line);padding-top:14px;margin-top:26px;display:block;}

/* FAQ accordion */
.faq-list{max-width:760px;margin:0 auto;}
.faq-item{background:var(--paper);border:1px solid var(--line);border-radius:4px;margin-bottom:10px;}
.faq-item summary{padding:17px 20px;cursor:pointer;font-size:.92rem;font-weight:500;list-style:none;display:flex;justify-content:space-between;align-items:center;gap:12px;transition:background .15s;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";font-family:'Space Mono',monospace;color:var(--gold-deep);font-size:1.05rem;flex:none;}
.faq-item[open] summary::after{content:"\2013";}
.faq-item summary:hover{background:var(--gold-wash);}
.faq-item .a{padding:0 20px 18px;font-size:.88rem;line-height:1.7;color:var(--graphite);}

/* Contact */
.contact-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:24px;max-width:920px;margin:0 auto;align-items:start;}
.c-line{display:flex;gap:13px;align-items:flex-start;padding:11px 0;border-bottom:1px solid var(--line);font-size:.88rem;}
.c-line:last-child{border-bottom:none;}
.c-line svg{flex:none;margin-top:2px;color:var(--gold-deep);}
.c-line .k{font-family:'Space Mono',monospace;font-size:.6rem;letter-spacing:.1em;text-transform:uppercase;color:var(--graphite);display:block;margin-bottom:2px;}
.c-line a{border-bottom:1px solid var(--gold);}
@media (max-width:800px){.contact-grid{grid-template-columns:1fr;}.prose{padding:24px 20px;}}
