:root{--surface:#09090b;--surface-2:#111114;--surface-3:#19191e;--text:#fafafa;--text-2:#c9c9d1;--muted:#8a8a96;--line:#fafafa1a;--line-2:#fafafa38;--primary:#8b5cf6;--secondary:#f43f5e;--red-2:#e11d48;--success:#16a34a;--warning:#d97706;--danger:#dc2626;--font-display:"Outfit", "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Consolas", monospace;--fs-12:.75rem;--fs-14:.875rem;--fs-16:1rem;--fs-20:1.25rem;--fs-24:1.5rem;--fs-32:2rem;--s-4:4px;--s-8:8px;--s-12:12px;--s-16:16px;--s-24:24px;--s-32:32px;--r-sm:4px;--r-md:8px;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root[data-theme=light]{--surface:#fafafa;--surface-2:#fff;--surface-3:#f0f0f3;--text:#09090b;--text-2:#3a3a44;--muted:#6b6b78;--line:#09090b1a;--line-2:#09090b38;--primary:#6d3fe0;--secondary:#e11d48;--red-2:#be123c;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}*{box-sizing:border-box}html{height:100%}body{min-height:100%;font-family:var(--font-display);font-size:var(--fs-16);color:var(--text);background:var(--surface);-webkit-font-smoothing:antialiased;flex-direction:column;margin:0;line-height:1.5;display:flex}a{color:var(--text);text-decoration:none}a:hover{color:var(--secondary)}h1,h2,h3{font-family:var(--font-display);margin:0 0 var(--s-12);letter-spacing:-.02em;font-weight:900;line-height:1.05}h1{font-size:clamp(var(--fs-32), 4vw, 3rem)}h2{font-size:var(--fs-24)}h3{font-size:var(--fs-20)}p{margin:0 0 var(--s-16)}code,.mono{font-family:var(--font-mono);font-size:.9em}.muted{color:var(--muted)}.small{font-size:var(--fs-14)}.accent{color:var(--secondary)}.container{width:min(1200px,100% - 48px);margin-inline:auto}.page{padding:var(--s-24) 0 var(--s-32);flex:1}.narrow{max-width:560px;padding-top:var(--s-32)}.eyebrow,.label,.badge,.nav nav a,th,.stat b,.kv dt{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-transform:uppercase}.eyebrow{color:var(--secondary);margin:0 0 var(--s-8)}.lead{font-size:var(--fs-20);color:var(--text-2);max-width:36em}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}.site-header{z-index:50;background:var(--surface);border-bottom:1px solid var(--line);position:sticky;top:0}.nav{align-items:center;gap:var(--s-24);min-height:56px;display:flex}.brand{align-items:baseline;gap:var(--s-8);color:var(--text);display:inline-flex}.brand:hover{color:var(--text)}.brand-name{font-weight:900;font-size:var(--fs-20);letter-spacing:-.02em;text-transform:uppercase}.brand-sub{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.nav nav{align-items:center;gap:var(--s-16);flex-wrap:wrap;flex:1;display:flex}.nav nav a{color:var(--text-2);padding:var(--s-4) 0;border-bottom:2px solid #0000}.nav nav a:hover{color:var(--text)}.nav nav a[aria-current=page]{color:var(--text);border-bottom-color:var(--secondary)}.user-box{align-items:center;gap:var(--s-12);color:var(--text-2);font-size:var(--fs-14);display:flex}.user-box .who{text-overflow:ellipsis;white-space:nowrap;max-width:14em;overflow:hidden}.theme-toggle{border-radius:var(--r-sm);border:1px solid var(--line-2);width:32px;height:32px;color:var(--text);cursor:pointer;font-size:var(--fs-16);background:0 0;place-items:center;padding:0;line-height:1;display:inline-grid}.theme-toggle:hover{border-color:var(--text)}.theme-toggle .sun{display:none}:root[data-theme=light] .theme-toggle .sun{display:block}:root[data-theme=light] .theme-toggle .moon{display:none}.site-footer{border-top:1px solid var(--line);background:var(--surface-2);padding:var(--s-16) 0;font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.footer-row{justify-content:space-between;gap:var(--s-16);display:flex}.footer-row a{color:var(--text-2)}.page-head{justify-content:space-between;align-items:flex-end;gap:var(--s-16);margin-bottom:var(--s-24);flex-wrap:wrap;display:flex}.page-head h1,.page-head .actions{margin:0}.btn{justify-content:center;align-items:center;gap:var(--s-8);padding:var(--s-12) var(--s-24);border-radius:var(--r-sm);background:var(--secondary);color:#fff;font-family:var(--font-display);font-weight:900;font-size:var(--fs-16);border:2px solid var(--secondary);cursor:pointer;line-height:1.2;text-decoration:none;transition:background .12s,border-color .12s;display:inline-flex}.btn:hover{background:var(--red-2);border-color:var(--red-2);color:#fff}.btn:active{transform:translateY(1px)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-ghost{color:var(--text);border-color:var(--line-2);background:0 0}.btn-ghost:hover{background:var(--text);color:var(--surface);border-color:var(--text)}.btn-danger{color:var(--danger);border-color:var(--danger);background:0 0}.btn-danger:hover{background:var(--danger);border-color:var(--danger);color:#fff}.btn-small{padding:var(--s-4) var(--s-12);font-size:var(--fs-14);font-weight:600}.btn-link{color:var(--text-2);font:inherit;font-size:var(--fs-14);cursor:pointer;text-underline-offset:3px;background:0 0;border:0;padding:0;text-decoration:underline}.btn-link:hover{color:var(--secondary)}.inline-form{margin:0;display:inline}.actions{align-items:center;gap:var(--s-8) var(--s-12);margin:var(--s-16) 0;flex-wrap:wrap;display:flex}.card{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-sm);padding:var(--s-16)}.card.is-live{border-color:var(--secondary)}.card.is-offline{opacity:.75}.card-head{justify-content:space-between;align-items:center;gap:var(--s-8);margin-bottom:var(--s-12);display:flex}.card-head h3{font-size:var(--fs-20);text-overflow:ellipsis;white-space:nowrap;margin:0;overflow:hidden}.grid{gap:var(--s-12);grid-template-columns:repeat(auto-fill,minmax(280px,1fr));display:grid}.stats{background:var(--line);border:1px solid var(--line);margin-bottom:var(--s-24);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;display:grid}.stat{background:var(--surface-2);padding:var(--s-12) var(--s-16)}.stat b{color:var(--muted);margin-bottom:var(--s-4);font-weight:400;display:block}.stat strong{font-size:var(--fs-32);letter-spacing:-.02em;font-weight:900;line-height:1}.stat strong.accent{color:var(--secondary)}.section{margin:var(--s-32) 0}.section h2{align-items:baseline;gap:var(--s-12);display:flex}.section h2 a{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-transform:uppercase;color:var(--muted);font-weight:400}.kv{gap:var(--s-4) var(--s-12);grid-template-columns:auto 1fr;margin:0;display:grid}.kv dt{color:var(--muted);padding-top:3px}.kv dd{font-size:var(--fs-14);color:var(--text-2);margin:0}.kv dd b{color:var(--text)}.dot{background:var(--muted);border-radius:50%;flex:none;width:10px;height:10px;display:inline-block}.dot.on{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb, var(--success) 30%, transparent)}.dot.live{background:var(--secondary);box-shadow:0 0 0 3px color-mix(in srgb, var(--secondary) 35%, transparent)}.badge{padding:2px var(--s-8);border:1px solid var(--line-2);border-radius:var(--r-sm);color:var(--text-2);white-space:nowrap;line-height:1.5;display:inline-block}.badge-planned{color:var(--text-2)}.badge-armed{color:#fff;background:var(--warning);border-color:var(--warning)}.badge-live{color:#fff;background:var(--secondary);border-color:var(--secondary)}.badge-ended{color:var(--muted)}.badge-failed{color:#fff;background:var(--danger);border-color:var(--danger)}.badge-ok{color:var(--success);border-color:var(--success)}.table-wrap{border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface-2);overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:var(--fs-14)}th{text-align:left;color:var(--muted);padding:var(--s-8) var(--s-12);border-bottom:1px solid var(--line-2);white-space:nowrap;font-weight:400}td{padding:var(--s-8) var(--s-12);border-bottom:1px solid var(--line);vertical-align:middle}tr:last-child td{border-bottom:0}tr.is-live td{background:color-mix(in srgb, var(--secondary) 8%, transparent)}tr.is-past td{color:var(--muted)}td.num,.when{font-family:var(--font-mono);white-space:nowrap}td .row-actions{gap:var(--s-8);flex-wrap:wrap;justify-content:flex-end;display:flex}.day-head td{background:var(--surface-3);font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2);padding:var(--s-4) var(--s-12)}.form{gap:var(--s-12);grid-template-columns:repeat(auto-fit,minmax(220px,1fr));display:grid}.form .full{grid-column:1/-1}.field{gap:var(--s-4);flex-direction:column;display:flex}.field .label{color:var(--muted)}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-sm);padding:var(--s-8) var(--s-12);min-height:40px}input:focus,select:focus,textarea:focus{outline:2px solid var(--primary);outline-offset:0;border-color:var(--primary)}input[type=checkbox]{width:18px;height:18px;min-height:0}.inline-edit{gap:var(--s-8);align-items:center;display:flex}.inline-edit input{min-height:32px;padding:var(--s-4) var(--s-8);font-weight:900;font-size:var(--fs-20);flex:1}.rename{color:inherit;font:inherit;font-weight:900;font-size:var(--fs-20);cursor:text;text-align:left;background:0 0;border:0;border-bottom:1px dashed #0000;padding:0}.rename:hover{border-bottom-color:var(--line-2)}.alert{padding:var(--s-12) var(--s-16);border:1px solid var(--line-2);border-radius:var(--r-sm);background:var(--surface-2);margin:0 0 var(--s-16);font-size:var(--fs-14);border-left-width:4px}.alert-danger{border-color:var(--danger)}.alert-warn{border-color:var(--warning)}.alert-ok{border-color:var(--success)}.join{gap:var(--s-24);grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid}.code{font-family:var(--font-mono);letter-spacing:.12em;word-break:break-all;font-size:clamp(2.5rem,9vw,5.5rem);font-weight:700;line-height:1}.code span{color:var(--secondary)}.qr{padding:var(--s-12);border-radius:var(--r-sm);background:#fff;width:232px;height:232px}.qr img{width:208px;height:208px;image-rendering:pixelated;display:block}.countdown{font-family:var(--font-mono);font-size:var(--fs-24);font-weight:700}.countdown.low{color:var(--secondary)}.join-public{text-align:center;padding:var(--s-32) 0}.join-public .code{margin:var(--s-24) 0}.settings-rows{gap:var(--s-8);display:grid}.settings-row{gap:var(--s-8);grid-template-columns:minmax(140px,1fr) minmax(200px,2fr) auto;align-items:center;display:grid}.settings-row input{font-family:var(--font-mono);font-size:var(--fs-14)}.tabs{background:var(--line);border:1px solid var(--line);border-radius:var(--r-sm);margin-bottom:var(--s-24);gap:1px;width:fit-content;display:flex;overflow:hidden}.tabs a{background:var(--surface-2);padding:var(--s-8) var(--s-16);font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-transform:uppercase;color:var(--text-2)}.tabs a:hover{background:var(--surface-3);color:var(--text)}.tabs a[aria-current=page]{background:var(--text);color:var(--surface)}.live-line{align-items:center;gap:var(--s-8);display:inline-flex}.toolbar{align-items:center;gap:var(--s-12);margin-bottom:var(--s-16);flex-wrap:wrap;display:flex}.toolbar .spacer{flex:1}.poll{font-family:var(--font-mono);font-size:var(--fs-12);letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.empty{padding:var(--s-24);border:1px dashed var(--line-2);border-radius:var(--r-sm);color:var(--muted);text-align:center}@media (max-width:720px){.container{width:min(1200px,100% - 24px)}.nav{padding:var(--s-8) 0;flex-wrap:wrap}.join{grid-template-columns:1fr;justify-items:center}.user-box .who{display:none}}
