:root{--maxw: 460px;--input-bg: rgba(120,120,128,.1);--device-backdrop: #e9eaee;color-scheme:light}:root[data-theme=dark]{color-scheme:dark;--bg: #0b0b0d;--surface: #1a1a1d;--text: #f5f5f7;--muted: #8e8e93;--border: rgba(255,255,255,.08);--border-strong: rgba(255,255,255,.12);--pill-bg: rgba(255,255,255,.12);--input-bg: rgba(255,255,255,.08);--status-ready-bg: rgba(31,138,91,.18);--status-push-bg: rgba(217,119,87,.18);--status-cancel-bg: rgba(201,52,52,.18);--status-none-bg: rgba(142,142,147,.18);--device-backdrop: #050505}html,body{background:var(--bg)}body{margin:0;color:var(--text);font-family:var(--font-sans);-webkit-font-smoothing:antialiased}.wrap{padding:14px 16px 40px;display:flex;flex-direction:column;gap:12px}.loading{text-align:center;color:var(--muted);padding:60px 0}.device{max-width:460px;margin:0 auto;min-height:100vh;background:var(--bg)}:root[data-theme=dark] .device{background:linear-gradient(180deg,#16161a,#050507)}@media (min-width: 540px){body{background:var(--device-backdrop);padding:28px 0}.device{min-height:auto;border:1px solid var(--border);border-radius:30px;box-shadow:0 24px 70px #00000038}.dlbar{position:static!important;border-radius:30px 30px 0 0;padding-top:11px}}.dlbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;padding-top:calc(11px + env(safe-area-inset-top,0px));background:var(--surface);border-bottom:1px solid var(--border)}.dlbar-cta{color:var(--primary);font-weight:800;font-size:15px;text-decoration:none;white-space:nowrap}.dlbar-sub{color:var(--muted);font-weight:600}@media (max-width: 400px){.dlbar-sub{display:none}}.dlbar-brand{display:inline-flex;align-items:center;gap:8px;text-decoration:none}.theme-switch{display:flex;gap:2px;padding:3px;flex-shrink:0;border-radius:999px;background:var(--pill-bg);border:1px solid var(--border)}.theme-opt{display:inline-flex;align-items:center;justify-content:center;border:none;background:none;cursor:pointer;color:var(--muted);padding:6px 10px;border-radius:999px;line-height:0}.theme-opt svg{width:15px;height:15px}.theme-opt.is-active{background:var(--surface);color:var(--text);box-shadow:0 1px 3px #00000024}:root[data-theme=dark] .device .dlbar-brand .brand-logo{box-shadow:0 0 10px #ffffff59}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg, 20px);padding:16px}.eventcard,.joincard,.joincard .lbl,.joincard .input{text-align:center}.kind{display:inline-block;color:var(--blue);background:#0a84ff1f;font-size:11px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:5px 10px;border-radius:7px;margin:0 0 10px}.kind-host{color:var(--primary);background:var(--status-cancel-bg)}.title{font-size:clamp(22px,6vw,28px);font-weight:500;letter-spacing:-.03em;margin:0;color:var(--text)}.when{color:var(--muted);font-size:14px;margin:6px 0 0}.when.sub{font-size:13px}.lbl{display:block;color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px}.seclbl{color:var(--muted);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;margin:6px 4px -4px}.input{width:100%;box-sizing:border-box;min-height:48px;border-radius:14px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);font-size:16px;padding:0 14px;margin-bottom:12px}.codewrap{position:relative;display:flex;justify-content:center;margin:6px 0 14px}.codeboxes{display:flex;gap:8px;align-items:center;justify-content:center}.codebox{width:44px;height:56px;border-radius:10px;border:1.5px solid var(--border);background:var(--input-bg);display:flex;align-items:center;justify-content:center;font-size:24px;font-weight:500;color:var(--text);font-family:Menlo,Consolas,SF Mono,monospace}.codebox.filled{background:var(--surface)}.codebox.active{border:2px solid var(--primary)}.codebox.err{border-color:var(--cancel)}.codesep{color:var(--muted);font-size:20px;font-weight:500;margin:0 2px}.codehidden{position:absolute;inset:0;width:100%;height:100%;opacity:0;border:none;background:transparent;color:transparent;caret-color:transparent;font-size:16px}.fineprint{color:var(--muted);font-size:12px;text-align:center;margin:10px 0 0}.samplenote-lead{color:var(--muted);font-size:12px;text-align:center;margin:14px 0 8px}.samplerow{display:flex;align-items:center;justify-content:center;gap:9px;margin-top:6px}.samplecode{font-family:Menlo,Consolas,SF Mono,monospace;font-size:12px;font-weight:600;letter-spacing:.5px;color:var(--blue);background:#0a84ff1a;border:none;border-radius:6px;padding:4px 9px;cursor:pointer}.samplecode:hover{background:#0a84ff2e}.samplelbl{color:var(--muted);font-size:12px}.err{color:var(--cancel);font-size:13px;margin:0 0 10px}.btn{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:50px;border-radius:14px;font-size:16px;font-weight:600;border:none;cursor:pointer;text-decoration:none;margin-top:8px}.btn-primary{background:var(--primary);color:#fff;box-shadow:0 10px 24px #ef2b3d47}.btn-ready{background:var(--ready);color:#fff;box-shadow:0 10px 24px #1f8a5b47}.btn-secondary{background:var(--pill-bg);color:var(--text);border:none;box-shadow:none}.btn-ghost{background:transparent;color:var(--muted);border:1px solid var(--border);box-shadow:none}.sbtns{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.sbtn{border:1.5px solid currentColor;border-radius:14px;min-height:86px;padding:8px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:4px;cursor:pointer;background:var(--status-none-bg);color:var(--text)}.sbtn svg{width:22px;height:22px}.sbtn-name{font-size:14px;font-weight:500}.sbtn-sub{font-size:10px;font-weight:500;opacity:.8}.sbtn-ready{background:var(--status-ready-bg);color:var(--ready)}.sbtn-push{background:var(--status-push-bg);color:var(--push)}.sbtn-cancel{background:var(--status-cancel-bg);color:var(--cancel)}.sbtn.is-active{border-width:2.5px}.members{padding:6px 16px}.mrow{display:flex;align-items:center;gap:10px;padding:10px 0;border-top:1px solid var(--border)}.mrow:first-child{border-top:none}.mav{width:38px;height:38px;border-radius:50%;font-size:14px;font-weight:500;letter-spacing:-.3px;display:flex;align-items:center;justify-content:center;flex-shrink:0;position:relative}.mav .crown{position:absolute;top:-4px;right:-4px;font-size:12px;line-height:1}.mname{flex:1;font-size:15px;font-weight:500;letter-spacing:-.2px;color:var(--text)}.tag{display:inline-block;vertical-align:middle;background:var(--pill-bg);color:var(--muted);font-size:9px;font-weight:500;letter-spacing:.6px;text-transform:uppercase;padding:2px 6px;border-radius:5px;margin-left:6px}.tag-you{color:var(--blue)}.pill{font-size:13px;font-weight:500;letter-spacing:.1px;padding:6px 12px;border-radius:999px}.pill-ready{background:var(--status-ready-bg);color:var(--ready)}.pill-push{background:var(--status-push-bg);color:var(--push)}.pill-cancel{background:var(--status-cancel-bg);color:var(--cancel)}.pill-none{background:var(--status-none-bg);color:var(--muted)}.pill-setme{background:var(--blue);color:#fff}.endcard{text-align:center;padding:32px 20px}.endbadge{width:116px;height:116px;border-radius:58px;display:inline-flex;align-items:center;justify-content:center;font-size:48px;margin:0 auto 14px}.endbadge-lg{width:132px;height:132px;border-radius:66px;font-size:72px}.badge-cancel{background:var(--status-cancel-bg)}.badge-ready{background:var(--status-ready-bg)}.redir{color:var(--muted);font-size:13px;margin:16px 0 0}.redir-stay{background:none;border:none;color:var(--blue);font-size:13px;font-weight:600;cursor:pointer;margin-top:6px;padding:4px}.toast{position:fixed;left:50%;bottom:20px;transform:translate(-50%);max-width:90%;background:var(--text);color:var(--bg);font-size:14px;font-weight:700;padding:12px 16px;border-radius:12px;box-shadow:0 8px 24px #00000040;z-index:60}.wrap{padding-bottom:92px}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:2px 2px 0}.topbar-right{display:inline-flex;align-items:center;gap:14px}.tb-btn{background:none;border:none;padding:4px;cursor:pointer;color:var(--text);display:inline-flex;line-height:0}.tb-btn:active{opacity:.6}.codepill{padding:5px 10px;border-radius:999px;background:var(--surface);border:1px solid var(--border-strong);color:var(--muted);font-size:13px;font-weight:500;letter-spacing:1.5px;cursor:pointer;font-family:Menlo,Consolas,SF Mono,monospace}.eventcard{position:relative}.cd{position:absolute;top:50%;transform:translateY(-50%);width:52px;text-align:center;font-size:26px;font-weight:500;letter-spacing:-1.5px;color:var(--muted);opacity:.7;cursor:pointer}.cd-l{left:6px}.cd-r{right:6px}.cd-start{color:var(--ready);opacity:.95}.cd-off{font-size:18px;opacity:.5}.when-strong{color:var(--text);font-size:16px;font-weight:500;margin-top:6px}.loclink{color:var(--blue);text-decoration:underline}.capwrap{margin-top:18px}.spots{color:var(--muted);font-size:14px}.bar{margin-top:8px;height:8px;border-radius:999px;background:var(--border-strong);overflow:hidden}.bar-fill{display:block;height:100%;border-radius:999px;background:var(--ready)}.bar-fill.full{background:var(--push)}.tiles{display:flex;gap:8px}.ct{flex:1;border-radius:14px;padding:10px 6px;background:var(--surface);border:1px solid var(--border);text-align:center}.ct-n{display:block;font-size:20px;font-weight:500;letter-spacing:-.5px;line-height:1.1}.ct-l{display:block;font-size:10px;font-weight:500;margin-top:2px}.ct-ready .ct-n,.ct-ready .ct-l{color:var(--ready)}.ct-push .ct-n,.ct-push .ct-l{color:var(--push)}.ct-cancel .ct-n,.ct-cancel .ct-l{color:var(--cancel)}.ct-none .ct-n,.ct-none .ct-l{color:var(--muted)}.mrow{cursor:pointer}.chev{color:var(--muted);flex-shrink:0;margin-left:2px}.pingbtn{display:inline-flex;align-items:center;gap:4px;background:var(--blue);color:#fff;border:none;border-radius:999px;padding:5px 10px;font-size:12px;font-weight:500;cursor:pointer}.pingbtn:active{opacity:.7}.empty{color:var(--muted);font-size:14px;padding:8px 0;margin:0}.footer{position:sticky;bottom:0;display:flex;gap:8px;z-index:30;padding:12px 16px calc(16px + env(safe-area-inset-bottom,0px));background:var(--bg);border-top:1px solid var(--border)}.fbtn{flex:1;min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:5px;border-radius:14px;border:1.5px solid var(--border-strong);background:var(--surface);color:var(--text);font-size:13px;font-weight:500;cursor:pointer}.fbtn-cancel{border-color:var(--cancel);color:var(--cancel)}.fbtn.is-voted{background:var(--status-cancel-bg)}.sheet-overlay{position:fixed;inset:0;background:#00000080;z-index:50;display:flex;align-items:flex-end;justify-content:center}.sheet{width:100%;max-width:460px;box-sizing:border-box;background:var(--surface);border-radius:20px 20px 0 0;padding:14px 20px calc(28px + env(safe-area-inset-bottom,0px));display:flex;flex-direction:column;gap:12px}.sheet-grab{align-self:center;width:36px;height:4px;border-radius:2px;background:var(--border-strong)}.sheet-title{text-align:center;font-size:17px;font-weight:500;color:var(--text);margin:0}.sbtns-sheet{margin-top:2px}.sheet-head{display:flex;align-items:center;gap:12px}.sheet-name{font-size:17px;font-weight:500;color:var(--text);margin-bottom:6px}.sheet-cd{display:block;margin-top:6px;color:var(--muted);font-size:12px;font-weight:500}.mav-lg{width:48px;height:48px;font-size:18px}.abtns{display:flex;flex-direction:column;gap:8px}.abtn{min-height:48px;border-radius:14px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);font-size:15px;font-weight:500;cursor:pointer}.abtn-ping{background:var(--blue);color:#fff;border:none}.abtn-danger{color:var(--cancel);border-color:var(--cancel);background:transparent}.sheet-note{color:var(--muted);font-size:14px;line-height:1.5;text-align:center;margin:4px 0}.sheet-close{min-height:44px;border:none;background:none;color:var(--muted);font-size:15px;font-weight:500;cursor:pointer}.fb-sub{color:var(--muted);font-size:13px;line-height:1.5;text-align:center;margin:-2px 0 2px}.fb-textarea{width:100%;box-sizing:border-box;min-height:96px;resize:vertical;border-radius:14px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);font-size:15px;line-height:1.45;padding:12px 14px;font-family:inherit}.fb-input{width:100%;box-sizing:border-box;min-height:44px;border-radius:14px;border:1px solid var(--border);background:var(--input-bg);color:var(--text);font-size:16px;padding:0 14px}
