/* ============================================================
   VELMORA — Inquiry · Checkout · Account · Admin · Content
   ============================================================ */

.phead{text-align:center;padding:44px 0 30px;}
.phead__title{font-size:clamp(28px,3.4vw,42px);font-weight:400;margin-bottom:10px;}
.phead__sub{font-size:14.5px;color:var(--ink-70);max-width:660px;margin:0 auto;line-height:1.85;}

.card{background:#fff;border:1px solid var(--line);padding:28px 30px;}
.card--soft{background:var(--bg-soft);}
.card__title{font-family:var(--serif);font-size:21px;margin-bottom:7px;}
.card__sub{font-size:13.5px;color:var(--ink-70);margin-bottom:20px;line-height:1.75;}

/* ---------- Forms ---------- */
.field{margin-bottom:16px;}
.field label{display:block;font-size:11.5px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-70);margin-bottom:8px;}
.field label .req{color:var(--gold-dark);}
.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);background:#fff;
  padding:12px 14px;font-size:14px;transition:border-color .26s,box-shadow .26s;}
.field input:focus,.field select:focus,.field textarea:focus{outline:none;border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(197,168,128,.14);}
.field textarea{resize:vertical;min-height:130px;line-height:1.7;}
.field__hint{font-size:12px;color:var(--ink-55);margin-top:6px;line-height:1.65;}
.field__err{font-size:10.5px;color:var(--danger);margin-top:6px;display:none;}
.field.is-bad input,.field.is-bad textarea{border-color:var(--danger);}
.field.is-bad .field__err{display:block;}
.fgrid{display:grid;grid-template-columns:1fr 1fr;gap:0 16px;}
.fgrid--3{grid-template-columns:1fr 1fr 1fr;}
.checkline{display:flex;align-items:flex-start;gap:10px;font-size:13px;color:var(--ink-70);
  line-height:1.65;margin-bottom:12px;}
.checkline input{width:15px;height:15px;margin-top:2px;flex-shrink:0;accent-color:var(--gold);}
.checkline a{color:var(--gold-deep);text-decoration:underline;}

/* ---------- Inquiry ---------- */
/* minmax(0,…) on BOTH tracks: a bare `1fr 380px` gives each track an
   implicit min-width:auto, so long content pushed the sidebar past the
   viewport edge and the whole page scrolled sideways. */
.inq__grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,380px);
  gap:30px;align-items:start;}
.inq__summary{position:sticky;top:calc(var(--header-h) + 16px);}
.inq__pill-list{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:18px;min-height:26px;}
/* The whole summary panel was set in 9.5-13.5px and read as grey mush.
   Everything below is one to two steps larger and darker. (30 Jul 2026) */
.inq__summary .card__title{font-size:20px;}
.inq__summary .card__sub{font-size:13.5px;color:var(--ink-70);line-height:1.65;}
.inq__none{font-size:14px;color:var(--ink-70);font-style:italic;font-weight:500;}
.inq__count{font-size:15.5px;font-weight:700;color:var(--ink);padding:15px 0;
  border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft);margin-bottom:18px;}
.inq__count b{color:var(--gold-deep);font-size:21px;font-family:var(--serif);font-weight:600;}
.inq__note{font-size:13.5px;color:var(--ink-70);line-height:1.75;font-weight:500;}
.inq__maillabel{font-size:11.5px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-55);display:block;margin-bottom:7px;}
.inq__summary .footer__mail{font-size:14.5px;font-weight:700;}
.inq__pill{font-size:12.5px;font-weight:600;}
@media (max-width:700px){
  .inq__summary .card__title{font-size:21px;}
  .inq__summary .card__sub,.inq__note{font-size:15px;}
  .inq__none{font-size:15px;}
  .inq__count{font-size:16.5px;}
  .inq__count b{font-size:23px;}
  .inq__summary .footer__mail{font-size:15.5px;}
}

/* ---------- Checkout ---------- */
.co__grid{display:grid;grid-template-columns:1.25fr .95fr;gap:44px;align-items:start;
  padding:26px 0 76px;}
.co__panel{min-width:0;}
.co__side{position:sticky;top:calc(var(--header-h) + 16px);}
.express{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:18px;}
.express button{border:1px solid var(--line);background:#fff;padding:13px;display:grid;place-items:center;
  transition:all .28s var(--ease);border-radius:3px;}
.express button:hover{border-color:var(--ink);transform:translateY(-1px);box-shadow:var(--shadow-sm);}
.express svg{height:19px;width:auto;}
.divider{display:flex;align-items:center;gap:14px;margin:22px 0;color:var(--ink-40);font-size:10.5px;
  letter-spacing:.16em;text-transform:uppercase;}
.divider::before,.divider::after{content:'';flex:1;height:1px;background:var(--line);}
.step{font-family:var(--serif);font-size:18px;margin:26px 0 14px;display:flex;align-items:center;gap:11px;}
.step__n{width:23px;height:23px;border-radius:50%;background:var(--gold);color:#fff;font-size:11px;
  font-weight:700;display:grid;place-items:center;font-family:var(--sans);flex-shrink:0;}
.paymethods{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:16px;}
.paymethod{border:1px solid var(--line);padding:8px 12px;font-size:10px;font-weight:600;
  letter-spacing:.07em;color:var(--ink-55);background:#fff;transition:all .26s var(--ease);
  display:flex;align-items:center;gap:6px;}
.paymethod.is-on{border-color:var(--gold);background:var(--gold-wash);color:var(--gold-deep);}
.cardbrand{position:absolute;right:12px;top:34px;font-size:9px;font-weight:700;letter-spacing:.1em;
  color:var(--gold-deep);text-transform:uppercase;}
.field--card{position:relative;}
.osum{border:1px solid var(--line);background:#fff;}
.osum__head{padding:18px 22px;border-bottom:1px solid var(--line);display:flex;
  justify-content:space-between;align-items:center;}
.osum__head h2{font-size:18px;}
.osum__body{padding:18px 22px;max-height:330px;overflow-y:auto;}
.osum__foot{padding:18px 22px;border-top:1px solid var(--line);background:var(--bg-soft);}
.secure{display:flex;align-items:center;justify-content:center;gap:8px;font-size:10.5px;
  color:var(--ink-55);padding:14px 0 0;}
.secure svg{width:13px;height:13px;color:var(--ok);}
.trustbar{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:16px;
  padding-top:16px;border-top:1px solid var(--line);}
.trustbar span{font-size:9.5px;color:var(--ink-40);letter-spacing:.08em;display:flex;
  align-items:center;gap:5px;}
.trustbar svg{width:12px;height:12px;color:var(--gold);}

/* ---------- Account ---------- */
.acct__grid{display:grid;grid-template-columns:230px 1fr;gap:34px;align-items:start;padding:10px 0 76px;}
.acct__nav{border:1px solid var(--line);background:#fff;position:sticky;
  top:calc(var(--header-h) + 16px);overflow:hidden;}
.acct__navbtn{display:flex;align-items:center;gap:11px;width:100%;padding:13px 18px;font-size:12.5px;
  text-align:left;border-bottom:1px solid var(--line-soft);transition:all .26s var(--ease);color:var(--ink-70);}
.acct__navbtn:last-child{border-bottom:0;}
.acct__navbtn svg{width:15px;height:15px;stroke-width:1.6;flex-shrink:0;}
.acct__navbtn:hover{background:var(--gold-wash);color:var(--gold-deep);}
.acct__navbtn.is-on{background:var(--gold);color:#fff;}
.acct__pane{display:none;}
.acct__pane.is-on{display:block;animation:fadeUp .42s var(--ease);}
@keyframes fadeUp{from{opacity:0;transform:translateY(10px);}to{opacity:1;transform:none;}}
.emptybox{text-align:center;padding:52px 22px;border:1px dashed var(--line);background:var(--bg-soft);}
.emptybox svg{width:38px;height:38px;color:var(--line);margin:0 auto 14px;stroke-width:1;}
.emptybox p{font-size:13px;color:var(--ink-55);margin-bottom:18px;}
.gbtn{display:flex;align-items:center;justify-content:center;gap:11px;width:100%;border:1px solid var(--line);
  background:#fff;padding:13px;font-size:13px;font-weight:500;transition:all .28s var(--ease);}
.gbtn:hover{border-color:var(--ink-40);box-shadow:var(--shadow-sm);}
.gbtn svg{width:17px;height:17px;}
.otable{width:100%;border-collapse:collapse;font-size:12.5px;}
.otable th{text-align:left;font-size:9.5px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-40);padding:10px 12px;border-bottom:1px solid var(--line);}
.otable td{padding:13px 12px;border-bottom:1px solid var(--line-soft);}
.otable tr:hover td{background:var(--gold-wash);}
.badge{display:inline-block;padding:3px 9px;font-size:9px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;border-radius:2px;}
.badge--ok{background:rgba(46,125,91,.12);color:var(--ok);}
.badge--wait{background:var(--gold-tint);color:var(--gold-deep);}

/* ---------- Content / legal ---------- */
.prose{max-width:820px;margin:0 auto;padding:8px 0 80px;}
.prose h2{font-size:25px;margin:42px 0 14px;padding-top:14px;border-top:1px solid var(--line-soft);}
.prose h2:first-of-type{border-top:0;margin-top:16px;padding-top:0;}
.prose h3{font-size:18px;margin:26px 0 10px;}
.prose p{font-size:14px;line-height:1.92;color:var(--ink-70);margin-bottom:15px;}
.prose ul{margin:0 0 16px;padding-left:20px;list-style:disc;}
.prose li{font-size:14px;line-height:1.88;color:var(--ink-70);margin-bottom:8px;}
.prose strong{color:var(--ink);font-weight:600;}
.prose a{color:var(--gold-deep);text-decoration:underline;text-underline-offset:2px;}
.callout{border-left:3px solid var(--gold);background:var(--gold-wash);padding:18px 22px;margin:22px 0;}
.callout p{margin:0;font-size:13px;}
.callout--warn{border-left-color:var(--danger);background:rgba(192,57,43,.045);}
.toc{background:var(--bg-soft);border:1px solid var(--line);padding:20px 24px;margin-bottom:34px;}
.toc h2{font-size:13px!important;letter-spacing:.14em;text-transform:uppercase;font-family:var(--sans);
  margin:0 0 12px!important;border:0!important;padding:0!important;color:var(--ink-40);font-weight:700;}
.toc ol{margin:0;padding-left:18px;}
.toc li{font-size:12.5px;margin-bottom:6px;color:var(--ink-70);}
.toc a{color:var(--ink-70);text-decoration:none;}
.toc a:hover{color:var(--gold-deep);text-decoration:underline;}

/* 4Cs education */
.cgrid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:30px 0 10px;}
/* Was an inline style on about.html, which beat the mobile media query and
   forced three columns onto a 390px screen. */
.cgrid--3{grid-template-columns:repeat(3,minmax(0,1fr));}
.ccard{border:1px solid var(--line);padding:24px 26px;background:#fff;transition:all .34s var(--ease);}
.ccard:hover{border-color:var(--gold);box-shadow:var(--shadow-md);transform:translateY(-2px);}
.ccard__n{font-family:var(--serif);font-size:34px;color:var(--gold);line-height:1;margin-bottom:10px;
  display:block;}
.ccard h3{font-size:19px;margin-bottom:9px;}
.ccard p{font-size:12.5px;line-height:1.85;color:var(--ink-70);margin-bottom:14px;}
.scale{display:flex;gap:3px;flex-wrap:wrap;}
.scale span{flex:1;min-width:26px;text-align:center;font-size:8.5px;font-weight:600;padding:5px 2px;
  background:var(--bg-soft);border:1px solid var(--line-soft);letter-spacing:.04em;}
.scale span.hi{background:var(--gold);color:#fff;border-color:var(--gold);}

/* FAQ accordion */
.faq{border:1px solid var(--line);background:#fff;margin-bottom:9px;}
.faq__q{width:100%;display:flex;align-items:center;justify-content:space-between;gap:16px;
  padding:16px 20px;text-align:left;font-size:14px;font-weight:500;transition:color .26s;}
.faq__q:hover{color:var(--gold-deep);}
.faq__q::after{content:'';width:8px;height:8px;border-right:1.6px solid var(--gold);
  border-bottom:1.6px solid var(--gold);transform:rotate(45deg);transition:transform .32s var(--ease);
  flex-shrink:0;}
.faq.is-open .faq__q::after{transform:rotate(225deg);}
.faq__a{display:none;padding:0 20px 18px;font-size:13px;line-height:1.85;color:var(--ink-70);}
.faq.is-open .faq__a{display:block;}
.faq__a a{color:var(--gold-deep);text-decoration:underline;}

/* ---------- Admin ---------- */
.admin{padding:20px 0 76px;}
.admin__bar{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  padding:16px 20px;background:var(--ink);color:#fff;margin-bottom:22px;}
.admin__bar h1{color:#fff;font-size:20px;}
.admin__bar p{font-size:11px;color:rgba(255,255,255,.6);margin-top:2px;}
.admin__tabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin-bottom:24px;flex-wrap:wrap;}
.admin__tab{padding:12px 20px;font-size:11.5px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;
  color:var(--ink-55);border-bottom:2px solid transparent;margin-bottom:-1px;transition:all .26s var(--ease);}
.admin__tab:hover{color:var(--gold-deep);}
.admin__tab.is-on{color:var(--gold-deep);border-bottom-color:var(--gold);}
.stats{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;margin-bottom:26px;}
.stat{border:1px solid var(--line);padding:18px 20px;background:#fff;}
.stat__n{font-family:var(--serif);font-size:29px;color:var(--ink);line-height:1;margin-bottom:6px;}
.stat__l{font-size:9.5px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-40);}
.stat--gold .stat__n{color:var(--gold-dark);}
.drop{border:2px dashed var(--line);background:var(--bg-soft);padding:44px 26px;text-align:center;
  transition:all .3s var(--ease);cursor:pointer;}
.drop.is-over{border-color:var(--gold);background:var(--gold-wash);}
.drop svg{width:40px;height:40px;color:var(--ink-40);margin:0 auto 14px;stroke-width:1.1;}
.drop h3{font-size:17px;margin-bottom:7px;}
.drop p{font-size:12px;color:var(--ink-55);margin-bottom:16px;}
.log{background:#1A1A1A;color:#C9E5C9;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;
  font-size:11px;line-height:1.75;padding:16px 18px;max-height:250px;overflow-y:auto;margin-top:18px;
  white-space:pre-wrap;word-break:break-word;}
.log:empty{display:none;}
.itable{width:100%;border-collapse:collapse;font-size:11.5px;background:#fff;}
.itable th{position:sticky;top:0;background:var(--bg-soft);text-align:left;font-size:9px;font-weight:700;
  letter-spacing:.1em;text-transform:uppercase;color:var(--ink-55);padding:10px;
  border-bottom:1px solid var(--line);z-index:2;}
.itable td{padding:9px 10px;border-bottom:1px solid var(--line-soft);white-space:nowrap;}
.itable tr:hover td{background:var(--gold-wash);}
.itable__wrap{max-height:600px;overflow:auto;border:1px solid var(--line);}
.tag-blank{background:rgba(192,57,43,.1);color:var(--danger);padding:2px 7px;font-size:9px;
  font-weight:700;letter-spacing:.06em;}

@media (max-width:1000px){
  .inq__grid,.co__grid,.acct__grid{grid-template-columns:minmax(0,1fr);}
  .inq__summary,.co__side,.acct__nav{position:static;}
  .stats{grid-template-columns:repeat(2,1fr);}
  .cgrid,.cgrid--3{grid-template-columns:minmax(0,1fr);}
  .acct__nav{display:flex;flex-wrap:wrap;}
  .acct__navbtn{width:auto;flex:1;min-width:130px;border-bottom:1px solid var(--line-soft);}
}
@media (max-width:600px){
  .fgrid,.fgrid--3{grid-template-columns:1fr;}
  .express{grid-template-columns:1fr;}
  .card{padding:20px 18px;}
  .stats{grid-template-columns:1fr;}
  .co__grid{gap:28px;}
}

/* ---- Auth tabs (Sign In / Create Account) ---- */
.authtabs{display:flex;gap:2px;border-bottom:1px solid var(--line);margin:-4px 0 20px;}
.authtab{flex:1;padding:12px 8px;font-size:12px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;color:var(--ink-40);border-bottom:2px solid transparent;
  margin-bottom:-1px;transition:all .26s var(--ease);}
.authtab:hover{color:var(--gold-deep);}
.authtab.is-on{color:var(--ink);border-bottom-color:var(--gold);}
.authpane{display:none;}
.authpane.is-on{display:block;animation:fadeUp .34s var(--ease);}
.linkish{color:var(--gold-deep);text-decoration:underline;font-size:inherit;font-weight:600;}
.linkish:hover{color:var(--gold-dark);}

/* ---- Pre-order banner in the order summary ---- */
.prebanner{display:block;padding:13px 15px;margin-bottom:14px;border-left:3px solid var(--gold);
  background:var(--gold-wash);font-size:12px;line-height:1.65;}
.prebanner b{color:var(--gold-deep);}
.prebanner > b{display:block;margin-bottom:3px;font-size:12.5px;}
.prebanner span{color:var(--ink-70);}

/* ---- Order tracking ---- */
.trackfind{display:flex;gap:9px;margin-bottom:20px;}
.trackfind input{flex:1;border:1px solid var(--line);padding:11px 14px;font-size:13px;}
.trackfind input:focus{outline:none;border-color:var(--gold);}
.trackbox{border:1px solid var(--line);padding:20px 22px;margin-bottom:14px;background:#fff;}
.trackbox__top{display:flex;justify-content:space-between;gap:14px;flex-wrap:wrap;margin-bottom:16px;}
.trackbox__top b{font-size:14px;display:block;}
.trackbox__top span{font-size:11.5px;color:var(--ink-55);}
.trackbox__num{text-align:right;}
.trackbox__num span{display:block;font-size:9.5px;letter-spacing:.14em;text-transform:uppercase;
  color:var(--ink-40);}
.trackbox__num b{font-size:13px;font-variant-numeric:tabular-nums;}
.tracksteps{display:flex;gap:5px;margin-bottom:16px;}
.trackstep{flex:1;text-align:center;min-width:0;}
.trackstep__bar{display:block;height:4px;border-radius:2px;background:var(--line);margin-bottom:8px;
  transition:background .3s;}
.trackstep.is-done .trackstep__bar{background:var(--gold);}
.trackstep.is-now .trackstep__bar{background:var(--gold-dark);
  box-shadow:0 0 0 3px rgba(197,168,128,.22);}
.trackstep__lab{font-size:9px;letter-spacing:.05em;color:var(--ink-40);line-height:1.35;display:block;}
.trackstep.is-done .trackstep__lab{color:var(--gold-deep);font-weight:600;}
.trackbox__foot{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;
  padding-top:14px;border-top:1px solid var(--line-soft);}
.trackbox__foot span{font-size:12px;color:var(--ink-70);}
@media (max-width:600px){
  .tracksteps{flex-wrap:wrap;gap:8px 4px;}
  .trackstep{flex:0 0 31%;}
  .trackstep__lab{font-size:8px;}
}

/* ---- Delivery method chooser ---- */
.delivopts{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-bottom:16px;}
.delivopt{border:1px solid var(--line);background:#fff;padding:14px 16px;text-align:left;
  transition:all .26s var(--ease);border-radius:2px;}
.delivopt b{display:block;font-size:13px;font-weight:700;color:var(--ink);margin-bottom:3px;}
.delivopt span{display:block;font-size:11.5px;color:var(--ink-55);line-height:1.5;}
.delivopt:hover{border-color:var(--gold);}
.delivopt.is-on{border-color:var(--gold);background:var(--gold-wash);box-shadow:0 0 0 1px var(--gold);}
.delivopt.is-on b{color:var(--gold-deep);}
@media (max-width:600px){ .delivopts{grid-template-columns:1fr;} }

/* ---- Admin: bulk selection + upload preview ---- */
.admbulk{display:flex;align-items:center;gap:12px;padding:11px 16px;margin-bottom:12px;
  background:var(--gold-wash);border:1px solid var(--gold);}
.admbulk[hidden]{display:none!important;}
.admbulk span{font-size:12.5px;font-weight:700;color:var(--gold-deep);margin-right:auto;}
.itable tr.is-sel td{background:var(--gold-tint)!important;}
.itable input[type=checkbox]{width:15px;height:15px;accent-color:var(--gold);cursor:pointer;}
.uppreview{border:1px solid var(--line);background:var(--bg-soft);padding:14px 16px;margin-bottom:18px;}
.uppreview[hidden]{display:none!important;}
.uppreview__t{display:block;font-size:10px;font-weight:700;letter-spacing:.14em;
  text-transform:uppercase;color:var(--ink-40);margin-bottom:10px;}
.uppreview__row{display:flex;gap:10px;flex-wrap:wrap;}
.uppreview figure{margin:0;width:74px;text-align:center;}
.uppreview img{width:74px;height:74px;object-fit:cover;border:1px solid var(--line);background:#fff;}
.uppreview figure.is-file span{display:grid;place-items:center;width:74px;height:74px;
  border:1px solid var(--line);background:#fff;font-size:13px;font-weight:800;color:var(--gold-deep);}
.uppreview figcaption{font-size:9px;color:var(--ink-55);margin-top:5px;letter-spacing:.04em;}
.uppreview figure{position:relative;}
.upx{position:absolute;top:-6px;right:-6px;width:20px;height:20px;border-radius:50%;
  background:#C0392B;color:#fff;font-size:14px;line-height:1;display:grid;place-items:center;
  box-shadow:0 1px 4px rgba(0,0,0,.28);transition:transform .2s;}
.upx:hover{transform:scale(1.15);}
.gbtn--soon{opacity:.72;}
.gbtn__soon{display:block;text-align:center;font-size:10.5px;color:var(--ink-40);
  margin:5px 0 2px;letter-spacing:.04em;}

/* ══════════════════════════════════════════════════════════════════
   ADDRESS AUTOCOMPLETE  (Photon / OpenStreetMap — free, no API key)
   ══════════════════════════════════════════════════════════════════ */
.addr-auto{position:relative;}
.addr-list{position:absolute;left:0;right:0;top:calc(100% - 18px);z-index:60;
  background:#fff;border:1px solid var(--line);box-shadow:var(--shadow-lg);
  max-height:262px;overflow-y:auto;margin:0;padding:4px;list-style:none;}
.addr-list[hidden]{display:none;}
.addr-list li{padding:10px 12px;font-size:13px;line-height:1.45;cursor:pointer;
  border-radius:2px;color:var(--ink);}
.addr-list li b{font-weight:700;display:block;}
.addr-list li span{color:var(--ink-55);font-size:11.5px;}
.addr-list li:hover,.addr-list li.is-active{background:var(--gold-wash);}
.addr-list li[aria-disabled="true"]{color:var(--ink-40);cursor:default;font-size:12px;}
.addr-list li[aria-disabled="true"]:hover{background:transparent;}
.field__hint{display:block;font-size:11px;color:var(--ink-40);margin-top:5px;line-height:1.5;}
.field.is-bad .field__hint{display:none;}
@media (max-width:700px){
  .addr-list li{padding:13px 12px;font-size:14.5px;}
  .addr-list li span{font-size:12.5px;}
  .field__hint{font-size:12px;}
}

/* ---- Admin: Website Media notices ---- */
.notice{border:1px solid var(--line);background:var(--bg-soft);padding:13px 15px;
  font-size:13px;line-height:1.6;color:var(--ink-70);}
.notice b{color:var(--ink);}
.notice--ok{background:#EAF5EF;border-color:#BFE0CE;color:#1E7A50;}
.notice--ok b{color:#1E7A50;}

/* ---- Checkout: delivery notes ---- */
#coNotes{width:100%;border:1px solid var(--line);padding:11px 14px;font-size:12.5px;
  font-family:var(--sans);line-height:1.6;resize:vertical;min-height:78px;background:#fff;
  color:var(--ink);}
#coNotes:focus{outline:none;border-color:var(--gold);}
#coNotes::placeholder{color:var(--ink-40);}
@media (max-width:700px){
  #coNotes{font-size:16px;min-height:92px;}   /* 16px stops iOS zooming */
}

/* ---- Order tracking: the customer's own delivery notes ---- */
.ordernotes{border-left:3px solid var(--gold);background:var(--gold-wash);
  padding:11px 14px;margin:0 0 14px;font-size:12.5px;line-height:1.65;}
.ordernotes b{display:block;color:var(--gold-deep);margin-bottom:3px;font-size:12px;
  letter-spacing:.04em;text-transform:uppercase;}
.ordernotes span{color:var(--ink-70);white-space:pre-wrap;}

/* ---- Password show / hide ---- */
.field--pass{position:relative;}
.field--pass input{padding-right:46px;}
.passtoggle{position:absolute;right:1px;top:50%;transform:translateY(-2px);
  width:42px;height:40px;display:grid;place-items:center;color:var(--ink-40);
  background:transparent;border:0;cursor:pointer;transition:color .22s;}
.passtoggle:hover,.passtoggle:focus-visible{color:var(--gold-deep);}
.passtoggle svg{width:19px;height:19px;}
@media (max-width:700px){
  .passtoggle{width:46px;height:46px;}
  .passtoggle svg{width:21px;height:21px;}
}

/* ---- Checkout: guest vs signed-in banner ---- */
.whobox{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;
  border:1px solid var(--line);background:var(--bg-soft);padding:14px 16px;margin:0 0 18px;}
.whobox b{display:block;font-size:13.5px;color:var(--ink);margin-bottom:2px;}
.whobox span{display:block;font-size:12px;color:var(--ink-55);line-height:1.6;max-width:52ch;}
.whobox--in{background:var(--gold-wash);border-color:var(--gold-tint);}
.whobox--in b{color:var(--gold-deep);}
.prefill-note{font-size:12px;color:var(--ink-55);line-height:1.6;margin:0 0 12px;
  padding:9px 12px;border-left:3px solid var(--gold);background:var(--gold-wash);}
.prefill-note b{color:var(--ink);}
.checkline small{display:block;font-size:11px;color:var(--ink-40);margin-top:2px;}
@media (max-width:700px){
  .whobox{flex-direction:column;align-items:flex-start;gap:10px;}
  .whobox span{font-size:13px;}
  .prefill-note{font-size:13px;}
  .checkline small{font-size:12px;}
}

/* ================================================================
   Bank transfer — checkout panel and post-order instructions
   Added when Click & Collect was removed; the business is
   online-only and takes manual transfers from NZ and overseas.
   ================================================================ */
.bankpay{border:1px solid var(--line);background:var(--bg-soft);padding:20px 20px 22px;margin:0 0 4px;}
.bankpay__head b{display:block;font-family:var(--serif);font-size:17px;color:var(--ink);margin-bottom:3px;}
.bankpay__head span{display:block;font-size:12.5px;color:var(--ink-55);}
.bankpay__lead{font-size:13px;color:var(--ink-70);line-height:1.8;margin:14px 0 16px;}
.bankacct{background:#fff;border:1px solid var(--line);padding:15px 16px;margin-bottom:12px;}
.bankacct__t{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--gold-deep);
  font-weight:700;margin-bottom:11px;}
.bankacct__l{display:grid;grid-template-columns:auto 1fr;gap:8px 18px;margin:0;font-size:13px;}
.bankacct__l dt{color:var(--ink-55);white-space:nowrap;}
.bankacct__l dd{margin:0;color:var(--ink);display:flex;align-items:center;gap:9px;flex-wrap:wrap;}
.copyval{font-family:var(--mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-weight:700;
  letter-spacing:.02em;}
.copybtn{border:1px solid var(--line);background:#fff;color:var(--ink-70);font-size:10.5px;
  letter-spacing:.1em;text-transform:uppercase;padding:4px 10px;cursor:pointer;
  transition:border-color .18s,color .18s;}
.copybtn:hover{border-color:var(--gold);color:var(--gold-deep);}
.copybtn.is-done{border-color:var(--ok);color:var(--ok);}
.hintopt{color:var(--ink-40);font-weight:400;text-transform:none;letter-spacing:0;}

/* Post-order "now pay us" block on the thank-you screen */
.paynow{border:1px solid var(--gold-tint);background:var(--gold-wash);padding:22px 20px;
  margin:22px 0 24px;text-align:left;}
.paynow__t{font-family:var(--serif);font-size:19px;color:var(--ink);margin-bottom:6px;text-align:center;}
.paynow__lead{font-size:12.5px;color:var(--ink-70);line-height:1.75;margin-bottom:15px;text-align:center;}
.paynow__ref{display:flex;align-items:center;justify-content:center;gap:12px;background:#fff;
  border:1px dashed var(--gold);padding:11px 14px;margin-bottom:15px;}
.paynow__ref span{font-size:10.5px;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-55);}
.paynow__ref b{font-family:var(--mono,ui-monospace,SFMono-Regular,Menlo,monospace);font-size:16px;
  color:var(--gold-deep);letter-spacing:.04em;}
.paynow__l{display:grid;grid-template-columns:auto 1fr;gap:7px 18px;margin:0 0 14px;font-size:13px;}
.paynow__l dt{color:var(--ink-55);white-space:nowrap;}
.paynow__l dd{margin:0;color:var(--ink);}
.paynow__note{font-size:12px;color:var(--ink-55);line-height:1.75;margin:0;}
@media (max-width:700px){
  .bankpay{padding:16px 14px 18px;}
  .bankacct__l,.paynow__l{grid-template-columns:1fr;gap:3px;}
  .bankacct__l dt,.paynow__l dt{margin-top:9px;font-size:11px;letter-spacing:.08em;
    text-transform:uppercase;}
  .bankacct__l dd,.paynow__l dd{font-size:14.5px;}
  .bankpay__lead,.paynow__lead,.paynow__note{font-size:13.5px;}
  .copybtn{font-size:11.5px;padding:6px 12px;}
  .paynow__ref{flex-direction:column;gap:5px;}
}

/* ================================================================
   Admin inventory — pagination and select-all-matching
   The table used to render only the first 300 matches with no way
   to reach the rest, so a full 5,000-row clear was impossible.
   ================================================================ */
.invpager{display:flex;align-items:center;gap:9px;flex-wrap:wrap;margin-top:14px;
  padding:11px 14px;border:1px solid var(--line);background:var(--bg-soft);}
.invpager[hidden]{display:none!important;}
.invpager__b{border:1px solid var(--line);background:#fff;color:var(--ink);
  font-size:12px;letter-spacing:.06em;padding:7px 13px;cursor:pointer;
  transition:border-color .18s,color .18s;}
.invpager__b:hover:not(:disabled){border-color:var(--gold);color:var(--gold-deep);}
.invpager__b:disabled{opacity:.38;cursor:not-allowed;}
.invpager__mid{font-size:12.5px;color:var(--ink-70);display:flex;align-items:center;gap:7px;}
.invpager__mid input{width:66px;border:1px solid var(--line);padding:6px 8px;
  font-size:12.5px;text-align:center;font-family:inherit;}
.invpager__mid b{color:var(--ink);}
.invpager__per{margin-left:auto;font-size:12px;padding:7px 10px;}

.selall{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:12px;
  padding:10px 15px;background:var(--gold-wash);border:1px solid var(--gold-tint);}
.selall[hidden]{display:none!important;}
.selall span{font-size:12.5px;color:var(--ink-70);}
.linkbtn{background:none;border:none;padding:0;font:inherit;font-size:12.5px;font-weight:700;
  color:var(--gold-deep);text-decoration:underline;text-underline-offset:3px;cursor:pointer;}
.linkbtn:hover{color:var(--ink);}
.linkbtn[hidden]{display:none!important;}

@media (max-width:700px){
  .invpager{gap:7px;padding:10px;}
  .invpager__b{font-size:13px;padding:9px 14px;flex:1;min-width:74px;}
  .invpager__mid{width:100%;justify-content:center;order:-1;margin-bottom:4px;font-size:14px;}
  .invpager__per{margin-left:0;width:100%;font-size:13.5px;}
  .selall{gap:8px;}
  .selall span,.linkbtn{font-size:13.5px;}
}

/* ================================================================
   Delivery zones — North/South Island, city vs rural, overseas
   Replaces the old single "complimentary worldwide" line so the
   customer sees a realistic delivery window for their address.
   ================================================================ */
.zonelead{font-size:13px;color:var(--ink-70);margin:16px 0 10px;}
.zones{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;}
.zone{position:relative;text-align:left;border:1px solid var(--line);background:#fff;
  padding:13px 14px 12px;cursor:pointer;transition:border-color .18s,box-shadow .18s;
  display:flex;flex-direction:column;gap:2px;font-family:inherit;}
.zone:hover{border-color:var(--gold-tint);}
.zone.is-on{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold);
  background:var(--gold-wash);}
.zone__n{font-size:13.5px;font-weight:700;color:var(--ink);line-height:1.35;}
.zone__s{font-size:11px;color:var(--ink-55);text-transform:uppercase;letter-spacing:.08em;}
.zone__d{font-size:12px;color:var(--ink-70);margin-top:5px;}
.zone__p{font-size:12.5px;font-weight:700;color:var(--gold-deep);margin-top:3px;}
.zone__p.is-free{color:var(--ok);}
.zone.is-on::after{content:'';position:absolute;top:10px;right:11px;width:8px;height:8px;
  border-radius:50%;background:var(--gold);}
.zonenote{font-size:12.5px;color:var(--ink-70);line-height:1.75;margin:12px 0 0;
  padding:11px 14px;border-left:3px solid var(--gold);background:var(--gold-wash);}
.zonenote b{color:var(--ink);}
.sum-row small{display:block;font-size:11px;color:var(--ink-55);font-weight:400;
  margin-top:1px;letter-spacing:0;text-transform:none;}
@media (max-width:900px){
  .zones{grid-template-columns:repeat(2,1fr);}
}
@media (max-width:700px){
  .zones{grid-template-columns:1fr;gap:9px;}
  .zone{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:8px;padding:14px;}
  .zone__n{font-size:15px;}
  .zone__s{font-size:12px;}
  .zone__d{width:100%;margin-top:2px;font-size:13px;}
  .zone__p{margin-left:auto;margin-top:0;font-size:14px;}
  .zonelead,.zonenote{font-size:13.5px;}
}

/* ================================================================
   Admin → Shipping & Text
   Lets the owner change delivery prices and page wording himself,
   without waiting on a rebuild.
   ================================================================ */
.ziprate{display:flex;flex-direction:column;gap:8px;}
.ziprate__row{display:grid;grid-template-columns:1fr auto 150px;gap:14px;align-items:center;
  padding:11px 14px;border:1px solid var(--line);background:var(--bg-soft);}
.ziprate__n{font-size:13.5px;font-weight:700;color:var(--ink);}
.ziprate__d{font-size:12px;color:var(--ink-55);white-space:nowrap;}
.ziprate__i{display:flex;align-items:center;gap:7px;font-size:12.5px;color:var(--ink-70);
  justify-self:end;}
.ziprate__i input{width:88px;border:1px solid var(--line);padding:8px 10px;font-size:13.5px;
  font-family:inherit;text-align:right;background:#fff;}
.ziprate__i input:focus{border-color:var(--gold);outline:none;}
.savedtag{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:700;
  color:var(--ok);letter-spacing:.06em;text-transform:uppercase;}
.savedtag[hidden]{display:none!important;}
.savedtag::before{content:'✓';font-size:14px;}
#atab-content textarea{width:100%;border:1px solid var(--line);padding:11px 13px;
  font-family:inherit;font-size:13.5px;line-height:1.75;resize:vertical;background:#fff;}
#atab-content textarea:focus{border-color:var(--gold);outline:none;}
#atab-content .admin__actions{display:flex;align-items:center;gap:14px;margin-top:16px;}
@media (max-width:700px){
  .ziprate__row{grid-template-columns:1fr;gap:6px;padding:13px;}
  .ziprate__i{justify-self:start;}
  .ziprate__i input{width:110px;font-size:15px;padding:10px;}
  .ziprate__n{font-size:15px;}
  .ziprate__d{font-size:13px;}
}

/* ================================================================
   Admin → Website Media : picture and wording editors
   ================================================================ */
.picgrid{display:flex;flex-direction:column;gap:12px;}
.picrow{display:grid;grid-template-columns:88px 1fr auto;gap:16px;align-items:center;
  border:1px solid var(--line);background:var(--bg-soft);padding:13px 15px;}
.picrow__thumb{width:88px;height:64px;border:1px solid var(--line);background:#fff;
  display:grid;place-items:center;overflow:hidden;}
.picrow__thumb img{width:100%;height:100%;object-fit:cover;}
.picrow__thumb span{font-size:10.5px;color:var(--ink-40);letter-spacing:.08em;
  text-transform:uppercase;}
.picrow__info b{display:block;font-size:13.5px;color:var(--ink);}
.picrow__info span{display:block;font-size:12px;color:var(--ink-55);}
.picrow__info em{display:block;font-size:11.5px;color:var(--ok);font-style:normal;
  font-weight:700;margin-top:3px;}
.picrow__act{display:flex;align-items:center;gap:9px;flex-wrap:wrap;justify-content:flex-end;}
.txtgrid{display:grid;grid-template-columns:1fr 1fr;gap:14px;}
.txtgrid textarea{width:100%;border:1px solid var(--line);padding:10px 12px;
  font-family:inherit;font-size:13.5px;line-height:1.7;resize:vertical;background:#fff;}
.txtgrid textarea:focus{border-color:var(--gold);outline:none;}
@media (max-width:820px){
  .txtgrid{grid-template-columns:1fr;}
  .picrow{grid-template-columns:64px 1fr;gap:12px;}
  .picrow__thumb{width:64px;height:48px;}
  .picrow__act{grid-column:1 / -1;justify-content:flex-start;}
}
.chg{display:inline-block;background:var(--gold-wash);border:1px solid var(--gold-tint);
  color:var(--gold-deep);font-size:9.5px;font-weight:700;letter-spacing:.1em;
  text-transform:uppercase;padding:2px 7px;border-radius:20px;margin-left:7px;
  vertical-align:middle;}
.picrow__thumb video{width:100%;height:100%;object-fit:cover;}

/* Owner-written note that replaces or precedes a Terms section. Marked so a
   reader can tell it is the merchant speaking, not boilerplate. */
.ownernote{border-left:4px solid var(--gold);background:var(--gold-wash);
  padding:14px 18px;margin:0 0 18px;border-radius:0 8px 8px 0;}
.ownernote p{margin:0 0 10px;font-size:14.5px;line-height:1.8;}
.ownernote p:last-child{margin-bottom:0;}
.box-lite{background:var(--bg-soft);border:1px solid var(--line);padding:14px 16px;
  border-radius:8px;margin-top:16px;font-size:13px;color:var(--ink-70);line-height:1.75;}
.box-lite b{display:block;color:var(--ink);font-size:14px;margin-bottom:4px;}

/* FX buffer control in Admin → Shipping & Text */
.fxrow{display:flex;align-items:center;gap:9px;flex-wrap:wrap;}
.fxrow input{width:96px;border:1px solid var(--line);padding:9px 11px;font-size:14px;
  font-family:inherit;text-align:right;background:#fff;}
.fxrow input:focus{border-color:var(--gold);outline:none;}
.fxrow__pc{font-size:14px;font-weight:700;color:var(--ink-70);}
.fxrow__live{font-size:12.5px;color:var(--ink-55);margin-left:6px;}
.fxrow__live b{color:var(--gold-deep);}
@media (max-width:700px){ .fxrow__live{width:100%;margin-left:0;font-size:13px;} }

/* Orders & Inquiries tab */
.ordhead{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;
  margin-bottom:14px;flex-wrap:wrap;}
.ordwrap{max-height:520px;overflow:auto;border:1px solid var(--line);}
.ordwrap .itable th{position:sticky;top:0;z-index:2;}
.msgcell{max-width:340px;white-space:normal;line-height:1.6;}
.usdnote{font-size:12.5px;color:var(--ink-55);line-height:1.7;margin:16px 0 0;
  padding:11px 14px;background:var(--bg-soft);border:1px solid var(--line);}
.usdnote b{color:var(--ink);}

/* ── Admin → Reports ─────────────────────────────────────────────
   Worked out in the browser from orders, inquiries and the local
   search log. No third-party analytics anywhere on the site.      */
.repgrid{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px}
.repstat{flex:1;min-width:120px;background:var(--paper);border:1px solid var(--line);
         border-radius:8px;padding:14px 12px;text-align:center}
.repstat b{display:block;font-family:var(--serif);font-size:26px;color:var(--ink);line-height:1.1}
.repstat span{font-size:9.5px;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-40)}
.repcols{display:grid;grid-template-columns:repeat(auto-fit,minmax(310px,1fr));gap:14px}
.repcard{border:1px solid var(--line);border-radius:8px;padding:14px 16px;background:#fff}
.repcard h3{font-family:var(--serif);font-size:15px;margin-bottom:2px;color:var(--ink)}
.repsub{font-size:10.5px;color:var(--ink-40);margin-bottom:8px}
table.rep{width:100%;border-collapse:collapse;font-size:11.5px}
table.rep td{padding:5px 6px;border-bottom:1px solid var(--line);vertical-align:middle}
table.rep tr:last-child td{border-bottom:0}
.repbar{display:block;height:9px;border-radius:5px;
        background:linear-gradient(90deg,var(--gold),var(--gold-dark));min-width:4px}
@media(max-width:640px){
  .repcols{grid-template-columns:1fr}
  .repstat{min-width:calc(50% - 5px)}
}

/* ---------- NZ-only trading switch (Admin → Website Media) ---------- */
.nzonly{display:flex;gap:12px;align-items:flex-start;cursor:pointer;padding:14px 16px;
  border:1px solid var(--line);background:#fff;border-radius:3px;max-width:640px;
  transition:all .26s var(--ease);}
.nzonly:hover{border-color:var(--gold);}
.nzonly.is-on{border-color:var(--gold);background:linear-gradient(180deg,rgba(197,168,128,.09),#fff);}
.nzonly input{position:absolute;opacity:0;width:0;height:0;}
.nzonly__box{flex-shrink:0;width:20px;height:20px;border:1.6px solid var(--line);border-radius:3px;
  display:grid;place-items:center;background:#fff;transition:all .24s var(--ease);margin-top:1px;}
.nzonly__box svg{width:13px;height:13px;stroke-width:3;color:#fff;opacity:0;transition:opacity .2s;}
.nzonly.is-on .nzonly__box{background:var(--gold);border-color:var(--gold);}
.nzonly.is-on .nzonly__box svg{opacity:1;}
.nzonly input:focus-visible + .nzonly__box{outline:2px solid var(--gold);outline-offset:2px;}
.nzonly__t{font-size:14px;font-weight:700;color:var(--ink);line-height:1.4;}
.nzonly__t em{display:block;font-style:normal;font-size:12px;font-weight:600;
  color:var(--ink-55);margin-top:4px;}
.nzonly__t em.is-nz{color:var(--gold-deep);}

/* ---------- Coupon list state pill ---------- */
.cpstate{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.06em;
  padding:3px 9px;border-radius:2px;white-space:nowrap;}
.cpstate.is-on{background:rgba(46,125,91,.12);color:var(--ok);}
.cpstate.is-warn{background:rgba(197,168,128,.18);color:var(--gold-deep);}
.cpstate.is-off{background:rgba(192,57,43,.1);color:var(--danger);}

/* ---------- Card-hold cell in the Orders table ---------- */
.holdbox{display:flex;flex-direction:column;gap:5px;align-items:flex-start;min-width:120px;}
.holdbox .btn{padding:4px 10px;font-size:10.5px;}

/* ---------- Visitors ---------- */
.vstat{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;margin-bottom:20px;}
.vstat>div{border:1px solid var(--line);padding:16px;text-align:center;border-radius:3px;
  background:linear-gradient(180deg,rgba(197,168,128,.06),#fff);}
.vstat b{display:block;font-size:26px;font-weight:800;color:var(--ink);line-height:1.1;}
.vstat span{font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;
  color:var(--ink-55);}
.vh{font-size:12px;font-weight:800;letter-spacing:.12em;text-transform:uppercase;
  color:var(--ink-55);margin:20px 0 10px;}
.vbars{display:flex;flex-direction:column;gap:7px;}
.vbar{display:grid;grid-template-columns:150px 1fr 50px;gap:12px;align-items:center;}
.vbar__k{font-size:12.5px;font-weight:600;color:var(--ink);overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;}
.vbar__t{background:#EDF0F3;height:20px;border-radius:2px;overflow:hidden;}
.vbar__t i{display:block;height:100%;background:var(--gold);}
.vbar__n{font-size:12.5px;font-weight:800;text-align:right;color:var(--ink);}
@media(max-width:640px){.vstat{grid-template-columns:1fr}.vbar{grid-template-columns:100px 1fr 40px}}

/* ---------- SEO preview ---------- */
.gpreview{border:1px solid var(--line);padding:16px;border-radius:3px;background:#fff;
  max-width:600px;}
.gpreview__u{font-size:12.5px;color:#3C6E3C;margin-bottom:3px;}
.gpreview__t{font-size:19px;color:#1a0dab;line-height:1.3;margin-bottom:4px;}
.gpreview__d{font-size:13px;color:#4d5156;line-height:1.5;}

/* ---------- Health ---------- */
.hlist{display:flex;flex-direction:column;gap:2px;}
.hrow{display:grid;grid-template-columns:26px 220px 1fr;gap:12px;align-items:center;
  padding:11px 14px;border-radius:3px;}
.hrow.is-ok{background:rgba(46,125,91,.06);}
.hrow.is-warn{background:rgba(197,168,128,.1);}
.hrow.is-bad{background:rgba(192,57,43,.07);}
.hrow__i{width:22px;height:22px;border-radius:50%;display:grid;place-items:center;
  font-weight:800;font-size:12px;color:#fff;}
.hrow.is-ok .hrow__i{background:var(--ok);}
.hrow.is-warn .hrow__i{background:var(--gold-deep);}
.hrow.is-bad .hrow__i{background:var(--danger);}
.hrow__n{font-size:13.5px;font-weight:700;color:var(--ink);}
.hrow__d{font-size:12.5px;color:var(--ink-55);}
@media(max-width:640px){.hrow{grid-template-columns:26px 1fr;}.hrow__d{grid-column:2}}

/* Country search sits above the select, same width. */
.cosearch{width:100%;border:1px solid var(--line);padding:10px 12px;font-size:13.5px;
  margin-bottom:7px;background:#fff;border-radius:2px;}
.cosearch:focus{outline:none;border-color:var(--gold);
  box-shadow:0 0 0 3px rgba(197,168,128,.15);}

/* ---------- Country tick-list ---------- */
.ctrygrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(255px,1fr));gap:6px;
  max-height:460px;overflow-y:auto;padding:4px;border:1px solid var(--line);border-radius:3px;
  background:#FAFBFC;}
.ctry{display:grid;grid-template-columns:18px 1fr auto;gap:8px;align-items:center;
  padding:7px 10px;background:#fff;border:1px solid var(--line);border-radius:2px;
  cursor:pointer;transition:all .18s;}
.ctry:hover{border-color:var(--gold);}
.ctry.is-on{border-color:var(--gold);background:linear-gradient(180deg,rgba(197,168,128,.08),#fff);}
.ctry input{margin:0;accent-color:var(--gold-deep);}
.ctry__n{font-size:12.5px;font-weight:600;color:var(--ink);overflow:hidden;
  text-overflow:ellipsis;white-space:nowrap;}
.ctry__t{font-size:10px;font-weight:800;padding:2px 6px;border-radius:2px;white-space:nowrap;}
.ctry__t.is-t1{background:rgba(46,125,91,.13);color:var(--ok);}
.ctry__t.is-t2{background:rgba(197,168,128,.2);color:var(--gold-deep);}
.ctry__t.is-t3{background:#EDF0F3;color:var(--ink-55);}
.ctry__x{display:none;}

/* ---------- Admin HOME ---------- */
.hstats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;}
.hstat{border:1px solid var(--line);padding:16px 14px;border-radius:3px;
  background:linear-gradient(180deg,rgba(197,168,128,.07),#fff);}
.hstat b{display:block;font-size:28px;font-weight:800;color:var(--ink);line-height:1.05;}
.hstat span{display:block;font-size:10.5px;font-weight:800;letter-spacing:.09em;
  text-transform:uppercase;color:var(--ink-55);margin-top:5px;}
.hstat em{display:block;font-style:normal;font-size:12px;color:var(--gold-deep);
  font-weight:700;margin-top:5px;}

.htodo{display:flex;flex-direction:column;gap:8px;}
.htrow{display:grid;grid-template-columns:1fr auto;grid-template-areas:'t a' 's a';
  gap:4px 14px;align-items:center;
  text-align:left;padding:14px 16px;border-radius:3px;border:1px solid var(--line);
  background:#fff;cursor:pointer;transition:all .2s;width:100%;}
.htrow:hover{border-color:var(--gold);transform:translateX(2px);}
.htrow.is-urgent{border-left:4px solid var(--danger);background:rgba(192,57,43,.04);}
.htrow.is-warn{border-left:4px solid var(--gold-deep);background:rgba(197,168,128,.07);}
.htrow.is-info{border-left:4px solid var(--ink-40);}
.htrow__t{grid-area:t;font-size:14px;font-weight:700;color:var(--ink);}
.htrow__s{grid-area:s;font-size:12.5px;color:var(--ink-55);}
.htrow__a{grid-area:a;font-size:12px;font-weight:800;color:var(--gold-deep);white-space:nowrap;}

.htiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:10px;}
.htile{display:flex;flex-direction:column;align-items:center;gap:9px;padding:20px 12px;
  border:1px solid var(--line);background:#fff;border-radius:3px;cursor:pointer;
  transition:all .2s;font-size:12.5px;font-weight:700;color:var(--ink);text-align:center;}
.htile:hover{border-color:var(--gold);background:rgba(197,168,128,.06);transform:translateY(-2px);}
.htile__i{font-size:20px;color:var(--gold-deep);line-height:1;}
@media(max-width:600px){
  .hstats{grid-template-columns:1fr 1fr;}
  .htiles{grid-template-columns:1fr 1fr;}
}

.htile__i{width:22px;height:22px;color:var(--gold-deep);}
.htile__i svg{width:100%;height:100%;}
