@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-outline-style:solid;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-ease:initial}}}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(data:font/woff2;base64,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)format("woff2-variations");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-cyrillic-wght-normal-D73BlboJ.woff2)format("woff2-variations");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-greek-wght-normal-Bw9x6K1M.woff2)format("woff2-variations");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-vietnamese-wght-normal-Bt-aOZkq.woff2)format("woff2-variations");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-ext-wght-normal-DBQx-q_a.woff2)format("woff2-variations");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:JetBrains Mono Variable;font-style:normal;font-display:swap;font-weight:100 800;src:url(/assets/jetbrains-mono-latin-wght-normal-B9CIFXIH.woff2)format("woff2-variations");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@layer base{:root{--gray-1:#14161a;--gray-2:#1e2024;--gray-3:#2c2f35;--gray-4:#3b3e45;--gray-5:#4e525a;--gray-6:#656972;--gray-7:#7e838b;--gray-8:#9a9da2;--gray-9:#b5b7ba;--gray-10:#cacbce;--gray-11:#dfe0e2;--gray-12:#f2f2f3;--gray-a3:#ffffff0f;--gray-a5:#ffffff1f;--gray-a6:#ffffff29;--gray-a7:#ffffff38;--brand-1:#131a0f;--brand-2:#1d2815;--brand-3:#2b3d1f;--brand-4:#3f592c;--brand-5:#547939;--brand-6:#6b9e47;--brand-7:#87bc62;--brand-8:#a2cd84;--brand-9:#bbdba3;--brand-10:#cee6bc;--brand-11:#deefd2;--brand-12:#eef7e8;--brand-a3:#87bc620f;--brand-a5:#87bc621f;--brand-a6:#87bc622e;--brand-a7:#87bc6240;--accent-1:#1c160d;--accent-2:#2a2213;--accent-3:#40331c;--accent-4:#5e4a26;--accent-5:#816431;--accent-6:#ae843d;--accent-7:#c99e54;--accent-8:#d8b579;--accent-9:#e4c99a;--accent-10:#eedbba;--accent-11:#f4e8d2;--accent-12:#faf4ea;--accent-a3:#c99e540f;--accent-a5:#c99e541f;--accent-a6:#c99e542e;--accent-a7:#c99e5440;--go-1:#0a1f16;--go-3:#174532;--go-5:#2d8661;--go-7:#37be86;--go-9:#75d7ae;--go-11:#b8ead5;--go-bg:#37be861f;--go-border:#37be8640;--wait-1:#211808;--wait-3:#493512;--wait-5:#8f6824;--wait-7:#d49a35;--wait-9:#e2bc78;--wait-11:#efd9b3;--wait-bg:#d49a351f;--wait-border:#d49a3540;--skip-1:#200909;--skip-3:#471515;--skip-5:#8a2828;--skip-7:#ce3b3b;--skip-9:#de7c7c;--skip-11:#edb6b6;--skip-bg:#ce3b3b1f;--skip-border:#ce3b3b40;--info-7:#5c9ef5;--info-9:#97c1f7;--success-7:#3db885;--success-9:#85d6b4;--warning-7:#e9a735;--warning-9:#efc680;--error-7:#cb4d4d;--error-9:#e28d8d;--white-a3:#ffffff0f;--white-a5:#ffffff1f;--white-a6:#ffffff29;--white-a8:#ffffff38;--white-a10:#ffffff4d;--black-a3:#0000000f;--black-a5:#0000001f;--black-a8:#00000038;--black-a10:#0000004d;--glass-subtle:var(--white-a3);--glass-medium:var(--white-a6);--glass-strong:var(--white-a10)}[data-theme=light]{--glass-subtle:var(--black-a3);--glass-medium:var(--black-a5);--glass-strong:var(--black-a10)}:root{--font-sans:"Space Grotesk Variable","Space Grotesk",-apple-system,BlinkMacSystemFont,"Segoe UI",Roboto,"Helvetica Neue",Arial,sans-serif;--font-mono:"JetBrains Mono Variable","JetBrains Mono","SF Mono","Monaco","Menlo","Consolas",monospace;--font-display:"Space Grotesk Variable","Space Grotesk",-apple-system,sans-serif;--font-size-xs:11px;--font-size-sm:12px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:18px;--font-size-xl:20px;--font-size-2xl:24px;--font-size-3xl:28px;--font-size-4xl:34px;--font-size-map-xs:10px;--font-size-map-sm:11px;--font-size-map-base:12px;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--font-weight-extrabold:800;--line-height-tight:1.2;--line-height-snug:1.3;--line-height-normal:1.5;--line-height-relaxed:1.6;--line-height-map:1.15;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--text-hero:clamp(2rem,5vw,3rem);--text-display:clamp(1.75rem,4vw,2.5rem);--text-title:clamp(1.25rem,3vw,1.75rem);--space-0:0;--space-0_5:2px;--space-1:4px;--space-1_5:6px;--space-2:8px;--space-3:12px;--space-4:16px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-map-0_5:2px;--space-map-1:4px;--space-map-1_5:6px;--space-map-2:8px;--size-touch-dense:36px;--size-touch-comfortable:44px;--size-icon-xs:12px;--size-icon-sm:16px;--size-icon-md:20px;--size-icon-lg:24px;--size-icon-xl:28px;--size-header:44px;--size-nav-bottom:44px;--size-input-height:36px;--size-button-height:36px;--size-row-height:36px;--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.2s;--duration-slow:.3s;--duration-slower:.4s;--duration-ambient:1.5s;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--ease-spring:cubic-bezier(.5,1.25,.5,1);--ease-bounce:cubic-bezier(.34,1.56,.64,1);--ease-sheet:cubic-bezier(.32,.72,0,1);--ease-decelerate:cubic-bezier(0,0,.2,1);--motion-sheet:.3s var(--ease-sheet);--motion-tab:.2s var(--ease-out);--motion-expand:.25s var(--ease-in-out);--motion-score-reveal:.6s var(--ease-spring);--motion-reveal-stagger:.12s;--motion-count-up:.8s;--motion-exit-offset:12px}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes scale-in{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes pulse-ring{0%{opacity:.4;transform:scale(1)}70%{opacity:0;transform:scale(2.2)}to{opacity:0;transform:scale(2.2)}}@keyframes water-ripple{0%{opacity:.35;transform:scale(.3)}to{opacity:0;transform:scale(2.8)}}@keyframes fade-slide-up{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@keyframes fade-slide-right{0%{opacity:0;transform:translate(-8px)}to{opacity:1;transform:translate(0)}}@keyframes sheet-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes user-dot-pulse{0%,to{opacity:.6;transform:scale(1)}50%{opacity:.2;transform:scale(1.4)}}@keyframes slide-down{0%{opacity:0;transform:translateY(-100%)}to{opacity:1;transform:translateY(0)}}@keyframes subtle-pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}@keyframes refresh-pulse{0%,to{opacity:1}50%{opacity:.95}}@keyframes bar-wipe{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@keyframes indeterminate{0%{width:40%;left:-40%}50%{width:50%;left:30%}to{width:40%;left:100%}}@keyframes bounce-gentle{0%,to{transform:translateY(0)}50%{transform:translateY(4px)}}@supports (view-transition-name:test){::view-transition-old(*){animation-duration:var(--duration-normal);animation-timing-function:var(--ease-spring)}::view-transition-new(*){animation-duration:var(--duration-normal);animation-timing-function:var(--ease-spring)}}@media(prefers-reduced-motion:reduce){:root{--duration-instant:0s;--duration-fast:0s;--duration-normal:0s;--duration-slow:0s;--duration-slower:0s;--duration-ambient:0s}*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}::view-transition-group(*){animation-duration:.01ms!important}::view-transition-old(*){animation-duration:.01ms!important}::view-transition-new(*){animation-duration:.01ms!important}}:root,[data-theme=dark]{--theme-text-primary:var(--gray-12);--theme-text-secondary:var(--gray-11);--theme-text-tertiary:var(--gray-9);--theme-text-muted:var(--gray-8);--theme-text-disabled:var(--gray-6);--theme-text-link:var(--brand-9);--theme-bg-primary:var(--gray-1);--theme-bg-secondary:var(--gray-2);--theme-bg-tertiary:var(--gray-3);--theme-bg-elevated:var(--gray-3);--theme-bg-overlay:#0d0f11b3;--theme-surface-card:var(--gray-2);--theme-surface-card-hover:var(--gray-3);--theme-surface-card-border:var(--gray-a7);--theme-surface-input:var(--gray-3);--theme-border-primary:var(--gray-a7);--theme-border-secondary:var(--gray-a6);--theme-border-subtle:var(--gray-a5);--theme-border-divider:var(--gray-a3);--theme-shadow-sm:0 1px 2px #0000001a;--theme-shadow-md:0 4px 8px #00000026;--theme-shadow-lg:0 8px 16px #0003;--theme-shadow-modal:0 24px 80px #00000080;--theme-status-success:var(--success-7);--theme-status-success-text:var(--success-9);--theme-status-warning:var(--warning-7);--theme-status-warning-text:var(--warning-9);--theme-status-error:var(--error-7);--theme-status-error-text:var(--error-9);--theme-status-info:var(--info-7);--theme-status-info-text:var(--info-9);--theme-surface-info:var(--brand-a3);--theme-surface-info-border:var(--brand-a5)}[data-theme=light]{--theme-text-primary:#16181d;--theme-text-secondary:#292c32;--theme-text-tertiary:#464a53;--theme-text-muted:#6c707a;--theme-text-disabled:#94979e;--theme-text-link:var(--brand-4);--theme-bg-primary:#f7f7f8;--theme-bg-secondary:#f1f2f3;--theme-bg-tertiary:#eaeaec;--theme-bg-elevated:#f1f2f3;--theme-bg-overlay:#12141780;--theme-surface-card:#fafafa;--theme-surface-card-hover:#f2f2f3;--theme-surface-card-border:#1214171f;--theme-surface-input:#fafafa;--theme-border-primary:#12141726;--theme-border-secondary:#1214161a;--theme-border-subtle:#1314160f;--theme-border-divider:#1314160a;--theme-shadow-sm:0 1px 2px #0000000a;--theme-shadow-md:0 4px 8px #0000000f;--theme-shadow-lg:0 8px 16px #00000014;--theme-shadow-modal:0 24px 80px #0003;--theme-status-success:#2d8661;--theme-status-success-text:#246b4d;--theme-status-warning:#ae7613;--theme-status-warning-text:#8a5d0f;--theme-status-error:#8a2828;--theme-status-error-text:#6f2020;--theme-status-info:#1f5cad;--theme-status-info-text:#184a8b;--theme-surface-info:#6ba14514;--theme-surface-info-border:#6ba14526}@media(prefers-color-scheme:light){[data-theme=auto]{--theme-text-primary:#16181d;--theme-text-secondary:#292c32;--theme-text-tertiary:#464a53;--theme-text-muted:#6c707a;--theme-text-disabled:#94979e;--theme-text-link:var(--brand-4);--theme-bg-primary:#f7f7f8;--theme-bg-secondary:#f1f2f3;--theme-bg-tertiary:#eaeaec;--theme-bg-elevated:#f1f2f3;--theme-bg-overlay:#12141780;--theme-surface-card:#fafafa;--theme-surface-card-hover:#f2f2f3;--theme-surface-card-border:#1214171f;--theme-surface-input:#fafafa;--theme-border-primary:#12141726;--theme-border-secondary:#1214161a;--theme-border-subtle:#1314160f;--theme-border-divider:#1314160a;--theme-shadow-sm:0 1px 2px #0000000a;--theme-shadow-md:0 4px 8px #0000000f;--theme-shadow-lg:0 8px 16px #00000014;--theme-shadow-modal:0 24px 80px #0003;--theme-status-success:#2d8661;--theme-status-success-text:#246b4d;--theme-status-warning:#ae7613;--theme-status-warning-text:#8a5d0f;--theme-status-error:#8a2828;--theme-status-error-text:#6f2020;--theme-status-info:#1f5cad;--theme-status-info-text:#184a8b;--theme-surface-info:#6ba14514;--theme-surface-info-border:#6ba14526}}*{transition-property:background-color,border-color,color,box-shadow;transition-duration:var(--duration-normal);transition-timing-function:var(--ease-in-out)}canvas,img,svg,video{transition:none}:root,[data-theme=dark],[data-theme=light],[data-theme=auto]{--text-primary:var(--theme-text-primary);--text-secondary:var(--theme-text-secondary);--text-tertiary:var(--theme-text-tertiary);--text-muted:var(--theme-text-muted);--text-disabled:var(--theme-text-disabled);--text-inverse:#fff;--text-link:var(--theme-text-link);--bg-primary:var(--theme-bg-primary);--bg-secondary:var(--theme-bg-secondary);--bg-tertiary:var(--theme-bg-tertiary);--bg-elevated:var(--theme-bg-elevated);--bg-overlay:var(--theme-bg-overlay);--surface-card:var(--theme-surface-card);--surface-card-hover:var(--theme-surface-card-hover);--surface-card-border:var(--theme-surface-card-border);--surface-secondary:var(--theme-bg-tertiary);--surface-input:var(--theme-surface-input);--border-primary:var(--theme-border-primary);--border-secondary:var(--theme-border-secondary);--border-subtle:var(--theme-border-subtle);--border-divider:var(--theme-border-divider);--border-outline:var(--theme-border-subtle);--border-focus:var(--brand-7);--accent-primary:var(--brand-7);--logo-stroke-brand:var(--brand-7);--logo-stroke-mono-light:#fff;--logo-stroke-mono-dark:var(--gray-12);--accent-primary-hover:var(--brand-8);--accent-secondary:var(--accent-7);--accent-secondary-hover:var(--accent-8);--shadow-sm:var(--theme-shadow-sm);--shadow-md:var(--theme-shadow-md);--shadow-lg:var(--theme-shadow-lg);--shadow-modal:var(--theme-shadow-modal);--surface-info:var(--theme-surface-info);--surface-info-border:var(--theme-surface-info-border);--status-success:var(--theme-status-success);--status-success-text:var(--theme-status-success-text);--status-warning:var(--theme-status-warning);--status-warning-text:var(--theme-status-warning-text);--status-error:var(--theme-status-error);--status-error-text:var(--theme-status-error-text);--status-info:var(--theme-status-info);--status-info-text:var(--theme-status-info-text)}:root{--z-0:0;--shadow-0:none;--z-1:10;--shadow-1:0 1px 3px #0000001f,0 1px 2px #00000014;--z-2:100;--shadow-2:0 4px 8px #00000029,0 2px 4px #0000001a;--z-3:300;--shadow-3:0 8px 24px #0003,0 4px 8px #0000001f;--z-4:600;--shadow-4:0 16px 48px #00000047,0 8px 16px #00000029;--z-5:1000;--shadow-5:0 24px 80px #0006,0 12px 32px #0000003d;--z-6:2000;--shadow-6:0 8px 24px #0003;--elevation-card:var(--shadow-0);--elevation-card-hover:var(--shadow-1);--elevation-dropdown:var(--shadow-2);--elevation-sticky:var(--shadow-3);--elevation-nav:var(--shadow-3);--elevation-map-controls:var(--shadow-2);--elevation-map-panel:var(--shadow-4);--elevation-sheet:var(--shadow-4);--elevation-modal:var(--shadow-5);--elevation-toast:var(--shadow-6);--elevation-tooltip:var(--shadow-6);--z-card:var(--z-0);--z-dropdown:var(--z-2);--z-sticky:var(--z-3);--z-nav:var(--z-3);--z-overlay:var(--z-4);--z-map-controls:var(--z-2);--z-map-panel:var(--z-4);--z-sheet-backdrop:550;--z-sheet:var(--z-4);--z-modal:var(--z-5);--z-modal-backdrop:999;--sheet-backdrop:#00000059;--z-toast:var(--z-6);--z-tooltip:var(--z-6);--opacity-tint:.02;--opacity-subtle:.04;--opacity-muted:.15;--opacity-medium:.4;--opacity-high:.7;--opacity-visible:.85;--opacity-overlay:.6;--opacity-disabled:.4;--radius-none:0;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:20px;--radius-2xl:24px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-input:var(--radius-md);--radius-card:var(--radius-lg);--radius-chip:var(--radius-full);--radius-badge:var(--radius-sm);--border-width-hairline:.5px;--border-width-thin:1px;--border-width-medium:2px;--modal-inset:8px;--modal-inset-top:12px;--modal-radius:var(--radius-xl);--modal-header-height:var(--vp-header);--modal-nav-height:var(--density-nav-height);--modal-bg:var(--bg-secondary);--modal-backdrop:#0009;--ring-focus:0 0 0 2px var(--brand-7);--ring-focus-offset:0 0 0 3px var(--brand-a6);--density-touch-min:36px;--density-font-hero:var(--font-size-2xl);--density-font-title:var(--font-size-lg);--density-font-subtitle:var(--font-size-base);--density-font-body:var(--font-size-sm);--density-font-caption:var(--font-size-map-xs);--density-leading:var(--line-height-snug);--density-padding-xs:2px;--density-padding-sm:4px;--density-padding-md:6px;--density-padding-lg:8px;--density-padding-xl:12px;--density-gap-xs:2px;--density-gap-sm:4px;--density-gap:6px;--density-gap-md:8px;--density-gap-lg:12px;--density-gap-xl:16px;--density-icon-sm:12px;--density-icon-md:16px;--density-icon-lg:20px;--density-input-height:36px;--density-button-height:36px;--density-row-height:36px;--density-nav-height:44px;--density-card-padding:8px;--density-radius-sm:4px;--density-radius-md:8px;--density-radius-lg:12px;--density-weight-normal:var(--font-weight-normal);--density-weight-label:var(--font-weight-medium);--density-weight-emphasis:var(--font-weight-semibold);--density-weight-strong:var(--font-weight-bold)}[data-density=comfortable]{--density-touch-min:44px;--density-font-hero:var(--font-size-4xl);--density-font-title:var(--font-size-xl);--density-font-subtitle:var(--font-size-lg);--density-font-body:var(--font-size-md);--density-font-caption:var(--font-size-sm);--density-leading:var(--line-height-normal);--density-padding-xs:4px;--density-padding-sm:8px;--density-padding-md:12px;--density-padding-lg:16px;--density-padding-xl:24px;--density-gap-xs:4px;--density-gap-sm:8px;--density-gap:12px;--density-gap-md:16px;--density-gap-lg:24px;--density-gap-xl:32px;--density-icon-sm:16px;--density-icon-md:20px;--density-icon-lg:24px;--density-input-height:44px;--density-button-height:44px;--density-row-height:52px;--density-nav-height:56px;--density-card-padding:16px;--density-radius-sm:8px;--density-radius-md:12px;--density-radius-lg:16px}.density-touch-target{min-width:var(--density-touch-min);min-height:var(--density-touch-min)}.density-card-padding{padding:var(--density-card-padding)}.density-gap{gap:var(--density-gap)}.density-gap-sm{gap:var(--density-gap-sm)}:root{--safe-area-top:max(0px,env(safe-area-inset-top));--safe-area-bottom:max(0px,env(safe-area-inset-bottom));--safe-area-left:max(0px,env(safe-area-inset-left));--safe-area-right:max(0px,env(safe-area-inset-right));--fixed-bottom:calc(var(--safe-area-bottom) + var(--density-padding-lg));--fixed-bottom-map:calc(var(--safe-area-bottom) + var(--density-padding-xs));--fixed-above-nav:calc(var(--vp-nav) + var(--safe-area-bottom) + var(--density-padding-md));--fixed-below-header:calc(var(--safe-area-top) + var(--vp-header))}@media(display-mode:standalone){:root{--size-header:44px}}.safe-area-top{padding-top:var(--safe-area-top)}.safe-area-bottom{padding-bottom:var(--safe-area-bottom)}.safe-area-x{padding-left:var(--safe-area-left);padding-right:var(--safe-area-right)}.safe-area-all{padding:var(--safe-area-top)var(--safe-area-right)var(--safe-area-bottom)var(--safe-area-left)}.fixed-bottom-safe{padding-bottom:max(var(--safe-area-bottom),var(--density-padding-md))}.fixed-top-safe{padding-top:max(var(--safe-area-top),var(--density-padding-sm))}:root{--vp-safe-top:var(--safe-area-top);--vp-safe-bottom:var(--safe-area-bottom);--vp-header:44px;--vp-nav:var(--density-nav-height);--vp-chrome:calc(var(--vp-safe-top) + var(--vp-header) + var(--vp-nav) + var(--vp-safe-bottom));--vp-content-budget:calc(100svh - var(--vp-chrome));--vp-score-hero:120px;--vp-map-panel:260px;--sheet-handle-clearance:28px;--content-max-xs:280px;--content-max-sm:360px;--content-max-md:480px;--content-max-lg:640px}@media(display-mode:standalone){:root{--vp-header:44px;--vp-nav:44px;--vp-score-hero:140px;--vp-map-panel:280px}}.app-viewport{min-height:100dvh;padding-top:var(--safe-area-top);background:var(--bg-primary);color:var(--text-primary);flex-direction:column;display:flex;overflow:hidden}.app-header{flex:0 0 var(--vp-header);padding:0 var(--density-padding-lg);z-index:var(--z-nav);align-items:center;display:flex}.app-content{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.app-nav{flex:0 0 var(--vp-nav);padding-bottom:max(0px,var(--safe-area-bottom));background:var(--bg-primary);border-top:var(--border-width-hairline)solid var(--border-subtle);z-index:var(--z-nav);grid-auto-columns:1fr;grid-auto-flow:column;align-items:center;display:grid}.app-content-fixed{flex-direction:column;flex:1;min-height:0;display:flex;overflow:hidden}.viewport-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-y:contain;flex:1 1 0;min-height:0;overflow-y:auto}.modal-backdrop{background:var(--modal-backdrop);z-index:var(--z-modal);position:fixed;inset:0}.modal-sheet{inset:var(--modal-inset-top)var(--modal-inset)var(--modal-inset)var(--modal-inset);background:var(--modal-bg);border-radius:var(--modal-radius)var(--modal-radius)var(--radius-md)var(--radius-md);box-shadow:var(--elevation-modal);z-index:var(--z-modal);flex-direction:column;display:flex;position:fixed;overflow:hidden}.modal-header{flex:0 0 var(--modal-header-height);padding:0 var(--density-padding-lg);border-bottom:var(--border-width-hairline)solid var(--border-subtle);align-items:center;display:flex}.modal-content{overscroll-behavior-y:contain;-webkit-overflow-scrolling:touch;flex:1;min-height:0;overflow-y:auto}.modal-nav{flex:0 0 var(--modal-nav-height);border-top:var(--border-width-hairline)solid var(--border-subtle);background:var(--modal-bg);grid-auto-columns:1fr;grid-auto-flow:column;align-items:center;display:grid}:root{--save-idle:var(--text-tertiary);--save-dirty:var(--accent-7);--save-saving:var(--brand-7);--save-saved:var(--go-7);--save-error:var(--skip-7);--save-debounce:.8s;--save-feedback-duration:2s;--save-keyboard-dismiss:.15s;--field-border-idle:var(--border-secondary);--field-border-focus:var(--brand-7);--field-border-error:var(--skip-7);--field-border-success:var(--go-7);--field-bg:var(--surface-input);--field-text:var(--text-primary);--field-placeholder:var(--text-muted);--field-label:var(--text-secondary);--field-helper:var(--text-tertiary);--field-error-text:var(--skip-9);--field-height:var(--density-input-height);--field-radius:var(--density-radius-md);--field-padding-x:var(--density-padding-lg);--form-gap:var(--density-gap-md);--form-section-gap:var(--density-gap-lg);--score-go:var(--go-7);--score-go-text:var(--go-9);--score-go-bg:var(--go-bg);--score-go-border:var(--go-border);--score-wait:var(--wait-7);--score-wait-text:var(--wait-9);--score-wait-bg:var(--wait-bg);--score-wait-border:var(--wait-border);--score-skip:var(--skip-7);--score-skip-text:var(--skip-9);--score-skip-bg:var(--skip-bg);--score-skip-border:var(--skip-border);--score-gauge-track:var(--gray-3);--score-gauge-size:120px;--score-gauge-sm:56px;--score-gauge-md:64px;--score-gauge-stroke:8px;--score-gauge-font:var(--font-size-4xl);--factor-positive:var(--go-7);--factor-negative:var(--skip-7);--factor-neutral:var(--gray-7);--factor-icon-size:var(--size-icon-md);--synergy-bg:var(--brand-a3);--synergy-text:var(--brand-9);--synergy-border:var(--brand-a5);--solunar-major-tint:#ebc24714;--solunar-minor-tint:#ebc2470a;--confidence-high:var(--go-7);--confidence-medium:var(--wait-7);--confidence-low:var(--skip-7);--score-user-ring:var(--brand-a5);--score-user-ring-width:2px}.skeleton{background:var(--surface-card);border-radius:var(--radius-sm);position:relative;overflow:hidden}.skeleton:after{content:"";background:linear-gradient(90deg,transparent 0%,var(--surface-secondary)50%,transparent 100%);animation:shimmer var(--duration-ambient)linear infinite;position:absolute;inset:0}.sheet-content{padding:0 var(--density-gap-md)}.sheet-section{animation:fade-slide-up var(--duration-normal)var(--ease-out)both}.sheet-content .category-card+.category-card{border-top:1px solid var(--border-subtle);padding-top:var(--density-gap-md)}.score-gauge[data-verdict=go] .score-gauge__ring{filter:drop-shadow(0 0 8px #26d96833)}:root{--map-bg:var(--gray-1);--map-pin-go:var(--go-7);--map-pin-wait:var(--wait-7);--map-pin-skip:var(--skip-7);--map-pin-size:32px;--map-pin-font:var(--font-size-map-sm);--map-pin-radius:var(--radius-full);--map-panel-bg:var(--gray-2);--map-panel-border:var(--gray-a7);--map-panel-radius:16px 16px 0 0;--map-control-bg:#14161ad9;--map-control-border:var(--gray-a5);--map-control-radius:8px;--heat-0:#b82e2e;--heat-25:#c65c2f;--heat-50:#da9b2f;--heat-75:#9fbf40;--heat-100:#37be86;--tide-line:var(--brand-7);--tide-fill:var(--brand-a3);--tide-high:var(--go-7);--tide-low:var(--skip-7);--tide-now:var(--brand-9);--map-dot-go:var(--score-go);--map-dot-wait:var(--score-wait);--map-dot-skip:var(--score-skip);--map-dot-loading:#666;--map-dot-glow:#2eb87e4d;--map-dot-text-go:#fff;--map-dot-text-wait:#1a1a1a;--map-dot-text-skip:#fff;--map-dot-border:#ffffff26;--map-dot-border-active:#fff9;--map-dot-radius-sm:14px;--map-dot-radius-lg:18px;--map-dot-hit-radius:22px;--map-dot-glow-radius-sm:20px;--map-dot-glow-radius-lg:26px;--map-dot-font-size-sm:11px;--map-dot-font-size-lg:13px;--sheet-bg:var(--bg-secondary);--sheet-handle:var(--border-secondary);--sheet-radius:var(--radius-xl);--sheet-shadow:var(--shadow-lg);--map-user-dot:#4387f4;--map-user-ring:#4387f433;--map-user-border:#fff;--map-user-dot-outer:22px;--map-user-dot-inner:12px;--sheet-handle-width:36px;--sheet-handle-height:4px;--sheet-snap-peek: calc(100svh - 120px) ;--sheet-snap-half:35svh;--sheet-height:85svh;--sheet-max-width:none;--sheet-inset-x:var(--density-gap-sm);--sheet-inset-bottom:var(--density-gap-sm);--sheet-border:1px solid var(--border-subtle);--map-solunar-major-height:4px;--map-solunar-minor-height:3px;--map-tap-pin:#4799eb;--map-tap-ring:#4799eb33;--map-toast-bg:var(--surface-card);--map-toast-shadow:var(--shadow-md);--map-coach-shadow:var(--shadow-lg);--map-pill-bg:var(--surface-card);--map-pill-shadow:var(--shadow-sm);--map-pill-dot:var(--text-tertiary);--map-wind-calm:#90bed5;--map-wind-moderate:#e0e0e0;--map-wind-fresh:#ef8539;--map-wind-strong:#d14775;--map-wave-low:#88cfdd;--map-wave-moderate:#5cb8d6;--map-wave-choppy:#2d9bd2;--map-wave-rough:#206bb6;--map-tide-rising:#478cd1;--map-tide-falling:#d79942;--map-tide-slack-high:#66ccb3;--map-tide-slack-low:#8a94a8;--map-sst-cold:#4273d7;--map-sst-cool:#3cb4dd;--map-sst-warm:#974dcb;--map-sst-hot:#d147a3;--map-sst-opacity:.35;--map-legend-gradient-w:48px;--map-legend-gradient-h:8px;--map-demo-bg:#da9b2f26;--map-demo-text:var(--score-wait);--map-demo-border:#da9b2f4d}[data-theme=light]{--map-bg:#f7f7f8;--map-control-bg:#f7f7f8eb;--map-control-border:#1214171a;--map-panel-bg:#f1f2f3;--map-panel-border:#1214171f;--map-dot-border:#0000001f;--map-dot-border-active:#00000040;--map-dot-glow:#29a3702e;--map-dot-loading:#acb0b9;--map-user-border:#505662;--map-wind-moderate:#575e6b;--map-wave-low:#4db6cb;--map-wave-moderate:#2e95b8;--map-wave-choppy:#2276a0;--map-wave-rough:#174d82;--map-sst-cold:#285abd;--map-sst-cool:#2091b6;--map-sst-warm:#7530a6;--map-sst-hot:#ab2b81;--map-demo-bg:#da9b2f1f;--map-demo-border:#da9b2f38}@media(prefers-color-scheme:light){[data-theme=auto]{--map-bg:#f7f7f8;--map-control-bg:#f7f7f8eb;--map-control-border:#1214171a;--map-panel-bg:#f1f2f3;--map-panel-border:#1214171f;--map-dot-border:#0000001f;--map-dot-border-active:#00000040;--map-dot-glow:#29a3702e;--map-dot-loading:#acb0b9;--map-user-border:#505662;--map-wind-moderate:#575e6b;--map-wave-low:#4db6cb;--map-wave-moderate:#2e95b8;--map-wave-choppy:#2276a0;--map-wave-rough:#174d82;--map-sst-cold:#285abd;--map-sst-cool:#2091b6;--map-sst-warm:#7530a6;--map-sst-hot:#ab2b81;--map-demo-bg:#da9b2f1f;--map-demo-border:#da9b2f38}}.legend-dot-wind-calm{background:var(--map-wind-calm)}.legend-dot-wind-moderate{background:var(--map-wind-moderate)}.legend-dot-wind-fresh{background:var(--map-wind-fresh)}.legend-dot-wind-strong{background:var(--map-wind-strong)}.legend-dot-wave-low{background:var(--map-wave-low)}.legend-dot-wave-moderate{background:var(--map-wave-moderate)}.legend-dot-wave-choppy{background:var(--map-wave-choppy)}.legend-dot-wave-rough{background:var(--map-wave-rough)}.legend-ring-tide-rising{border-color:var(--map-tide-rising);color:var(--map-tide-rising)}.legend-ring-tide-falling{border-color:var(--map-tide-falling);color:var(--map-tide-falling)}.legend-ring-tide-slack-high{border-color:var(--map-tide-slack-high);color:var(--map-tide-slack-high)}.legend-ring-tide-slack-low{border-color:var(--map-tide-slack-low);color:var(--map-tide-slack-low)}.legend-sst-gradient{background:linear-gradient(90deg,var(--map-sst-cold),var(--map-sst-cool),var(--map-sst-warm),var(--map-sst-hot))}.layer-toggle-btn:focus-visible,.layer-chip:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}@media(min-width:640px){:root{--sheet-max-width:520px}}*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab,red,red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}*,:after,:before,::backdrop{border-color:var(--border-subtle,currentcolor)}::file-selector-button{border-color:var(--border-subtle,currentcolor)}}@layer theme{:root,:host{--font-sans:var(--font-sans),-apple-system,system-ui,sans-serif;--font-mono:var(--font-mono),"SF Mono",monospace;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--radius-xs:.125rem;--radius-sm:.25rem;--radius-md:.375rem;--radius-lg:.5rem;--radius-xl:.75rem;--shadow-sm:0 1px 3px 0 #0000001a,0 1px 2px -1px #0000001a;--shadow-md:0 4px 6px -1px #0000001a,0 2px 4px -2px #0000001a;--shadow-lg:0 10px 15px -3px #0000001a,0 4px 6px -4px #0000001a;--ease-out:cubic-bezier(0,0,.2,1);--ease-in-out:cubic-bezier(.4,0,.2,1);--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4,0,.2,1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer components;@layer utilities{.collapse{visibility:collapse}.invisible{visibility:hidden}.visible{visibility:visible}.sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.absolute{position:absolute}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.container{width:100%}@media(min-width:40rem){.container{max-width:40rem}}@media(min-width:48rem){.container{max-width:48rem}}@media(min-width:64rem){.container{max-width:64rem}}@media(min-width:80rem){.container{max-width:80rem}}@media(min-width:96rem){.container{max-width:96rem}}.block{display:block}.flex{display:flex}.grid{display:grid}.hidden{display:none}.inline{display:inline}.inline-block{display:inline-block}.inline-flex{display:inline-flex}.table{display:table}.transform{transform:var(--tw-rotate-x,)var(--tw-rotate-y,)var(--tw-rotate-z,)var(--tw-skew-x,)var(--tw-skew-y,)}.resize{resize:both}.border{border-style:var(--tw-border-style);border-width:1px}.capitalize{text-transform:capitalize}.lowercase{text-transform:lowercase}.uppercase{text-transform:uppercase}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,)var(--tw-slashed-zero,)var(--tw-numeric-figure,)var(--tw-numeric-spacing,)var(--tw-numeric-fraction,)}.underline{text-decoration-line:underline}.shadow{--tw-shadow:0 1px 3px 0 var(--tw-shadow-color,#0000001a),0 1px 2px -1px var(--tw-shadow-color,#0000001a);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.ring{--tw-ring-shadow:var(--tw-ring-inset,)0 0 0 calc(1px + var(--tw-ring-offset-width))var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow),var(--tw-inset-ring-shadow),var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow)}.outline{outline-style:var(--tw-outline-style);outline-width:1px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,)var(--tw-brightness,)var(--tw-contrast,)var(--tw-grayscale,)var(--tw-hue-rotate,)var(--tw-invert,)var(--tw-saturate,)var(--tw-sepia,)var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}.ease-in-out{--tw-ease:var(--ease-in-out);transition-timing-function:var(--ease-in-out)}.focus\:not-sr-only:focus{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;position:static;overflow:visible}}html{touch-action:manipulation}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth;overscroll-behavior:none;overflow-x:hidden}body{font-family:var(--font-sans);font-size:var(--density-font-body);line-height:var(--density-leading);background:var(--bg-primary);color:var(--text-primary);overflow-wrap:break-word;word-break:break-word;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;flex-direction:column;min-height:100dvh;margin:0;display:flex;overflow-x:hidden}#root{flex-direction:column;flex:1;display:flex}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}button:active:not(:disabled),[role=button]:active:not(:disabled){transition:transform .1s;transform:scale(.97)}button,a,[role=button],[role=tab],[role=link],[role=menuitem],[role=radio],input[type=checkbox],input[type=radio],select,summary{min-height:var(--density-touch-min);min-width:var(--density-touch-min)}p a,li a,span a,td a{min-width:auto;min-height:auto}.score-sheet__handle{width:100%;height:var(--sheet-handle-clearance);cursor:pointer;background:0 0;border:none;flex-shrink:0;justify-content:center;align-items:center;min-width:auto;min-height:auto;padding:0;display:flex}.score-sheet__handle:after{content:"";border-radius:var(--radius-xs);background:var(--text-tertiary);width:36px;height:4px}input[type=text],input[type=number],input[type=tel],input[type=email],input[type=password],input[type=search],input[type=url],select,textarea{font-size:max(16px,var(--density-font-body))}input,textarea,select,[contenteditable=true]{-webkit-user-select:text!important;user-select:text!important}.caption,.text-xs,[style*="font-size: 11px"],[style*="font-size: 10px"]{font-weight:500}::-webkit-scrollbar{display:none}html{scrollbar-width:none}body{-ms-overflow-style:none}.prose{line-height:var(--line-height-relaxed);color:var(--text-secondary)}.prose>h1{color:var(--text-primary);font-size:var(--density-font-title);font-weight:var(--density-weight-emphasis);margin:0 0 var(--density-gap-xs);line-height:var(--line-height-tight)}.prose>h2{color:var(--text-primary);font-size:var(--density-font-subtitle);font-weight:var(--density-weight-emphasis);margin:var(--density-gap-xl)0 var(--density-gap-sm);line-height:var(--line-height-snug)}.prose>p.subtitle+h2{margin-top:var(--density-gap-lg)}.prose>h3{color:var(--text-primary);font-size:var(--density-font-body);font-weight:var(--density-weight-emphasis);margin:var(--density-gap-lg)0 var(--density-gap-xs);line-height:var(--line-height-snug)}.prose>p{margin:0 0 var(--density-gap-md)}.prose>ul,.prose>ol{margin:0 0 var(--density-gap-md);padding-left:1.5em}.prose>ul>li,.prose>ol>li{margin-bottom:var(--density-gap-xs)}.prose a:not([class]){color:var(--accent-primary);text-decoration:none}.prose strong{color:var(--text-primary);font-weight:var(--density-weight-emphasis)}@keyframes score-toast-enter{0%{opacity:0}to{opacity:1}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.sr-only{clip:rect(0,0,0,0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.focus\:not-sr-only:focus{top:var(--safe-area-top);width:auto;height:auto;padding:var(--density-padding-sm)var(--density-padding-lg);clip:auto;white-space:normal;z-index:var(--z-overlay);background:var(--bg-primary);color:var(--text-primary);font-size:var(--density-font-body);font-weight:var(--density-weight-emphasis);margin:0;position:fixed;left:0;overflow:visible}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-outline-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-ease{syntax:"*";inherits:false}.score-gauge{position:relative;width:var(--score-gauge-size);height:var(--score-gauge-size)}.score-gauge__svg{display:block;width:100%;height:100%}.score-gauge__number{position:absolute;z-index:var(--z-1);inset:0;display:flex;align-items:center;justify-content:center;font-size:var(--score-gauge-font);font-weight:700;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;color:var(--text-primary)}.category-card{display:flex;flex-direction:column;gap:var(--density-gap-xs);padding:var(--density-card-padding);background:var(--surface-card);border-radius:var(--density-radius-md);contain:content}.category-card__header{display:flex;justify-content:space-between;align-items:baseline}.category-card__name{font-size:var(--density-font-body);font-weight:500;color:var(--text-primary)}.category-card__score{font-size:var(--density-font-body);font-weight:600;font-variant-numeric:tabular-nums;font-feature-settings:"tnum" 1;color:var(--text-primary)}.category-card__bar{height:var(--category-bar-height, 6px);background:var(--surface-card-hover);border-radius:var(--radius-full);overflow:hidden}.category-card__fill{height:100%;width:var(--fill-width, 0%);background:var(--fill-color, var(--factor-neutral));border-radius:var(--radius-full);transition:width .3s var(--ease-decelerate);transition-delay:var(--reveal-delay, .8s)}.category-card__summary{font-size:var(--density-font-caption);color:var(--text-secondary);margin:0;line-height:1.5}.trip-input-container{position:sticky;top:0;z-index:var(--z-nav);background:var(--bg-primary);padding:var(--density-padding-lg);box-shadow:var(--elevation-sticky)}.trip-brief{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--density-gap-xs);font-size:var(--density-font-subtitle);color:var(--text-secondary);line-height:1.8}.trip-brief__word{color:var(--text-secondary)}.trip-brief__sep{color:var(--text-muted);margin:0}.trip-brief__value{display:inline-flex;align-items:center;gap:var(--density-gap-sm);color:var(--accent-primary);font-weight:var(--density-weight-emphasis);cursor:pointer;text-decoration-line:underline;text-decoration-style:dotted;text-decoration-color:var(--border-secondary);text-underline-offset:4px;padding:var(--density-padding-xs) var(--density-padding-md);border-radius:var(--radius-sm);transition:background var(--duration-fast) var(--ease-out),transform var(--duration-instant) var(--ease-out);-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;background:none;border:1px solid transparent;font-family:inherit;font-size:inherit;min-height:var(--density-touch-min)}.trip-brief__value:hover{background:var(--surface-info-border)}.trip-brief__value:active{transform:scale(.96)}.trip-brief__value--active{background:var(--surface-info);text-decoration-color:var(--accent-primary)}.trip-brief__caret{font-size:8px;opacity:var(--opacity-medium);transition:transform var(--duration-fast) var(--ease-out)}.trip-brief__value--active .trip-brief__caret{transform:rotate(180deg);opacity:var(--opacity-visible)}@keyframes chip-enter{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}@keyframes chip-exit{0%{opacity:1;transform:translateY(0);max-height:100px}to{opacity:0;transform:translateY(-6px);max-height:0}}.trip-chips{display:flex;gap:var(--density-gap);padding:var(--density-padding-lg) 0 var(--density-padding-sm);flex-wrap:wrap;overflow:hidden}.trip-chips--expanded{animation:chip-enter var(--duration-fast) var(--ease-out)}.trip-chips--collapsing{animation:chip-exit var(--duration-fast) var(--ease-out);pointer-events:none}.trip-chip{height:var(--density-touch-min);padding:0 var(--density-padding-md);border-radius:var(--radius-chip);font-size:var(--density-font-body);font-weight:var(--density-weight-label);font-family:var(--font-sans);border:1px solid var(--border-secondary);background:var(--surface-card);color:var(--text-secondary);cursor:pointer;transition:all var(--duration-fast) var(--ease-out);display:flex;align-items:center;-webkit-tap-highlight-color:transparent}.trip-chip:active:not(:disabled){transform:scale(.95)}.trip-chip--selected{background:var(--accent-primary);color:var(--bg-primary);border-color:var(--accent-primary);font-weight:var(--density-weight-emphasis)}.trip-chip--disabled{opacity:var(--opacity-disabled);cursor:not-allowed;pointer-events:none}.trip-chip:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}.trip-math{font-size:var(--density-font-body);color:var(--text-tertiary);padding-top:var(--density-gap-sm);display:flex;align-items:center;gap:var(--density-gap-sm)}.trip-math__dot{width:var(--density-gap-sm);height:var(--density-gap-sm);border-radius:var(--radius-full);background:var(--score-go);flex-shrink:0}.trip-math--warning{color:var(--score-wait-text)}.trip-math--warning .trip-math__dot{background:var(--score-wait)}.trip-math--error{color:var(--score-skip-text)}.trip-math--error .trip-math__dot{background:var(--score-skip)}.trip-math__dismiss{margin-left:auto;background:none;border:none;color:currentColor;cursor:pointer;font-size:inherit;padding:var(--density-padding-xs);min-height:var(--density-touch-min);min-width:var(--density-touch-min);display:flex;align-items:center;justify-content:center}.trip-result{margin-top:var(--density-gap-md);padding:var(--density-padding-md);background:var(--surface-card);border-radius:var(--radius-md);border:1px solid var(--border-subtle)}.trip-result__head{display:flex;justify-content:space-between;align-items:baseline}.trip-result__spot{font-size:var(--density-font-body);color:var(--text-secondary);font-weight:var(--density-weight-label)}.trip-result__score{font-size:var(--density-font-title);font-weight:var(--density-weight-strong);font-family:var(--font-mono)}.trip-result__score--go{color:var(--score-go-text)}.trip-result__score--wait{color:var(--score-wait-text)}.trip-result__detail{font-size:var(--density-font-body);color:var(--text-tertiary);margin-top:var(--density-gap-sm);line-height:1.5}.trip-result__detail strong{color:var(--text-secondary);font-weight:var(--density-weight-label)}.trip-result__bars{display:flex;gap:var(--density-gap-xs);height:var(--density-touch-min);align-items:flex-end;margin-top:var(--density-gap-md)}.trip-result__bar{flex:1;border-radius:2px 2px 0 0;min-height:var(--density-gap-sm);transition:height var(--duration-slow) var(--ease-out)}.trip-result__window{display:flex;gap:var(--density-gap-xs);margin-top:var(--density-gap-xs)}.trip-result__window-bar{flex:1;height:2px;border-radius:0}@media(max-width:360px){.trip-brief{font-size:var(--density-font-body)}.trip-chip{height:var(--density-touch-min);font-size:var(--density-font-caption);padding:0 var(--density-padding-lg)}}@media(prefers-reduced-motion:reduce){.trip-chips--expanded,.trip-chips--collapsing{animation:none}.trip-brief__caret,.trip-result__bar{transition:none}}@media(prefers-contrast:high){.trip-brief__value{border:1px solid currentColor}.trip-brief__value--active{background:var(--accent-primary);color:var(--bg-primary)}}.session-history{display:flex;flex-direction:column;gap:var(--density-gap-md);padding:var(--density-padding-md) 0}.session-history-header{margin:0;font-size:var(--density-font-caption);font-weight:var(--density-weight-emphasis);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:.05em}.session-history-list{display:flex;flex-direction:column;gap:var(--density-gap-sm)}.session-history-row{display:flex;flex-direction:column;gap:var(--density-gap-xs);padding:var(--density-padding-md);background:var(--surface-card);border-radius:var(--radius-md)}.session-history-row-header{display:flex;justify-content:space-between;align-items:baseline;gap:var(--density-gap-sm)}.session-history-spot{font-size:var(--density-font-body);font-weight:var(--density-weight-emphasis);color:var(--text-primary)}.session-history-time{font-size:var(--density-font-caption);color:var(--text-tertiary)}.session-history-row-detail{display:flex;align-items:center;gap:var(--density-gap-md);font-size:var(--density-font-caption);color:var(--text-secondary)}.session-history-predicted,.session-history-rating{display:flex;align-items:center;gap:var(--density-gap-xs)}.session-history-verdict{display:inline-block;padding:var(--density-padding-xs) var(--density-padding-sm);border-radius:var(--radius-sm);font-size:var(--density-font-caption);font-weight:var(--density-weight-strong);letter-spacing:.03em}.session-history-verdict--go{background:var(--score-go-bg);color:var(--score-go)}.session-history-verdict--wait{background:var(--score-wait-bg);color:var(--score-wait)}.session-history-verdict--skip{background:var(--score-skip-bg);color:var(--score-skip-text)}.session-history-accuracy{display:inline-flex;align-items:center;justify-content:center;width:var(--density-icon-md);height:var(--density-icon-md);border-radius:50%;font-size:var(--density-font-caption);font-weight:var(--density-weight-strong);margin-left:var(--density-gap-xs)}.session-history-accuracy--match{background:var(--score-go-bg);color:var(--score-go)}.session-history-accuracy--miss{background:color-mix(in srgb,var(--status-error) 15%,transparent);color:var(--status-error-text)}.session-history-skeleton{min-height:var(--density-row-height);background:var(--surface-card);border-radius:var(--radius-md);animation:session-history-pulse var(--duration-ambient) ease-in-out infinite}@keyframes session-history-pulse{0%,to{opacity:1}50%{opacity:.5}}.session-history-empty{padding:var(--density-padding-lg);text-align:center;font-size:var(--density-font-caption);color:var(--text-tertiary);margin:0}.session-history-see-all{display:flex;align-items:center;justify-content:center;gap:var(--density-gap-sm);padding:var(--density-padding-sm) var(--density-padding-md);margin-top:var(--density-gap-xs);background:transparent;border:1px solid var(--border-secondary);border-radius:var(--radius-md);font-size:var(--density-font-caption);font-weight:var(--density-weight-emphasis);color:var(--text-tertiary);cursor:not-allowed;min-height:var(--density-touch-min)}.session-history-see-all:disabled{opacity:var(--opacity-disabled)}.session-history-pro-label{font-size:var(--density-font-caption);padding:var(--density-padding-xs) var(--density-padding-sm);background:var(--accent-bg);color:var(--accent);border-radius:var(--radius-sm);font-weight:var(--density-weight-emphasis);text-transform:uppercase;letter-spacing:.05em}
