/* ============================================================
   BADGE SHERPA · pages.css
   All page-level styles, consolidated from the former inline
   <style> blocks. Cached once, shared by every page.
   Bust with ?v= (BS_ASSET_V in boot.php).
   ============================================================ */

/* ── bento grid + hero + art tile (dashboard, help, history,
      upcoming, settings) ── */
.bento{max-width:1180px;margin:0 auto;padding:0 8px;display:grid;gap:18px;
  grid-template-columns:repeat(12,1fr)}
.bento .blk{border-radius:var(--radius);padding:30px;background:var(--surface);
  box-shadow:var(--shadow-s)}
.bento .b-hero,.bento .h-hero{grid-column:span 8;background:var(--green);
  display:flex;flex-direction:column;justify-content:center;gap:12px;min-height:210px}
.bento .b-hero{min-height:230px}
.bento .b-hero h1,.bento .h-hero h1{font-size:clamp(2rem,3.6vw,3rem);
  letter-spacing:-.03em;line-height:1.05;color:#FFFFFF}
.bento .b-hero h1 b{color:#FFFFFF}
.bento .b-hero p,.bento .h-hero p{color:#FFFFFF;opacity:.85;font-size:.95rem}
.bento .b-hero .chip{background:var(--navy);color:#fff;align-self:flex-start;
  text-decoration:none}
.bento .b-art,.bento .h-art{grid-column:span 4;padding:28px;overflow:hidden;
  background:var(--navy);display:flex;align-items:center;justify-content:center;
  min-height:210px}
.bento .b-art{min-height:230px}
.bento .b-art img,.bento .h-art img{width:78%;max-width:260px;display:block}

/* ── dashboard: stats + events ── */
.bento .b-stats{grid-column:span 4;background:var(--surface-2);
  display:flex;flex-direction:column;gap:20px;justify-content:center}
.b-stats .st{border-left:4px solid var(--green);padding-left:16px}
.b-stats .st .n{font-family:var(--font-head);font-weight:700;
  font-size:clamp(1.9rem,3vw,2.5rem);letter-spacing:-.02em;line-height:1}
.b-stats .st .l{color:var(--ink-soft);font-size:.85rem;font-weight:600;margin-top:2px}
.bento .b-events{grid-column:span 8}
.b-events h3{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;
  color:var(--ink-soft);margin-bottom:14px;font-family:var(--font-body)}
.ev-new{display:flex;align-items:center;gap:14px;padding:16px 18px;
  border:2px dashed var(--line);border-radius:var(--radius-s);
  text-decoration:none;color:var(--ink);font-weight:700;margin-bottom:12px}
.ev-new:hover{border-color:var(--green)}
.ev-new .plus{width:40px;height:40px;border-radius:50%;background:var(--green);
  color:var(--navy);font-size:1.3rem;font-weight:800;display:flex;
  align-items:center;justify-content:center;flex:none}
.ev-list{display:flex;flex-direction:column;gap:10px;max-height:420px;
  overflow:auto;padding-right:4px}
.ev-row{display:flex;align-items:center;gap:14px;padding:14px 16px;
  border-radius:var(--radius-s);background:var(--bg);text-decoration:none;
  color:var(--ink)}
.ev-row:hover{background:var(--surface-2)}
.ev-row b{font-family:var(--font-head);font-weight:600}
.ev-row .meta{flex:1;min-width:0}
.ev-row .meta small{color:var(--ink-soft)}
.ev-row .go{width:36px;height:36px;border-radius:50%;border:1.5px solid var(--line);
  display:flex;align-items:center;justify-content:center;flex:none}
.ev-row:hover .go{border-color:var(--navy)}

/* ── help: topics + article ── */
.bento .h-topics{grid-column:span 12;padding:0;background:none;box-shadow:none;
  display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(260px,1fr))}
.topic{display:flex;align-items:center;gap:14px;padding:22px;
  background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-s);
  text-decoration:none;color:var(--ink)}
.topic:hover{box-shadow:var(--shadow)}
.topic b{font-family:var(--font-head);font-weight:600;font-size:1rem;flex:1}
.topic .go{width:34px;height:34px;border-radius:50%;border:1.5px solid var(--line);
  display:flex;align-items:center;justify-content:center;flex:none}
.topic:hover .go{border-color:var(--navy)}
.bento .h-article{grid-column:span 12}
.h-article .backbtn{display:inline-flex;align-items:center;gap:8px;
  background:var(--navy);color:#fff;font-family:var(--font-head);font-weight:700;
  border-radius:999px;padding:13px 24px;text-decoration:none;margin-bottom:22px}
.h-article h2{font-size:clamp(1.5rem,2.6vw,2.1rem);letter-spacing:-.02em;
  margin-bottom:16px}
.h-article .body{max-width:760px;line-height:1.65;font-size:.97rem}
.h-article .body h3{margin:22px 0 8px;font-size:1.05rem}
.h-article .body p{margin-bottom:12px}
.h-article .body img{max-width:100%;border-radius:var(--radius-s);margin:10px 0}
.h-article .body a{color:var(--green-dark);font-weight:600}

/* ── history + upcoming lists ── */
.bento .h-list{grid-column:span 12;display:flex;flex-direction:column;gap:10px}
.ord,.upc{display:flex;align-items:center;gap:16px;padding:18px 20px;flex-wrap:wrap;
  background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-s)}
.ord .meta,.upc .meta{flex:1;min-width:200px}
.ord .meta b,.upc .meta b{font-family:var(--font-head);font-weight:600}
.ord .meta small,.upc .meta small{color:var(--ink-soft)}
.ord .sum{font-family:var(--font-head);font-weight:700;font-size:1.05rem;
  min-width:90px;text-align:right}
.ord .chip.ok{background:#E7F9EF;color:var(--green-dark)}
.ord .chip.wait{background:var(--warn-bg);color:var(--warn)}
.ord .dl,.upc .open{display:inline-flex;align-items:center;gap:8px;
  background:var(--navy);color:#fff;font-weight:700;font-size:.82rem;
  border-radius:999px;padding:10px 18px;text-decoration:none}
.upc .when{font-family:var(--font-head);font-weight:700;min-width:110px}
.upc .when.none{color:var(--ink-soft);font-weight:600;font-size:.85rem}
.upc .arch{border:1.5px solid var(--line);background:none;color:var(--ink-soft);
  font-weight:700;font-size:.8rem;border-radius:999px;padding:10px 16px;cursor:pointer}
.upc .arch:hover{border-color:var(--danger);color:var(--danger)}
.empty{grid-column:span 12;text-align:center;color:var(--ink-soft);
  padding:50px 20px;font-size:.95rem}
.okmsg{grid-column:span 12;color:var(--green-dark);font-weight:700}

/* ── settings: full-width rows with a helpful tip aside ── */
.bento .set-list{grid-column:span 12;display:flex;flex-direction:column;gap:16px}
.set-row{display:grid;grid-template-columns:1fr 320px;gap:0;overflow:hidden;
  background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-s)}
.set-row .ctrl{padding:26px 28px}
.set-row .ctrl h3{font-size:1.02rem;margin-bottom:4px}
.set-row .ctrl .desc{color:var(--ink-soft);font-size:.85rem;margin-bottom:16px}
.set-row .tip{background:var(--surface-2);padding:26px 24px;font-size:.83rem;
  line-height:1.55;color:var(--ink-soft);display:flex;align-items:center}
.set-row .tip b{color:var(--ink)}

/* ── plans ── */
.plans{max-width:1080px;margin:0 auto;padding:0 8px;display:grid;gap:20px;
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr));align-items:stretch}
.plan{background:var(--surface);border-radius:var(--radius);padding:28px;
  box-shadow:var(--shadow-s);display:flex;flex-direction:column;gap:14px;position:relative}
.plan.pop{background:#EAFBF2;box-shadow:0 0 0 1.5px var(--green), var(--shadow)}
.plan .tag{position:absolute;top:-13px;left:50%;transform:translateX(-50%);
  background:var(--green);color:var(--navy);font-weight:700;font-size:.78rem;
  border-radius:999px;padding:5px 14px}
.plan h2{font-size:1.15rem}
.plan .price{font-family:var(--font-head);font-weight:700;font-size:2.4rem;
  letter-spacing:-.02em}
.plan .price small{font-family:var(--font-body);font-weight:600;
  font-size:.85rem;color:var(--ink-soft)}
.plan h4{font-size:.95rem}
.plan ul{list-style:none;display:flex;flex-direction:column;gap:9px;
  font-size:.88rem;flex:1}
.plan li{display:flex;gap:9px;align-items:flex-start;line-height:1.4}
.plan li::before{content:'✓';color:var(--green-dark);font-weight:800}
.plan .cur{text-align:center;font-weight:800;font-size:.8rem;
  text-transform:uppercase;letter-spacing:.06em;color:var(--green-dark);padding:14px}
.soon-note{max-width:1080px;margin:22px auto 0;padding:0 8px;text-align:center;
  color:var(--ink-soft);font-size:.85rem}

/* ── server-rendered account dropdown (module version manages itself) ── */
.sh-acctwrap[data-srv] .sh-menu{display:none}
.sh-acctwrap[data-srv].open .sh-menu{display:flex}
.sh-trail .sh-cta{text-decoration:none;display:inline-flex;align-items:center}

/* ── responsive ── */
@media(max-width:900px){
  .bento .b-hero,.bento .b-art,.bento .b-stats,.bento .b-events,
  .bento .h-hero,.bento .h-art{grid-column:span 12}
  .set-row{grid-template-columns:1fr}
  .set-row .tip{border-top:1px solid var(--line)}
}

/* ── teaser pages: lock band + locked form ── */
.lockband{grid-column:span 12;display:flex;align-items:center;gap:16px;
  justify-content:space-between;flex-wrap:wrap;background:var(--navy);color:#fff;
  border-radius:var(--radius);padding:16px 22px;font-weight:600;font-size:.92rem}
.lockband.inset{grid-column:auto;margin:12px 0 18px}
.lockband .btn{padding:11px 22px;font-size:.85rem}
.bento .lockform{grid-column:span 12;position:relative}
.lf-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;align-items:end}
.lf-grid .wide{grid-column:1 / -1}
.lf-grid label{display:flex;flex-direction:column;gap:7px;font-size:.82rem;
  font-weight:600;color:var(--ink-soft)}
.lf-grid input{border:1.5px solid var(--line);border-radius:10px;padding:12px 14px;
  font-family:var(--font-body);font-size:.9rem;background:var(--bg);color:var(--ink)}
.lf-grid input:disabled{color:var(--ink-soft)}
.lf-grid small{font-weight:500;color:var(--ink-soft)}
.lf-addday{grid-column:1 / -1;justify-self:start;border:2px dashed var(--line);
  background:none;border-radius:10px;padding:11px 18px;font-weight:700;
  font-size:.82rem;color:var(--ink-soft)}
.lf-url{display:flex;align-items:center;border:1.5px solid var(--line);
  border-radius:10px;overflow:hidden;background:var(--bg)}
.lf-url i{font-style:normal;font-size:.82rem;color:var(--ink-soft);
  padding:12px 0 12px 14px;white-space:nowrap}
.lf-url input{border:none;flex:1;background:none;min-width:80px}
.lf-opt{display:flex;align-items:center;justify-content:space-between;gap:12px;
  background:var(--bg);border-radius:10px;padding:12px 16px;font-size:.85rem;
  font-weight:600}
.lf-seg{display:flex;background:var(--surface);border-radius:999px;padding:3px;gap:2px}
.lf-seg button{border:0;background:none;border-radius:999px;padding:6px 14px;
  font-weight:700;font-size:.78rem;color:var(--ink-soft)}
.lf-seg button.on{background:var(--navy);color:#fff}
.lf-label{font-size:.95rem;margin-bottom:6px}
.lf-desc{font-size:.82rem;color:var(--ink-soft);margin-bottom:14px}
.lf-chips{display:flex;gap:8px;flex-wrap:wrap}
.lf-chips .chip{font-size:.82rem;padding:9px 16px}
.lf-chips .chip.more{border:1.5px dashed var(--line);background:none;color:var(--ink-soft)}
.lf-drop{border:2.5px dashed var(--line);border-radius:var(--radius-s);
  padding:44px 20px;display:flex;flex-direction:column;align-items:center;gap:8px;
  color:var(--ink-soft);font-weight:600;font-size:.9rem;opacity:.7}
.lf-drop span{font-size:1.6rem}
.tpl-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:14px}
.tpl-empty{grid-column:1 / -1;border:2px dashed var(--line);border-radius:var(--radius-s);
  padding:36px 20px;text-align:center;color:var(--ink-soft);font-size:.88rem}
.set-danger{border:1.5px solid var(--danger);color:var(--danger);background:none;
  border-radius:999px;font-weight:700}
.set-danger:hover{background:var(--danger-bg)}
@media(max-width:760px){.lf-grid{grid-template-columns:1fr}}


/* ── static blocky footer ── */
.site-foot{max-width:1180px;margin:44px auto 0;padding:0 8px}
.site-foot .sf-in{background:var(--surface-2);border-radius:var(--radius);
  padding:36px 40px;display:flex;align-items:flex-end;gap:30px;flex-wrap:wrap}
.sf-brand{flex:1;min-width:200px}
.sf-brand b,.sf-brand i{font-family:var(--font-head);font-style:normal;
  font-weight:800;font-size:1.2rem}
.sf-brand i{color:var(--green-dark)}
.sf-brand p{color:var(--ink-soft);font-size:.85rem;margin-top:6px}
.sf-contact a{color:var(--ink);font-weight:600;font-size:.9rem;text-decoration:none}
.sf-contact a:hover{color:var(--green-dark)}
.sf-c{color:var(--ink-soft);font-size:.8rem;font-weight:600}
/* pages ending in the static footer don't need fixed-bar clearance */
body:has(.site-foot){padding-bottom:36px}

.ord .dl.ghost{background:none;border:1.5px solid var(--line);color:var(--ink)}
.ord .dl.ghost:hover{border-color:var(--navy)}

/* plan: code redemption box */
.code-box{max-width:520px;margin:26px auto 0;padding:0 8px;text-align:center}
.code-box label{display:block;font-weight:700;font-size:.9rem;margin-bottom:10px}
.code-box .cb-row{display:flex;gap:10px}
.code-box input{flex:1;border:1.5px solid var(--line);border-radius:999px;
  padding:13px 20px;font-family:var(--font-body);font-size:.95rem;
  text-transform:uppercase;letter-spacing:.04em;background:var(--surface);color:var(--ink)}
.code-box input:focus{outline:none;border-color:var(--green-dark)}
.cb-msg{margin-top:12px;font-weight:700;font-size:.88rem}
.cb-msg.ok{color:var(--green-dark)} .cb-msg.bad{color:var(--danger)}

/* plan: purchase form */
.buyf{display:flex;flex-direction:column;gap:9px}
.buyf select{border:1.5px solid var(--line);border-radius:999px;padding:11px 16px;
  font-family:var(--font-body);font-weight:700;font-size:.85rem;
  background:var(--surface);color:var(--ink)}
.buyf .btn{justify-content:center;text-align:center}
.buycredit{display:flex;gap:8px;align-items:center;font-size:.78rem;font-weight:600;
  cursor:pointer}
.buycredit input{accent-color:var(--green-dark)}
.buyf .taxnote{text-align:center;color:var(--ink-soft);font-size:.72rem;font-weight:600}
.plan .cur .until{display:block;font-size:.68rem;color:var(--ink-soft);
  text-transform:none;letter-spacing:0;margin-top:3px}

/* auth: verification + reset */
.vcode{width:100%;text-align:center;font-family:var(--font-head);
  font-size:2rem;font-weight:700;letter-spacing:.4em;padding:14px 0 14px .4em;
  border:1.5px solid var(--line);border-radius:12px;background:var(--surface);
  color:var(--ink)}
.vcode:focus{outline:none;border-color:var(--green-dark)}
.card .btn.wide{width:100%;justify-content:center}
.card .resend{margin-top:-6px}
.auth-ok{color:var(--green-dark);font-weight:700;font-size:.88rem;margin:10px 0}

/* templates: saved theme tiles */
.tpl-tile{background:var(--bg);border-radius:var(--radius-s);padding:20px;
  display:flex;flex-direction:column;gap:6px;align-items:flex-start}
.tpl-tile .star{color:var(--green-dark);font-size:1.3rem}
.tpl-tile b{font-family:var(--font-head);font-weight:600}
.tpl-tile small{color:var(--ink-soft);font-size:.76rem}
.tpl-del{border:1.5px solid var(--line);background:none;border-radius:999px;
  padding:7px 14px;font-weight:700;font-size:.72rem;color:var(--ink-soft);
  cursor:pointer;margin-top:6px}
.tpl-del:hover{border-color:var(--danger);color:var(--danger)}

/* dashboard: first-visit welcome */
.ev-empty{background:var(--surface-2);border-radius:var(--radius-s);
  padding:22px 24px;margin-bottom:12px}
.ev-empty b{font-family:var(--font-head);font-weight:700;font-size:1.05rem}
.ev-empty p{color:var(--ink-soft);font-size:.88rem;margin-top:6px;line-height:1.5}

.upc .arch.del:hover{border-color:var(--danger);color:var(--danger)}

/* ── public front page ── */
.pub-nav{max-width:1180px;margin:0 auto;padding:18px 12px;display:flex;
  align-items:center;justify-content:space-between;gap:14px}
.pub-nav .sh-brand{text-decoration:none;color:inherit;display:flex;
  align-items:center;gap:10px}
.pub-nav .word{font-family:var(--font-head);font-weight:800;font-size:1.15rem}
.pub-nav .word i{font-style:normal;color:var(--green-dark)}
.pub-actions{display:flex;gap:10px}
body:has(.pub){padding-top:0;padding-bottom:0}
.pub{display:flex;flex-direction:column;gap:70px;padding-bottom:70px}
.pub-hero{margin-top:16px}
.pub-hero .h-hero{min-height:340px;gap:16px}
.pub-hero .h-hero p{max-width:520px;font-size:1.02rem}
.hero-cta{background:var(--navy);color:#fff;font-size:1rem;padding:16px 30px}
.pub-badge-tile{min-height:340px}
.mockbadge{background:#fff;border-radius:12px;width:min(260px,80%);
  aspect-ratio:105/74;box-shadow:0 18px 44px rgba(0,0,0,.35);position:relative;
  display:flex;flex-direction:column;align-items:center;justify-content:center;
  overflow:hidden;transform:rotate(-3deg)}
.mockbadge .hole{position:absolute;top:8px;left:50%;transform:translateX(-50%);
  width:16px;height:16px;border-radius:50%;background:var(--navy);opacity:.12}
.mockbadge .first{font-family:var(--font-head);font-weight:800;
  font-size:2.2rem;color:#001D40;line-height:1;margin-top:6px}
.mockbadge .last{font-family:var(--font-head);font-weight:700;font-size:.95rem;
  letter-spacing:.14em;color:#475569;margin-top:2px}
.mockbadge .bar{position:absolute;left:0;right:0;bottom:0;height:26%;
  background:#001D40;display:flex;align-items:center;justify-content:space-between;
  padding:0 12px}
.mockbadge .bar i{font-style:normal;color:#fff;font-weight:700;font-size:.68rem}
.mockbadge .bar em{font-style:normal;color:#22D36B;font-weight:800;
  font-size:.62rem;letter-spacing:.06em}
.pub-sec{max-width:1180px;margin:0 auto;padding:0 12px;width:100%}
.pub-sec h2{font-size:clamp(1.5rem,2.8vw,2.1rem);letter-spacing:-.02em;
  text-align:center;margin-bottom:8px}
.pub-sub{text-align:center;color:var(--ink-soft);margin-bottom:26px}
.pub-steps{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.pstep{background:var(--surface);border-radius:var(--radius);
  box-shadow:var(--shadow-s);padding:28px}
.pstep .pn{width:38px;height:38px;border-radius:50%;background:var(--green);
  color:var(--navy);font-weight:800;display:flex;align-items:center;
  justify-content:center;margin-bottom:14px;font-family:var(--font-head)}
.pstep b{font-family:var(--font-head);font-weight:700;font-size:1.05rem}
.pstep p{color:var(--ink-soft);font-size:.9rem;margin-top:8px;line-height:1.55}
.pub-prods{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-top:26px}
.pprod{background:var(--navy);color:#fff;border-radius:var(--radius);padding:28px}
.pprod b{font-family:var(--font-head);font-weight:700;font-size:1.05rem}
.pprod p{color:#B8C2D4;font-size:.88rem;margin-top:8px;line-height:1.5}
.pub-sec .plans{margin-top:30px;padding:0}
.pub-final{text-align:center;display:flex;flex-direction:column;gap:20px;
  align-items:center;background:var(--green);border-radius:var(--radius);
  max-width:1180px;margin:0 auto;width:calc(100% - 24px);padding:60px 20px}
.pub-final h2{color:#fff;font-size:clamp(1.4rem,2.6vw,2rem);letter-spacing:-.02em}
@media(max-width:860px){.pub-steps,.pub-prods{grid-template-columns:1fr}}

/* ── big blocky footer ── */
.bigfoot{background:var(--surface-2);margin-top:0}
.bf-in{max-width:1180px;margin:0 auto;padding:56px 20px 30px;display:flex;
  flex-direction:column;gap:40px}
.bf-brand{display:flex;align-items:center;gap:12px}
.bf-brand .word{font-family:var(--font-head);font-weight:800;font-size:1.5rem}
.bf-brand .word i{font-style:normal;color:var(--green-dark)}
.bf-cols{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));
  gap:26px}
.bf-col{display:flex;flex-direction:column;gap:10px;font-size:.9rem}
.bf-col b{font-family:var(--font-head);font-weight:700;font-size:.85rem;
  margin-bottom:4px}
.bf-col a{color:var(--ink-soft);text-decoration:none}
.bf-col a:hover{color:var(--green-dark)}
.bf-col span{color:var(--ink-soft)}
.bf-base{display:flex;justify-content:space-between;gap:16px;flex-wrap:wrap;
  color:var(--ink-soft);font-size:.8rem;border-top:1px solid var(--line);
  padding-top:22px}
.bf-strip{background:var(--surface);padding:14px 20px;display:flex;
  justify-content:space-between;max-width:1180px;margin:0 auto;font-size:.8rem;
  color:var(--ink-soft)}
.bf-strip a{color:var(--ink);font-weight:700;text-decoration:none}

/* upcoming: archived drawer */
.arch-sec{grid-column:span 12;margin-top:10px}
.arch-sec summary{cursor:pointer;font-weight:700;font-size:.85rem;
  color:var(--ink-soft);padding:10px 4px;list-style:none}
.arch-sec summary::before{content:'▸ '}
.arch-sec[open] summary::before{content:'▾ '}
.arch-sec .h-list{margin-top:8px}
.arch-row{opacity:.75}
.arch-row:hover{opacity:1}

/* public page: brand colours + footer logo sizing */
.pub-nav .sh-brand .word b{color:var(--ink)}
.pub-nav .sh-brand .word i{color:var(--green-dark)}
.pub-nav .sh-brand svg{width:36px;height:36px;flex:none}
.bf-brand svg{width:54px;height:54px;flex:none}
.bf-brand .word b{color:var(--ink)}

/* ── admin: base station ── */
.errmsg{grid-column:span 12;color:var(--danger);font-weight:700}
.adm-tabs{grid-column:span 12;display:flex;gap:10px}
.adm-tabs a{border:2px solid var(--line);border-radius:999px;padding:11px 22px;
  font-weight:700;font-size:.85rem;text-decoration:none;color:var(--ink-soft)}
.adm-tabs a.on{background:var(--navy);border-color:var(--navy);color:#fff}
.adm-tabs a:hover{border-color:var(--navy);color:var(--ink)}
.adm-ord.done{opacity:.65}
.adm-ord.done:hover{opacity:1}
.adm-ord .adm-doit{font-size:.8rem;padding:10px 18px}
.bento .adm-wide{grid-column:span 12}
.adm-h{font-size:.78rem;text-transform:uppercase;letter-spacing:.06em;
  color:var(--ink-soft);margin-bottom:14px;font-family:var(--font-body)}
.adm-none{color:var(--ink-soft);font-size:.88rem;margin-bottom:14px}
.adm-table{display:flex;flex-direction:column;gap:2px;overflow-x:auto}
.adm-tr{display:grid;gap:12px;align-items:center;padding:12px 14px;
  grid-template-columns:110px minmax(180px,1.4fr) 110px 110px 90px 80px auto;
  border-radius:var(--radius-s);min-width:840px}
.adm-tr:nth-child(even){background:var(--bg)}
.adm-th{font-size:.72rem;text-transform:uppercase;letter-spacing:.05em;
  color:var(--ink-soft);font-weight:700}
.adm-tr.off{opacity:.45}
.adm-tr.off:hover{opacity:.9}
.adm-tr b{font-family:var(--font-head);font-weight:600}
.adm-acts{display:flex;gap:8px;justify-content:flex-end;align-items:center}
.adm-acts .arch{border:1.5px solid var(--line);background:none;
  color:var(--ink-soft);font-weight:700;font-size:.78rem;border-radius:999px;
  padding:8px 14px;cursor:pointer;text-decoration:none}
.adm-acts .arch:hover{border-color:var(--navy);color:var(--ink)}
.adm-acts .arch.del:hover{border-color:var(--danger);color:var(--danger)}
.adm-form{display:grid;gap:14px 18px;grid-template-columns:repeat(4,1fr);
  max-width:900px}
.adm-form .field span{display:block;font-size:.75rem;font-weight:700;
  text-transform:uppercase;letter-spacing:.04em;color:var(--ink-soft);
  margin-bottom:6px}
.adm-form .adm-span2{grid-column:span 2}
.adm-form .adm-save{display:flex;gap:12px;align-items:center;grid-column:span 4}
@media (max-width:760px){
  .adm-form{grid-template-columns:repeat(2,1fr)}
  .adm-form .adm-save{grid-column:span 2}
}
