:root,[data-theme=dark]{--c-route-casing:#fff;--c-route-outer:#161616;--c-next-halo:#ffd23f;--c-ghost:#0e1116;--c-gate-ink:#fff;--c-map-bg:#0a0a0a;--pin-black:#161616;--pin-black-ink:#ffd23f;--pin-pink:#d1006f;--pin-green:#2ee65b;--pin-blue:#1f5fe0;--pin-violet:#7a2fe0;--pin-cyan:#06b6d4;--pin-lime:#a3e635;--pin-purple:#7a2fe0;--c-bg:#1f1f1c;--c-surface:#2a2a26;--c-surface-2:#363631;--c-line:#4d4c47;--c-line-strong:#9a9992;--c-ink:#f5f5f2;--c-ink-2:#c9c8c1;--c-ink-inverse:#0f0f0e;--c-primary:#ffd23f;--c-primary-press:#ffe07a;--c-on-primary:#161616;--c-focus:#ffd23f;--c-success:#4ade80;--c-success-bg:#10291a;--c-danger:#ff6b6b;--c-danger-bg:#331517;--c-on-danger:#161616;--c-warn-ink:#ff8fa3;--c-warn-bg:#331822;--c-warn-line:#e0607e;--c-info-bg:#2a2a26;--c-route:#e5007e;--c-start:#157a3b;--c-done:#8a8983;--c-gate-bg:#000;--c-toast-bg:#f5f5f2;--c-toast-ink:#161616;--c-toast-action:#6d28d9;--c-page:#0a0a09;--c-card:#1f1f1c;--c-header-bg:#000;--c-header-ink:#f5f5f2;--c-primary-edge:#ffd23f;--c-primary-lift:inset 0 1px 0 #ffffff8c, 0 0 0 1px #ffd23f66, 0 10px 32px #ffd23f4d;--c-accent-ink:#ffd23f;--c-link-deco:transparent;--c-tab-pill:#2a2342;--c-tab-ink:#b9a3ff;--c-partner:#a78bfa;--c-partner-ink:#b9a3ff;--c-on-partner:#160c33;--c-partner-tint:#2a2342;--c-partner-line:#5b4a9e;--c-partner-glow:#a78bfa6b;--c-badge-from:#c4b5fd;--c-badge-to:#f0abfc;--c-badge-bg:#d9b1fd;--c-on-badge:#160c33;--c-skipped:#ff8a7a;--c-skipped-bg:#33171a;--c-tile-y:#3a3420;--c-tile-y-ink:#ffd23f;--c-hi:inset 0 1px 0 #ffffff12;--c-edge:#ffffff14;--c-edge-strong:#ffffff24;--c-raise:0 1px 0 #0006, 0 8px 24px #00000059;--c-card-top:#24231f;--c-card-bot:#1c1b19;--c-chip-bg:#151513;--c-card-edge:#5a5953;--c-glow:#a78bfa29;--c-glow-y:#ffd23f4d;--c-glow-head:#a78bfa4d;--c-glass:#1f1f1ceb;--c-glass-solid:#1f1f1c;--c-beta-bg:#2a2342;--c-beta-ink:#b9a3ff;--c-beta-line:#7a66c7;--c-info:#f5f5f2;--c-callout-line:#4d4c47;--c-callout-icon:#ffd23f;--c-callout-link:#ffd23f;--c-callout-deco:#ffd23f;--c-gate-code:#ffd23f;--c-gate-label:#c9c8c1;--c-placeholder:#9a9992;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}[data-theme=light]{--c-route-casing:#fff;--c-route-outer:#161616;--c-next-halo:#ffd23f;--c-ghost:#0e1116;--c-gate-ink:#fff;--c-map-bg:#2a2a28;--pin-black:#161616;--pin-black-ink:#ffd23f;--pin-pink:#d1006f;--pin-green:#2ee65b;--pin-blue:#1f5fe0;--pin-violet:#7a2fe0;--pin-cyan:#06b6d4;--pin-lime:#a3e635;--pin-purple:#7a2fe0;--c-bg:#fff;--c-surface:#f4f4f1;--c-surface-2:#e9e8e3;--c-line:#d6d5cf;--c-line-strong:#6e6d66;--c-ink:#161616;--c-ink-2:#4a4944;--c-ink-inverse:#fff;--c-primary:#ffd23f;--c-primary-press:#f2be00;--c-on-primary:#161616;--c-focus:#161616;--c-success:#157a3b;--c-success-bg:#e3f4e8;--c-danger:#c11b2b;--c-danger-bg:#fde8ea;--c-on-danger:#fff;--c-warn-ink:#b4234a;--c-warn-bg:#fde6ec;--c-warn-line:#d23c65;--c-info-bg:#fff;--c-route:#e5007e;--c-start:#157a3b;--c-done:#8a8983;--c-gate-bg:#161616;--c-toast-bg:#161616;--c-toast-ink:#fff;--c-toast-action:#ffd23f;--c-page:#f4f4f1;--c-card:#fff;--c-header-bg:#161616;--c-header-ink:#fff;--c-primary-edge:#161616;--c-primary-lift:0 3px 0 #161616, 0 10px 28px #ffd23f40;--c-accent-ink:#161616;--c-link-deco:#ffd23f;--c-tab-pill:#efe8ff;--c-tab-ink:#6d28d9;--c-partner:#7c3aed;--c-partner-ink:#6d28d9;--c-on-partner:#fff;--c-partner-tint:#efe8ff;--c-partner-line:#c4b0f7;--c-partner-glow:#7c3aed38;--c-badge-from:#c4b5fd;--c-badge-to:#f0abfc;--c-badge-bg:#d9b1fd;--c-on-badge:#160c33;--c-skipped:#b42318;--c-skipped-bg:#fde8e6;--c-tile-y:#fff3c4;--c-tile-y-ink:#6b4e00;--c-hi:inset 0 1px 0 #ffffffe6;--c-edge:#d6d5cf;--c-edge-strong:#1616161f;--c-raise:0 1px 2px #1616160f, 0 6px 18px #16161612;--c-card-top:#fff;--c-card-bot:#fff;--c-chip-bg:#fff;--c-card-edge:#cfcec7;--c-glow:#7c3aed1a;--c-glow-y:#ffd23f40;--c-glow-head:#a78bfa42;--c-glass:#ffffffeb;--c-glass-solid:#fff;--c-beta-bg:#2a2342;--c-beta-ink:#c9b8ff;--c-beta-line:#7a66c7;--c-info:#161616;--c-callout-line:#d6d5cf;--c-callout-icon:#161616;--c-callout-link:#161616;--c-callout-deco:#ffd23f;--c-gate-code:#ffd23f;--c-gate-label:#c9c8c1;--c-placeholder:#6e6d66;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:light){[data-theme=system]{--c-route-casing:#fff;--c-route-outer:#161616;--c-next-halo:#ffd23f;--c-ghost:#0e1116;--c-gate-ink:#fff;--c-map-bg:#2a2a28;--pin-black:#161616;--pin-black-ink:#ffd23f;--pin-pink:#d1006f;--pin-green:#2ee65b;--pin-blue:#1f5fe0;--pin-violet:#7a2fe0;--pin-cyan:#06b6d4;--pin-lime:#a3e635;--pin-purple:#7a2fe0;--c-bg:#fff;--c-surface:#f4f4f1;--c-surface-2:#e9e8e3;--c-line:#d6d5cf;--c-line-strong:#6e6d66;--c-ink:#161616;--c-ink-2:#4a4944;--c-ink-inverse:#fff;--c-primary:#ffd23f;--c-primary-press:#f2be00;--c-on-primary:#161616;--c-focus:#161616;--c-success:#157a3b;--c-success-bg:#e3f4e8;--c-danger:#c11b2b;--c-danger-bg:#fde8ea;--c-on-danger:#fff;--c-warn-ink:#b4234a;--c-warn-bg:#fde6ec;--c-warn-line:#d23c65;--c-info-bg:#fff;--c-route:#e5007e;--c-start:#157a3b;--c-done:#8a8983;--c-gate-bg:#161616;--c-toast-bg:#161616;--c-toast-ink:#fff;--c-toast-action:#ffd23f;--c-page:#f4f4f1;--c-card:#fff;--c-header-bg:#161616;--c-header-ink:#fff;--c-primary-edge:#161616;--c-primary-lift:0 3px 0 #161616, 0 10px 28px #ffd23f40;--c-accent-ink:#161616;--c-link-deco:#ffd23f;--c-tab-pill:#efe8ff;--c-tab-ink:#6d28d9;--c-partner:#7c3aed;--c-partner-ink:#6d28d9;--c-on-partner:#fff;--c-partner-tint:#efe8ff;--c-partner-line:#c4b0f7;--c-partner-glow:#7c3aed38;--c-badge-from:#c4b5fd;--c-badge-to:#f0abfc;--c-badge-bg:#d9b1fd;--c-on-badge:#160c33;--c-skipped:#b42318;--c-skipped-bg:#fde8e6;--c-tile-y:#fff3c4;--c-tile-y-ink:#6b4e00;--c-hi:inset 0 1px 0 #ffffffe6;--c-edge:#d6d5cf;--c-edge-strong:#1616161f;--c-raise:0 1px 2px #1616160f, 0 6px 18px #16161612;--c-card-top:#fff;--c-card-bot:#fff;--c-chip-bg:#fff;--c-card-edge:#cfcec7;--c-glow:#7c3aed1a;--c-glow-y:#ffd23f40;--c-glow-head:#a78bfa42;--c-glass:#ffffffeb;--c-glass-solid:#fff;--c-beta-bg:#2a2342;--c-beta-ink:#c9b8ff;--c-beta-line:#7a66c7;--c-info:#161616;--c-callout-line:#d6d5cf;--c-callout-icon:#161616;--c-callout-link:#161616;--c-callout-deco:#ffd23f;--c-gate-code:#ffd23f;--c-gate-label:#c9c8c1;--c-placeholder:#6e6d66;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}}[data-theme=high-contrast]{--c-route-casing:#fff;--c-route-outer:#161616;--c-next-halo:#ffd23f;--c-ghost:#0e1116;--c-gate-ink:#fff;--c-map-bg:#1a1d22;--pin-black:#161616;--pin-black-ink:#ffd23f;--pin-pink:#d1006f;--pin-green:#2ee65b;--pin-blue:#1f5fe0;--pin-violet:#7a2fe0;--pin-cyan:#06b6d4;--pin-lime:#a3e635;--pin-purple:#7a2fe0;--c-bg:#000;--c-surface:#1c1c1c;--c-surface-2:#333;--c-line:#b3b3b3;--c-line-strong:#fff;--c-ink:#fff;--c-ink-2:#ebebeb;--c-ink-inverse:#000;--c-primary:#ffe500;--c-primary-press:#fff27a;--c-on-primary:#000;--c-focus:#ffe500;--c-success:#52ff98;--c-success-bg:#002912;--c-danger:#ff7070;--c-danger-bg:#300;--c-on-danger:#000;--c-warn-ink:#ffa3b5;--c-warn-bg:#33000f;--c-warn-line:#ffa3b5;--c-info-bg:#1c1c1c;--c-route:#ff3da8;--c-start:#0a7a3a;--c-done:#8a8a8a;--c-gate-bg:#000;--c-toast-bg:#fff;--c-toast-ink:#000;--c-toast-action:#5b21b6;--c-page:#000;--c-card:#1c1c1c;--c-header-bg:#000;--c-header-ink:#fff;--c-partner:#c4b5fd;--c-partner-ink:#dcd2ff;--c-on-partner:#000;--c-partner-tint:#241b3d;--c-partner-line:#c4b5fd;--c-partner-glow:transparent;--c-badge-from:#c4b5fd;--c-badge-to:#c4b5fd;--c-badge-bg:#c4b5fd;--c-on-badge:#000;--c-skipped:#ff9a8a;--c-skipped-bg:#300;--c-tile-y:#262100;--c-tile-y-ink:#ffe500;--c-hi:none;--c-edge:#b3b3b3;--c-edge-strong:#fff;--c-raise:none;--c-card-top:#1c1c1c;--c-card-bot:#1c1c1c;--c-chip-bg:#000;--c-card-edge:#b3b3b3;--c-glow:transparent;--c-glow-y:transparent;--c-glow-head:transparent;--c-glass:#1c1c1c;--c-glass-solid:#1c1c1c;--c-beta-bg:#241b3d;--c-beta-ink:#dcd2ff;--c-beta-line:#c4b5fd;--c-tab-pill:#241b3d;--c-tab-ink:#dcd2ff;--c-placeholder:#a3a3a3;--c-accent-ink:#ffe500;--c-primary-edge:#ffe500;--c-primary-lift:none;--c-link-deco:transparent;--c-info:#fff;--c-callout-line:transparent;--c-callout-icon:#fff;--c-callout-link:#fff;--c-callout-deco:#fff;--c-gate-code:#fff;--c-gate-label:#c9ced6;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}
:root{--font:ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-head:"Inter Display", "Inter", var(--font);--fs-caption:.9375rem;--fs-body:1.0625rem;--fs-label:1.0625rem;--fs-title:1.25rem;--fs-h2:1.5rem;--fs-h1:1.75rem;--fs-num:2rem;--fs-gate:2.5rem;--fs-next:3rem;--fs-hero:4rem;--lh-tight:1.15;--lh-body:1.45;--fw-body:500;--fw-strong:700;--fw-heavy:800;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:20px;--sp-6:24px;--sp-8:32px;--sp-10:40px;--sp-12:48px;--gutter:16px;--r-sm:10px;--r-md:14px;--r-lg:18px;--r-xl:24px;--r-pill:999px;--tap-min:48px;--tap-secondary:56px;--tap-primary:64px;--tap-mic:88px;--bar-h:64px;--tabbar-gap:10px;--border:2px;--sh-1:0 1px 0 #0000000a, 0 2px 6px #16161614;--sh-2:0 6px 20px #0000003d;--dur-fast:.12s;--dur-base:.2s;--dur-pan:.3s;--ease:cubic-bezier(.2,.8,.2,1);--z-map-ui:10;--z-bar:20;--z-sheet:30;--z-toast:40;--z-modal:50}html.larger{font-size:112.5%}@media (prefers-reduced-motion:reduce){:root{--dur-fast:0s;--dur-base:0s;--dur-pan:0s}}*{box-sizing:border-box}html,body{margin:0;padding:0}html{-moz-text-size-adjust:100%;text-size-adjust:100%}body{background:var(--c-page);color:var(--c-ink);font-family:var(--font);font-size:var(--fs-body);font-weight:var(--fw-body);line-height:var(--lh-body);font-variant-numeric:tabular-nums;-webkit-tap-highlight-color:transparent;min-height:100dvh;overflow-x:hidden}a{color:var(--c-accent-ink)}h1,h2,h3{line-height:var(--lh-tight);font-weight:var(--fw-heavy);font-family:var(--font-head);margin:0}h1{font-size:var(--fs-h1);letter-spacing:-.02em}h2{font-size:var(--fs-h2);letter-spacing:-.01em}h3{font-size:var(--fs-title)}p{margin:0}button,input,textarea,select{font-family:inherit}:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;position:absolute!important}.num{font-variant-numeric:tabular-nums}.ink2{color:var(--c-ink-2)}.caption{font-size:var(--fs-caption);color:var(--c-ink-2);font-weight:600}.strong{font-weight:var(--fw-strong)}.stack{gap:var(--sp-4);display:grid}.stack-sm{gap:var(--sp-2);display:grid}.stack-lg{gap:var(--sp-6);display:grid}.hrow{align-items:center;gap:var(--sp-2);min-width:0;display:flex}.hrow.wrap{flex-wrap:wrap}.spacer{flex:1}.ellipsis{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.app-header{z-index:var(--z-bar);background:var(--c-header-bg);color:var(--c-header-ink);align-items:center;gap:var(--sp-2);min-height:64px;padding:var(--sp-2) var(--gutter);padding-top:max(var(--sp-2), env(safe-area-inset-top));padding-left:max(var(--gutter), env(safe-area-inset-left));padding-right:max(var(--gutter), env(safe-area-inset-right));isolation:isolate;display:flex;position:sticky;top:0}.app-header:after{content:"";z-index:-1;pointer-events:none;background:radial-gradient(300px 140px at 90% -10%, var(--c-glow-head), transparent 70%);position:absolute;inset:0}.app-header.bordered{border-bottom:1px solid var(--c-line)}.app-header{flex-wrap:wrap}.app-header .titles{flex:1;min-width:6ch;display:grid}.app-header .titles h1{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.app-header .titles .sub{font-size:var(--fs-caption);color:var(--c-header-ink);opacity:.85;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.app-header>svg{flex:none}.app-header .btn.icon,.app-header .btn.text{color:var(--c-header-ink)}.app-header .back{margin-left:calc(-1 * var(--sp-3))}.app-header h1.small{font-size:var(--fs-title)}.page-body{max-width:720px;padding:var(--sp-2) var(--gutter) var(--sp-8);padding-left:max(var(--gutter), env(safe-area-inset-left));padding-right:max(var(--gutter), env(safe-area-inset-right));gap:var(--sp-4);min-height:calc(100dvh - 64px - var(--tabbar-h,0px));flex-direction:column;margin:0 auto;display:flex}.page-body>*{flex-shrink:0;min-width:0;max-width:100%}.page-body>.action-bar{max-width:none}.page-body.narrow{max-width:520px}body.has-tabbar{--tabbar-h:calc(var(--bar-h) + var(--tabbar-gap) + env(safe-area-inset-bottom))}body:has(>.tabbar){--tabbar-h:calc(var(--bar-h) + var(--tabbar-gap) + env(safe-area-inset-bottom))}.tabbar-spacer{height:calc(var(--bar-h) + var(--tabbar-gap) + env(safe-area-inset-bottom))}.tabbar{z-index:var(--z-bar);left:max(12px, env(safe-area-inset-left));right:max(12px, env(safe-area-inset-right));bottom:calc(var(--tabbar-gap) + env(safe-area-inset-bottom));height:var(--bar-h);background:var(--c-glass);border:1px solid var(--c-edge-strong);max-width:640px;box-shadow:var(--c-hi), 0 12px 36px #00000073;-webkit-backdrop-filter:blur(14px)saturate(1.4);backdrop-filter:blur(14px)saturate(1.4);border-radius:24px;grid-template-columns:repeat(3,1fr);margin:0 auto;display:grid;position:fixed;overflow:hidden}[data-theme=light] .tabbar{box-shadow:var(--c-hi), 0 10px 30px #16161624}@media (prefers-color-scheme:light){[data-theme=system] .tabbar{box-shadow:var(--c-hi), 0 10px 30px #16161624}}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.tabbar{background:var(--c-glass-solid)}}@media (prefers-reduced-transparency:reduce){.tabbar{background:var(--c-glass-solid);-webkit-backdrop-filter:none;backdrop-filter:none}}.tabbar a{color:var(--c-ink-2);font-size:var(--fs-caption);font-weight:var(--fw-strong);min-height:var(--tap-min);align-content:center;place-items:center;gap:2px;text-decoration:none;display:grid}.tabbar a>svg{box-sizing:content-box;border-radius:var(--r-pill);transition:background-color var(--dur-fast) var(--ease);padding:2px 16px}.tabbar a[aria-current=page]{color:var(--c-tab-ink)}.tabbar a[aria-current=page]>svg{background:var(--c-tab-pill);box-shadow:0 0 20px 2px var(--c-partner-glow)}.tabbar a:active{background:var(--c-surface)}.action-bar{bottom:calc(var(--bar-h) + var(--tabbar-gap) + env(safe-area-inset-bottom));z-index:calc(var(--z-bar) - 1);margin:0 calc(-1 * var(--gutter));padding:calc(var(--sp-5) + var(--sp-2)) var(--gutter) var(--sp-3);background:linear-gradient(to bottom, transparent, var(--c-page) var(--sp-5));gap:var(--sp-2);margin-top:auto;display:grid;position:sticky}.action-bar:after{content:"";pointer-events:none;height:calc(var(--bar-h) + var(--tabbar-gap) + env(safe-area-inset-bottom));background:var(--c-page);position:absolute;top:100%;left:0;right:0}.action-bar.no-tabs{padding-bottom:max(var(--sp-3), env(safe-area-inset-bottom));bottom:0}.action-bar.no-tabs:after{display:none}.btn{appearance:none;justify-content:center;align-items:center;gap:var(--sp-2);min-height:var(--tap-secondary);padding:0 var(--sp-5);border-radius:var(--r-lg);border:var(--border) solid var(--c-line-strong);background:var(--c-bg);color:var(--c-ink);font-size:var(--fs-label);font-weight:var(--fw-strong);text-align:center;cursor:pointer;-webkit-user-select:none;user-select:none;transition:background-color var(--dur-fast) var(--ease);line-height:1.2;text-decoration:none;display:inline-flex}.btn:active{background:var(--c-surface-2)}.btn.block{width:100%}.btn.primary{min-height:var(--tap-primary);background:var(--c-primary);width:100%;color:var(--c-on-primary);border-color:var(--c-primary-edge);box-shadow:var(--c-primary-lift)}.btn.primary:active{background:var(--c-primary-press);border-color:var(--c-primary-edge);box-shadow:none;transform:translateY(2px)}.btn.primary:disabled,.btn.primary[aria-disabled=true]{box-shadow:none;border-color:#0000;transform:none}.btn.primary.inline{width:auto}.btn.secondary{min-height:var(--tap-secondary)}.btn.danger{background:var(--c-danger);border-color:var(--c-danger);color:var(--c-on-danger)}.btn.danger-outline{color:var(--c-danger);border-color:var(--c-danger);background:0 0}.btn.text{color:var(--c-accent-ink);min-height:var(--tap-min);padding:0 var(--sp-3);text-decoration:underline;-webkit-text-decoration-color:var(--c-link-deco);text-decoration-color:var(--c-link-deco);text-underline-offset:5px;background:0 0;border-color:#0000;text-decoration-thickness:3px}.btn.text:active{background:0 0;text-decoration:underline}.btn.text.ink{color:var(--c-ink)}.btn.text.danger-text{color:var(--c-danger)}.btn.icon{width:var(--tap-min);height:var(--tap-min);min-height:var(--tap-min);border-radius:var(--r-md);background:0 0;border-color:#0000;flex:none;padding:0}.btn.icon:active{background:var(--c-surface-2)}.btn.icon.outlined{border-color:var(--c-line-strong);background:var(--c-bg)}.btn.small{min-height:var(--tap-min);padding:0 var(--sp-4);border-radius:var(--r-md)}.btn:disabled,.btn[aria-disabled=true]{background:var(--c-surface-2);color:var(--c-ink-2);cursor:default;border-color:#0000}.btn.text:disabled{background:0 0}.btn .spinner{border:3px solid;border-right-color:#0000;border-radius:50%;width:20px;height:20px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.btn .spinner{animation-duration:2.4s}}label.btn{position:relative;overflow:hidden}label.btn input[type=file]{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;inset:0}label:has(>.file-hidden){position:relative}.file-hidden{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute;top:0;left:0}label:has(>.file-hidden):focus-within{outline:3px solid var(--c-focus);outline-offset:2px}label.btn:focus-within{outline:3px solid var(--c-focus);outline-offset:2px}.card{background-color:var(--c-card);background-image:linear-gradient(180deg, var(--c-card-top), var(--c-card-bot));border:var(--border) solid var(--c-card-edge);border-radius:var(--r-lg);box-shadow:var(--c-hi), var(--c-raise);padding:var(--sp-4);gap:var(--sp-3);min-width:0;display:grid}.card.flat{box-shadow:none;background:0 0;border-style:dashed}.card h2{font-size:var(--fs-h2)}.card .body{color:var(--c-ink-2)}.section-title{font-size:var(--fs-caption);font-weight:var(--fw-heavy);color:var(--c-ink-2);text-transform:uppercase;letter-spacing:.06em;margin-top:var(--sp-2)}.list{gap:var(--sp-2);display:grid}.list-group{background-color:var(--c-card);background-image:linear-gradient(180deg, var(--c-card-top), var(--c-card-bot));border:var(--border) solid var(--c-card-edge);border-radius:var(--r-lg);box-shadow:var(--c-hi), var(--c-raise);overflow:hidden}.list-row{align-items:center;gap:var(--sp-3);min-height:72px;padding:var(--sp-3) var(--sp-4);text-align:left;width:100%;color:var(--c-ink);font-size:var(--fs-body);font-weight:var(--fw-body);cursor:pointer;background:0 0;border:0;text-decoration:none;display:flex}.list-group>*+*{border-top:1px solid var(--c-line)}.list-row.compact{min-height:56px}.list-row:active{background:var(--c-surface-2)}.list-row .main{flex:1;gap:2px;min-width:0;display:grid}.list-row .t{font-size:var(--fs-title);font-weight:var(--fw-heavy);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.list-row .s{font-size:var(--fs-caption);color:var(--c-ink-2);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.list-row .trail{color:var(--c-ink-2);flex:none;align-items:center;display:flex}.list-row .lead{color:var(--c-ink);flex:none;align-items:center;display:flex}.list-row.danger,.list-row.danger .lead{color:var(--c-danger)}.row-split{align-items:stretch;display:flex}.row-split>.list-row{flex:1;min-width:0}.row-split>.row-action{padding-right:var(--sp-3);flex:none;align-items:center;display:flex}.today-card{background-color:var(--c-card);background-image:linear-gradient(180deg, var(--c-card-top), var(--c-card-bot));border:var(--border) solid var(--c-card-edge);border-radius:var(--r-lg);box-shadow:var(--c-hi), var(--c-raise);display:grid;position:relative;overflow:hidden}.today-card:before{content:"";background:var(--c-primary);width:4px;box-shadow:0 0 12px var(--c-glow-y);border-radius:0 6px 6px 0;position:absolute;top:14px;bottom:14px;left:0}.today-card.done:before{background:var(--c-success);box-shadow:none}.today-card.missing:before{background:repeating-linear-gradient(var(--c-warn-line) 0 8px, transparent 8px 12px);box-shadow:none}.today-card .open{gap:var(--sp-2);padding:var(--sp-4) var(--sp-4) var(--sp-3) calc(var(--sp-4) + 6px);color:var(--c-ink);min-width:0;text-decoration:none;display:grid}.today-card .open:active{background:var(--c-surface)}.today-card .name{font-size:var(--fs-title);font-weight:var(--fw-heavy);gap:var(--sp-3);min-width:0;font-family:var(--font-head);letter-spacing:-.01em;align-items:center;display:flex}.today-card .name>.nm{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.today-card .name svg{color:var(--c-ink-2);flex:none}.today-card .name svg.done-check{color:var(--c-success)}.today-card .status{font-weight:var(--fw-strong)}.today-card .flags{gap:var(--sp-2);display:grid}.today-card .gate-wrap{padding:0 var(--sp-4) var(--sp-3) calc(var(--sp-4) + 6px)}.unit-chips{gap:var(--sp-2);font-size:var(--fs-caption);flex-wrap:wrap;display:flex}.mini-chip{height:2.15em;padding:0 var(--sp-3);border-radius:var(--r-pill);border:1.5px solid var(--c-line-strong);font-variant-numeric:tabular-nums;font-weight:var(--fw-heavy);font-size:var(--fs-caption);color:var(--c-ink);align-items:center;display:inline-flex}.mini-chip.missing{border-color:var(--c-warn-line);background:var(--c-warn-bg);color:var(--c-warn-ink)}.mini-chip.done{color:var(--c-success);background:var(--c-success-bg);border-color:#0000;text-decoration:line-through;text-decoration-thickness:2px}.mini-chip.more{color:var(--c-ink-2);border-style:dashed}.flag-line{align-items:center;gap:var(--sp-2);font-weight:var(--fw-strong);font-size:var(--fs-caption);display:flex}.flag-line.warn{color:var(--c-warn-ink)}.flag-line.info{color:var(--c-ink-2)}.reorder-row{align-items:center;gap:var(--sp-2);background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r-lg);padding:var(--sp-2) var(--sp-2) var(--sp-2) var(--sp-4);touch-action:pan-y;min-height:72px;display:flex}.reorder-row.dragging{box-shadow:var(--sh-2);z-index:2;border-color:var(--c-accent-ink);position:relative}.reorder-row .grip{touch-action:none;cursor:grab;color:var(--c-ink-2);margin-left:var(--sp-4)}.reorder-row .main{flex:1;min-width:0}.chips{gap:var(--sp-2);flex-wrap:wrap;display:flex}.chip{align-items:center;gap:var(--sp-1);min-height:48px;padding:0 var(--sp-4);border-radius:var(--r-pill);border:2px solid var(--c-ink);background:var(--c-bg);color:var(--c-ink);font-size:var(--fs-title);font-weight:var(--fw-heavy);cursor:pointer;white-space:nowrap;display:inline-flex}.chip .qty{font-size:.8em;font-weight:var(--fw-strong)}.chip.missing{border-color:var(--c-warn-line);background:var(--c-warn-bg);color:var(--c-warn-ink)}.chip .badge{background:var(--c-warn-ink);width:22px;height:22px;color:var(--c-warn-bg);border-radius:50%;place-items:center;font-size:15px;font-weight:800;display:inline-grid}.chip.reading{border-style:dashed;border-color:var(--c-line-strong);color:var(--c-ink-2)}.chip.done{color:var(--c-done);border-color:var(--c-done);text-decoration:line-through}.chip button{all:unset;cursor:pointer;place-items:center;min-width:32px;min-height:32px;display:inline-grid}.choice-chip{justify-content:center;align-items:center;gap:var(--sp-2);min-height:48px;padding:0 var(--sp-4);border-radius:var(--r-pill);border:1.5px solid var(--c-line);background:var(--c-chip-bg);color:var(--c-ink);box-shadow:var(--c-hi);font-size:var(--fs-label);font-weight:var(--fw-strong);cursor:pointer;display:inline-flex}.choice-chip[aria-pressed=true],.choice-chip[aria-checked=true]{background:var(--c-partner-tint);border-color:var(--c-partner-line);color:var(--c-partner-ink);box-shadow:inset 0 0 0 1.5px var(--c-partner-line), 0 2px 10px var(--c-glow)}.plan-chip{align-items:center;gap:var(--sp-1);min-height:32px;padding:0 var(--sp-3);border-radius:var(--r-pill);background:var(--c-info-bg);color:var(--c-ink);border:1px solid var(--c-line);font-size:var(--fs-caption);font-weight:var(--fw-heavy);white-space:nowrap;text-decoration:none;display:inline-flex}.plan-chip.warn{background:var(--c-warn-bg);color:var(--c-warn-ink);border:2px solid var(--c-warn-line)}a.plan-chip{min-height:var(--tap-min);padding:0 var(--sp-3);background:0 0;border:0}a.plan-chip>span{min-height:32px;padding:0 var(--sp-3);border-radius:var(--r-pill);background:var(--c-info-bg);border:1px solid var(--c-line);align-items:center;display:inline-flex}a.plan-chip.warn{background:0 0;border:0}a.plan-chip.warn>span{background:var(--c-warn-bg);color:var(--c-warn-ink);border:2px solid var(--c-warn-line)}.segmented{background:var(--c-surface-2);border-radius:var(--r-md);min-height:var(--tap-min);grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.segmented button{appearance:none;border-radius:calc(var(--r-md) - 4px);min-height:var(--tap-min);color:var(--c-ink-2);font-size:var(--fs-label);justify-content:center;align-items:center;gap:var(--sp-2);cursor:pointer;background:0 0;border:0;font-weight:600;display:inline-flex}.segmented button[aria-checked=true],.segmented button[aria-pressed=true]{background:var(--c-bg);color:var(--c-ink);font-weight:var(--fw-strong);box-shadow:var(--sh-1)}.banner{align-items:flex-start;gap:var(--sp-3);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);font-size:var(--fs-body);background:var(--c-info-bg);color:var(--c-info);font-weight:600;line-height:1.35;display:flex}.banner>svg{flex:none;margin-top:1px}.banner .b-main{gap:var(--sp-2);flex:1;min-width:0;display:grid}.banner .b-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.banner .b-actions .btn.text{min-height:var(--tap-min);color:inherit;text-underline-offset:3px;padding:0;text-decoration:underline}.banner .b-close{margin:calc(-1 * var(--sp-2)) calc(-1 * var(--sp-2)) calc(-1 * var(--sp-2)) 0;color:inherit}.banner.info{border:var(--border) solid var(--c-callout-line)}.banner.info>svg{color:var(--c-callout-icon)}.banner.info .btn.text,.banner.info .b-actions .btn.text,.banner.info a:not(.btn){color:var(--c-callout-link);text-decoration:underline;-webkit-text-decoration-color:var(--c-callout-deco);text-decoration-color:var(--c-callout-deco);text-underline-offset:4px;text-decoration-thickness:2px}.banner.warn{background:var(--c-warn-bg);color:var(--c-warn-ink);border-left:4px solid var(--c-warn-line)}.banner.error{background:var(--c-danger-bg);color:var(--c-danger)}.banner.success{background:var(--c-success-bg);color:var(--c-success)}.banner.offline{background:var(--c-ink);color:var(--c-ink-inverse);z-index:calc(var(--z-bar) + 1);padding-top:max(var(--sp-3), env(safe-area-inset-top));border-radius:0;align-items:center;position:sticky;top:0}.banner .sub{font-weight:500}.progress{gap:var(--sp-2);display:grid}.progress .track{background:var(--c-surface-2);border-radius:var(--r-pill);height:8px;position:relative;overflow:hidden}.progress .fill{border-radius:var(--r-pill);height:100%;transition:width var(--dur-base) var(--ease);background-color:var(--c-partner);background-image:linear-gradient(90deg, var(--c-partner), var(--c-primary));box-shadow:0 0 12px var(--c-partner-glow)}.progress .fill.indet{width:30%;animation:indet 1.5s var(--ease) infinite;position:absolute;left:0}@keyframes indet{0%{transform:translate(-100%)}to{transform:translate(340%)}}@media (prefers-reduced-motion:reduce){.progress .fill.indet{animation:none}}.progress .label{font-weight:var(--fw-strong);font-size:var(--fs-body)}.status-strip{gap:var(--sp-2);padding:var(--sp-3) var(--sp-4);background:var(--c-info-bg);border-radius:var(--r-md);border:var(--border) solid var(--c-callout-line);display:grid}.status-strip .label{align-items:center;gap:var(--sp-2);font-weight:var(--fw-strong);display:flex}.toast-host{z-index:calc(var(--z-modal) + 1);left:0;right:0;bottom:calc(var(--sp-3) + env(safe-area-inset-bottom));pointer-events:none;padding:0 var(--gutter);justify-content:center;display:flex;position:fixed}.toast{pointer-events:auto;align-items:center;gap:var(--sp-3);background:var(--c-toast-bg);width:100%;max-width:560px;min-height:56px;color:var(--c-toast-ink);border-radius:var(--r-md);box-shadow:var(--sh-2);padding:var(--sp-1) var(--sp-2) var(--sp-1) var(--sp-4);font-size:var(--fs-body);font-weight:var(--fw-strong);animation:toast-in var(--dur-fast) var(--ease);display:flex}.toast .msg{min-width:0;padding:var(--sp-2) 0;flex:1}.toast button{appearance:none;color:var(--c-toast-action);font-size:var(--fs-label);font-weight:var(--fw-heavy);min-width:48px;min-height:48px;padding:0 var(--sp-3);border-radius:var(--r-sm);cursor:pointer;background:0 0;border:0}.toast button.close{color:var(--c-toast-ink);padding:0}@keyframes toast-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.scrim{z-index:var(--z-modal);animation:fade-in var(--dur-base) var(--ease);padding-bottom:var(--kb-inset,0px);background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@keyframes fade-in{0%{opacity:0}to{opacity:1}}.sheet{width:100%;max-width:640px;max-height:min(92dvh, calc(var(--vv-h,100dvh) - 12px));background:var(--c-bg);color:var(--c-ink);border-radius:var(--r-xl) var(--r-xl) 0 0;box-shadow:var(--sh-2);animation:sheet-in var(--dur-base) var(--ease);padding-bottom:env(safe-area-inset-bottom);flex-direction:column;display:flex}.sheet.full{height:min(92dvh, calc(var(--vv-h,100dvh) - 12px))}@keyframes sheet-in{0%{opacity:.6;transform:translateY(40px)}to{opacity:1;transform:none}}.sheet .grab{flex:none;place-items:center;height:28px;display:grid}.sheet .grab:before{content:"";border-radius:var(--r-pill);background:var(--c-line-strong);width:40px;height:5px}.sheet .sheet-head{align-items:center;gap:var(--sp-2);padding:0 var(--gutter) var(--sp-2);flex:none;display:flex}.sheet .sheet-head h2{flex:1;min-width:0}.sheet .sheet-body{padding:var(--sp-2) var(--gutter) var(--sp-4);gap:var(--sp-4);overscroll-behavior:contain;flex:1;align-content:start;display:grid;overflow:auto}.sheet .sheet-foot{padding:var(--sp-3) var(--gutter) var(--sp-4);gap:var(--sp-2);border-top:1px solid var(--c-line);flex:none;display:grid}@media (orientation:landscape) and (max-height:600px){.sheet{max-height:var(--vv-h,100dvh);border-radius:var(--r-xl) var(--r-xl) 0 0}.sheet.full{height:var(--vv-h,100dvh)}}body.sheet-open{overflow:hidden}.field{gap:var(--sp-2);display:grid}.field>label,.field>.label{font-size:var(--fs-label);font-weight:var(--fw-strong);color:var(--c-ink)}.field .hint{font-size:var(--fs-caption);color:var(--c-ink-2);font-weight:600}.field .err{font-size:var(--fs-caption);color:var(--c-danger);font-weight:600}.input,.textarea,.field input:not([type=checkbox]):not([type=file]),.field textarea{width:100%;min-height:56px;padding:0 var(--sp-4);font-size:var(--fs-body);font-weight:var(--fw-body);color:var(--c-ink);background:var(--c-bg);border:var(--border) solid var(--c-line-strong);border-radius:var(--r-md)}.textarea,.field textarea{padding:var(--sp-3) var(--sp-4);resize:vertical;min-height:120px;line-height:var(--lh-body)}.input:focus,.textarea:focus,.field input:focus,.field textarea:focus{border-color:var(--c-accent-ink);outline:3px solid var(--c-focus);outline-offset:2px}.input[aria-invalid=true],.field input[aria-invalid=true]{border-color:var(--c-danger)}input::placeholder,textarea::placeholder{color:var(--c-placeholder,var(--c-line-strong));opacity:1;font-weight:400}.search{align-items:center;display:flex;position:relative}.search svg{left:var(--sp-4);color:var(--c-ink-2);pointer-events:none;position:absolute}.search input{padding-left:48px!important}.check{align-items:flex-start;gap:var(--sp-3);min-height:var(--tap-min);cursor:pointer;padding:var(--sp-2) 0;font-weight:600;display:flex}.check input{width:28px;height:28px;accent-color:var(--c-accent-ink);flex:none;margin:0}.switch-row{align-items:center;gap:var(--sp-3);cursor:pointer;min-height:56px;display:flex}.switch-row .main{flex:1}.switch{appearance:none;border-radius:var(--r-pill);background:var(--c-surface-2);border:2px solid var(--c-line-strong);cursor:pointer;width:56px;height:32px;transition:background-color var(--dur-fast);flex:none;margin:0;position:relative}.switch:after{content:"";background:var(--c-ink-2);width:24px;height:24px;transition:transform var(--dur-fast) var(--ease);border-radius:50%;position:absolute;top:2px;left:2px}.switch:checked{background:var(--c-primary);border-color:var(--c-primary-edge)}.switch:checked:after{background:var(--c-on-primary);transform:translate(24px)}.otp{gap:var(--sp-2);grid-template-columns:repeat(6,minmax(0,56px));justify-content:center;display:grid}.otp input{text-align:center;border:var(--border) solid var(--c-line-strong);border-radius:var(--r-md);background:var(--c-bg);width:100%;height:56px;color:var(--c-ink);font-size:var(--fs-num)!important;font-weight:var(--fw-heavy)!important;padding:0!important}.otp input:focus{border-color:var(--c-accent-ink);outline:3px solid var(--c-focus);outline-offset:1px}.gate-row{align-items:center;gap:var(--sp-3);min-height:56px;padding:0 var(--sp-2) 0 var(--sp-4);border-radius:var(--r-md);background:var(--c-partner-tint);border:1px solid var(--c-partner-line);display:flex}.gate-row>svg{color:var(--c-partner-ink);flex:none}.gate-row .lbl{font-weight:var(--fw-strong)}.gate-row .dots{letter-spacing:.2em;font-weight:var(--fw-heavy);color:var(--c-ink-2);white-space:nowrap;flex:1;min-width:0;overflow:hidden}.gate-row .lbl{white-space:nowrap}.gate-panel{align-items:center;gap:var(--sp-3);background:var(--c-gate-bg);color:var(--c-gate-ink);border-radius:var(--r-lg);border:1px solid var(--c-partner-line);box-shadow:inset 0 1px 0 #ffffff1a, 0 10px 40px var(--c-partner-glow);padding:var(--sp-3) var(--sp-2) var(--sp-3) var(--sp-4);min-height:64px;display:flex}.gate-panel .code{font-size:var(--fs-gate);font-weight:var(--fw-heavy);letter-spacing:.08em;word-break:break-all;color:var(--c-gate-code);line-height:1.1;font-family:var(--font-head);flex:1}.gate-panel .lbl{font-size:var(--fs-caption);letter-spacing:.02em;color:var(--c-gate-label);font-weight:800}.gate-panel .lbl svg{vertical-align:-2px}.gate-panel .btn.text{color:var(--c-gate-ink)}.notes-box{white-space:pre-wrap;overflow-wrap:anywhere}.notes-box.clamp{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.stat-line{gap:var(--sp-1) var(--sp-2);color:var(--c-ink-2);font-weight:600;font-size:var(--fs-caption);flex-wrap:wrap;display:flex}.big-count{font-size:var(--fs-gate);font-weight:var(--fw-heavy);line-height:1}details.disclosure{background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r-lg);overflow:hidden}details.disclosure>summary{align-items:center;gap:var(--sp-3);min-height:64px;padding:0 var(--sp-4);cursor:pointer;font-weight:var(--fw-strong);font-size:var(--fs-body);list-style:none;display:flex}details.disclosure>summary::-webkit-details-marker{display:none}details.disclosure>summary .chev{transition:transform var(--dur-fast) var(--ease);color:var(--c-ink-2);margin-left:auto}details.disclosure[open]>summary .chev{transform:rotate(180deg)}details.disclosure>.disc-body{border-top:1px solid var(--c-line)}.map-thumb{aspect-ratio:16/10;background:var(--c-map-bg);border-radius:var(--r-lg);cursor:zoom-in;border:0;width:100%;padding:0;display:block;position:relative;overflow:hidden}.map-thumb img{object-fit:contain;width:100%;max-width:100%;height:100%;display:block}.map-thumb .open-hint{right:var(--sp-2);bottom:var(--sp-2);align-items:center;gap:var(--sp-1);min-height:40px;padding:0 var(--sp-3);background:var(--c-bg);color:var(--c-ink);border-radius:var(--r-pill);font-weight:700;font-size:var(--fs-caption);box-shadow:var(--sh-2);display:inline-flex;position:absolute}.map-thumb.empty{color:#c9ced6;cursor:default;aspect-ratio:16/7;place-items:center;display:grid}.mapview{touch-action:none;background:var(--c-map-bg);-webkit-user-select:none;user-select:none;border-radius:var(--r-lg);position:relative;overflow:hidden}.mapview-inner{transform-origin:0 0;position:absolute;top:0;left:0}.mapview-inner img,.mapview-inner svg{display:block;position:absolute;top:0;left:0}.mapview-zoom{right:var(--sp-3);bottom:var(--sp-3);gap:var(--sp-2);z-index:var(--z-map-ui);display:grid;position:absolute}.mapview-zoom button{border-radius:var(--r-md);border:1px solid var(--c-line);background:var(--c-bg);width:56px;height:56px;color:var(--c-ink);box-shadow:var(--sh-2);cursor:pointer;place-items:center;font-size:28px;font-weight:800;line-height:1;display:grid}.mapview-zoom button:active{background:var(--c-surface-2)}.map-edit{height:62dvh;min-height:320px}.map-overlay-full{z-index:var(--z-modal);background:var(--c-map-bg);flex-direction:column;display:flex;position:fixed;inset:0}.map-overlay-full .mapview{border-radius:0;flex:1}.map-overlay-full .ov-bar{left:var(--sp-3);top:max(var(--sp-3), env(safe-area-inset-top));right:var(--sp-3);gap:var(--sp-2);z-index:var(--z-map-ui);pointer-events:none;align-items:center;display:flex;position:absolute}.map-overlay-full .ov-bar>*{pointer-events:auto}.map-pill{align-items:center;gap:var(--sp-2);min-height:48px;padding:0 var(--sp-4);background:var(--c-bg);color:var(--c-ink);border-radius:var(--r-pill);box-shadow:var(--sh-2);font-weight:700;font-size:var(--fs-body);border:1px solid var(--c-line);display:inline-flex}button.map-pill{cursor:pointer}.map-pill.icon-only{border-radius:var(--r-md);justify-content:center;width:56px;height:56px;padding:0}.fixer{flex-direction:column;height:100dvh;display:flex}.fixer .mapview{border-radius:0;flex:1;min-height:0}.fixer .fix-tools{padding:var(--sp-3) var(--gutter);gap:var(--sp-2);background:var(--c-page);border-top:1px solid var(--c-line);max-height:45dvh;display:grid;overflow:auto}@media (orientation:landscape) and (max-height:600px){.fixer{grid-template-rows:auto 1fr;grid-template-columns:1fr 320px;display:grid}.fixer>.app-header{grid-column:1/-1;min-height:56px}.fixer .mapview{height:auto}.fixer .fix-tools{border-top:0;border-left:1px solid var(--c-line);max-height:none}}.hero{gap:var(--sp-6);padding-top:var(--sp-8);display:grid}.benefits{gap:var(--sp-4);margin:0;padding:0;list-style:none;display:grid}.benefits li{gap:var(--sp-3);font-size:var(--fs-title);font-weight:var(--fw-strong);align-items:center;display:flex}.benefits .ic{border-radius:var(--r-md);background:var(--c-info-bg);width:48px;height:48px;color:var(--c-info);flex:none;place-items:center;display:grid}.wordmark{align-items:center;gap:var(--sp-2);letter-spacing:-.02em;color:var(--c-ink);font-weight:800;font-size:var(--fs-title);display:inline-flex}.legal-links{justify-content:center;gap:var(--sp-2);color:var(--c-ink-2);align-items:center;display:flex}.legal-links a{color:var(--c-ink-2);min-height:var(--tap-min);padding:0 var(--sp-2);align-items:center;font-weight:600;display:inline-flex}.empty-card{text-align:left}.empty-card .illus{border-radius:var(--r-lg);background:var(--c-info-bg);width:72px;height:72px;color:var(--c-info);place-items:center;display:grid}.all-done{gap:var(--sp-2);display:grid}.all-done .hero-num{font-size:var(--fs-hero);font-weight:var(--fw-heavy);line-height:1}.meter{gap:var(--sp-2);display:grid}.meter .meter-top{justify-content:space-between;align-items:baseline;gap:var(--sp-2);font-weight:var(--fw-strong);display:flex}.meter.warn .meter-top{color:var(--c-warn-ink)}.meter.warn .fill{background:var(--c-warn-line)}.swatches{gap:var(--sp-2);grid-template-columns:repeat(auto-fill,minmax(48px,1fr));display:grid}.swatch{appearance:none;border-radius:var(--r-md);border:2px solid var(--c-line);cursor:pointer;background:var(--c-bg);place-items:center;height:48px;display:grid}.swatch[aria-checked=true]{border:3px solid var(--c-ink);box-shadow:0 0 0 2px var(--c-bg) inset}.shapes{gap:var(--sp-2);grid-template-columns:repeat(5,minmax(48px,1fr));display:grid}.swatch.swatch-wide,.swatch.swatch-auto{justify-content:flex-start;align-items:center;gap:var(--sp-2);padding:0 var(--sp-3);font:inherit;font-weight:var(--fw-strong);color:var(--c-ink);grid-column:1/-1;display:flex}.pin-preview{background:var(--c-map-bg);border-radius:var(--r-md);place-items:center;height:96px;display:grid}.prose{gap:var(--sp-3);line-height:var(--lh-body);overflow-wrap:anywhere;display:grid}.prose h1{font-size:var(--fs-h1);margin-top:var(--sp-2)}.prose h2{font-size:var(--fs-h2);margin-top:var(--sp-4)}.prose h3{font-size:var(--fs-title);margin-top:var(--sp-2)}.prose ul,.prose ol{padding-left:var(--sp-6);gap:var(--sp-2);margin:0;display:grid}.prose hr{border:0;border-top:1px solid var(--c-line);width:100%;margin:var(--sp-2) 0}.prose blockquote{padding:var(--sp-2) var(--sp-4);border-left:4px solid var(--c-line-strong);color:var(--c-ink-2);margin:0}.prose code{background:var(--c-surface-2);border-radius:4px;padding:1px 4px;font-family:ui-monospace,Menlo,monospace;font-size:.92em}.prose .table-wrap{border:1px solid var(--c-line);border-radius:var(--r-md);overflow-x:auto}.prose table{border-collapse:collapse;width:100%;font-size:var(--fs-caption);min-width:480px}.prose th,.prose td{text-align:left;vertical-align:top;padding:var(--sp-2) var(--sp-3);border-bottom:1px solid var(--c-line)}.prose th{background:var(--c-surface);font-weight:800}.draft-tag{padding:var(--sp-1) var(--sp-3);border-radius:var(--r-pill);background:var(--c-warn-bg);color:var(--c-warn-ink);font-weight:800;font-size:var(--fs-caption);border:2px solid var(--c-warn-line);place-self:start;display:inline-flex}.shot-thumb{border-radius:var(--r-md);border:1px solid var(--c-line);background:var(--c-surface);width:112px;height:112px;position:relative;overflow:hidden}.shot-thumb img{object-fit:cover;width:100%;height:100%}.shot-thumb .btn.icon{background:var(--c-bg);border:1px solid var(--c-line);width:48px;height:48px;position:absolute;top:4px;right:4px}.top{align-items:center;gap:var(--sp-2);background:var(--c-bg);color:var(--c-ink);border-bottom:1px solid var(--c-line);padding:var(--sp-2) var(--gutter);padding-top:max(var(--sp-2), env(safe-area-inset-top));min-height:56px;z-index:var(--z-bar);display:flex;position:sticky;top:0}.top h1{font-size:var(--fs-title);white-space:nowrap;text-overflow:ellipsis;flex:1;overflow:hidden}.top a,.top button.link{color:var(--c-accent-ink);font-weight:700;font-size:var(--fs-body);min-height:var(--tap-min);padding:0 var(--sp-2);cursor:pointer;background:0 0;border:0;align-items:center;text-decoration:none;display:inline-flex}.page{max-width:760px;padding:var(--gutter);gap:var(--sp-4);margin:0 auto;display:grid}.muted{color:var(--c-ink-2)}.small{font-size:var(--fs-caption)}.row{gap:var(--sp-2);flex-wrap:wrap;align-items:center;display:flex}.grow{flex:1}.btn.big{font-size:var(--fs-title);min-height:var(--tap-primary);width:100%}.btn.sm{min-height:var(--tap-min);padding:0 var(--sp-3);font-size:var(--fs-label);border-radius:var(--r-md)}.btn.dark{background:var(--c-ink);color:var(--c-ink-inverse);border-color:var(--c-ink)}.btn.on{background:var(--c-primary);color:var(--c-on-primary);border-color:var(--c-primary-edge)}.page label,.runside label{font-weight:700;font-size:var(--fs-label);gap:6px;display:grid}.page input:not([type=checkbox]):not([type=file]),.page textarea,.page select,.runside input,.floatgo input{font-size:var(--fs-body);min-height:48px;padding:0 var(--sp-3);border-radius:var(--r-md);border:var(--border) solid var(--c-line-strong);background:var(--c-bg);color:var(--c-ink);width:100%}.page textarea{padding:var(--sp-3);min-height:96px}.item{align-items:center;gap:var(--sp-3);padding:var(--sp-3) var(--sp-4);background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r-lg);cursor:pointer;text-align:left;font:inherit;color:inherit;width:100%;min-height:64px;text-decoration:none;display:flex}.item .title{font-weight:800;font-size:var(--fs-title)}.item .sub{color:var(--c-ink-2);font-size:var(--fs-caption)}.chev{color:var(--c-ink-2);margin-left:auto;font-size:22px}.gate{background:var(--c-gate-bg);color:var(--c-gate-ink);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4);gap:var(--sp-3);flex-wrap:wrap;align-items:baseline;display:flex}.gate b{font-size:var(--fs-gate);letter-spacing:.08em;color:var(--c-gate-code)}.gate span{color:var(--c-gate-label);font-size:var(--fs-caption)}.notes{white-space:pre-wrap;background:var(--c-warn-bg);color:var(--c-warn-ink);border-radius:var(--r-md);padding:var(--sp-3) var(--sp-4)}.tabs{background:var(--c-surface-2);border-radius:var(--r-md);gap:4px;padding:4px;display:flex}.tabs button{font:inherit;min-height:40px;color:var(--c-ink-2);background:0 0;border:0;border-radius:8px;flex:1;font-weight:700}.tabs button.on{background:var(--c-bg);color:var(--c-ink);box-shadow:var(--sh-1)}.chip.missing small,.chip small{font-size:.8em}.steps{gap:6px;display:flex}.steps i{background:var(--c-surface-2);border-radius:3px;flex:1;height:6px}.steps i.on{background:var(--c-primary)}.banner.err{background:var(--c-danger-bg);color:var(--c-danger)}.banner.ok{background:var(--c-success-bg);color:var(--c-success)}.progress>div:not(.track):not(.label){background:var(--c-primary);border-radius:var(--r-pill);height:8px;transition:width var(--dur-base)}.runwrap{flex-direction:column;height:calc(100dvh - 56px);display:flex}.runwrap .mapview{border-radius:0;flex:1;min-height:0}.runside{background:var(--c-page);padding:var(--sp-3);gap:var(--sp-2);align-content:start;max-height:38dvh;display:grid;overflow:auto}.stoprow{align-items:center;gap:var(--sp-3);background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);cursor:pointer;font:inherit;text-align:left;width:100%;color:inherit;min-height:64px;display:flex}.stoprow .n{background:var(--pin-black);width:36px;height:36px;color:var(--pin-black-ink);border-radius:50%;flex:none;place-items:center;font-weight:800;display:grid}.stoprow .u{font-size:var(--fs-h2);font-weight:800}.stoprow .q{color:var(--c-ink-2);margin-left:auto;font-weight:700}.stoprow.done .u{color:var(--c-done);text-decoration:line-through}@media (orientation:landscape) and (max-height:600px){.top{min-height:48px;padding-top:max(4px, env(safe-area-inset-top));padding-bottom:4px}.runwrap{flex-direction:row;height:calc(100dvh - 48px)}.runside{flex:none;width:300px;max-height:none}}.floatbar{left:var(--sp-3);top:var(--sp-3);gap:var(--sp-2);pointer-events:none;z-index:var(--z-map-ui);flex-wrap:wrap;display:flex;position:absolute;right:76px}.floatbar>*{pointer-events:auto}.pill{background:var(--c-bg);color:var(--c-ink);border-radius:var(--r-pill);padding:var(--sp-2) var(--sp-4);font-weight:700;font-size:var(--fs-caption);box-shadow:var(--sh-2)}.fullbtn{right:var(--sp-3);top:var(--sp-3);border-radius:var(--r-md);border:1px solid var(--c-line);background:var(--c-bg);width:56px;height:56px;box-shadow:var(--sh-2);color:var(--c-ink);z-index:var(--z-map-ui);font-size:24px;font-weight:800;position:absolute}body.mapfull .top,body.mapfull .runside{display:none}body.mapfull .runwrap{height:100dvh}.mapbox{flex:1;min-height:0;display:flex;position:relative}.floatgo{left:var(--sp-3);right:76px;bottom:var(--sp-3);gap:var(--sp-2);background:var(--c-bg);padding:var(--sp-2);border-radius:var(--r-lg);box-shadow:var(--sh-2);z-index:var(--z-map-ui);align-items:center;display:flex;position:absolute}.floatgo .btn{white-space:nowrap;width:auto;min-height:48px}.pill.btnlike{font:inherit;min-height:48px;padding:0 var(--sp-4);cursor:pointer;color:var(--c-ink);border:0;font-weight:700}.pill.btnlike.on{background:var(--c-success);color:#fff}.flag{color:var(--c-warn-ink);font-weight:700;font-size:var(--fs-caption);margin-top:4px}.unitcount{font-size:var(--fs-title);color:var(--c-ink);font-weight:700}.unitcount b{font-size:var(--fs-gate)}.unitcount span{color:var(--c-ink-2);font-size:var(--fs-body)}.runside .unitcount{font-size:var(--fs-body)}.runside .unitcount b{font-size:var(--fs-h2)}.tp-grid{gap:var(--sp-3);grid-template-columns:repeat(auto-fill,minmax(min(148px,100%),1fr));display:grid}.tp-option{appearance:none;text-align:left;cursor:pointer;padding:var(--sp-2);gap:var(--sp-1);background:var(--c-card);color:var(--c-ink);border:2px solid var(--c-line);border-radius:var(--r-lg);min-height:var(--tap-min);align-content:start;display:grid}.tp-option[aria-checked=true]{border:3px solid var(--c-accent-ink);padding:calc(var(--sp-2) - 1px)}.tp-name{align-items:center;gap:var(--sp-1);font-weight:var(--fw-heavy);font-size:var(--fs-body);padding:0 var(--sp-1);display:flex}.tp-name svg{color:var(--c-accent-ink)}.tp-note{font-size:var(--fs-caption);color:var(--c-ink-2);padding:0 var(--sp-1);font-weight:600}.tp-split{border-radius:var(--r-md);grid-template-columns:1fr 1fr;display:grid;overflow:hidden}.tp-split .tp-mini{border-radius:0}.tp-mini{background:var(--c-page);color:var(--c-ink);border-radius:var(--r-md);border:1px solid var(--c-line);grid-template-rows:22px 1fr;height:104px;display:grid;overflow:hidden}.tp-head{background:var(--c-header-bg);color:var(--c-header-ink);align-items:center;padding:0 6px;display:flex}.tp-h{font-size:11px;font-weight:800}.tp-body{align-content:start;gap:4px;padding:5px;display:grid}.tp-card{background:var(--c-card);border:1px solid var(--c-line);border-radius:5px;gap:3px;padding:4px;display:grid}.tp-line{background:var(--c-ink-2);border-radius:2px;width:70%;height:4px;display:block}.tp-line.strong{background:var(--c-ink);width:90%}.tp-map{background:var(--c-map-bg);border-radius:4px;height:20px;overflow:hidden}.tp-btn{background:var(--c-primary);color:var(--c-on-primary);box-shadow:inset 0 0 0 1px var(--c-primary-edge);text-align:center;border-radius:5px;height:16px;font-size:10px;font-weight:800;line-height:16px}.invite-code{font-size:var(--fs-gate);font-weight:var(--fw-heavy);letter-spacing:.12em;text-align:center;background:var(--c-surface);border:2px dashed var(--c-line-strong);border-radius:var(--r-md);padding:var(--sp-3);overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.invite-stats{gap:var(--sp-2);grid-template-columns:repeat(3,1fr);margin:0;display:grid}.invite-stats>div{background:var(--c-surface);border-radius:var(--r-md);padding:var(--sp-2) var(--sp-3);gap:2px;display:grid}.invite-stats dt{font-size:var(--fs-caption);color:var(--c-ink-2);font-weight:700}.invite-stats dd{font-size:var(--fs-h2);font-weight:var(--fw-heavy);margin:0}.disc-body .list-row .t,.disc-body .list-row .s{white-space:normal}@media (orientation:landscape) and (max-height:600px){.action-bar,.action-bar.no-tabs{padding:var(--sp-2) 0;background:0 0;margin:0;position:static}.action-bar:after{display:none}.map-thumb{aspect-ratio:auto;height:46dvh;max-height:46dvh}.app-header{min-height:56px}}.wrap-any,.prose,.card,.list-row .main,.gate-panel .code{overflow-wrap:anywhere}.swatches,.shapes{grid-template-columns:repeat(auto-fill,minmax(min(48px,100%),1fr))}.invite-stats{grid-template-columns:repeat(auto-fit,minmax(min(96px,100%),1fr))}.otp{grid-template-columns:repeat(6,minmax(0,56px))}.card-title{font-size:var(--fs-title)}.gate-row{flex-wrap:wrap}.gate-row .dots{flex:3ch}.today-card{grid-template-columns:minmax(0,1fr)}.prose th{white-space:nowrap}@media (max-height:600px){.action-bar,.action-bar.no-tabs{padding:var(--sp-2) 0;background:0 0;margin:0;position:static}.action-bar:after{display:none}}.found-grid{gap:var(--sp-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.found-item{gap:var(--sp-1);width:100%;color:var(--c-ink);text-align:left;cursor:zoom-in;background:0 0;border:0;min-height:48px;padding:0;display:grid}.found-img{aspect-ratio:4/3;border-radius:var(--r-md);background:var(--c-map-bg);border:1px solid var(--c-line);place-items:center;display:grid;overflow:hidden}.found-img img{object-fit:cover;width:100%;height:100%;display:block}.found-item:focus-visible .found-img{outline:3px solid var(--c-focus);outline-offset:2px}.found-src{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.found-preview{cursor:default;aspect-ratio:4/3;place-items:center;display:grid}.found-loading{align-items:center;gap:var(--sp-2);color:#e4e8ee;font-weight:700;display:inline-flex}.view-chips{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.view-chips .view-label{font-size:var(--fs-caption);font-weight:var(--fw-heavy);color:var(--c-ink-2);text-transform:uppercase;letter-spacing:.06em;flex-basis:100%}.view-chips .choice-chip{padding:0 var(--sp-4)}.view-chips .choice-chip:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}.sections{gap:var(--sp-4);display:grid}.p-sec{gap:var(--sp-2);min-width:0;display:grid}.sec-head{align-items:center;gap:var(--sp-2);min-width:0;display:flex}.sec-toggle{appearance:none;color:var(--c-ink);font:inherit;min-width:0;min-height:var(--tap-secondary);padding:0 var(--sp-1);align-items:center;gap:var(--sp-2);text-align:left;cursor:pointer;border-radius:var(--r-md);background:0 0;border:0;flex:1;display:flex}.sec-toggle:active{background:var(--c-surface-2)}.sec-toggle:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}.sec-toggle .chev{color:var(--c-ink-2);transition:transform var(--dur-fast) var(--ease);flex:none;display:grid}.sec-toggle[aria-expanded=false] .chev{transform:rotate(-90deg)}.sec-titles{flex:1;gap:2px;min-width:0;display:grid}.sec-t{font-size:var(--fs-title);font-weight:var(--fw-heavy);line-height:var(--lh-tight);overflow-wrap:anywhere}.sec-s{font-size:var(--fs-caption);color:var(--c-ink-2);font-weight:600}.sec-count{min-width:36px;height:32px;padding:0 var(--sp-2);border-radius:var(--r-pill);background:var(--c-partner-tint);color:var(--c-partner-ink);font-size:var(--fs-caption);font-weight:var(--fw-heavy);font-variant-numeric:tabular-nums;flex:none;place-items:center;display:inline-grid}.p-sec.rest .sec-t{color:var(--c-ink-2)}.sec-actions{gap:var(--sp-2);flex-wrap:wrap;display:flex}.sec-actions .btn{flex:auto}.check-row{align-items:center;gap:var(--sp-3);min-height:64px;padding:var(--sp-2) var(--sp-4);cursor:pointer;display:flex}.check-row:active{background:var(--c-surface-2)}.check-row input{width:28px;height:28px;accent-color:var(--c-accent-ink);flex:none;margin:0}.check-row:focus-within{outline:3px solid var(--c-focus);outline-offset:-3px}.check-row .main{flex:1;gap:2px;min-width:0;display:grid}.check-row .t{font-size:var(--fs-title);font-weight:var(--fw-heavy);overflow-wrap:anywhere}.check-row .s{font-size:var(--fs-caption);color:var(--c-ink-2);text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.order-list{margin:0;padding:0;list-style:none}.order-row{align-items:center;gap:var(--sp-1);min-height:64px;padding:var(--sp-1) var(--sp-2) var(--sp-1) var(--sp-4);display:flex}.order-row .num{background:var(--c-ink);width:32px;height:32px;color:var(--c-ink-inverse);font-weight:var(--fw-heavy);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;border-radius:50%;flex:none;place-items:center;display:grid}.order-row .t{min-width:0;font-size:var(--fs-body);font-weight:var(--fw-strong);overflow-wrap:anywhere;padding-left:var(--sp-2);flex:1}.order-row .btn.icon:disabled{color:var(--c-line-strong);background:0 0}.route-tags{gap:var(--sp-2);flex-wrap:wrap;display:flex}.route-tag{align-items:center;gap:var(--sp-1);min-height:36px;padding:0 var(--sp-3);border-radius:var(--r-pill);background-color:var(--c-badge-bg);background-image:linear-gradient(120deg, var(--c-badge-from), var(--c-badge-to));color:var(--c-on-badge);box-shadow:inset 0 1px 0 #fff9, 0 4px 18px var(--c-partner-glow);font-family:var(--font-head);font-size:var(--fs-body);font-weight:var(--fw-heavy);font-variant-numeric:tabular-nums;letter-spacing:-.01em;display:inline-flex}.addr-field{position:relative}.addr-list{padding:var(--sp-1);border:1px solid var(--c-line-strong);border-radius:var(--r-md);background:var(--c-bg);box-shadow:var(--sh-2);gap:2px;margin:0;list-style:none;display:grid}.addr-list button{appearance:none;align-items:center;gap:var(--sp-2);width:100%;min-height:48px;padding:0 var(--sp-3);border-radius:var(--r-sm,8px);color:var(--c-ink);font:inherit;font-weight:var(--fw-strong);text-align:left;cursor:pointer;background:0 0;border:0;display:flex}.addr-list button span{overflow-wrap:anywhere;min-width:0}.addr-list button:hover,.addr-list button:focus-visible{background:var(--c-info-bg)}.addr-attrib{padding:var(--sp-1) var(--sp-3);color:var(--c-ink-2)}.beta-pill{appearance:none;color:var(--c-ink);min-height:var(--tap-min);min-width:var(--tap-min);cursor:pointer;font:inherit;background:0 0;border:0;flex:none;place-items:center;padding:0;display:inline-grid}.beta-pill .bp-inner{min-height:36px;padding:0 var(--sp-3);border-radius:var(--r-pill);background:var(--c-beta-bg);color:var(--c-beta-ink);border:1.5px solid var(--c-beta-line);box-shadow:0 0 18px var(--c-glow);font-size:var(--fs-caption);font-weight:var(--fw-heavy);white-space:nowrap;align-items:center;gap:6px;display:inline-flex}.beta-pill:active .bp-inner{background:var(--c-surface-2);color:var(--c-ink)}.beta-pill:focus-visible{outline:none}.beta-pill:focus-visible .bp-inner{outline:3px solid var(--c-focus);outline-offset:2px}@media (max-width:389px){.beta-pill:not(.compact) .bp-beta,.beta-pill .bp-more>span{display:none}}.beta-pill.compact .bp-inner{min-height:40px;padding:0 10px}.beta-code-row{align-items:center;gap:var(--sp-2);flex-wrap:wrap;display:flex}.beta-code{font-size:var(--fs-title);font-weight:var(--fw-heavy);letter-spacing:.04em;font-variant-numeric:tabular-nums;white-space:nowrap;flex:1 0 auto}.beta-thanks{color:var(--c-ink-2);margin:0;font-weight:600}.invite-made{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--c-surface);border:1px solid var(--c-line);display:grid}.invite-made .beta-code{font-size:var(--fs-h2)}.waitlist-form .hp{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}@media (max-width:399px){.beta-pill.compact .bp-beta{display:none}}.addr-box{gap:var(--sp-3);border:0;min-width:0;margin:0;padding:0;display:grid}.addr-legend{font-weight:var(--fw-heavy);font-size:var(--fs-body);margin-bottom:var(--sp-1);padding:0}.addr-row{gap:var(--sp-3);grid-template-columns:minmax(0,1fr) minmax(0,1.2fr);display:grid}.banner.small-map{padding:var(--sp-2) var(--sp-3);gap:var(--sp-2)}.small-map .sm-text{font-size:var(--fs-caption);color:var(--c-ink);overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.45}.small-map .sm-photo{cursor:pointer;-webkit-tap-highlight-color:transparent;color:var(--c-callout-link);font-weight:var(--fw-strong);text-decoration:underline;-webkit-text-decoration-color:var(--c-callout-deco);text-decoration-color:var(--c-callout-deco);text-underline-offset:3px;margin:-14px 0;padding:14px 0;text-decoration-thickness:2px;display:inline}.small-map .sm-photo svg{vertical-align:-3px;margin-right:3px;display:inline-block}.small-map .sm-offer{gap:var(--sp-1);padding-top:var(--sp-2);border-top:1px solid var(--c-line);font-size:var(--fs-caption);color:var(--c-ink);display:grid}.small-map .sm-offer-row{justify-content:space-between;align-items:center;gap:var(--sp-1) var(--sp-3);flex-wrap:wrap;display:flex}.small-map .sm-offer-row .sub{color:var(--c-ink-2);font-weight:500}.small-map .sm-offer-row .btn{flex:none}.shared-card{background:var(--c-info-bg)}.shared-rows{gap:var(--sp-3);margin:0;padding:0;list-style:none;display:grid}.shared-row{gap:var(--sp-2) var(--sp-3);background:var(--c-card);border:1px solid var(--c-line);border-radius:var(--r-md);padding:var(--sp-3);grid-template-columns:96px minmax(0,1fr);grid-template-areas:"thumb main""use use";align-items:center;display:grid}.shared-row .main{grid-area:main;gap:2px;min-width:0;display:grid}.shared-row .t{font-size:var(--fs-title);font-weight:var(--fw-heavy)}.shared-row .s{font-size:var(--fs-caption);color:var(--c-ink-2);font-variant-numeric:tabular-nums;font-weight:600}.shared-row .use{min-height:var(--tap-secondary);grid-area:use}.shared-thumb{aspect-ratio:4/3;border-radius:var(--r-sm);background:var(--c-map-bg);color:#c9ced6;grid-area:thumb;place-items:center;width:96px;display:grid;overflow:hidden}.shared-thumb img{object-fit:cover;width:100%;height:100%;display:block}@media (min-width:560px){.shared-row{grid-template-columns:112px minmax(0,1fr) auto;grid-template-areas:"thumb main use"}.shared-thumb{width:112px}.shared-row .use{width:auto;padding:0 var(--sp-5)}}.share-list{gap:var(--sp-2);margin:0;padding:0;font-weight:600;list-style:none;display:grid}.share-list li{align-items:flex-start;gap:var(--sp-2);display:flex}.share-list li svg{color:var(--c-success);flex:none;margin-top:2px}.share-list li.no svg{color:var(--c-ink-2)}.switch-row .lead-ic{width:24px;color:var(--c-ink);flex:none;place-items:center;display:grid}.caption.share-on{color:var(--c-success)}.pw-wrap{display:grid;position:relative}.pw-wrap input{padding-right:calc(var(--tap-min) + var(--sp-2))!important}.pw-wrap .pw-eye{min-width:var(--tap-min);min-height:var(--tap-min);color:var(--c-ink-2);position:absolute;top:50%;right:2px;transform:translateY(-50%)}.account-email{font-weight:var(--fw-strong);overflow-wrap:anywhere}.verified-tag{align-items:center;gap:var(--sp-1);font-size:var(--fs-caption);font-weight:var(--fw-strong);color:var(--c-success);background:var(--c-success-bg);border-radius:var(--r-pill);padding:2px var(--sp-3);display:inline-flex}.auth-alt{text-align:center;color:var(--c-ink-2)}.auth-alt a,.auth-alt .btn.text{font-weight:var(--fw-strong)}.check-row{gap:var(--sp-3);min-height:var(--tap-min);cursor:pointer;align-items:flex-start;display:flex}.check-row input[type=checkbox]{width:24px;height:24px;accent-color:var(--c-accent-ink);flex:none;margin-top:2px}#account .list-row .t{white-space:normal;overflow-wrap:anywhere}#account .list-row .s{white-space:normal}#account .list-row .t.account-email{font-size:var(--fs-body);font-weight:var(--fw-strong)}.list-row .trail.tp-check{color:var(--c-accent-ink,var(--c-ink));min-width:22px}.btn.partner{background:var(--c-partner-tint);color:var(--c-partner-ink);border:1.5px solid var(--c-partner-line);box-shadow:var(--c-hi)}.btn.partner:active{background:var(--c-surface-2)}.btn.text.link-partner{color:var(--c-partner-ink);text-decoration:none}.btn.text.link-partner:active{text-decoration:underline}.route-badge{min-height:36px;padding:0 var(--sp-3);border-radius:var(--r-pill);background-color:var(--c-badge-bg);background-image:linear-gradient(120deg, var(--c-badge-from), var(--c-badge-to));max-width:100%;color:var(--c-on-badge);box-shadow:inset 0 1px 0 #fff9, 0 4px 18px var(--c-partner-glow);font-family:var(--font-head);font-size:var(--fs-title);font-weight:var(--fw-heavy);letter-spacing:-.01em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere;align-items:center;line-height:1.15;display:inline-flex}.sec-titles .route-badge{justify-self:start;padding-top:4px;padding-bottom:4px}.ini{width:44px;height:44px;font-family:var(--font-head);font-size:var(--fs-caption);font-weight:var(--fw-heavy);letter-spacing:-.02em;background:var(--c-partner-tint);color:var(--c-partner-ink);border-radius:14px;flex:none;place-items:center;display:grid}.ini.f1{background:var(--c-tile-y);color:var(--c-tile-y-ink)}.ini.f2{background:var(--c-success-bg);color:var(--c-success)}.ini.f3{background:var(--c-surface-2);color:var(--c-ink)}.today-card .ini{border-radius:12px;width:40px;height:40px}.list-row>.ini{align-self:center}.meta-pills{flex-wrap:wrap;gap:6px;margin-top:4px;display:flex}.meta-pill{border-radius:var(--r-pill);background:var(--c-surface-2);min-height:28px;color:var(--c-ink-2);font-size:var(--fs-caption);font-weight:var(--fw-strong);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.meta-pill.gate{background:var(--c-partner-tint);color:var(--c-partner-ink)}.st{border-radius:var(--r-pill);min-height:30px;font-size:var(--fs-caption);font-weight:var(--fw-heavy);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;padding:0 12px;display:inline-flex}.st.done{background:var(--c-success-bg);color:var(--c-success)}.st.next{background:var(--c-primary);color:var(--c-on-primary)}.st.skip{background:var(--c-skipped-bg);color:var(--c-skipped)}.st.gt{background:var(--c-partner-tint);color:var(--c-partner-ink)}.st.warn{background:var(--c-warn-bg);color:var(--c-warn-ink)}.stat-line.st-pills{gap:6px}.stat-line.st-pills>[aria-hidden]{display:none}.btn.plan-btn{border-radius:var(--r-pill);color:var(--c-accent-ink);font-weight:var(--fw-heavy);border:1px solid var(--c-edge-strong);box-shadow:var(--c-hi);background-color:var(--c-surface);background-image:linear-gradient(180deg, var(--c-surface-2), var(--c-surface))}[data-theme=light] .btn.plan-btn{background:var(--c-card);border:1.5px solid var(--c-line-strong)}@media (prefers-color-scheme:light){[data-theme=system] .btn.plan-btn{background:var(--c-card);border:1.5px solid var(--c-line-strong)}}.list-row .lead,.icon-tile{background:var(--c-partner-tint);width:40px;height:40px;color:var(--c-partner-ink);border-radius:12px;flex:none;place-items:center;display:grid}.list-row .lead.t-y,.icon-tile.t-y{background:var(--c-tile-y);color:var(--c-tile-y-ink)}.list-row .lead.t-g,.icon-tile.t-g{background:var(--c-success-bg);color:var(--c-success)}.list-row .lead.t-n,.icon-tile.t-n{background:var(--c-surface-2);color:var(--c-ink)}.list-row.danger .lead{background:var(--c-danger-bg);color:var(--c-danger)}.list-row .lead svg,.icon-tile svg{width:22px;height:22px}.list-group .list-row .trail{color:var(--c-ink-2)}.hero-card{gap:var(--sp-3);position:relative;overflow:hidden}.hero-card:before{content:"";background:radial-gradient(closest-side, var(--c-partner-glow), transparent);pointer-events:none;border-radius:50%;width:200px;height:200px;position:absolute;top:-60px;right:-40px}.hero-card>*{position:relative}.hero-card .hero-line{font-family:var(--font-head);font-size:var(--fs-title);font-weight:var(--fw-heavy);letter-spacing:-.01em}.hero-card .track{height:12px}.today-card .name>.ini{flex:none;overflow:visible}.p-sec .sec-toggle{gap:var(--sp-3)}[data-theme=high-contrast] .card,[data-theme=high-contrast] .list-group,[data-theme=high-contrast] .today-card{background-image:none;border-width:2px}[data-theme=high-contrast] .app-header:after,[data-theme=high-contrast] .hero-card:before{display:none}[data-theme=high-contrast] .tabbar{-webkit-backdrop-filter:none;backdrop-filter:none;box-shadow:none;border:2px solid var(--c-line-strong)}.today-card .open{padding-bottom:var(--sp-2);gap:4px}.today-card .addr{text-overflow:ellipsis;white-space:nowrap;min-width:0;color:var(--c-ink-2);font-size:var(--fs-caption);padding-left:calc(40px + var(--sp-3));font-weight:600;display:block;overflow:hidden}.today-card .card-units{padding:var(--sp-1) var(--sp-4) var(--sp-2) calc(var(--sp-4) + 6px)}.today-card .card-meta{padding:0 var(--sp-4) var(--sp-3) calc(var(--sp-4) + 6px);gap:var(--sp-2);display:grid}.today-card .card-meta:empty{display:none}button.mini-chip{appearance:none;font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-heavy);height:auto;min-height:var(--tap-min);min-width:var(--tap-min);background:var(--c-chip-bg);cursor:pointer;justify-content:center;gap:4px}button.mini-chip:active{background:var(--c-surface-2)}button.mini-chip:focus-visible{outline:3px solid var(--c-focus);outline-offset:2px}button.mini-chip.done{background:var(--c-success-bg)}button.mini-chip.missing{background:var(--c-warn-bg)}.mini-chip.add{border:1.5px dashed var(--c-partner-line);color:var(--c-partner-ink);background:var(--c-partner-tint)}.now-pill{border-radius:var(--r-pill);background:var(--c-primary);height:28px;color:var(--c-on-primary);font-family:var(--font-body,inherit);font-size:var(--fs-caption);font-weight:var(--fw-heavy);letter-spacing:0;box-shadow:0 0 14px var(--c-glow-y);flex:none;align-items:center;gap:5px;padding:0 10px;display:inline-flex}.now-pill:before{content:"";background:currentColor;border-radius:50%;width:7px;height:7px}.list-head{align-items:center;gap:var(--sp-2);margin:var(--sp-2) 0 0;font-size:var(--fs-caption);font-weight:var(--fw-heavy);color:var(--c-ink-2);text-transform:uppercase;letter-spacing:.06em;display:flex}.list-head .sec-count{text-transform:none;letter-spacing:0;min-width:32px;height:28px}.hero-row{align-items:baseline;gap:4px var(--sp-2);flex-wrap:wrap;display:flex}.hero-num{font-family:var(--font-head);font-variant-numeric:tabular-nums;letter-spacing:-.03em;line-height:1}.hero-num b{font-size:2.75rem;font-weight:var(--fw-heavy);color:var(--c-ink)}.hero-num .of{font-size:1.5rem;font-weight:var(--fw-heavy);color:var(--c-ink-2);margin-left:4px}.hero-lbl{font-weight:var(--fw-heavy);font-size:var(--fs-body)}.hero-pk{color:var(--c-ink-2);font-weight:var(--fw-strong);font-size:var(--fs-caption);font-variant-numeric:tabular-nums;margin-left:auto}.p-sec .sec-today{max-width:100%;min-height:var(--tap-min);padding:0 var(--sp-4);margin:calc(-1 * var(--sp-1)) 0 var(--sp-1);justify-content:flex-start;justify-self:start;gap:8px}.sec-t.route-badge{white-space:nowrap;overflow-wrap:normal;text-overflow:ellipsis;max-width:100%;overflow:hidden}.sec-today .sec-today-t{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}body.no-tabbar .tabbar,body.no-tabbar .tabbar-spacer{display:none}body.no-tabbar{--tabbar-h:0px}.list-row .t{white-space:normal;-webkit-line-clamp:2;line-clamp:2;overflow-wrap:anywhere;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.list-row .s{white-space:normal;overflow-wrap:anywhere}.app-header .titles .sub{white-space:normal}@media (max-height:700px){.hero-card{padding-top:var(--sp-3);padding-bottom:var(--sp-3);gap:var(--sp-2)}.hero-num b{font-size:2.25rem}}.action-bar.compact{padding-top:calc(var(--sp-4) + var(--sp-1));padding-bottom:var(--sp-2);grid-auto-columns:minmax(0,1fr);grid-auto-flow:column}.action-bar.compact>.btn{min-height:52px;padding-left:var(--sp-2);padding-right:var(--sp-2);white-space:normal;line-height:1.15}.mapchip{border-radius:var(--r-pill);border:1px solid var(--c-line);background:var(--c-bg);height:40px;box-shadow:var(--sh-2);flex:none;align-items:stretch;display:inline-flex;overflow:hidden}.mapchip-seg{appearance:none;color:var(--c-ink-2);font:inherit;font-size:var(--fs-caption);font-weight:var(--fw-strong);padding:0 var(--sp-3);white-space:nowrap;cursor:pointer;background:0 0;border:0}.mapchip-seg+.mapchip-seg{border-left:1px solid var(--c-line)}.mapchip-seg.on{background:var(--c-surface-2);color:var(--c-ink);cursor:default}.mapchip-seg:focus-visible{outline:3px solid var(--c-focus);outline-offset:-3px}.upload-notice{gap:var(--sp-2);padding:var(--sp-3);border-radius:var(--r-md);background:var(--c-surface-2);font-size:var(--fs-caption);display:grid}.upload-notice p{margin:0}.upload-notice .check-row{min-height:0;font-weight:600}.upload-notice a{color:var(--c-partner-ink)}
