:root{--bg:#07040d;--bg2:#120a1f;--card:#170c26;--line:rgba(166,77,255,.24);--text:#f4f0ff;--muted:#cbbfe3;--dim:#9b8db8;--red:#e0102f;--orange:#a64dff;--amber:#c38bff;--gold:#e4e4f2;--silver:#e4e4f2;--purple:#8a2be2;--violet:#a64dff;
--glow:linear-gradient(90deg,#7b1fd6 0%,#a64dff 48%,#e0102f 100%);--glow-v:linear-gradient(0deg,#7b1fd6 0%,#a64dff 50%,#e0102f 100%);--chrome:linear-gradient(180deg,#ffffff 0%,#e9e9f6 38%,#a9a9c6 52%,#f2f2ff 70%,#c9c9dd 100%);--radius:18px}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;background:radial-gradient(1200px 500px at 50% -120px,#1a0928 0%,var(--bg) 60%) no-repeat,var(--bg);color:var(--text);font:400 15px/1.5 'Inter',system-ui,-apple-system,Segoe UI,Roboto,sans-serif;min-height:100vh}
.topbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px 12px;max-width:720px;margin:0 auto;padding:14px 16px 0}
.brand{display:inline-flex;align-items:center;gap:10px;text-decoration:none;color:var(--text);font:400 17px 'Russo One',sans-serif;letter-spacing:.06em;text-transform:uppercase}
.brand img{border-radius:8px}.brand b{background:linear-gradient(90deg,#c38bff,#ff4a66);-webkit-background-clip:text;background-clip:text;color:transparent;font-weight:400}
.wrap{max-width:720px;margin:0 auto;padding:12px 16px 40px}
.hero{text-align:center}
.banner{border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;box-shadow:0 10px 40px rgba(236,19,55,.18);aspect-ratio:16/6.4;background:#000000}
.banner img{width:100%;height:100%;object-fit:cover;object-position:50% 40%;display:block}
.eyebrow{margin:18px 0 4px;font:400 12px 'Russo One',sans-serif;letter-spacing:.18em;color:var(--amber)}
h1{margin:0;font:400 clamp(34px,8vw,52px)/1.05 'Anton',Impact,sans-serif;letter-spacing:.02em;text-transform:uppercase;filter:drop-shadow(0 0 14px rgba(166,77,255,.55));background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
.sub{margin:10px auto 0;color:var(--muted);max-width:480px}
.tabs{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin:18px 0 6px}
.tab{appearance:none;border:1px solid var(--line);background:#150b1d;color:var(--muted);font:600 13px 'Inter',sans-serif;padding:10px 16px;border-radius:999px;cursor:pointer;min-height:42px}
.tab:hover{color:var(--text);border-color:rgba(162,31,255,.5)}
.tab.on{background:var(--glow);color:#ffffff;border-color:transparent;font-weight:700}
.panel{margin-top:14px;background:linear-gradient(180deg,var(--bg2),#0c0710);border:1px solid var(--line);border-radius:var(--radius);padding:20px 16px}
.panel[hidden]{display:none}
h2{margin:0 0 6px;font:400 22px 'Russo One',sans-serif;letter-spacing:.03em}
.note,.fine,.status{color:var(--dim);font-size:13px}
.note b{color:var(--muted)}
.lbl{display:block;margin:14px 0 6px;font-weight:600;font-size:13px;color:var(--text)}
.field{width:100%;background:#0b060f;border:1px solid rgba(162,31,255,.28);border-radius:12px;color:var(--text);padding:12px 12px;font:400 15px 'Inter',sans-serif;min-height:46px}
.field::placeholder{color:#675c79}
.field:focus,.btn:focus-visible,.tab:focus-visible,.x:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
select.field{appearance:none;background-image:linear-gradient(45deg,transparent 50%,var(--amber) 50%),linear-gradient(135deg,var(--amber) 50%,transparent 50%);background-position:calc(100% - 20px) 20px,calc(100% - 14px) 20px;background-size:6px 6px;background-repeat:no-repeat;padding-right:36px}
.status{margin:14px 0 10px}
.notice{margin:6px 0 12px;padding:10px 12px;border:1px solid rgba(162,31,255,.35);border-radius:12px;background:rgba(153,10,255,.08);color:var(--muted);font-size:13px}
.cards{display:grid;gap:12px}
.card{position:relative;border:1px solid var(--line);border-radius:16px;background:linear-gradient(160deg,#160c1f,#0f0914);padding:12px;overflow:hidden}
.card.sp{border-color:rgba(162,31,255,.55);box-shadow:0 0 0 1px rgba(162,31,255,.15) inset,0 6px 24px rgba(236,19,55,.12)}
.special{margin:-2px -2px 10px;padding:9px 12px;border-radius:10px;text-align:center;font:400 14px 'Russo One',sans-serif;letter-spacing:.04em;color:#ffffff;background:var(--glow);overflow-wrap:anywhere}
.special.small{margin:0 0 12px}
.pill{display:inline-block;font:700 11px 'Inter',sans-serif;padding:3px 9px;border-radius:999px;background:rgba(208,205,223,.14);color:var(--gold);border:1px solid rgba(208,205,223,.3)}
.when{margin:10px 0 2px;font:700 17px 'Inter',sans-serif;color:var(--gold)}
.who{color:var(--muted);margin:0;overflow-wrap:anywhere}
.det{color:var(--dim);font-size:13px;margin:6px 0 12px}
.btn{appearance:none;border:1px solid transparent;border-radius:12px;padding:12px 18px;font:700 14px 'Inter',sans-serif;cursor:pointer;min-height:46px;display:inline-flex;align-items:center;justify-content:center;gap:8px}
.btn.gold{background:var(--glow);color:#ffffff}
.btn.gold:hover{filter:brightness(1.08)}
.btn.claim{background:#0b060f;color:var(--text);border-color:rgba(162,31,255,.45);width:100%}
.btn.claim:hover:not([disabled]){border-color:var(--gold);color:var(--gold)}
.btn[disabled]{opacity:.5;cursor:not-allowed}
.btn.outline{background:transparent;color:var(--gold);border-color:rgba(208,205,223,.6)}
.btn.ghost{background:#150b1d;color:var(--muted);border-color:var(--line)}
.btn.wide{width:100%;margin-top:14px}
.grid3{display:grid;gap:0 12px;grid-template-columns:1fr}
.grid2{display:grid;gap:0 12px;grid-template-columns:1fr}
@media(min-width:640px){.grid3{grid-template-columns:repeat(3,1fr)}.grid2{grid-template-columns:1fr 1fr}.cards{gap:14px}}
#reqForm .btn{margin-top:18px}
.err{margin:12px 0 0;padding:10px 12px;border-radius:10px;background:rgba(236,19,55,.14);border:1px solid rgba(236,19,55,.5);color:#cbb5f2;font-size:13px}
.done{text-align:center;padding:22px 8px}.done h3{margin:0 0 6px;font:400 22px 'Russo One',sans-serif;color:var(--gold)}
.hp{position:absolute!important;left:-9999px;width:1px;height:1px;overflow:hidden}
.day{margin:14px 2px 2px;font:400 12px 'Russo One',sans-serif;letter-spacing:.14em;color:var(--amber);text-transform:uppercase}
.empty{padding:22px 10px;text-align:center;color:var(--dim)}
.vs{color:var(--text);margin:0;overflow-wrap:anywhere}
dialog{border:1px solid rgba(162,31,255,.6);border-radius:20px;background:#0f0914;color:var(--text);padding:0;width:min(94vw,470px);max-height:92dvh;overflow:auto;box-shadow:0 20px 80px rgba(0,0,0,.8)}
dialog::backdrop{background:rgba(0,0,0,.72);backdrop-filter:blur(3px)}
#claimForm{padding:22px 20px 22px;position:relative}
.x{position:absolute;top:12px;right:12px;background:none;border:0;color:var(--text);font-size:18px;cursor:pointer;width:40px;height:40px;border-radius:10px}
#cm-title{margin:0 0 8px;font:400 26px 'Russo One',sans-serif;padding-right:36px}
.slotline{color:var(--muted);margin:0 0 14px}
.reqtime{font-weight:700;color:var(--muted);margin:16px 0 10px}
.q{color:var(--muted);margin:12px 0}
#cm-propose{margin:2px 0 4px}
#cm-submit{margin-top:4px}
.foot{margin-top:30px;text-align:center;color:var(--dim)}
.foot img{border-radius:8px}.foot p{margin:4px 0}.foot b{font:400 13px 'Russo One',sans-serif;letter-spacing:.14em;color:var(--amber)}
@media(prefers-reduced-motion:no-preference){.card{transition:border-color .2s,transform .2s}.card:hover{border-color:rgba(162,31,255,.5)}}
@media (max-width:640px){.tabs{gap:6px;flex-wrap:wrap}.tab{padding:10px 12px;font-size:12px}}
#panel-cards.xmas{border-color:rgba(236,20,56,.55);box-shadow:0 0 0 1px rgba(20,90,40,.35) inset}
#panel-cards .agree{display:flex;gap:10px;align-items:flex-start;margin-top:16px;color:var(--muted);font-size:14px}
#panel-cards .agree input{margin-top:3px;width:18px;height:18px;accent-color:var(--gold)}
.xm-filters{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0}
.xm-filters .btn.on{border-color:var(--gold);color:var(--gold)}
.xm-badge{font:800 11px 'Inter',sans-serif;letter-spacing:.04em;text-transform:uppercase;border-radius:999px;padding:4px 10px}
.xm-badge.pending{color:var(--gold);border:1px solid rgba(208,205,223,.45)}
.xm-badge.done{color:#9dffb8;border:1px solid rgba(46,204,113,.55)}
#xm-list .card .btn{margin-top:8px}

.admrow{margin-top:12px}.admask{margin-top:6px;display:flex;gap:8px;flex-wrap:wrap;align-items:center}.admask .fine{flex:1 1 100%;margin:0}
.btn.decline{background:#1b0a2a;color:#a781e9;border-color:rgba(255,60,93,.55);min-height:40px;padding:8px 14px}
.btn.decline:hover:not([disabled]){border-color:#ff3c5d;color:#c2a8f0}.btn.decline.sure{background:#7a081b;color:#ffffff}
.admchip{margin-top:10px;font-size:12px;color:var(--amber)}.linkbtn{background:none;border:0;color:var(--gold);text-decoration:underline;cursor:pointer;font:inherit;padding:0}

.hidecreator{position:relative;display:flex;align-items:stretch;margin:8px 0 2px;height:38px;border-radius:999px}
.hc-q{position:absolute;left:0;top:0;z-index:2;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;background:#0b060f;color:var(--gold);border:2px solid var(--orange);box-shadow:0 0 0 2px #0b060f,0 0 14px rgba(153,10,255,.55);font:400 18px 'Russo One',sans-serif}
.hc-bar{flex:1.25 1 0;min-width:0;display:flex;align-items:center;padding:0 10px 0 48px;border-radius:999px 0 0 999px;background:linear-gradient(90deg,#ec1337 0%,#990aff 55%,#a21fff 100%);color:#ffffff;font:400 12px/1.1 'Russo One',sans-serif;letter-spacing:.02em;box-shadow:0 0 16px rgba(153,10,255,.28)}
.hc-bar span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.hc-slot{flex:1 1 0;min-width:0;display:flex;align-items:center;justify-content:flex-end;padding:0 14px 0 8px;border:1.5px dashed rgba(162,31,255,.7);border-left:0;border-radius:0 999px 999px 0;color:var(--amber);font:700 12px 'Inter',sans-serif;white-space:nowrap}
#cm-hide{margin:0 0 14px}
.pill.confirmed{background:var(--glow);color:#ffffff;border-color:transparent;font-size:12px;padding:4px 12px}
.revealed{margin:10px 0 4px;font:400 18px 'Russo One',sans-serif;color:var(--text);overflow-wrap:anywhere}

/* ===== starry night + purple/red smoke + paw prints, list layout ===== */
body{background:#07040d;position:relative;overflow-x:hidden}
body::before{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;
 background:
  radial-gradient(1.4px 1.4px at 7% 12%,#fff 50%,transparent 62%),
  radial-gradient(1.1px 1.1px at 19% 34%,#e4dcff 50%,transparent 62%),
  radial-gradient(1.6px 1.6px at 33% 8%,#fff 50%,transparent 62%),
  radial-gradient(1px 1px at 46% 22%,#d8c6ff 50%,transparent 62%),
  radial-gradient(1.5px 1.5px at 61% 6%,#fff 50%,transparent 62%),
  radial-gradient(1.2px 1.2px at 74% 28%,#ffd6de 50%,transparent 62%),
  radial-gradient(1.7px 1.7px at 88% 14%,#fff 50%,transparent 62%),
  radial-gradient(1.1px 1.1px at 95% 42%,#e4dcff 50%,transparent 62%),
  radial-gradient(1.3px 1.3px at 12% 58%,#fff 50%,transparent 62%),
  radial-gradient(1px 1px at 52% 48%,#fff 50%,transparent 62%),
  radial-gradient(1.2px 1.2px at 84% 64%,#fff 50%,transparent 62%),
  radial-gradient(ellipse 70% 36% at 50% -8%,rgba(166,77,255,.42),transparent 70%),
  radial-gradient(ellipse 55% 45% at 0% 100%,rgba(138,43,226,.55),transparent 70%),
  radial-gradient(ellipse 50% 42% at 100% 100%,rgba(224,16,47,.42),transparent 70%),
  radial-gradient(ellipse 30% 40% at 100% 30%,rgba(224,16,47,.16),transparent 75%),
  radial-gradient(ellipse 30% 40% at 0% 35%,rgba(166,77,255,.2),transparent 75%),
  url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='220' height='220' viewBox='0 0 220 220'%3E%3Cg fill='%23a64dff' fill-opacity='.07'%3E%3Cg transform='translate(40 50) rotate(-18)'%3E%3Cellipse cx='0' cy='14' rx='13' ry='11'/%3E%3Ccircle cx='-13' cy='-4' r='5'/%3E%3Ccircle cx='-4' cy='-11' r='5'/%3E%3Ccircle cx='6' cy='-11' r='5'/%3E%3Ccircle cx='14' cy='-3' r='5'/%3E%3C/g%3E%3C/g%3E%3Cg fill='%23e0102f' fill-opacity='.06'%3E%3Cg transform='translate(160 160) rotate(22)'%3E%3Cellipse cx='0' cy='14' rx='13' ry='11'/%3E%3Ccircle cx='-13' cy='-4' r='5'/%3E%3Ccircle cx='-4' cy='-11' r='5'/%3E%3Ccircle cx='6' cy='-11' r='5'/%3E%3Ccircle cx='14' cy='-3' r='5'/%3E%3C/g%3E%3C/g%3E%3C/svg%3E") 0 0/220px 220px,
  linear-gradient(180deg,#140826 0%,#08040f 48%,#170818 100%)}
body::after{content:"";position:fixed;inset:0;z-index:-1;pointer-events:none;opacity:.55;
 background:radial-gradient(1.2px 1.2px at 27% 18%,#fff 50%,transparent 62%),radial-gradient(1.4px 1.4px at 68% 38%,#fff 50%,transparent 62%),radial-gradient(1.1px 1.1px at 41% 72%,#fff 50%,transparent 62%),radial-gradient(1.3px 1.3px at 90% 82%,#fff 50%,transparent 62%),radial-gradient(1px 1px at 8% 86%,#fff 50%,transparent 62%);
 animation:bk-twinkle 4.5s ease-in-out infinite}
@media (prefers-reduced-motion:reduce){body::after{animation:none}}
.wrap{max-width:860px}
.panel{background:rgba(13,5,20,.62);backdrop-filter:blur(6px);-webkit-backdrop-filter:blur(6px);border-color:rgba(174,60,255,.28)}
.ranges{display:flex;flex-wrap:wrap;gap:8px;margin:14px 0 6px}
.rp{appearance:none;display:inline-flex;align-items:center;gap:7px;padding:8px 14px;min-height:40px;border-radius:999px;border:1px solid rgba(162,31,255,.35);background:rgba(12,5,18,.8);color:var(--text);font:600 13px 'Inter',sans-serif;cursor:pointer}
.rp svg{color:var(--amber)}.rp sup{font:400 10px 'Space Mono',monospace;color:var(--dim);margin-left:-2px}
.rp:hover{border-color:var(--gold)}
.rp.on{background:var(--glow);color:#ffffff;border-color:transparent}.rp.on svg,.rp.on sup{color:#ffffff}
.rp:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.tznote{margin:8px 2px 0;color:var(--dim);font-size:13px}
.dayhead{display:flex;align-items:center;justify-content:space-between;margin:20px 0 8px;padding:10px 16px;border-radius:14px;background:rgba(9,3,14,.72);border:1px solid rgba(174,60,255,.2)}
.dayhead h3{margin:0;font:700 17px 'Inter',sans-serif;color:var(--text)}
.dayhead span{font:400 12px 'Space Mono',monospace;color:var(--dim)}
.cards{gap:0}
.card{background:rgba(14,5,22,.84);border-color:rgba(174,60,255,.3)}
.card.slot{padding:14px 16px;border-radius:18px;margin:0 0 8px}
.card.slot .special{margin:-2px -4px 12px}
.srow{display:grid;grid-template-columns:minmax(166px,max-content) minmax(0,1fr) auto;gap:10px 18px;align-items:center}
.stime{flex-shrink:0;white-space:nowrap}
.tbig{font:400 40px/1 'Space Mono',monospace;color:var(--text);letter-spacing:-.02em;white-space:nowrap}
.tbig small{font:700 11px 'Space Mono',monospace;color:var(--amber);letter-spacing:.04em;margin-left:5px}
.tin{margin-top:6px;font:400 12px 'Space Mono',monospace;color:var(--dim)}
.pills{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-top:10px}
.tag{display:inline-flex;align-items:center;gap:6px;padding:5px 11px;border-radius:999px;background:rgba(153,10,255,.1);border:1px solid rgba(162,31,255,.28);color:var(--text);font:700 12px 'Inter',sans-serif}
.tag svg{color:var(--amber)}
.tag.pu{color:var(--gold)}.tag.adult{color:#a781e9;border-color:rgba(255,60,93,.6)}
.conf-flags{display:flex;flex-wrap:wrap;justify-content:center;gap:8px;margin:12px 0 4px}
.card .conf-flags{justify-content:flex-start;margin:8px 0 10px}
.conf-flags .t-pill svg,.conf-flags .tag svg{color:var(--amber);flex:none}
.fmt{color:var(--dim);font-size:12px}
.hidecreator{height:44px;margin:0;border-radius:999px;align-items:stretch}
.hc-bar{position:relative;flex:1.15 1 0;display:flex;align-items:center;gap:10px;padding:0 14px 0 4px;border-radius:999px 0 0 999px;background:linear-gradient(90deg,#cc1030 0%,#990aff 60%,#a21fff 100%);box-shadow:0 0 18px rgba(153,10,255,.35);color:#ffffff;font:700 13px 'Inter',sans-serif;letter-spacing:0;min-width:0}
.hc-bar::after{content:"";position:absolute;right:0;top:4px;bottom:4px;width:3px;border-radius:2px;background:#f1ebfc;box-shadow:0 0 8px rgba(241,235,252,.8)}
.hc-q{position:static;flex:none;width:34px;height:34px;border-radius:50%;display:grid;place-items:center;background:#0f0518;color:var(--gold);border:2px solid #d0cddf;box-shadow:none;font:400 16px 'Russo One',sans-serif}
.hc-txt{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#ffffff}
.hc-slot{flex:1 1 0;justify-content:flex-end;padding:0 18px 0 8px;border:1.5px dashed rgba(174,60,255,.65);border-left:0;border-radius:0 999px 999px 0;color:var(--gold);font:700 12px 'Inter',sans-serif;background:rgba(6,2,10,.35)}
.btn.claim{width:auto;min-width:96px;padding:0 26px;border-radius:999px;background:linear-gradient(180deg,#ffffff,#e2dcf2);color:#2a0a4a;border-color:transparent;font-weight:800;box-shadow:0 0 14px rgba(166,77,255,.35)}
.btn.claim:hover:not([disabled]){background:var(--glow);color:#ffffff}
#cm-hide .hidecreator{height:40px}
.card:not(.slot) .when{color:var(--gold)}
@media(max-width:640px){
  .srow{grid-template-columns:1fr auto;grid-template-areas:"time claim" "mid mid"}
  .stime{grid-area:time}.smid{grid-area:mid}.srow>.btn{grid-area:claim}
  .tbig{font-size:34px}
  .hidecreator{height:40px}.hc-q{width:30px;height:30px}.hc-bar{font-size:12px;gap:8px;flex:1 1 0;padding-right:10px}.hc-slot{flex:0 0 88px;padding:0 12px 0 6px;font-size:11px}
}
@media(max-width:380px){.hc-slot{display:none}.hc-bar{border-radius:999px}}
.tct{margin-top:6px;font:400 11px 'Space Mono',monospace;color:var(--muted)}
.tct+.tin{margin-top:3px}
.pq{border:0;margin:14px 0 0;padding:0}.pq legend{padding:0}
.rad{display:inline-flex;align-items:center;gap:8px;margin:2px 18px 2px 0;min-height:44px;cursor:pointer;font-weight:600}
.rad input{width:20px;height:20px;accent-color:#990aff}
.pq-on{margin:14px 0 0}

/* ---- No-Show Policy step (shown first when Claim is clicked) ---- */
dialog.pol{width:min(94vw,540px)}
.polstep{margin:0 0 10px;font:400 12px 'Russo One',sans-serif;letter-spacing:.14em;color:var(--amber);text-transform:uppercase}
.polimg{max-height:clamp(240px,calc(100dvh - 400px),660px);overflow-y:auto;overflow-x:hidden;border:1px solid rgba(162,31,255,.5);border-radius:14px;background:#000000;box-shadow:0 0 28px rgba(236,19,55,.25);-webkit-overflow-scrolling:touch;overscroll-behavior:contain}
.polimg:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.polimg img{display:block;width:100%;height:auto}
.agree{display:flex;align-items:flex-start;gap:12px;margin:14px 0 4px;padding:12px;border:1px solid rgba(162,31,255,.35);border-radius:12px;background:rgba(153,10,255,.07);color:var(--text);font-weight:600;cursor:pointer;line-height:1.35}
.agree input{flex:none;width:24px;height:24px;margin:0;accent-color:var(--orange);cursor:pointer}
.polbtns{display:flex;gap:10px;margin-top:12px}.polbtns .btn{flex:1}

/* ---- header admin button ---- */
.admbar{display:flex;align-items:center;gap:6px;margin-left:auto}
.admbtn{appearance:none;cursor:pointer;border:1px solid rgba(162,31,255,.45);background:linear-gradient(180deg,#1a0928,#0f0617);color:var(--gold);font:700 12px 'Inter',sans-serif;letter-spacing:.02em;padding:7px 12px;min-height:34px;border-radius:999px;box-shadow:0 0 14px rgba(236,19,55,.18)}
.admbtn:hover{border-color:var(--gold);color:#ffffff}.admbtn:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.admbtn.out{background:none;box-shadow:none;color:var(--muted);border-color:var(--line)}
.admbadge{font:700 12px 'Inter',sans-serif;color:#ffffff;background:var(--glow);padding:7px 12px;border-radius:999px;min-height:34px;display:inline-flex;align-items:center}
@media (max-width:440px){.brand{font-size:14px}.brand img{width:28px;height:28px}.topbar{padding-top:12px}}

/* ---- admin-only views ---- */
.tabs.adm{flex-wrap:wrap}
.card.strike .sttop{display:flex;align-items:center;justify-content:space-between;gap:10px}.card.strike h3{margin:0;font:700 16px 'Inter',sans-serif}
.card.strike .det{margin:4px 0 0;color:var(--muted);font-size:13px}.card.strike.blk{border-color:rgba(236,19,55,.7)}
.blockedbadge{font:800 11px 'Inter',sans-serif;letter-spacing:.06em;text-transform:uppercase;color:#ffffff;background:#b30c28;border-radius:999px;padding:4px 10px}
.panel.cal{padding:16px 10px}
.calnav{display:flex;align-items:center;gap:8px;margin:10px 0 6px}.caltitle{flex:1;text-align:center;margin:0;font:400 20px 'Anton',Impact,sans-serif;letter-spacing:.04em;text-transform:uppercase}
.calbtn{min-height:40px;padding:6px 14px}.calbtn.today{font-size:13px}
.calgrid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.calw{text-align:center;font:700 11px 'Inter',sans-serif;color:var(--dim);padding:4px 0}
.cday{position:relative;appearance:none;text-align:left;cursor:pointer;min-height:92px;padding:4px;border:1px solid var(--line);border-radius:10px;background:#0f0914;color:var(--text);display:flex;flex-direction:column;gap:2px;overflow:hidden;font:inherit}
.cday.off{border-color:transparent;background:none;cursor:default}
.cday:hover:not(.off){border-color:rgba(162,31,255,.6)}.cday:focus-visible{outline:2px solid var(--gold)}
.cday.today{border-color:var(--gold);box-shadow:0 0 0 1px var(--gold) inset,0 0 14px rgba(208,205,223,.25)}.cday.today .cnum{background:var(--glow);color:#ffffff}
.cnum{align-self:flex-start;font:700 12px 'Inter',sans-serif;min-width:22px;text-align:center;padding:1px 5px;border-radius:999px;color:var(--muted)}
.cchip{display:block;font:600 10px/1.35 'Inter',sans-serif;padding:1px 5px;border-radius:5px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;border-left:3px solid transparent}
.cmore{font:600 10px 'Inter',sans-serif;color:var(--dim);padding-left:4px}.ccount{display:none}
.cchip.open,.schip.open{background:rgba(61,220,132,.16);color:#7bf0b0;border-color:#3ddc84}
.cchip.sch,.schip.sch{background:rgba(162,31,255,.18);color:#a67fe8;border-color:#a21fff}
.cchip.conf,.schip.conf{background:rgba(76,195,255,.16);color:#8fd8ff;border-color:#4cc3ff}
.cchip.ns,.schip.ns{background:rgba(236,19,55,.24);color:#bea2ef;border-color:#ec1337}
.cchip.dead,.schip.dead{background:rgba(150,150,150,.16);color:#bab6c2;border-color:#8a8a8a}
.cchip.blocked,.schip.blocked{background:repeating-linear-gradient(135deg,rgba(138,138,138,.34) 0 5px,rgba(60,60,60,.45) 5px 10px);color:#d2ced8;border-color:#8a8a8a;text-decoration:line-through;text-decoration-thickness:1px}
.cchip.oth,.schip.oth{background:rgba(190,130,255,.16);color:#d8b8ff;border-color:#b07cff}
.schip{display:inline-block;font:700 11px 'Inter',sans-serif;padding:2px 9px;border-radius:999px;border:1px solid;margin-left:8px}
.callegend{margin-top:12px;display:flex;flex-wrap:wrap;gap:6px}.callegend .schip{margin:0}
dialog.caldlg{width:min(96vw,620px)}.calbox{position:relative;padding:20px 16px 18px}.calbox h3{margin:0 40px 4px 0;font:400 22px 'Anton',Impact,sans-serif;letter-spacing:.03em;text-transform:uppercase}
.citem{display:block;width:100%;text-align:left;margin:10px 0 0;padding:12px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(160deg,#160c1f,#0f0914);color:var(--text);cursor:pointer;font:inherit}
.citem:hover{border-color:rgba(162,31,255,.6)}.cl1{display:flex;align-items:center;flex-wrap:wrap}.cl1 small{color:var(--dim);margin-left:2px}.cl2{margin-top:4px;font-weight:600}
.cl3{margin-top:3px;color:var(--muted);font-size:13px}.cl4{margin-top:6px;font-size:12px;color:var(--gold);background:rgba(208,205,223,.1);border-radius:8px;padding:4px 8px}
.cempty{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:8px}.cempty .btn{min-height:36px;padding:6px 12px;font-size:12px}
.okmsg{margin:10px 0 0;padding:10px 12px;border-radius:10px;background:rgba(61,220,132,.12);border:1px solid rgba(61,220,132,.5);color:#9af0c0;font-size:13px}
.ceform .cf{min-width:0}.ceform .grid2{display:grid;grid-template-columns:1fr 1fr;gap:0 10px}.ceform .polbtns{margin-top:16px}
@media (max-width:600px){
  .panel.cal{padding:14px 6px}
  .calgrid{gap:3px}
  .cday{min-height:58px;align-items:center;padding:4px 2px;border-radius:8px}
  .cchip{font-size:0;width:100%;height:5px;padding:0;border-left:0;border-radius:3px;background-clip:padding-box}
  .cchip.open{background:#3ddc84}.cchip.sch{background:#a21fff}.cchip.conf{background:#4cc3ff}.cchip.ns{background:#ec1337}.cchip.dead{background:#8a8a8a}.cchip.blocked{background:repeating-linear-gradient(135deg,#8a8a8a 0 3px,#4a4a4a 3px 6px);text-decoration:none}.cchip.oth{background:#b07cff}
  .cmore{display:none}
  .ccount{display:block;position:absolute;top:3px;right:4px;font:700 10px 'Inter',sans-serif;color:var(--amber)}
  .ceform .grid2{grid-template-columns:1fr}
}
/* ---- Today's Schedule (Blissful Karma theme: violet = our creator, crimson = opponent) ---- */
.today{margin-top:18px}
.today-h{display:flex;align-items:center;gap:10px;margin:0 2px 10px;font:400 14px 'Russo One',sans-serif;letter-spacing:.2em;background:var(--glow);-webkit-background-clip:text;background-clip:text;color:transparent}
.today-h .dot{width:9px;height:9px;border-radius:50%;background:var(--orange);box-shadow:0 0 10px var(--orange),0 0 3px var(--gold)}
.t-cards{display:grid;gap:14px}
.t-card{position:relative;border:1px solid rgba(162,31,255,.35);border-radius:20px;padding:14px;overflow:hidden;background:linear-gradient(100deg,rgba(153,10,255,.16) 0%,#0f0914 38%,#0f0914 62%,rgba(236,19,55,.22) 100%),#0f0914;box-shadow:0 10px 40px rgba(236,19,55,.18),0 0 0 1px rgba(162,31,255,.08) inset}
.t-card .special{margin:0 0 12px}
.t-pills{display:flex;flex-wrap:wrap;justify-content:center;gap:8px}
.t-pill{display:inline-flex;align-items:center;gap:6px;font:700 12px 'Inter',sans-serif;color:var(--text);padding:5px 11px;border-radius:999px;background:#0b060f;border:1px solid var(--line)}
.t-pill small{color:var(--dim);font-weight:600}
.t-pill.vsp{background:var(--glow);color:#ffffff;border-color:transparent;font-family:'Russo One',sans-serif;letter-spacing:.06em}

.t-clock{margin:12px 0 0;padding:12px 14px 14px;border-radius:16px;text-align:center;background:linear-gradient(180deg,#1c0c2a,#0c0612);border:1px solid rgba(162,31,255,.45);box-shadow:0 0 18px rgba(162,31,255,.18) inset}
.t-clock-label{font:400 11px 'Russo One',sans-serif;letter-spacing:.18em;color:var(--gold);margin-bottom:6px}
.t-clock-digits{display:flex;align-items:flex-end;justify-content:center;gap:4px;color:var(--gold);line-height:1}
.t-clock-unit{display:flex;flex-direction:column;align-items:center;min-width:3.1em}
.t-clock-unit b{font:400 28px 'Russo One',sans-serif;color:#ede5fa;text-shadow:0 0 12px rgba(162,31,255,.55)}
.t-clock-unit i{font:700 10px 'Inter',sans-serif;font-style:normal;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);margin-top:4px}
.t-clock-sep{font:400 26px 'Russo One',sans-serif;color:var(--orange);padding-bottom:16px}
.t-clock.live{border-color:rgba(46,204,113,.5);box-shadow:0 0 18px rgba(46,204,113,.2) inset}
.t-clock.live .t-clock-label{color:#9dffb8}
.t-clock-live{font:400 28px 'Russo One',sans-serif;color:#9dffb8;letter-spacing:.08em;animation:t-pulse 1.2s ease-in-out infinite}
@keyframes t-pulse{0%,100%{opacity:1}50%{opacity:.55}}
@media(max-width:420px){.t-clock-unit b{font-size:22px}.t-clock-sep{font-size:20px}.t-clock-live{font-size:22px}}
.t-match{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;gap:6px;margin:16px 0 14px}
.t-side{display:flex;flex-direction:column;align-items:center;gap:8px;min-width:0;text-align:center}
.t-av{width:76px;height:76px;border-radius:50%;display:grid;place-items:center;font:400 26px 'Russo One',sans-serif;background:#0b060f;overflow:hidden}
.t-av img{width:100%;height:100%;object-fit:cover}
.us .t-av{border:3px solid var(--amber);color:var(--gold);box-shadow:0 0 18px rgba(162,31,255,.55)}
.them .t-av{border:3px solid var(--red);color:#ff5e79;box-shadow:0 0 18px rgba(236,19,55,.6)}
.t-handle{font:800 15px 'Inter',sans-serif;max-width:100%;overflow-wrap:anywhere}
.t-tag{font-size:11px;color:var(--dim);margin-top:-6px}
.t-tt{display:inline-flex;align-items:center;gap:4px;font:700 12px 'Inter',sans-serif;text-decoration:none;padding:6px 12px;border-radius:999px}
.us .t-tt{background:var(--glow);color:#ffffff}
.them .t-tt{background:var(--red);color:#ffffff}
.t-tt:focus-visible{outline:2px solid var(--gold);outline-offset:2px}
.t-vs{font:italic 400 34px 'Anton',Impact,sans-serif;background:linear-gradient(180deg,var(--gold),var(--orange) 55%,var(--red));-webkit-background-clip:text;background-clip:text;color:transparent;filter:drop-shadow(0 0 8px rgba(153,10,255,.6));padding:0 6px}
.t-pick{border:1px solid var(--line);border-radius:14px;background:#08040c;padding:12px}
.t-pick-h{display:flex;align-items:baseline;gap:10px;margin-bottom:10px}
.t-pick-h b{font:400 15px 'Russo One',sans-serif;letter-spacing:.06em;color:var(--gold)}
.t-pick-h span{font-size:12px;color:var(--dim)}
.t-btns{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.t-vote{appearance:none;border:2px solid transparent;border-radius:12px;min-height:46px;padding:10px;font:800 14px 'Inter',sans-serif;cursor:pointer;overflow-wrap:anywhere}
.t-vote.us{background:var(--glow);color:#ffffff}
.t-vote.them{background:var(--red);color:#ffffff}
.t-vote.mine{border-color:var(--text);box-shadow:0 0 14px rgba(208,205,223,.5)}
.t-vote:hover{filter:brightness(1.08)}.t-vote[disabled]{opacity:.6;cursor:wait}
.t-bar{position:relative;display:flex;height:24px;margin-top:10px;border-radius:999px;overflow:hidden;background:#1e102a}
.t-bar i{display:block;height:100%}
.t-bar .bu{background:var(--glow)}.t-bar .bt{background:var(--red)}
.t-bar em{position:absolute;top:0;line-height:24px;font:800 12px 'Inter',sans-serif;font-style:normal;color:#ffffff;text-shadow:0 1px 2px #000000}
.t-bar .pl{left:10px}.t-bar .pr{right:10px}
.t-empty{border:1px solid var(--line);border-radius:20px;padding:22px 14px;text-align:center;color:var(--muted);background:linear-gradient(160deg,#160c1f,#0f0914)}
.t-empty b{display:block;font:400 18px 'Russo One',sans-serif;color:var(--gold);margin-bottom:4px}
@media(max-width:420px){.t-av{width:62px;height:62px;font-size:22px}.t-vs{font-size:28px}.t-handle{font-size:13px}}
#panel-requests .card .field{margin:4px 0 6px}#panel-requests .rq-hint{min-height:1.2em;font-size:13px}
/* ---- creator members area + admin Creators tab ---- */
.memlink{text-decoration:none;display:inline-flex;align-items:center;margin-left:auto}
.memlink + .admbar{margin-left:0}
.crgroup{margin:18px 0 6px}.crhead{font:400 18px 'Anton',sans-serif;letter-spacing:.04em;color:var(--gold);margin:0 0 8px}
.crcard h3{margin:0 0 4px;font-size:16px}.crcard .actions{display:flex;gap:8px;flex-wrap:wrap}.crcard .schip{font-size:11px;vertical-align:middle}
.mem form{display:grid;gap:10px;margin-top:10px}.mem label{font:600 13px 'Inter',sans-serif;color:var(--muted)}
.mem .err{color:#a781e9;font-size:14px}.mem .switch{background:none;border:0;color:var(--gold);cursor:pointer;font:600 13px 'Inter',sans-serif;padding:6px 0;text-decoration:underline}
.mem .who{display:flex;justify-content:space-between;align-items:center;gap:10px;flex-wrap:wrap}
.mem h3.sec{font:400 20px 'Anton',sans-serif;letter-spacing:.05em;color:var(--gold);margin:22px 0 8px}
.mem .card{margin:0 0 8px}.mem .card .when{font:700 16px 'Inter',sans-serif;color:var(--gold)}.mem .card .ct{color:var(--dim);font-size:12px;margin-left:6px}
.mem .vs{font:700 15px 'Inter',sans-serif;margin:6px 0}.mem .tags{display:flex;gap:6px;flex-wrap:wrap}.mem .tag{font-size:11px;border:1px solid var(--line);border-radius:999px;padding:3px 8px;color:var(--muted)}
.mem .wait{text-align:center;padding:30px 10px}.mem .wait .big{font:400 26px 'Anton',sans-serif;letter-spacing:.04em;color:var(--gold)}
/* members battle cards: board VS style + chrome accents and badges */
.mem #m-confirmed,.mem #m-pending,.mem #m-audits{display:grid;gap:14px}
.m-card{padding-top:40px;box-shadow:0 10px 40px rgba(236,19,55,.18),0 0 0 1px rgba(255,255,255,.04) inset}
.m-card::before{content:"";position:absolute;inset:0 0 auto 0;height:2px;background:linear-gradient(90deg,transparent,#ede5fa 20%,var(--gold) 50%,#ede5fa 80%,transparent);opacity:.75}
.m-ribbon{position:absolute;top:10px;left:50%;transform:translateX(-50%);font:400 11px 'Russo One',sans-serif;letter-spacing:.14em;padding:4px 12px;border-radius:999px;white-space:nowrap;border:1px solid rgba(255,255,255,.25);background:linear-gradient(180deg,#26103a,#0d0614)}
.m-ribbon.conf{color:#9dffb8;box-shadow:0 0 12px rgba(46,204,113,.35)}.m-ribbon.open{color:var(--gold);box-shadow:0 0 12px rgba(208,205,223,.3)}.m-ribbon.req{color:#c2a8f0;box-shadow:0 0 12px rgba(255,60,93,.3)}.m-ribbon.audit{color:#b6e6ff;box-shadow:0 0 12px rgba(90,190,255,.3)}
.audit-body{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.55;font-size:14px;color:var(--text);margin:10px 0 2px;padding:12px 14px;border-radius:12px;background:rgba(0,0,0,.22);border:1px solid rgba(255,255,255,.08)}
.m-card.open,.m-card.req{border-style:dashed}
.t-av.open{border-style:dashed!important;color:var(--dim)!important;box-shadow:none!important}
.t-pill.bdg{background:linear-gradient(180deg,#1c0c2a,#0c0612);border-color:rgba(162,31,255,.4)}.t-pill.pu{color:var(--gold)}.t-pill.adult{color:#a781e9;border-color:rgba(255,60,93,.6)}
.m-foot{text-align:center;color:var(--dim);font-size:12px;margin:0}

.av-card{margin-bottom:12px}
.av-month{font:400 22px 'Anton',sans-serif;letter-spacing:.04em;color:var(--gold);margin:0 0 2px}
.av-card fieldset{border:0;padding:0;margin:12px 0 0}.av-card legend,.av-card label{font-weight:700;font-size:13px;margin-bottom:6px;display:block}
.av-chips,.av-tz{display:flex;flex-wrap:wrap;gap:6px}
.av-chip{border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.04);color:inherit;border-radius:999px;padding:7px 12px;font:600 13px inherit;cursor:pointer;min-height:36px}
.av-chip[aria-pressed=true]{background:linear-gradient(135deg,var(--gold),#d0cddf);color:#0e0515;border-color:var(--gold)}
.av-tz{margin-bottom:8px}.av-tz .av-chip{padding:5px 10px;font-size:12px}
.av-card select.field{margin-bottom:4px}
.av-res{margin-top:10px;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.05);font-size:14px}
.av-res ul{margin:6px 0 0 18px;padding:0}.av-res.bad{border:1px solid rgba(236,19,55,.5)}
.av-rm{margin-top:8px}

.t-prob{margin-top:6px;font:500 10.5px 'Inter',sans-serif;padding:2px 4px;border:0;border-radius:4px;background:transparent;color:rgba(255,255,255,.5);text-decoration:underline;text-underline-offset:2px;cursor:pointer}
.t-prob:hover:not(:disabled){color:rgba(255,255,255,.8)}
.t-prob:disabled{text-decoration:none}
.t-prob:disabled{cursor:default;opacity:.75;border-color:rgba(120,220,140,.5);color:#9be7a8}
.upd-badge{display:inline-block;margin-top:6px;font:700 11px 'Inter',sans-serif;padding:3px 9px;border-radius:999px;background:rgba(80,170,255,.16);border:1px solid rgba(80,170,255,.5);color:#a8d4ff}
.upd-note{margin:6px 0 0;font-size:12px;opacity:.95}.upd-sub{color:#bbccdd;opacity:.85}
.ac-day{margin:18px 0}.ac-day .m-cards{display:grid;gap:14px}
.ac-problem{border-color:#d0cddf!important;box-shadow:0 0 0 2px rgba(208,205,223,.55),0 0 24px rgba(153,10,255,.25)!important}
.ac-problem .m-ribbon{background:#d0cddf;color:#0e0515}
.ac-flag{display:inline-block;margin-top:6px;font:700 11px 'Inter',sans-serif;padding:3px 9px;border-radius:999px;background:rgba(208,205,223,.18);border:1px solid rgba(208,205,223,.6);color:#b08eeb}
.ac-past-card{opacity:.7}.ac-acts{display:flex;gap:8px;flex-wrap:wrap;justify-content:center;margin-top:10px}
.ac-input{padding:8px 10px;border-radius:10px;border:1px solid rgba(255,255,255,.25);background:rgba(0,0,0,.35);color:#ffffff;font:600 13px 'Inter',sans-serif}
.ac-past{display:inline-flex;align-items:center;gap:6px;margin-left:10px;font-size:13px}
.t-ok{border-color:rgba(46,204,113,.6)!important;color:#7dffb0!important;cursor:default}.ac-okflag{background:rgba(46,204,113,.15);border-color:rgba(46,204,113,.6);color:#9effc4}
.vs-avs{display:flex;align-items:center;gap:10px;margin:8px 0 2px}.vs-x{font:400 14px 'Russo One',sans-serif;color:var(--gold)}
.vs-av{width:44px;height:44px;border-radius:50%;display:grid;place-items:center;overflow:hidden;background:#0b060f;font:400 15px 'Russo One',sans-serif}
.vs-av.us{border:2px solid var(--amber);color:var(--gold)}.vs-av.them{border:2px solid var(--red);color:#ff5e79}.vs-av img{width:100%;height:100%;object-fit:cover}
.t-av.av-missing,.vs-av.av-missing{border:3px dashed #a01aff!important;color:#ae3dff!important;box-shadow:0 0 14px rgba(153,10,255,.45)!important;font-size:30px}
.vs-av.av-missing{border-width:2px!important;font-size:18px}
.nf-tag{display:inline-block;margin-top:5px;font:700 10px 'Inter',sans-serif;padding:2px 8px;border-radius:999px;background:rgba(153,10,255,.15);border:1px dashed #a01aff;color:#b08eeb}
.ac-nf{background:rgba(153,10,255,.18);border:1px dashed #a01aff;color:#ba9ced}
/* display name + @handle */
.cname{display:inline-flex;flex-direction:column;min-width:0;max-width:100%;vertical-align:top;line-height:1.2}
.cname .dn,.cname .dh{overflow-wrap:anywhere;word-break:break-word}
.cname.has-dn .dh{font-size:.78em;font-weight:500;color:var(--muted);opacity:.9}
.t-handle .cname{align-items:center;text-align:center}
.vs .cname,.cl2 .cname{display:inline-flex}
/* ---- admin Blocked Agencies ---- */
#panel-agencies .ag-form{display:grid;gap:8px;margin:14px 0 6px}
#panel-agencies .ag-row,#panel-audits .ag-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#panel-audits .ag-row .field{flex:1 1 200px;min-width:0}
.aucard .sttop{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}
.aucard h3{margin:0;font-size:16px}
.au-badges{display:flex;gap:6px;flex-wrap:wrap;align-items:center}
.aucard .actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px}
#panel-agencies .ag-row .field{flex:1 1 200px;min-width:0}
#panel-agencies .ag-row .btn{flex:0 0 auto}
.ag-card h3{margin:0;font:700 16px 'Inter',sans-serif;overflow-wrap:anywhere}
.ag-card .sttop{display:flex;align-items:center;justify-content:space-between;gap:10px}
.ag-card .actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin-top:8px}
.ag-card .actions .fine{flex:1 1 100%;margin:0}
@media (max-width:640px){#panel-agencies .ag-row .btn{width:100%}}
#panel-policy .ag-form{display:grid;gap:8px;margin:14px 0}
#panel-policy .ag-row{display:flex;gap:8px;flex-wrap:wrap;align-items:center}
#panel-policy .ag-row .field{flex:1 1 160px;min-width:0}
#panel-policy .strike-hist{margin:8px 0 0;padding:0;list-style:none}
#panel-policy .strike-hist li{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;padding:8px 0;border-top:1px solid var(--line)}
@media (max-width:640px){#panel-policy .ag-row .btn{width:100%}}

/* Christmas palette. season.js adds html.xmas. Set BK_CHRISTMAS to false to keep the standard purple theme above. */
html.xmas{--bg:#07140e;--bg2:#0d281c;--card:#10281d;--line:rgba(255,224,138,.4);--text:#f4f7f5;--muted:#d7e6dc;--dim:#a9c3b4;--red:#c1122a;--orange:#3dce7a;--amber:#e7c35a;--gold:#ffe08a;
--glow:linear-gradient(90deg,#ff5c77 0%,#3dce7a 46%,#ba9ced 100%);--glow-v:linear-gradient(0deg,#ff5c77 0%,#3dce7a 50%,#ba9ced 100%)}
html.xmas body{background:#07140e}
html.xmas body::before{background:
 linear-gradient(#f7fbff,rgba(247,251,255,0)) top/100% 18px no-repeat,
 radial-gradient(ellipse 78% 34% at 50% -6%,rgba(255,255,255,.34),transparent 68%),
 radial-gradient(ellipse 46% 40% at 0% 100%,rgba(193,18,42,.55),transparent 70%),
 radial-gradient(ellipse 46% 40% at 100% 100%,rgba(20,120,64,.6),transparent 70%),
 radial-gradient(1.5px 1.5px at 8% 16%,#fff 50%,transparent 60%),
 radial-gradient(1.6px 1.6px at 22% 28%,#ffe08a 50%,transparent 60%),
 radial-gradient(1.2px 1.2px at 40% 12%,#fff 50%,transparent 60%),
 radial-gradient(1.8px 1.8px at 58% 24%,#fff 50%,transparent 60%),
 radial-gradient(1.3px 1.3px at 74% 14%,#ffe08a 50%,transparent 60%),
 radial-gradient(1.2px 1.2px at 90% 30%,#fff 50%,transparent 60%),
 linear-gradient(180deg,#10281f 0%,#07140e 46%,#143028 100%)}
html.xmas::before,html.xmas::after{content:"";position:fixed;left:0;right:0;pointer-events:none;z-index:60}
html.xmas::before{top:-200px;height:calc(100vh + 200px);background-image:radial-gradient(7px 7px at 18px 24px,#fff 62%,transparent 64%),radial-gradient(5px 5px at 78px 90px,rgba(255,255,255,.92) 62%,transparent 64%),radial-gradient(8px 8px at 130px 46px,rgba(255,255,255,.8) 62%,transparent 64%),radial-gradient(4px 4px at 46px 150px,#fff 62%,transparent 64%),radial-gradient(6px 6px at 104px 168px,rgba(255,248,230,.9) 62%,transparent 64%);background-size:170px 200px;animation:bk-snow 9s linear infinite}
html.xmas::after{top:-200px;height:calc(100vh + 200px);background-image:radial-gradient(9px 9px at 36px 40px,rgba(255,255,255,.72) 62%,transparent 64%),radial-gradient(6px 6px at 120px 120px,#fff 62%,transparent 64%),radial-gradient(4px 4px at 80px 20px,rgba(255,248,230,.85) 62%,transparent 64%),radial-gradient(7px 7px at 160px 170px,rgba(255,255,255,.7) 62%,transparent 64%);background-size:220px 200px;animation:bk-snow 14s linear infinite;opacity:.9}
@keyframes bk-snow{to{transform:translate3d(0,200px,0)}}
@keyframes bk-twinkle{50%{opacity:.45}}
html.xmas .topbar{position:relative;padding-top:20px;padding-bottom:22px}
html.xmas .topbar::before{content:"";position:absolute;left:0;right:0;top:0;height:10px;pointer-events:none;background:linear-gradient(#fff,#e7eef2);border-radius:0 0 10px 10px;box-shadow:0 6px 10px rgba(255,255,255,.25)}
html.xmas .topbar::after{content:"";position:absolute;left:10px;right:10px;bottom:2px;height:18px;pointer-events:none;background:linear-gradient(#146b3a,#146b3a) center 3px/100% 3px no-repeat,radial-gradient(circle at 10px 9px,#ff5c6c 5px,transparent 6px),radial-gradient(circle at 34px 9px,#ffe08a 5px,transparent 6px),radial-gradient(circle at 58px 9px,#3dce7a 5px,transparent 6px),radial-gradient(circle at 82px 9px,#fff 4px,transparent 5px);background-size:100% 3px,96px 18px,96px 18px,96px 18px,96px 18px;filter:drop-shadow(0 0 4px rgba(255,224,138,.85));animation:bk-twinkle 1.5s ease-in-out infinite}
html.xmas .banner{position:relative;border:4px solid #146b3a;box-shadow:0 0 0 4px #c1122a,0 0 0 8px #ffe08a,0 16px 36px rgba(0,0,0,.4)}
html.xmas .banner::after{content:"";position:absolute;left:0;right:0;bottom:0;height:18px;pointer-events:none;background:linear-gradient(#0d3b24,#0d3b24) center 4px/100% 3px no-repeat,radial-gradient(circle at 12px 8px,#ff5c6c 5px,transparent 6px),radial-gradient(circle at 36px 8px,#ffe08a 5px,transparent 6px),radial-gradient(circle at 60px 8px,#3dce7a 5px,transparent 6px),radial-gradient(circle at 84px 8px,#fff 4px,transparent 5px);background-size:100% 3px,96px 18px,96px 18px,96px 18px,96px 18px;animation:bk-twinkle 1.5s ease-in-out infinite reverse}
html.xmas h1::before,html.xmas h1::after{background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:#ffe08a;color:#ffe08a;text-shadow:0 0 10px rgba(255,224,138,.8)}
html.xmas h1::before{content:"★ "}html.xmas h1::after{content:" ★"}
html.xmas .eyebrow::before{content:"❄ "}html.xmas .eyebrow::after{content:" ❄"}
html.xmas dialog,html.xmas .cday,html.xmas .citem{background:linear-gradient(180deg,rgba(16,58,40,.96),rgba(8,26,18,.96));border-color:rgba(255,224,138,.5)}
html.xmas .card,html.xmas .dayhead,html.xmas .t-empty{padding-top:22px;background:radial-gradient(16px 11px at 12px 0,#fff 70%,transparent 72%) 0 0/34px 16px repeat-x,linear-gradient(#f7fbff,#f7fbff) 0 0/100% 12px no-repeat,linear-gradient(180deg,rgba(16,58,40,.94),rgba(8,26,18,.94));border-color:rgba(255,224,138,.55);box-shadow:0 10px 28px rgba(0,0,0,.28)}
html.xmas .panel{padding-top:28px;background:radial-gradient(16px 11px at 12px 0,#fff 70%,transparent 72%) 0 0/34px 16px repeat-x,linear-gradient(#f7fbff,#f7fbff) 0 0/100% 13px no-repeat,linear-gradient(180deg,rgba(18,64,44,.94),rgba(8,24,18,.94));border-color:#ffe08a;box-shadow:0 0 0 3px rgba(20,107,58,.55),0 0 0 5px rgba(193,18,42,.45)}
html.xmas .card.sp{border-color:#ffe08a}
html.xmas .field,html.xmas .t-pick,html.xmas .t-pill,html.xmas .btn.ghost,html.xmas .tab{background:#07140e;border-color:rgba(255,224,138,.45);color:var(--text)}
html.xmas .field::placeholder{color:#8eaa9c}
html.xmas .tab:hover{border-color:#ffe08a;color:#fff}
html.xmas .tab.on{background:var(--glow);border-color:transparent;color:#142018}
html.xmas .btn.gold{box-shadow:0 0 0 2px rgba(20,107,58,.65),0 8px 18px rgba(193,18,42,.28)}
html.xmas .btn.claim{background:#f7fbff;color:#0d3b24;border-color:#ffe08a}
html.xmas .btn.claim:hover:not([disabled]){background:var(--glow);color:#142018}
html.xmas .hc-bar{background:linear-gradient(90deg,#0c4f30,#146b3a);color:#f7fff9;box-shadow:0 0 0 2px #ffe08a,0 0 16px rgba(61,206,122,.35)}
html.xmas .hc-txt{color:#f7fff9}
html.xmas .hc-q{background:#07140e;color:#ffe08a;border-color:#ffe08a}
html.xmas .hc-slot{border-color:rgba(255,224,138,.7);color:#ffe08a;background:rgba(7,20,14,.45)}
html.xmas .pill{background:rgba(193,18,42,.22);color:#ffe08a;border-color:#ff5c6c}
html.xmas .tag{background:rgba(61,206,122,.14);border-color:rgba(255,224,138,.4)}
html.xmas .notice,html.xmas .agree{background:rgba(61,206,122,.12);border-color:rgba(255,224,138,.45)}
html.xmas .admbtn{background:linear-gradient(180deg,#143526,#0a1c14);border-color:#ffe08a;color:#ffe08a;box-shadow:0 0 14px rgba(193,18,42,.28)}
html.xmas .rad input,html.xmas .agree input{accent-color:#c1122a}
html.xmas .today-h .dot{background:#c1122a;box-shadow:0 0 0 3px #146b3a,0 0 10px #ffe08a}
html.xmas .today-h::after{content:"★";margin-left:auto;background:none;-webkit-background-clip:border-box;background-clip:border-box;-webkit-text-fill-color:#ffe08a;color:#ffe08a;letter-spacing:0}
html.xmas .t-card{padding-top:28px;border:2px solid #ffe08a;background:radial-gradient(18px 12px at 14px 0,#fff 70%,transparent 72%) 0 0/40px 18px repeat-x,linear-gradient(#f7fbff,#f7fbff) 0 0/100% 16px no-repeat,linear-gradient(100deg,rgba(61,206,122,.38) 0%,#0e2a1e 38%,#0e2a1e 62%,rgba(193,18,42,.42) 100%);box-shadow:0 0 0 3px #146b3a,0 0 0 6px rgba(193,18,42,.75),0 14px 32px rgba(0,0,0,.35)}
html.xmas .t-card::before,html.xmas .t-card::after{content:"";position:absolute;top:2px;width:9px;height:9px;border-radius:50%;background:#c1122a;box-shadow:16px 1px 0 #146b3a,32px -1px 0 #ffe08a;pointer-events:none}
html.xmas .t-card::before{left:16px}html.xmas .t-card::after{right:16px}
html.xmas .t-clock{background:linear-gradient(180deg,#143526,#07160f);border:2px solid #ffe08a;box-shadow:0 0 0 3px rgba(20,107,58,.55),inset 0 0 18px rgba(255,224,138,.14)}
html.xmas .t-clock-unit b{color:#fff;text-shadow:0 0 12px rgba(255,224,138,.85)}
html.xmas .t-pill,html.xmas .t-pick{background:#0c1f17}
html.xmas .t-bar{background:#123026}
html.xmas .us .t-av{border-color:#3dce7a;color:#c8ffd9;box-shadow:0 0 18px rgba(61,206,122,.6)}
html.xmas .them .t-av{border-color:#ff5c6c;color:#ffc1c8;box-shadow:0 0 18px rgba(193,18,42,.6)}
html.xmas .m-card{padding-top:46px;box-shadow:0 0 0 3px #146b3a,0 12px 28px rgba(0,0,0,.3)}
html.xmas .m-card::before{height:12px;background:linear-gradient(#f7fbff,#f7fbff);opacity:1}
html.xmas .m-ribbon{background:linear-gradient(180deg,#1a4d32,#0e2419);border-color:#ffe08a}
html.xmas .audit-body{background:rgba(7,20,14,.55);border-color:rgba(255,224,138,.28)}
html.xmas #tab-cards{border-color:#ff5c6c;box-shadow:0 0 0 2px #3dce7a,0 0 16px rgba(255,92,108,.45)}
html.xmas #tab-cards:not(.on){background:#123526;color:#ffe08a}
html.xmas #panel-cards{position:relative;border:3px solid #ffe08a;background:radial-gradient(16px 11px at 12px 0,#fff 70%,transparent 72%) 0 0/34px 16px repeat-x,linear-gradient(#f7fbff,#f7fbff) 0 0/100% 14px no-repeat,radial-gradient(circle at 0 18px,rgba(193,18,42,.4),transparent 42%),radial-gradient(circle at 100% 18px,rgba(61,206,122,.45),transparent 42%),linear-gradient(180deg,#163828,#0a1c14);box-shadow:0 0 0 4px #146b3a,0 0 0 8px rgba(193,18,42,.8),0 18px 40px rgba(0,0,0,.35)}
html.xmas #panel-cards h2{background:none;-webkit-text-fill-color:#ffe08a;color:#ffe08a}
html.xmas #panel-cards h2::before{content:"Christmas signup";display:inline-block;margin:0 8px 0 0;padding:3px 8px;border-radius:999px;background:linear-gradient(90deg,#ff5c6c,#ffe08a);color:#1a1208;-webkit-text-fill-color:#1a1208;font:800 11px 'Inter',sans-serif;letter-spacing:.08em;text-transform:uppercase;vertical-align:middle}
html.xmas #panel-cards::after{content:"★";position:absolute;top:0;right:18px;color:#c1122a;font-size:14px;line-height:14px;pointer-events:none}
@media (prefers-reduced-motion:reduce){html.xmas::before,html.xmas::after{animation:none}html.xmas .topbar::after,html.xmas .banner::after{animation:none}}
/* multi-admin */
.admbar{flex-wrap:wrap;justify-content:flex-end}
.admnote{font:600 11px 'Inter',sans-serif;color:var(--gold)}
#pwModal form{padding:22px 20px;position:relative}
.adm-add,.adm-card{display:grid;gap:8px}.adm-card.off{opacity:.7}
.ad-tabs{border:1px solid var(--line);border-radius:12px;padding:8px 10px;display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:4px 12px}
.ad-tabs legend{font:700 12px 'Inter',sans-serif;color:var(--muted);padding:0 4px}
.ad-tab{display:flex;gap:6px;align-items:center;font-size:14px;cursor:pointer}
.adm-card .admrow{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.adm-card .admrow .field{flex:1;min-width:180px}
.admask[hidden],.admrow [hidden]{display:none}
/* crew extras: report card, checklist, training, leaderboard */
.crewnav{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 12px}.crewnav a{font:700 12px 'Inter',sans-serif;color:var(--gold);text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:6px 12px}
.rc-week{font:700 15px 'Inter',sans-serif;margin:8px 0}.rc-h{margin:12px 0 6px;font:700 13px 'Inter',sans-serif;color:var(--muted)}
.rc-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:8px}
.rc-stat{border:1px solid var(--line);border-radius:12px;padding:8px 10px;display:grid;gap:2px;background:rgba(0,0,0,.18)}
.rc-l{font-size:12px;color:var(--muted)}.rc-v{font:700 18px 'Inter',sans-serif;color:var(--gold)}.rc-v.na{font-size:13px;color:var(--dim)}.rc-s{font-size:11px;color:var(--muted)}
.rc-tip{margin-top:12px;padding:10px 12px;border-radius:12px;border:1px dashed rgba(208,205,223,.45);font-size:14px}
.onb-bar{height:8px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;margin:8px 0}.onb-bar i{display:block;height:100%;background:var(--glow)}
.onb-list{list-style:none;padding:0;margin:6px 0;display:grid;gap:8px}.onb-step .fine{margin:2px 0 0 26px}.onb-step.done .onb-t,.onb-step.done label span{opacity:.8}
.onb-top{display:flex;align-items:center;gap:8px;font-weight:600}.onb-tick{display:flex;gap:8px;align-items:center;cursor:pointer}.onb-tick input{width:18px;height:18px}
details.guide{padding:10px 12px}details.guide summary{cursor:pointer;display:grid;gap:2px;list-style:none}details.guide summary::-webkit-details-marker{display:none}
.guide-body{margin-top:8px;font-size:14px;line-height:1.5}.guide-body h4{margin:10px 0 4px;color:var(--gold)}.guide-body ul{margin:4px 0;padding-left:20px}
.lb-banner{margin:8px 0;padding:10px 12px;border-radius:12px;background:var(--glow);color:#ffffff;font:700 14px 'Inter',sans-serif;text-align:center}
.lb-head{display:flex;justify-content:space-between;align-items:center;gap:8px;margin:6px 0}.lb-month{max-width:140px;min-height:36px;padding:4px 8px}
.lb-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.lb-row{display:grid;grid-template-columns:36px 1fr auto;align-items:center;gap:8px;border:1px solid var(--line);border-radius:12px;padding:8px 10px}
.lb-row.top{border-color:var(--gold);box-shadow:0 0 12px rgba(208,205,223,.25)}.lb-rank{text-align:center;font-weight:700}.lb-n{color:var(--gold)}
.crew-lb{margin-top:16px}.tr-card textarea.field{min-height:180px;font:14px/1.45 'Inter',sans-serif}.lb-cfg{display:grid;gap:8px;margin-top:12px}
/* Logo fit: show the whole logo (no cropping), incl. inside the Christmas frame */
.banner{aspect-ratio:auto}
.banner img{width:100%;height:auto;aspect-ratio:16/9;max-height:min(46vh,440px);object-fit:contain;object-position:50% 50%;background:#000000}
html.xmas .banner{padding:6px 6px 22px;background:#000}
html.xmas .banner img{border-radius:calc(var(--radius) - 6px)}
@media (max-width:520px){html.xmas .banner{padding:4px 4px 20px}.banner img{max-height:none}}
/* Crew Login tabs (Nov 2026): My Dashboard | Today's Schedule */
.crewtabs{margin:8px 0 14px;justify-content:flex-start}
.cpane[hidden]{display:none}

/* Blissful Karma accents */
@keyframes bk-twinkle{50%{opacity:.2}}
.eyebrow{background:linear-gradient(90deg,#c38bff,#ffffff,#ff4a66);-webkit-background-clip:text;background-clip:text;color:transparent}
.banner{border-color:rgba(166,77,255,.45);box-shadow:0 0 0 1px rgba(224,16,47,.25),0 10px 44px rgba(138,43,226,.35)}
.banner img{background:#07040d}
.foot b{color:var(--amber)}
.policy-text{border:1px solid var(--line);border-radius:14px;background:rgba(18,10,31,.85);padding:12px 14px;max-height:52vh;overflow:auto}
.policy-text h4{margin:0 0 8px;font:400 18px 'Russo One',sans-serif;background:var(--chrome);-webkit-background-clip:text;background-clip:text;color:transparent}
.policy-text ol{margin:0;padding-left:20px;display:grid;gap:8px}.policy-text li{color:var(--text)}
.setup-note{margin:6px 0 12px;padding:12px 14px;border:1px dashed rgba(166,77,255,.55);border-radius:12px;background:rgba(138,43,226,.10);color:var(--muted);font-size:13px}
.btn[hidden],.tab[hidden]{display:none}
#adminForm,dialog > form:not(#claimForm):not(.calbox){padding:22px 20px;position:relative}#adminForm .btn{margin-top:16px;width:100%}
