:root{--bg:#f3f4f6;--surface:#fff;--surface-2:#f7f8fa;--fill:#767c881f;--fill-strong:#767c8833;--text:#0e1116;--text-2:#4b5260;--muted:#7a8190;--border:#0e111614;--accent:#2d5bff;--accent-press:#2449d6;--accent-soft:#2d5bff1a;--success:#12a150;--warning:#e07000;--notice:#c98a00;--error:#e5383b;--success-text:#0b7a3b;--warning-text:#b25800;--notice-text:#8f6400;--error-text:#c22a2d;--shadow-card:0 1px 2px #0e11160a, 0 0 0 1px var(--border);--shadow-float:0 12px 32px #0e111624, 0 2px 6px #0e11160f;--radius:16px;--radius-sm:12px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in-out:cubic-bezier(.77, 0, .175, 1);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--tabbar-h:58px;--sidebar-w:248px;--safe-b:env(safe-area-inset-bottom,0px);--safe-t:env(safe-area-inset-top,0px);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#09090b;--surface:#17181c;--surface-2:#1e2025;--fill:#8c92a029;--fill-strong:#8c92a042;--text:#f2f3f5;--text-2:#b9bec8;--muted:#8b919d;--border:#ffffff12;--accent:#5b7fff;--accent-press:#4a6cf0;--accent-soft:#5b7fff29;--success-text:#3fd17f;--warning-text:#ff9d3d;--notice-text:#f3c047;--error-text:#ff6b6d;--shadow-card:0 0 0 1px var(--border);--shadow-float:0 12px 32px #00000080, 0 0 0 1px var(--border)}}*{box-sizing:border-box}html{-webkit-tap-highlight-color:transparent;-webkit-text-size-adjust:100%;overscroll-behavior:none}body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:16px/1.4 system-ui,-apple-system,SF Pro Text,Segoe UI,Roboto,sans-serif}a{color:inherit}h1,h2,h3,p{margin:0}input,textarea,select{font:inherit;font-size:16px}button,a,[role=button]{touch-action:manipulation;-webkit-user-select:none;user-select:none}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.app{flex-direction:column;min-height:100dvh;display:flex}.grow{flex:1;min-width:0}.center{text-align:center}.page{width:100%;max-width:640px;padding:8px 16px calc(24px + var(--safe-b));flex-direction:column;flex:1;gap:14px;margin:0 auto;display:flex}.page.with-tabbar{padding-bottom:calc(var(--tabbar-h) + 28px + var(--safe-b))}.empty-page{text-align:center;justify-content:center;align-items:center}.large-header{width:100%;max-width:640px;padding:calc(20px + var(--safe-t)) 16px 6px;align-items:flex-end;gap:12px;margin:0 auto;display:flex}.large-header h1{letter-spacing:-.025em;font-size:32px;font-weight:750;line-height:1.1}.large-header-sub{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-bottom:2px;font-size:13px;font-weight:600}.nav-bar{z-index:5;padding:calc(8px + var(--safe-t)) 12px 8px;background:color-mix(in srgb, var(--bg) 82%, transparent);-webkit-backdrop-filter:saturate(180%)blur(16px);align-items:center;gap:8px;display:flex;position:sticky;top:0}.section{gap:8px;display:grid}.section-title{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;padding:0 4px;font-size:13px;font-weight:600}.group{gap:8px;display:grid}.group+.group{margin-top:6px}.group-title{padding:0 4px;font-size:15px;font-weight:650}.stack{gap:12px;display:grid}.card{background:var(--surface);border-radius:var(--radius);box-shadow:var(--shadow-card)}.footnote{color:var(--muted);padding:0 4px;font-size:13px}.hint{color:var(--muted);padding:4px;font-size:14px}.notice{border-radius:var(--radius-sm);background:var(--fill);color:var(--text-2);padding:12px 14px;font-size:14px}.error-text{color:var(--error-text);font-size:14px}.muted{color:var(--muted)}.btn{border-radius:var(--radius-sm);background:var(--fill);min-height:44px;color:var(--text);font:inherit;white-space:nowrap;cursor:pointer;transition:transform .16s var(--ease-out), background-color .16s ease, opacity .16s ease;border:0;justify-content:center;align-items:center;gap:8px;padding:0 16px;font-weight:600;text-decoration:none;display:inline-flex}.btn:active:not(:disabled){transform:scale(.97)}.btn:disabled{opacity:.45;cursor:default}.btn-primary{background:var(--accent);color:#fff;box-shadow:0 1px 2px #2d5bff4d}.btn-primary:active:not(:disabled){background:var(--accent-press)}.btn-ghost{color:var(--accent);background:0 0}.btn-light{color:#0e1116;background:#fff}.btn-danger{background:color-mix(in srgb, var(--error) 12%, transparent);color:var(--error-text)}.btn-block{width:100%}.btn-small{border-radius:10px;min-height:34px;padding:0 10px;font-size:14px}.btn-large{border-radius:14px;min-height:52px;font-size:17px}.icon-btn{background:var(--fill);width:40px;height:40px;color:var(--text);cursor:pointer;transition:transform .16s var(--ease-out);border:0;border-radius:50%;flex:none;place-items:center;text-decoration:none;display:inline-grid}.icon-btn:active{transform:scale(.92)}.link-btn{color:var(--accent);font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:600}.spin{animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.form{gap:14px;display:grid}.field{gap:6px;display:grid}.field label{color:var(--text-2);padding:0 2px;font-size:14px;font-weight:550}.field input{border-radius:var(--radius-sm);background:var(--fill);min-height:48px;color:var(--text);border:1px solid #0000;padding:0 14px;transition:border-color .16s,background-color .16s}.field input:focus{border-color:var(--accent);background:var(--surface);outline:none}.search-field{border-radius:var(--radius-sm);background:var(--fill);min-height:44px;color:var(--muted);align-items:center;gap:8px;padding:0 12px;display:flex}.search-field input{min-width:0;min-height:44px;color:var(--text);background:0 0;border:0;outline:none;flex:1}.search-field:focus-within{box-shadow:0 0 0 2px var(--accent)}.segmented{background:var(--fill);border-radius:12px;grid-auto-columns:1fr;grid-auto-flow:column;padding:3px;display:grid;position:relative}.segmented-thumb{width:calc((100% - 6px) / var(--n));background:var(--surface);box-shadow:0 1px 3px #0e11161f, 0 0 0 .5px var(--border);transition:transform .22s var(--ease-out);border-radius:9px;position:absolute;top:3px;bottom:3px;left:3px}.segmented button{min-height:34px;color:var(--text-2);font:inherit;cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:600;position:relative}.segmented button[aria-pressed=true]{color:var(--text)}.chips{scrollbar-width:none;gap:8px;margin:0 -16px;padding:0 16px 2px;display:flex;overflow-x:auto}.chip{background:var(--fill);min-height:34px;color:var(--text-2);font:inherit;cursor:pointer;transition:transform .16s var(--ease-out);border:0;border-radius:999px;flex:none;align-items:center;gap:6px;padding:0 12px;font-size:14px;font-weight:600;display:inline-flex}.chip:active{transform:scale(.96)}.chip[aria-pressed=true]{background:var(--text);color:var(--bg)}.chip-n{font-variant-numeric:tabular-nums;opacity:.6}.rows{margin:0;padding:0;list-style:none;display:grid;overflow:hidden}.rows>li+li>.row,.rows>.row+.row,.rows>li.row+li.row{box-shadow:inset 0 1px 0 var(--border)}.row{min-height:60px;color:inherit;align-items:center;gap:12px;padding:10px 14px;text-decoration:none;display:flex}.row-link,.row-button{width:100%;font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;transition:background-color .12s}.row-link:active,.row-button:active{background:var(--fill)}.rows:not(.card) .row-button{border-radius:var(--radius-sm)}.row-main{flex:1;min-width:0;display:grid}.row-title{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.row-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:14px;overflow:hidden}.row-error{color:var(--error-text);font-size:13px}.row-end{flex:none;justify-items:end;gap:3px;display:grid}.row-time{color:var(--text-2);font-variant-numeric:tabular-nums;font-size:14px}.row-count{font-variant-numeric:tabular-nums;color:var(--text-2);font-weight:650}.row-chevron{color:var(--muted);opacity:.6;flex:none}.avatar{letter-spacing:.01em;background:hsl(var(--hue,220) 70% 92%);color:hsl(var(--hue,220) 45% 32%);border-radius:50%;flex:none;place-items:center;font-weight:650;display:inline-grid}@media (prefers-color-scheme:dark){.avatar{background:hsl(var(--hue,220) 35% 24%);color:hsl(var(--hue,220) 80% 82%)}}.avatar-unknown{background:var(--fill);color:var(--muted)}.date-tile{background:var(--fill);border-radius:10px;flex:none;place-items:center;width:44px;height:48px;line-height:1;display:grid}.date-tile-month{color:var(--error-text);text-transform:uppercase;letter-spacing:.04em;font-size:11px;font-weight:700}.date-tile-day{font-variant-numeric:tabular-nums;margin-top:-6px;font-size:20px;font-weight:700}.badge{white-space:nowrap;background:var(--fill);color:var(--text-2);border-radius:999px;align-items:center;padding:2px 8px;font-size:12px;font-weight:650;display:inline-flex}.badge-success,.badge[data-status=open]{background:color-mix(in srgb, var(--success) 14%, transparent);color:var(--success-text)}.badge-notice{background:color-mix(in srgb, var(--notice) 16%, transparent);color:var(--notice-text)}.badge-warning{background:color-mix(in srgb, var(--warning) 14%, transparent);color:var(--warning-text)}.badge-error{background:color-mix(in srgb, var(--error) 13%, transparent);color:var(--error-text)}.badge[data-status=upcoming]{background:var(--accent-soft);color:var(--accent)}.empty{text-align:center;justify-items:center;gap:6px;padding:36px 24px;display:grid}.empty-icon{background:var(--fill);width:52px;height:52px;color:var(--muted);border-radius:16px;place-items:center;margin-bottom:6px;display:grid}.empty h2{font-size:17px;font-weight:650}.empty p{max-width:300px;color:var(--muted);font-size:15px}.empty-page .btn{margin-top:8px}.syncbar{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);align-items:center;gap:12px;padding:10px 8px 10px 14px;transition:background-color .2s;display:flex}.syncbar[data-stale=true]{background:color-mix(in srgb, var(--notice) 14%, var(--surface))}.syncbar-text{flex:1;min-width:0;display:grid}.syncbar-head{font-size:15px;font-weight:600}.syncbar-sub{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.syncbar-btn{flex:none}.dot{background:var(--muted);border-radius:50%;flex:none;width:9px;height:9px;display:inline-block}.dot[data-online=true]{background:var(--success);box-shadow:0 0 0 3px color-mix(in srgb, var(--success) 20%, transparent)}.dot[data-online=true][data-pending=true]{background:var(--notice);box-shadow:0 0 0 3px color-mix(in srgb, var(--notice) 22%, transparent)}.banner{border-radius:var(--radius);background:color-mix(in srgb, var(--error) 12%, var(--surface));color:var(--text);align-items:center;gap:10px;padding:12px 14px;font-size:14px;display:flex}.banner svg{color:var(--error-text);flex:none}.banner a{color:var(--error-text);font-weight:650}.tabbar{z-index:8;grid-template-columns:repeat(var(--tabs,3), 1fr);height:calc(var(--tabbar-h) + var(--safe-b));padding-bottom:var(--safe-b);background:color-mix(in srgb, var(--surface) 82%, transparent);-webkit-backdrop-filter:saturate(180%)blur(20px);box-shadow:0 -.5px 0 var(--border);display:grid;position:fixed;bottom:0;left:0;right:0}.tab{color:var(--muted);align-content:center;place-items:center;gap:2px;text-decoration:none;display:grid}.tab[aria-current=page]{color:var(--accent)}.tab-icon{transition:transform .16s var(--ease-out);display:grid;position:relative}.tab:active .tab-icon{transform:scale(.9)}.tab-label{font-size:11px;font-weight:600}.tab-badge{background:var(--notice);color:#fff;text-align:center;font-variant-numeric:tabular-nums;min-width:18px;height:18px;box-shadow:0 0 0 2px var(--surface);border-radius:999px;padding:0 5px;font-size:11px;font-weight:700;line-height:18px;position:absolute;top:-5px;left:14px}.now-card{background:var(--surface);box-shadow:var(--shadow-card);border-radius:20px;gap:14px;padding:16px;display:grid}.now-main{border-radius:10px;gap:4px;text-decoration:none;display:grid}.now-head{justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px;display:flex}.live-pill{background:color-mix(in srgb, var(--success) 14%, transparent);color:var(--success-text);text-transform:uppercase;letter-spacing:.04em;border-radius:999px;align-items:center;gap:6px;padding:3px 9px 3px 8px;font-size:12px;font-weight:700;display:inline-flex}.live-dot{background:var(--success);border-radius:50%;width:7px;height:7px;position:relative}.live-dot:after{content:"";background:var(--success);animation:live 2.4s var(--ease-out) infinite;border-radius:50%;position:absolute;inset:0}@keyframes live{0%{opacity:.6;transform:scale(1)}70%,to{opacity:0;transform:scale(2.6)}}.now-when{color:var(--muted);font-size:13px;font-weight:600}.now-title{letter-spacing:-.015em;overflow-wrap:anywhere;font-size:22px;font-weight:700;line-height:1.2}.now-sub{color:var(--muted);font-size:15px}.now-stat{align-items:baseline;gap:6px;margin-top:10px;display:flex}.now-count{letter-spacing:-.03em;font-variant-numeric:tabular-nums;font-size:34px;font-weight:750;line-height:1}.now-count-label{color:var(--muted);font-size:15px}.event-hero{gap:6px;padding:4px 4px 2px;display:grid}.event-eyebrow{color:var(--muted);flex-wrap:wrap;align-items:center;gap:8px;font-size:14px;font-weight:600;display:flex}.event-hero h1{letter-spacing:-.025em;overflow-wrap:anywhere;font-size:28px;font-weight:750;line-height:1.15}.event-meta{color:var(--text-2);align-items:center;gap:8px;font-size:15px;display:flex}.event-meta svg{color:var(--muted);flex:none}.stats{grid-template-columns:1.3fr 1fr 1fr;gap:8px;display:grid}.stat{border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow-card);gap:2px;padding:12px 14px;display:grid}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;font-size:24px;font-weight:750;line-height:1.1}.stat-main .stat-value{color:var(--accent)}.stat-label{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:13px;overflow:hidden}.stat[data-attention] .stat-value{color:var(--notice-text)}.stat[data-danger] .stat-value{color:var(--error-text)}.profile{align-items:center;gap:14px;padding:16px;display:flex}.profile-name{text-overflow:ellipsis;white-space:nowrap;font-size:18px;font-weight:700;overflow:hidden}.facts{margin:0}.facts .row{justify-content:space-between;min-height:48px}.facts dt{color:var(--text-2)}.facts dd{font-variant-numeric:tabular-nums;align-items:center;gap:8px;margin:0;font-weight:600;display:flex}.login{width:100%;max-width:420px;padding:calc(32px + var(--safe-t)) 16px calc(32px + var(--safe-b));flex-direction:column;flex:1;justify-content:center;gap:20px;margin:0 auto;display:flex}.login-brand{text-align:center;justify-items:center;gap:6px;display:grid}.brand-mark{color:#fff;background:linear-gradient(160deg,#4b74ff,#2447d9);border-radius:18px;place-items:center;width:64px;height:64px;margin-bottom:10px;display:grid;box-shadow:0 8px 24px #2d5bff59}.login-brand h1{letter-spacing:-.02em;font-size:26px;font-weight:750}.login-brand p{color:var(--muted)}.login-card{padding:18px}.scan-screen{--tone:#fffffff2;color:#fff;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;background:#000;position:fixed;inset:0;overflow:hidden}.scan-screen[data-tone=success]{--tone:var(--success)}.scan-screen[data-tone=warning]{--tone:var(--warning)}.scan-screen[data-tone=notice]{--tone:#f0b400}.scan-screen[data-tone=error]{--tone:var(--error)}.scan-screen video{object-fit:cover;width:100%;height:100%;position:absolute;inset:0}.scan-shade{pointer-events:none;place-items:center;padding-bottom:22dvh;display:grid;position:absolute;inset:0}.reticle{aspect-ratio:1;width:min(66vw,270px);animation:reticle-hit .22s var(--ease-out);border-radius:28px;position:relative;box-shadow:0 0 0 100vmax #00000080}.reticle span{border:5px solid var(--tone);width:46px;height:46px;transition:border-color .15s;position:absolute}.reticle span:first-child{border-bottom:0;border-right:0;border-top-left-radius:30px;top:-2px;left:-2px}.reticle span:nth-child(2){border-bottom:0;border-left:0;border-top-right-radius:30px;top:-2px;right:-2px}.reticle span:nth-child(3){border-top:0;border-right:0;border-bottom-left-radius:30px;bottom:-2px;left:-2px}.reticle span:nth-child(4){border-top:0;border-left:0;border-bottom-right-radius:30px;bottom:-2px;right:-2px}@keyframes reticle-hit{0%{transform:scale(.96)}}.glass-btn,.glass-pill,.glass-wide{color:#fff;font:inherit;cursor:pointer;-webkit-backdrop-filter:saturate(160%)blur(20px);transition:transform .16s var(--ease-out);background:#1e1e228c;border:0;justify-content:center;align-items:center;gap:8px;font-weight:600;text-decoration:none;display:inline-flex;box-shadow:inset 0 0 0 .5px #ffffff24}.glass-btn:active,.glass-pill:active,.glass-wide:active{transform:scale(.95)}.glass-btn{border-radius:50%;flex:none;width:42px;height:42px}.glass-btn[aria-pressed=true]{color:#0e1116;background:#fff}.glass-pill{border-radius:999px;flex:none;height:42px;padding:0 14px;font-size:15px}.glass-wide{border-radius:14px;width:100%;min-height:48px}.scan-top{z-index:2;padding:calc(10px + var(--safe-t)) 12px 10px;align-items:center;gap:10px;display:flex;position:absolute;top:0;left:0;right:0}.scan-title{text-align:center;text-shadow:0 1px 8px #00000080;flex:1;min-width:0}.scan-title h1{text-overflow:ellipsis;white-space:nowrap;font-size:17px;font-weight:700;overflow:hidden}.scan-title p{opacity:.8;font-size:13px}.topbar-count{font-variant-numeric:tabular-nums;font-weight:750}.scan-status{top:calc(64px + var(--safe-t));z-index:2;position:absolute;left:12px;right:12px}.syncbar[data-overlay]{-webkit-backdrop-filter:saturate(160%)blur(20px);background:#1e1e228c;border-radius:14px;padding:6px 6px 6px 12px;box-shadow:inset 0 0 0 .5px #ffffff24}.syncbar[data-overlay][data-stale=true]{background:#966900b3}.syncbar[data-overlay] .syncbar-head{font-size:14px}.syncbar[data-overlay] .syncbar-sub{color:#ffffffa6;font-size:12px}.syncbar[data-overlay] .btn-ghost{color:#fff;background:#ffffff1f}.scan-status .banner{margin-bottom:8px}.scan-tools{z-index:2;right:12px;top:calc(128px + var(--safe-t));gap:10px;display:grid;position:absolute}.camera-icon{background:var(--fill);width:38px;height:38px;color:var(--text-2);border-radius:10px;flex:none;place-items:center;display:grid}.row-check{color:var(--accent);flex:none}.scan-error{z-index:1;text-align:center;justify-content:center;align-items:center;gap:8px;font-size:15px;display:flex;position:absolute;top:38%;left:24px;right:24px}.scan-bottom{z-index:2;max-width:560px;padding:12px 12px calc(12px + var(--safe-b));gap:10px;margin:0 auto;display:grid;position:absolute;bottom:0;left:0;right:0}.scan-hint{-webkit-backdrop-filter:blur(16px);color:#ffffffd9;background:#1e1e228c;border-radius:999px;justify-self:center;padding:8px 14px;font-size:14px;font-weight:550}.result-card{color:#fff;transition:opacity .22s var(--ease-out), transform .22s var(--ease-out);border-radius:20px;gap:12px;padding:14px;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 40px #0006}@starting-style{.result-card{opacity:0;transform:translateY(16px)scale(.97)}}.result-card[data-tone=success]{background:#0f8f47}.result-card[data-tone=warning]{background:#c46200}.result-card[data-tone=notice]{background:#a97400}.result-card[data-tone=error]{background:#c9282b}.result-row{align-items:center;gap:14px;display:flex}.result-icon{background:#fff3;border-radius:50%;flex:none;place-items:center;width:52px;height:52px;display:grid}.result-body{min-width:0}.result-label{text-transform:uppercase;letter-spacing:.05em;opacity:.85;font-size:13px;font-weight:700}.result-title{letter-spacing:-.015em;overflow-wrap:anywhere;font-size:22px;font-weight:750;line-height:1.2}.result-sub{opacity:.85;overflow-wrap:anywhere;font-size:15px}.result-note{background:#0000002e;border-radius:10px;padding:8px 12px;font-size:14px;font-weight:600}.result-timer{transform-origin:0;background:#ffffff73;height:3px;animation:linear forwards drain;position:absolute;bottom:0;left:0;right:0}@keyframes drain{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.recent{-webkit-backdrop-filter:saturate(160%)blur(20px);background:#1e1e228c;border-radius:16px;padding:4px 6px;display:grid;box-shadow:inset 0 0 0 .5px #ffffff24}.recent-row{align-items:center;gap:10px;min-height:42px;padding:0 6px;font-size:15px;display:flex}.recent-row+.recent-row{box-shadow:inset 0 .5px #ffffff1f}.recent-name{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;font-weight:600;overflow:hidden}.recent-time{color:#fff9;font-variant-numeric:tabular-nums;font-size:13px}.recent-undo{color:#fff;min-height:30px;font:inherit;cursor:pointer;transition:transform .16s var(--ease-out);background:#ffffff24;border:0;border-radius:8px;padding:0 10px;font-size:13px;font-weight:600}.recent-undo:active{transform:scale(.95)}.manual{gap:8px;display:flex}.manual input{color:#0e1116;background:#fff;border:0;border-radius:14px;flex:1;min-width:0;min-height:48px;padding:0 14px}.manual .btn{border-radius:14px;min-height:48px}.sheet-backdrop{z-index:10;transition:opacity .3s var(--ease-out);background:#00000073;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@starting-style{.sheet-backdrop{opacity:0}}.sheet-backdrop[data-closing]{opacity:0;transition-duration:.2s}.sheet{overscroll-behavior:contain;width:100%;max-width:560px;max-height:88dvh;padding:8px 16px calc(20px + var(--safe-b));background:var(--surface);color:var(--text);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;transition:transform .3s var(--ease-drawer);border-radius:24px 24px 0 0;gap:14px;display:grid;overflow-y:auto}@media (prefers-color-scheme:dark){.sheet{--lightningcss-light: ;--lightningcss-dark:initial}}@starting-style{.sheet{transform:translateY(100%)}}.sheet-backdrop[data-closing] .sheet{transition:transform .2s var(--ease-out);transform:translateY(100%)}.sheet-handle{background:var(--fill-strong);border-radius:999px;justify-self:center;width:36px;height:5px}.sheet-head{align-items:flex-start;gap:12px;display:flex}.sheet h2{letter-spacing:-.015em;font-size:20px;font-weight:700}.sheet-code{color:var(--muted);align-items:center;gap:6px;margin-top:4px;font-size:14px;display:flex}.sheet-code code{overflow-wrap:anywhere}.toast{left:12px;right:12px;bottom:calc(12px + var(--safe-b));z-index:20;background:var(--text);max-width:520px;color:var(--bg);box-shadow:var(--shadow-float);transition:opacity .2s var(--ease-out), transform .2s var(--ease-out);border-radius:16px;margin:0 auto;padding:12px 16px;position:fixed}@starting-style{.toast{opacity:0;transform:translateY(100%)}}.toast-title{overflow-wrap:anywhere;font-weight:600}.toast-detail{opacity:.75;margin-top:2px;font-size:14px}.page-narrow{max-width:560px}.header-actions{gap:8px;display:flex}.header-action{flex:none;margin-bottom:4px}.nav-title{text-align:center;flex:1;font-size:17px;font-weight:650}.nav-spacer{flex:none;width:40px}.form-card{padding:18px}.field-row{grid-template-columns:1fr 1fr;gap:12px;display:grid}.field-label{color:var(--text-2);padding:0 2px;font-size:14px;font-weight:550}.field-hint{color:var(--muted);padding:0 2px;font-size:13px;font-weight:400;display:block}.field-error{color:var(--error-text);padding:0 2px;font-size:13px}.field[data-invalid] input{border-color:var(--error);background:var(--surface)}.field input[type=date],.field input[type=time]{width:100%;min-width:0}.btn-danger-solid{background:var(--error);color:#fff}.manage-row{gap:6px;display:grid}.file-drop{border-radius:var(--radius);border:1.5px dashed var(--fill-strong);color:var(--text-2);cursor:pointer;align-items:center;gap:12px;padding:14px;transition:border-color .16s,background-color .16s;display:flex;position:relative}.file-drop[data-has-file]{border-style:solid;border-color:var(--accent);background:var(--accent-soft);color:var(--accent)}.file-drop .row-title{color:var(--text)}.file-drop input{opacity:0;cursor:pointer;position:absolute;inset:0}.file-drop:focus-within{box-shadow:0 0 0 2px var(--accent)}.check{cursor:pointer;align-items:flex-start;gap:10px;font-weight:550;display:flex}.check input{width:20px;height:20px;accent-color:var(--accent);flex:none;margin:1px 0 0}.import-plan{gap:12px;display:grid}.conflicts{border-radius:var(--radius-sm);background:color-mix(in srgb, var(--error) 10%, var(--surface));padding:12px 14px;font-size:14px}.conflicts-title{color:var(--error-text);align-items:center;gap:8px;font-weight:650;display:flex}.conflicts ul{margin:6px 0 0;padding-left:20px}.sidebar-brand,.sidebar-user{display:none}.brand-mark-small{width:30px;height:30px;box-shadow:none;border-radius:9px;margin:0}.not-found{width:100%;max-width:420px;padding:calc(24px + var(--safe-t)) 16px calc(24px + var(--safe-b));justify-content:space-between;gap:32px;margin:0 auto}.not-found-body{text-align:center;flex:1;align-content:center;justify-items:center;gap:8px;display:grid}.not-found-mark{background:var(--fill);width:64px;height:64px;color:var(--muted);border-radius:18px;place-items:center;margin-bottom:8px;display:grid}.not-found-code{letter-spacing:.08em;color:var(--accent);font-size:13px;font-weight:700}.not-found h1{letter-spacing:-.02em;font-size:26px;font-weight:750}.not-found-text{max-width:300px;color:var(--muted)}.not-found-actions{gap:10px;display:grid}@media (min-width:960px){.app:has(>.tabbar){padding-left:var(--sidebar-w)}.tabbar{width:var(--sidebar-w);background:var(--surface);-webkit-backdrop-filter:none;height:100dvh;box-shadow:.5px 0 0 var(--border);flex-direction:column;gap:2px;padding:20px 12px;display:flex;top:0;right:auto}.sidebar-brand{letter-spacing:-.01em;align-items:center;gap:10px;padding:4px 10px 20px;font-size:16px;font-weight:750;text-decoration:none;display:flex}.tab{height:42px;color:var(--text-2);border-radius:10px;justify-content:flex-start;align-items:center;gap:12px;padding:0 12px;display:flex}.tab .tab-icon svg{width:20px;height:20px}.tab-label{font-size:15px}.tab[aria-current=page]{background:var(--accent-soft);color:var(--accent)}.sidebar-user{border-radius:12px;align-items:center;gap:10px;margin-top:auto;padding:10px;text-decoration:none;display:flex}.sidebar-user .row-sub{align-items:center;gap:6px;font-size:13px;display:flex}.sidebar-user .dot{width:7px;height:7px;box-shadow:none}.page.with-tabbar{padding-bottom:48px}.large-header{max-width:1040px;padding:40px 32px 10px}.page-wide{max-width:1040px;padding-left:32px;padding-right:32px}.page-narrow{padding-top:24px}.nav-bar{padding-left:max(24px,50% - 496px);padding-right:max(24px,50% - 496px)}.now-grid{grid-template-columns:repeat(auto-fill,minmax(360px,1fr))}.page-wide>.segmented{width:320px}.event-layout{grid-template-columns:minmax(300px,360px) minmax(0,1fr);align-items:start;gap:32px;display:grid}.event-side,.event-main{flex-direction:column;gap:14px;min-width:0;display:flex}.event-side{position:sticky;top:72px}.chips{flex-wrap:wrap;margin:0;padding:0}.sheet-backdrop{align-items:center;padding:24px}.sheet{max-width:480px;box-shadow:var(--shadow-float);transition:opacity .2s var(--ease-out), transform .2s var(--ease-out);border-radius:20px;padding:20px}@starting-style{.sheet{opacity:0;transform:scale(.96)}}.sheet-backdrop[data-closing] .sheet{opacity:0;transition-duration:.15s;transform:scale(.97)}.sheet-handle{display:none}.toast{width:380px;margin:0;bottom:24px;left:auto;right:24px}.scan-shade{padding:0 412px 0 0}.scan-status,.scan-bottom{width:380px;left:auto;right:16px}.scan-status{top:calc(16px + var(--safe-t))}.scan-bottom{top:calc(92px + var(--safe-t));align-content:end;margin:0;padding:0;bottom:16px}.scan-tools{right:412px;top:calc(72px + var(--safe-t));grid-auto-flow:column}.scan-top{right:404px}.scan-error{right:412px}}@media (hover:hover) and (pointer:fine){.btn:hover:not(:disabled){filter:brightness(.96)}.row-link:hover,.row-button:hover{background:var(--fill)}.chip:hover:not([aria-pressed=true]),.icon-btn:hover{background:var(--fill-strong)}.tab:hover{color:var(--text)}.tab[aria-current=page]:hover{color:var(--accent)}}@media (prefers-reduced-motion:reduce){.btn,.icon-btn,.chip,.glass-btn,.glass-pill,.glass-wide,.recent-undo,.tab-icon,.segmented-thumb{transition:none}.btn:active:not(:disabled),.icon-btn:active,.chip:active,.glass-btn:active,.glass-pill:active,.glass-wide:active,.recent-undo:active,.tab:active .tab-icon{transform:none}.reticle,.live-dot:after,.spin{animation:none}.result-card,.toast,.sheet,.sheet-backdrop{transition:opacity .15s}@starting-style{.result-card,.toast,.sheet,.sheet-backdrop{opacity:0;transform:none}}.sheet-backdrop[data-closing] .sheet{transition:none;transform:none}}
