/* Belview Wholesale theme layer. Brand: navy #152A4A, gold #D4A017, cream #F4EFE6. */
@font-face{font-family:'Poppins';font-style:normal;font-weight:400;font-display:swap;src:url('/assets/fonts/poppins-400.woff2') format('woff2')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:500;font-display:swap;src:url('/assets/fonts/poppins-500.woff2') format('woff2')}
@font-face{font-family:'Poppins';font-style:normal;font-weight:600;font-display:swap;src:url('/assets/fonts/poppins-600.woff2') format('woff2')}

:root{
  --ink:#152A4A;--ink-soft:#5a6578;--navy:#152A4A;--navy-deep:#0f1e36;--forest:#152A4A;--forest-deep:#0f1e36;
  --moss:#1e3a63;--leaf:#2a4d7a;--gold:#D4A017;--brass:#D4A017;--brass-light:#e3bf55;--cream:#f4efe6;
  --paper:#f7f6f3;--line:#e2e0db;--ok:#2f6b4f;--warn:#9a6a12;--alert:#9b3b2e;
  --shadow:0 1px 2px rgba(15,30,54,.06),0 8px 24px rgba(15,30,54,.06);--radius:18px;
  --font:"Poppins",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;
}
body,h1,h2,h3,.serif,button,input,select,textarea{font-family:var(--font)}
body{background:var(--paper);color:var(--ink);-webkit-font-smoothing:antialiased}
h1,h2,h3{font-weight:600;letter-spacing:-.01em;color:var(--forest)}
a{color:var(--forest)}
:focus-visible{outline:3px solid var(--brass);outline-offset:2px;border-radius:4px}
/* brand mark */
.mark-slats span{background:var(--brass)!important}
.mark strong{color:var(--forest)}
.mark em{color:var(--brass);letter-spacing:.14em}
/* login */
.login-visual::after{background:linear-gradient(180deg,rgba(15,30,54,.15) 0%,rgba(15,30,54,.82) 75%)!important}
.login-visual-copy .eyebrow{color:var(--brass-light)}
.login-panel{background:var(--cream)}
/* forms */
.field label{font-size:.78rem;font-weight:600;letter-spacing:.04em;color:var(--ink-soft)}
.field input,.field select,.field textarea{border:1px solid #d6d3cc;border-radius:8px;background:#fff;min-height:44px;font-size:16px}
.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--forest);box-shadow:0 0 0 3px rgba(21,42,74,.15);outline:none}
.field input:invalid:not(:placeholder-shown){border-color:var(--alert)}
.error{background:#f7e4e0;color:var(--alert);border-radius:8px;padding:10px 12px}
/* buttons */
.btn{border-radius:8px;min-height:44px;font-weight:600;letter-spacing:0;transition:background .15s,box-shadow .15s}
.btn-primary{background:var(--forest);color:#fff;border-color:var(--forest)}
.btn-primary:hover{background:var(--forest-deep)}
.btn-brass{background:var(--brass);color:#1a1408;border-color:var(--brass)}
.btn-brass:hover{background:#b8890f}
.btn-ghost{background:#fff;color:var(--forest);border:1px solid #d6d3cc}
.btn-ghost:hover{border-color:var(--forest)}
.btn[disabled]{opacity:.55;cursor:not-allowed}
/* app chrome */
.topbar{background:var(--forest);border-bottom:0;color:#fff;position:sticky;top:0;z-index:20}
.topbar .mark strong,.topbar #who-name{color:#fff}
.topbar .mark em{color:var(--brass-light)}
.topbar .linkish{color:#e6e9ef}
.nav button{color:#e6e9ef;border-radius:6px;min-height:40px}
.nav button.active,.nav button:hover{background:rgba(255,255,255,.12)!important;color:#fff!important}
.nav-toggle{color:#fff!important;background:transparent!important;border:1px solid rgba(255,255,255,.45)!important}
.summary{background:var(--forest)!important;border-radius:var(--radius);color:#fff}
.summary h3,.summary .total{color:#fff}
.summary .muted,.summary .row-line{color:#d5dbe5!important;opacity:1}
.avatar{background:var(--brass);color:#152A4A}
.page-head h1{font-size:clamp(1.5rem,3vw,2rem)}
.page-head p{color:var(--ink-soft)}
.card,.stat,.pick-card,.product,.hw-card{border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);background:#fff}
.pick-card:hover,.pick-card.on{border-color:var(--forest);box-shadow:0 0 0 2px var(--forest)}
.stat span{color:var(--ink-soft);font-weight:600}
.stat strong{color:var(--forest);font-variant-numeric:tabular-nums}
table{font-variant-numeric:tabular-nums}
th{color:var(--ink-soft);font-size:.72rem;letter-spacing:.06em;background:#f3f1ec}
td{border-color:var(--line)}
.click-row:hover td{background:#f3f1ec}
.badge{border-radius:999px;font-weight:600}
.badge-draft{background:#eeebe4;color:#4a4f5a}
.badge-sent{background:#e3e8f0;color:var(--forest)}
.badge-ordered,.badge-accepted,.badge-production{background:#f3e7d2;color:#7a5a24}
.badge-shipped{background:#dfe9f0;color:#24506e}
.badge-delivered{background:#dceadf;color:var(--ok)}
.badge-hold{background:#f0d7d2;color:var(--alert)}
.wizard-steps li.on .dot{background:var(--forest);color:#fff}
.wizard-steps li.done .dot{background:var(--brass);color:#152A4A}
.opt.on,.swatch.selected,.side-tog button.on{border-color:var(--forest)!important;box-shadow:0 0 0 2px var(--forest)}
.total{color:var(--forest)}
.toast{background:var(--forest);color:#fff;border-radius:8px}
.timeline li::before{background:var(--brass)}
.hw-mark{background:var(--forest);color:#fff}
code{background:#f3f1ec;border-radius:4px;padding:1px 5px}
/* mobile */
@media (max-width:720px){
  .page{padding-left:14px;padding-right:14px}
  .stats{grid-template-columns:repeat(2,1fr)!important}
  table{display:block;overflow-x:auto;-webkit-overflow-scrolling:touch;white-space:nowrap}
  .btn-row .btn{flex:1 1 auto}
  .sticky-actions{position:sticky;bottom:0;background:#fff;padding:10px 0;border-top:1px solid var(--line)}
}
@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}
.login-visual-copy h1,.login-visual-copy p{color:#fff}
.page-head input,.page-head select,#status-filter,#order-search,#dealer-filter,table input,table select{border:1px solid #d6d3cc;border-radius:8px;min-height:40px;padding:6px 10px;background:#fff;font-size:15px}
.quote-item{border:1px solid var(--line);border-radius:var(--radius);background:#fff;box-shadow:var(--shadow)}
/* contrast fixes (Oct 2026) */
.login-panel .mark em, .mark em{color:#7a5a0e}
.topbar .mark em{color:var(--brass-light)}
.btn-brass{background:#D4A017;border-color:#D4A017;color:#1a1408}
.btn-brass:hover{background:#b8890f}

/* brand polish */
.btn,.field input,.field select,.field textarea,.error,.toast{border-radius:12px}
.btn{border-radius:999px}
.eyebrow,.kicker{color:#7a5a0e;text-transform:uppercase;letter-spacing:.14em;font-weight:600;font-size:.74rem}
.login-visual-copy .eyebrow{color:var(--brass-light)}
.badge{padding:3px 10px}
/* drawings + prices (Oct 2026) */
.tv-draw{background:#fff;border-radius:14px;padding:8px;margin:10px 0 14px}
.tv-draw svg,.tv-mini svg,.tv-fig svg{width:100%;height:auto;display:block}
.tv-row{display:grid;grid-template-columns:150px 1fr;gap:14px;align-items:center;padding:12px 0;border-bottom:1px solid var(--line)}
.tv-mini{background:#fff;border:1px solid var(--line);border-radius:12px;padding:4px}
.tv-price{font-weight:600;color:var(--navy);margin-top:4px}
.tv-total{font-weight:600;color:var(--navy);font-size:1.1rem;margin-top:12px}
.tv-figs{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:12px}
.tv-fig{margin:0;background:#fff;border:1px solid var(--line);border-radius:14px;padding:8px}
.tv-fig figcaption{font-size:.85rem;color:var(--ink-soft);padding:4px}
.eyebrow-lite{color:#7a5a0e;text-transform:uppercase;letter-spacing:.12em;font-weight:600;font-size:.72rem}
.opening-name-card label{font-size:.95rem!important;color:var(--navy)!important}
.opening-name-card input{font-size:17px}
.summary .tv-draw{background:#fff}
@media(max-width:720px){.tv-row{grid-template-columns:1fr}}
.summary .btn-primary{background:#fff!important;color:#152A4A!important;border-color:#fff!important}
@media(min-width:900px){.configure .summary{position:sticky;top:76px;align-self:start}}
/* layout fixes 26 Oct 2026: no sideways scroll on account; mobile order buttons sit below the summary */
.grid-2>*,.apply-grid>*,.field{min-width:0}
.apply-grid input,.apply-grid select,.apply-grid textarea{width:100%;max-width:100%;min-width:0;box-sizing:border-box}
@media (max-width:900px){
  .summary .sticky-actions{position:static;margin:16px 0 0;padding:0;background:transparent;border-top:0;box-shadow:none;width:auto}
  .summary .sticky-actions .btn{width:100%;flex:1 1 100%}
}
/* dealer client quotes */
.cq-item{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;padding:12px 0;border-bottom:1px solid var(--line)}
.cq-item .btn-row{gap:8px}
.cq-form{margin-top:16px;padding-top:12px;border-top:2px solid var(--brass)}
.cq-form table input{min-height:36px}

/* Size rule messages (order form) */
.size-issues { background: #fbeaea; border: 1px solid #e3b4b4; color: #7a1f1f; border-radius: 10px; padding: 8px 12px; margin: 8px 0; font-size: 14px; }
.size-issues p { margin: 0 0 4px; }
.size-issues ul { margin: 0; padding-left: 18px; }
aside .size-issues { background: #fff3f3; }

/* Payments (admin order page + orders list) */
.pay-card .pay-row { border: 1px solid #e6dfd2; border-radius: 10px; padding: 10px 12px; margin: 8px 0; background: #fff; }
.pay-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 8px; }
.pay-grid label { display: flex; flex-direction: column; font-size: 12px; gap: 4px; min-width: 0; }
.pay-grid input { width: 100%; min-width: 0; box-sizing: border-box; }
.paid-yes { color: #1f6b3a; font-weight: 600; }
.paid-no { color: #8a5a00; }
.paid-cell { font-size: 12px; white-space: nowrap; }
@media (max-width: 640px) { .pay-grid { grid-template-columns: 1fr; } }
