/* Control panel redesign — PREVIEW (/admin-preview, 2026-11-11). Everything is scoped to
   body.adm2, so /admin and the rest of the site are unaffected. */
body:not(.adm2) .adm2-only{display:none!important;}
body:not(.adm2) .a2-dx{display:none;}

/* site chrome off; the panel becomes an app shell */
body.adm2 header.nav,body.adm2 footer,body.adm2 #page-admin>.page-head,body.adm2 #admin-tabs{display:none!important;}
body.adm2{--a2-side:256px;}
body.adm2 #page-admin>.wrap{max-width:none;width:auto!important;margin:0 0 0 var(--a2-side);padding:0 32px 64px;box-sizing:border-box;min-width:0;}
body.adm2{overflow-x:hidden;}
body.adm2 .a2-row a,body.adm2 .a2-g a,body.adm2 .a2-sh a{text-decoration:none;}
body.adm2 #page-admin .admin-panel{max-width:1180px;}

/* sidebar */
#adm2-side{position:fixed;top:0;left:0;bottom:0;width:var(--a2-side);box-sizing:border-box;background:var(--void);border-right:1px solid var(--line);padding:18px 12px 24px;overflow-y:auto;z-index:70;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin;}
.a2-brand{display:flex;align-items:center;gap:10px;padding:0 6px;}
.a2-logo{width:30px;height:30px;border-radius:8px;border:1px solid var(--lagoon);display:flex;align-items:center;justify-content:center;flex:none;}
.a2-logo i{width:10px;height:10px;border-radius:50%;background:var(--lagoon);}
.a2-bt{display:flex;flex-direction:column;flex:1;min-width:0;}
.a2-bt b{font-family:'Chakra Petch',sans-serif;font-size:15px;letter-spacing:.04em;}
.a2-bt small{font-family:'Fira Code',monospace;font-size:11px;color:var(--muted);}
.a2-x{display:none;width:40px;height:40px;background:none;border:1px solid var(--line);border-radius:8px;color:var(--muted);cursor:pointer;}
.a2-jump{display:flex;align-items:center;gap:8px;background:var(--surface2);border:1px solid var(--line);border-radius:8px;padding:0 10px;color:var(--muted);}
body.adm2 .a2-jump input{flex:1;min-width:0;background:transparent!important;border:0!important;padding:9px 0!important;color:var(--text);font-size:13px;outline:none;width:auto;}
.a2-jump:focus-within{border-color:var(--lagoon);}
.a2-jump kbd{font-family:'Fira Code',monospace;font-size:10.5px;border:1px solid var(--line);border-radius:4px;padding:1px 5px;white-space:nowrap;}
.a2-group{display:flex;flex-direction:column;gap:1px;}
.a2-group[hidden],.a2-item[hidden]{display:none!important;}
.a2-gl{font-family:'Fira Code',monospace;font-size:10.5px;letter-spacing:.14em;color:var(--muted);padding:4px 10px 6px;}
.a2-item{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:7px 10px;border-radius:7px;color:var(--text);font-size:13.5px;text-decoration:none;}
.a2-item:hover{background:var(--surface2);color:var(--text);}
.a2-item.active{background:color-mix(in srgb,var(--lagoon) 13%,transparent);color:var(--lagoon);font-weight:600;}
.a2-item:focus-visible{outline:2px solid var(--lagoon);outline-offset:-2px;}
.a2-bdg{font-family:'Fira Code',monospace;font-size:10.5px;min-width:0;}
.a2-bdg.on{background:var(--coral);color:#fff;border-radius:9px;padding:1px 7px;font-weight:600;}
.a2-bdg.dot{width:8px;height:8px;border-radius:50%;padding:0;}
.a2-bdg.dot.ok{background:var(--lagoon);} .a2-bdg.dot.bad{background:var(--coral);}
.a2-back{margin-top:auto;padding:10px;font-size:12.5px;color:var(--muted);text-decoration:none;border-top:1px solid var(--line);}
.a2-back:hover{color:var(--lagoon);}

/* top bar */
#adm2-top{position:sticky;top:0;z-index:50;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin:0 -32px 24px;padding:14px 32px;background:color-mix(in srgb,var(--void) 92%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line);}
.a2-burger{display:none;width:42px;height:42px;background:var(--surface);border:1px solid var(--line);border-radius:9px;color:var(--text);cursor:pointer;align-items:center;justify-content:center;}
.a2-crumb{font-family:'Fira Code',monospace;font-size:12.5px;color:var(--muted);}
.a2-crumb span{margin:0 4px;opacity:.6;} .a2-crumb b{color:var(--text);font-weight:500;}
.a2-preview{font-family:'Fira Code',monospace;font-size:10px;letter-spacing:.12em;padding:2px 8px;border:1px solid var(--sand);color:var(--sand);border-radius:6px;}
.a2-sp{flex:1;}
.a2-newwrap{position:relative;}
.a2-menu{position:absolute;right:0;top:calc(100% + 6px);min-width:190px;background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:6px;box-shadow:0 14px 34px rgba(0,0,0,.4);z-index:60;display:flex;flex-direction:column;}
.a2-menu[hidden]{display:none;}
.a2-menu button{background:none;border:0;text-align:left;padding:9px 12px;border-radius:7px;color:var(--text);font:inherit;font-size:13.5px;cursor:pointer;}
.a2-menu button:hover,.a2-menu button:focus-visible{background:var(--surface2);color:var(--lagoon);outline:none;}

/* list toolbar where the form used to sit */
.a2-toolbar{display:flex;justify-content:flex-end;margin:0 0 12px;}

/* slide-over editor */
body.adm2 .adm2-drawer{position:fixed;top:0;right:0;bottom:0;width:min(640px,100vw);max-width:none!important;margin:0!important;border-radius:0!important;border-width:0 0 0 1px!important;box-sizing:border-box;overflow-y:auto;z-index:85;padding:22px 26px 0!important;box-shadow:-24px 0 48px rgba(0,0,0,.45);transform:translateX(104%);visibility:hidden;transition:transform .22s ease,visibility 0s linear .22s;}
body.adm2.adm2-editing .admin-panel:not(.hidden)>.adm2-drawer{transform:none;visibility:visible;transition:transform .22s ease;}
body.adm2 .adm2-drawer h3{padding-right:52px;}
body.adm2 .adm2-drawer .editor-actions{position:sticky;bottom:0;margin:18px -26px 0;padding:14px 26px;background:var(--surface);border-top:1px solid var(--line);z-index:2;}
.a2-dx{position:sticky;top:0;float:right;margin:-4px -6px 0 0;width:38px;height:38px;background:var(--surface);border:1px solid var(--line);border-radius:8px;color:var(--muted);cursor:pointer;z-index:3;}
.a2-dx:hover{color:var(--text);border-color:var(--muted);}
#adm2-bd{position:fixed;inset:0;background:rgba(6,8,10,.55);z-index:80;opacity:0;pointer-events:none;transition:opacity .2s;}
body.adm2.adm2-editing #adm2-bd{opacity:1;pointer-events:auto;}

/* dashboard */
.a2-dash{display:flex;flex-direction:column;gap:28px;}
.a2-hello h1{margin:0 0 4px;font-family:'Chakra Petch',sans-serif;font-weight:600;font-size:30px;}
.a2-hello p{margin:0;color:var(--muted);}
.a2-sec{display:flex;flex-direction:column;gap:10px;}
.a2-sec h2{margin:0;font-family:'Fira Code',monospace;font-weight:500;font-size:12px;letter-spacing:.12em;color:var(--muted);}
.a2-sh{display:flex;align-items:baseline;gap:12px;} .a2-sh a{font-size:13px;}
.a2-alert{display:flex;flex-wrap:wrap;align-items:center;gap:14px;padding:15px 18px;border:1px solid color-mix(in srgb,var(--coral) 55%,transparent);background:color-mix(in srgb,var(--coral) 8%,transparent);border-radius:10px;}
.a2-alert.soft{border-color:var(--line);background:var(--surface);}
.a2-alert>i{width:10px;height:10px;border-radius:50%;background:var(--coral);flex:none;}
.a2-alert.soft>i{background:var(--sand);}
.a2-alert>div{flex:1 1 300px;display:flex;flex-direction:column;gap:2px;}
.a2-alert strong{font-weight:600;} .a2-alert span{color:var(--muted);font-size:13px;}
.a2-alert code{font-family:'Fira Code',monospace;color:var(--text);}
.a2-clear{display:flex;flex-wrap:wrap;gap:8px 22px;padding:12px 18px;border:1px solid var(--line);border-radius:10px;color:var(--muted);font-size:13px;}
.a2-clear b{color:var(--lagoon);font-weight:500;}
.a2-acs{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px;}
.a2-ac{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:13px 14px;display:flex;flex-direction:column;gap:5px;}
.a2-ac span{color:var(--muted);font-size:12px;} .a2-ac small{font-family:'Fira Code',monospace;font-size:11px;color:var(--muted);}
.a2-ac b{font-weight:600;} .a2-ac b.ok,.a2-ac b.run{color:var(--lagoon);} .a2-ac b.bad{color:var(--coral);} .a2-ac b.warn{color:var(--sand);}
.a2-muted{font-size:13px;color:var(--muted);}
.a2-row{display:flex;flex-wrap:wrap;gap:8px 24px;} .a2-row a{color:var(--muted);} .a2-row a:hover{color:var(--lagoon);}
.a2-tiles{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;}
.a2-tile{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px;display:flex;flex-direction:column;gap:4px;color:var(--text);text-decoration:none;transition:border-color .15s;}
.a2-tile:hover{border-color:var(--lagoon);color:var(--text);}
.a2-tile strong{font-family:'Chakra Petch',sans-serif;font-size:32px;font-weight:600;}
.a2-tl{font-family:'Fira Code',monospace;font-size:11px;color:var(--muted);letter-spacing:.08em;}
.a2-new{color:var(--lagoon);font-size:13px;align-self:flex-start;}
.a2-new:hover{text-decoration:underline;}
.a2-glance{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;}
.a2-g{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:6px;min-width:0;}
.a2-g>span:not(.a2-tl){overflow:hidden;text-overflow:ellipsis;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;}
.a2-g a{font-size:13px;}

/* tablet / phone: sidebar becomes a slide-out menu */
@media (max-width:980px){
  body.adm2 #page-admin>.wrap{margin-left:0;padding:0 16px 56px;}
  #adm2-top{margin:0 -16px 18px;padding:10px 16px;}
  .a2-burger{display:inline-flex;}
  .a2-x{display:inline-block;}
  #adm2-side{width:300px;transform:translateX(-102%);transition:transform .22s ease;z-index:90;}
  body.adm2.adm2-nav #adm2-side{transform:none;box-shadow:24px 0 48px rgba(0,0,0,.45);}
  body.adm2.adm2-nav #adm2-bd{opacity:1;pointer-events:auto;z-index:88;}
  .a2-tiles{grid-template-columns:repeat(2,minmax(0,1fr));}
  .a2-glance{grid-template-columns:1fr;}
  .a2-jump kbd{display:none;}
  body.adm2 .adm2-drawer{padding:18px 16px 0!important;}
  body.adm2 .adm2-drawer .editor-actions{margin:18px -16px 0;padding:12px 16px;}
}
@media (max-width:560px){
  .a2-crumb{font-size:11.5px;}
  .a2-preview{display:none;}
  #adm2-top .btn.ghost{display:none;}
  .a2-hello h1{font-size:24px;}
}
body.adm2 .adm2-drawer textarea{min-height:42vh;}
.a2-sub{font-size:13px;color:var(--muted);}
