@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-BT1H-PT_.woff2) format("woff2"),url(/assets/inter-latin-400-normal-Cdi8t5Mu.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-kWhwEdDH.woff2) format("woff2"),url(/assets/inter-latin-500-normal-D4I8BKCx.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-B2Ssfs8e.woff2) format("woff2"),url(/assets/inter-latin-600-normal-Dbvh0wvx.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-C2zfFY7I.woff2) format("woff2"),url(/assets/inter-latin-700-normal-CHFldGL2.woff) format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/playfair-display-latin-600-normal-D_Ajas6U.woff2) format("woff2"),url(/assets/playfair-display-latin-600-normal-YnYjMeWp.woff) format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/playfair-display-latin-700-normal-DPRbgzwy.woff2) format("woff2"),url(/assets/playfair-display-latin-700-normal-BESMCQxd.woff) format("woff")}:root{--navy: #0F2747;--navy-2: #163A63;--sun: #E67E22;--sun-2: #F2B24D;--gold: #D9A441;--bg: #F6F3EE;--bg-2: #EEE8DF;--surface: #FFFFFF;--surface-2: #FBF9F5;--ink: #172033;--ink-2: #39435A;--muted: #5C667A;--line: #E6DFD5;--line-2: #D8CFC2;--lagoon: #1D4F86;--lagoon-soft: #E8EEF6;--focus: #F2B24D;--btn-primary: linear-gradient(180deg, #D46E1F 0%, #B4520F 100%);--btn-primary-hover: linear-gradient(180deg, #DE7724 0%, #A84B0C 100%);--ok: #1E7A4F;--ok-bg: #E4F3EA;--warn: #8F5400;--warn-bg: #FCEFD6;--danger: #B3261E;--danger-bg: #FBE7E5;--info: #1D4F86;--info-bg: #E6EEF8;--sim: #6E3FA3;--sim-bg: #F1E9FA;--accent: #A8500E;--accent-bg: #FCEBDB;--space-1: 4px;--space-2: 8px;--space-3: 12px;--space-4: 16px;--space-5: 20px;--space-6: 24px;--space-8: 32px;--space-10: 40px;--radius-xs: 8px;--radius-sm: 12px;--radius: 18px;--radius-lg: 24px;--radius-pill: 999px;--shadow-xs: 0 1px 2px rgba(15, 39, 71, .06);--shadow: 0 1px 2px rgba(15, 39, 71, .05), 0 10px 28px -16px rgba(15, 39, 71, .22);--shadow-lg: 0 28px 60px -28px rgba(15, 39, 71, .5);--shadow-btn: 0 8px 18px -10px rgba(180, 82, 15, .75);--font: "Inter", ui-sans-serif, system-ui, -apple-system, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--display: "Playfair Display", "Iowan Old Style", Georgia, serif;--fs-xs: .75rem;--fs-sm: .875rem;--fs-md: 1rem;--fs-lg: 1.125rem;--fs-xl: 1.375rem;--fs-2xl: 1.75rem;--fs-3xl: clamp(1.9rem, 4.2vw, 2.75rem);--ease: cubic-bezier(.2, .7, .2, 1);--t-fast: .12s;--t: .2s;--t-slow: .4s;color-scheme:light}:root[data-theme=dark]{--bg: #0A1628;--bg-2: #0F1F36;--surface: #12243F;--surface-2: #172C4C;--ink: #EEF2F8;--ink-2: #C9D2E1;--muted: #A0ADC2;--line: #22395C;--line-2: #2E4A73;--lagoon: #8DB6EC;--lagoon-soft: #18325A;--ok: #6FD6A3;--ok-bg: #123A2B;--warn: #FFC56E;--warn-bg: #3B2C11;--danger: #FF8E82;--danger-bg: #44211E;--info: #9CC2F5;--info-bg: #17304F;--sim: #D3AEFF;--sim-bg: #32244A;--accent: #FFAE76;--accent-bg: #45281A;--shadow: 0 1px 2px rgba(0,0,0,.3), 0 12px 30px -14px rgba(0,0,0,.6);color-scheme:dark}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font:16px/1.5 var(--font);-webkit-font-smoothing:antialiased}h1,h2,h3{line-height:1.2;margin:0 0 .35em;letter-spacing:-.01em}h1{font-family:var(--display);font-weight:600;font-size:clamp(1.7rem,4vw,2.4rem)}h2{font-family:var(--display);font-weight:600;font-size:clamp(1.35rem,3vw,1.7rem)}h3{font-size:1.05rem;font-weight:650}p{margin:0 0 .6em}a{color:var(--lagoon)}small,.small{font-size:.86rem}.muted{color:var(--muted)}.block{display:block}.grow{flex:1;min-width:0}.cap:first-letter{text-transform:uppercase}.num{font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.danger-text{color:var(--danger)}.warn-text{color:var(--warn)}:focus-visible{outline:3px solid var(--sun-2);outline-offset:2px;border-radius:6px}.skip{position:absolute;left:-999px;top:8px;background:var(--navy);color:#fff;padding:8px 14px;border-radius:8px;z-index:100}.skip:focus{left:8px}.topbar{position:sticky;top:0;z-index:30;background:color-mix(in srgb,var(--navy) 94%,transparent);-webkit-backdrop-filter:saturate(140%) blur(12px);backdrop-filter:saturate(140%) blur(12px);color:#fff}.topbar-inner{max-width:1180px;margin:0 auto;display:flex;align-items:center;gap:16px;padding:10px 16px}.brand{display:flex;align-items:center;gap:10px;color:#fff;text-decoration:none}.brand-mark{width:32px;height:32px;border-radius:10px;background:linear-gradient(180deg,#1c3d6e,var(--navy));position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff1f}.brand-mark span{position:absolute;left:7px;top:9px;width:18px;height:18px;border-radius:50%;background:linear-gradient(135deg,var(--sun),var(--sun-2))}.brand-mark:after{content:"";position:absolute;left:4px;right:4px;bottom:7px;height:3px;border-radius:3px;background:#5fd1c4}.brand-name{font-size:1.05rem;letter-spacing:.01em}.brand-name b{font-weight:700;margin-left:1px;color:var(--sun-2)}.topnav{display:none;border-top:1px solid rgba(255,255,255,.08)}.topnav-inner{max-width:1180px;margin:0 auto;padding:6px 16px;display:flex;gap:4px;overflow-x:auto;scrollbar-width:none}.topnav a{display:inline-flex;align-items:center;gap:6px;white-space:nowrap;color:#ffffffc7;text-decoration:none;padding:8px 12px;border-radius:999px;font-weight:550;font-size:.95rem}.topnav a:hover{color:#fff;background:#ffffff14}.topnav a.active{color:var(--navy);background:#fff}.topbar-actions{margin-left:auto;display:flex;align-items:center;gap:8px;min-width:0}.trip-switch select{max-width:160px;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:999px;padding:7px 12px;font:inherit;font-size:.88rem}.trip-switch option{color:#000}.sos{display:inline-flex;align-items:center;gap:6px;background:#c2410c;color:#fff;text-decoration:none;font-weight:700;padding:8px 12px;border-radius:999px;min-height:40px}.offline-bar{display:flex;gap:8px;align-items:center;justify-content:center;background:var(--warn-bg);color:var(--warn);font-size:.88rem;padding:6px 16px}.main{max-width:1180px;margin:0 auto;padding:20px 16px 110px;outline:none}.footer{max-width:1180px;margin:0 auto;padding:0 16px 110px;color:var(--muted);font-size:.85rem}.bottomnav{position:fixed;bottom:0;left:0;right:0;z-index:30;display:grid;grid-template-columns:repeat(5,1fr);background:var(--surface);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));box-shadow:0 -8px 30px -16px #00000040}.bottomnav a{display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--muted);text-decoration:none;font-size:.72rem;font-weight:600;padding:6px 2px;border-radius:12px;min-height:48px;justify-content:center}.bottomnav a.active{color:var(--navy);background:var(--lagoon-soft)}:root[data-theme=dark] .bottomnav a.active{color:#fff}@media (min-width: 900px){.topnav{display:flex}.bottomnav{display:none}.main{padding-bottom:48px}.footer{padding-bottom:40px}.trip-switch select{max-width:220px}}@media (max-width: 700px){.trip-menu{display:none}}.trip-menu .top-btn{max-width:240px;gap:6px;padding:0 12px}.trip-menu .top-btn>svg:last-child{transform:rotate(90deg);flex:none}.trip-menu-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.88rem;font-weight:600}.trip-panel ul{list-style:none;margin:6px 0 12px;padding:0;display:flex;flex-direction:column;gap:2px;max-height:40vh;overflow:auto;position:relative}.trip-opt{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:0;border-radius:10px;padding:9px 10px;font:inherit;color:var(--ink);cursor:pointer;min-height:40px}.trip-opt:hover{background:var(--surface-2, rgba(0,0,0,.04))}.trip-opt.on{font-weight:700;background:var(--lagoon-soft)}.trip-radio{width:16px;height:16px;border-radius:50%;border:2px solid var(--line-2);flex:none}.trip-opt.on .trip-radio{border-color:var(--orange, #E67E22);box-shadow:inset 0 0 0 3px var(--surface),inset 0 0 0 8px var(--orange, #E67E22)}.trip-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;border-top:1px solid var(--line);padding-top:12px}.trip-actions .btn{justify-content:center}@media (max-width: 560px){.sos span{display:none}.sos{padding:8px 10px}.wordmark{font-size:1.02rem}.version-tag{font-size:.62rem;padding:1px 5px}.brand{gap:8px}}@media (max-width: 430px){.topbar-actions .prefs-top{display:none}.logo-mark{width:32px;height:32px}}.footer-prefs{margin:var(--space-3) 0}.footer-prefs .top-btn{color:var(--ink);border-color:var(--line-2);background:var(--surface)}.page{display:flex;flex-direction:column;gap:18px}.page.narrow{max-width:820px;margin:0 auto}.stack{display:flex;flex-direction:column;gap:14px}.row{display:flex;align-items:center;gap:10px}.row.wrap{flex-wrap:wrap}.row.between{justify-content:space-between}.row.end{justify-content:flex-end}.gap-xs{gap:6px}.grid-2,.grid-3{display:grid;gap:14px;grid-template-columns:1fr}.grid-2.tight{gap:10px}@media (min-width: 720px){.grid-2{grid-template-columns:1fr 1fr}}@media (min-width: 980px){.grid-3{grid-template-columns:1.1fr 1fr .9fr}}.section-title{display:flex;justify-content:space-between;gap:12px;align-items:end}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:.72rem;font-weight:700;color:var(--muted);margin:0 0 4px}.eyebrow.light{color:#ffffffb3;display:flex;gap:8px;align-items:center}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:18px;box-shadow:var(--shadow);min-width:0}.card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;margin-bottom:10px}.card-head h3{display:flex;align-items:center;gap:8px;margin:0}.muted-card{border-style:dashed;background:var(--surface-2);box-shadow:none}.hero{position:relative;overflow:hidden;border-radius:24px;color:#fff;padding:26px 22px;display:flex;flex-wrap:wrap;gap:20px;align-items:center;justify-content:space-between;background:radial-gradient(120% 140% at 100% 0%,#24508c 0%,transparent 55%),linear-gradient(160deg,var(--navy) 0%,#0d2a4f 60%,#123b63 100%);box-shadow:var(--shadow-lg)}.hero-glow{position:absolute;right:-80px;bottom:-120px;width:320px;height:320px;border-radius:50%;background:radial-gradient(circle,rgba(255,122,77,.55),rgba(244,169,59,.25) 45%,transparent 70%);filter:blur(4px)}.hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:5px;background:linear-gradient(90deg,var(--lagoon),#5fd1c4,var(--sun-2),var(--sun))}.hero-content{position:relative;flex:1 1 360px}.hero h1{color:#fff;margin-bottom:10px}.hero-meta{display:flex;flex-wrap:wrap;gap:8px 16px;color:#ffffffd9;font-size:.92rem}.hero-meta span{display:inline-flex;align-items:center;gap:6px}.hero-question{margin-top:12px;font-family:var(--display);font-style:italic;font-size:1.08rem;color:#ffd7b8}.hero-stats{position:relative;display:flex;gap:18px;align-items:center}.countdown{display:flex;flex-direction:column;align-items:center;background:#ffffff14;border:1px solid rgba(255,255,255,.14);border-radius:16px;padding:12px 16px}.countdown strong{font-size:1.9rem;line-height:1;font-family:var(--display)}.countdown small{color:#ffffffbf}.ring{position:relative}.ring svg{transform:rotate(-90deg)}.ring-bg{fill:none;stroke:#ffffff26;stroke-width:8}.ring-fg{fill:none;stroke:var(--sun-2);stroke-width:8;stroke-linecap:round;transition:stroke-dashoffset .6s ease}.ring-label{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.ring-label strong{font-size:1.15rem}.ring-label small{font-size:.7rem;color:#ffffffbf}.next-action{display:flex;gap:16px;align-items:flex-start;flex-wrap:wrap;border-left:5px solid var(--sun)}.next-icon{width:40px;height:40px;border-radius:12px;background:var(--accent-bg);color:var(--accent);display:grid;place-items:center;flex:none}.reason{display:flex;gap:6px;align-items:flex-start;font-size:.85rem;color:var(--ink-2);background:var(--surface-2);border:1px dashed var(--line-2);padding:6px 10px;border-radius:10px}.reason svg{flex:none;margin-top:2px}.badge{display:inline-flex;align-items:center;gap:4px;padding:2px 9px;border-radius:999px;font-size:.74rem;font-weight:650;line-height:1.6;white-space:nowrap;background:var(--bg-2);color:var(--ink-2)}.badge-ok{background:var(--ok-bg);color:var(--ok)}.badge-warn{background:var(--warn-bg);color:var(--warn)}.badge-danger{background:var(--danger-bg);color:var(--danger)}.badge-info{background:var(--info-bg);color:var(--info)}.badge-sim{background:var(--sim-bg);color:var(--sim);border:1px dashed currentColor}.badge-accent{background:var(--accent-bg);color:var(--accent)}.chip{border:1px solid var(--line-2);background:var(--surface);color:var(--ink-2);padding:7px 12px;border-radius:999px;font:inherit;font-size:.85rem;font-weight:600;cursor:pointer;min-height:38px;display:inline-flex;align-items:center;gap:6px}.chip.on{background:var(--navy);color:#fff;border-color:var(--navy)}:root[data-theme=dark] .chip.on{background:var(--sun-2);color:var(--navy);border-color:var(--sun-2)}.chip:disabled{opacity:.4;cursor:not-allowed}.chips{display:flex;flex-wrap:wrap;gap:8px}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-weight:650;border-radius:12px;padding:10px 16px;min-height:44px;cursor:pointer;border:1px solid transparent;text-decoration:none;transition:transform .05s,background .15s}.btn:active{transform:translateY(1px)}.btn.sm{min-height:38px;padding:7px 12px;font-size:.88rem;border-radius:10px}.btn.primary{background:linear-gradient(180deg,#d4501f,#b23a09);color:#fff;box-shadow:0 6px 16px -8px #ff7a4dcc}.btn.primary:hover{filter:brightness(1.05)}.btn.ghost{background:var(--surface);border-color:var(--line-2);color:var(--ink)}.btn.ghost:hover{background:var(--surface-2)}.btn.danger{background:transparent;color:var(--danger);border-color:color-mix(in srgb,var(--danger) 35%,transparent)}.btn:disabled{opacity:.5;cursor:not-allowed}.icon-btn{border:0;background:transparent;color:var(--muted);padding:8px;border-radius:10px;cursor:pointer;min-width:40px;min-height:40px;display:inline-grid;place-items:center}.icon-btn:hover{background:var(--bg-2);color:var(--ink)}.fav.on{color:var(--sun)}.fav.on svg path{fill:currentColor}.linklike{background:none;border:0;padding:0;font:inherit;color:inherit;text-align:left;cursor:pointer;display:flex;gap:10px;align-items:flex-start;width:100%}button.linklike.block{color:var(--lagoon);padding:4px 0;font-size:.9rem}.tabs{display:flex;gap:4px;overflow-x:auto;padding:4px;background:var(--bg-2);border-radius:14px;scrollbar-width:none;max-width:100%}.tabs::-webkit-scrollbar{display:none}.tab{border:0;background:transparent;font:inherit;font-weight:650;font-size:.9rem;color:var(--ink-2);padding:9px 14px;border-radius:10px;cursor:pointer;white-space:nowrap;min-height:40px}.tab.active{background:var(--surface);color:var(--ink);box-shadow:var(--shadow)}.tab-count{margin-left:6px;font-size:.75rem;color:var(--muted)}.trip-toolbar{display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;align-items:center}.toolbar-actions{display:flex;gap:6px;overflow-x:auto;max-width:100%;scrollbar-width:none}.toolbar-actions .btn{white-space:nowrap;flex:none}@media (max-width: 560px){.trip-toolbar{flex-direction:column;align-items:stretch}.toolbar-actions .btn{min-height:36px;padding:6px 10px;font-size:.82rem}}.field{display:flex;flex-direction:column;gap:4px;min-width:0}input,select,textarea{font:inherit;color:var(--ink);background:var(--surface);border:1px solid var(--line-2);border-radius:10px;padding:9px 11px;min-height:44px;width:100%;min-width:0}textarea{min-height:120px;resize:vertical;line-height:1.45}input:focus,select:focus,textarea:focus{border-color:var(--lagoon);box-shadow:0 0 0 3px color-mix(in srgb,var(--lagoon) 25%,transparent);outline:none}.hint{color:var(--muted);font-size:.76rem}.check{display:flex;gap:10px;align-items:flex-start;cursor:pointer;padding:6px 0;min-height:40px}.check input{width:20px;height:20px;min-height:0;margin:2px 0 0;accent-color:var(--lagoon);flex:none}.grid-form{display:grid;gap:12px;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));align-items:end;margin:6px 0 10px}fieldset{border:1px solid var(--line);border-radius:var(--radius-sm);padding:12px 14px;margin:0;min-width:0}fieldset.traveler,.leg-editor{background:var(--surface-2);display:flex;flex-direction:column;gap:6px}.filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:12px 14px}.filters .field{min-width:150px;flex:1 1 150px}.title-input{font-weight:650;font-size:1.02rem;border-color:transparent;background:transparent;padding:2px 4px;min-height:0;margin-left:-4px}.title-input:hover{border-color:var(--line-2)}.kv{margin:6px 0 10px;display:grid;gap:6px}.kv>div{display:flex;justify-content:space-between;gap:12px;border-bottom:1px dashed var(--line);padding-bottom:5px;font-size:.9rem}.kv dt{color:var(--muted)}.kv dd{margin:0;text-align:right;font-weight:550}.kv .em{font-size:1rem}.kv .em dd{color:var(--accent);font-weight:750}.mini-list{list-style:none;margin:0 0 10px;padding:0;display:flex;flex-direction:column;gap:4px}.mini-list li{display:flex;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--line);font-size:.92rem}.mini-list li:last-child{border-bottom:0}.dot{width:10px;height:10px;border-radius:50%;flex:none;margin-top:6px;background:var(--line-2)}.dot-confirm{background:var(--sun-2)}.dot-doing{background:var(--info)}.dot-done{background:var(--ok)}.progress{height:8px;background:var(--bg-2);border-radius:99px;overflow:hidden;margin:10px 0 4px}.progress-bar{height:100%;background:linear-gradient(90deg,var(--lagoon),#5fd1c4);border-radius:99px;transition:width .4s}.bars{display:flex;flex-direction:column;gap:8px;margin:12px 0}.bar-row{display:grid;grid-template-columns:minmax(90px,1fr) 2fr auto;gap:10px;align-items:center;font-size:.86rem}.bar{position:relative;height:10px;background:var(--bg-2);border-radius:99px;overflow:hidden}.bar div{position:absolute;left:0;top:0;bottom:0;background:color-mix(in srgb,var(--sun-2) 55%,transparent);border-radius:99px}.timeline{list-style:none;padding:0;margin:0 0 10px;display:flex;flex-direction:column;gap:10px}.timeline li{border-left:3px solid var(--lagoon);padding-left:10px;font-size:.9rem}.timeline strong{text-transform:capitalize}.legs{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,240px),1fr))}.leg{background:var(--surface-2);border:1px solid var(--line);border-radius:12px;padding:12px}.tile-link a{display:flex;gap:12px;align-items:center;color:inherit;text-decoration:none}.tile-link svg{color:var(--sun);flex:none}.empty{display:flex;flex-direction:column;align-items:center;gap:6px;text-align:center;padding:24px;color:var(--muted)}.empty strong{color:var(--ink)}.callout{display:flex;gap:10px;padding:12px 14px;border-radius:14px;font-size:.92rem;border:1px solid transparent}.callout svg{flex:none;margin-top:2px}.callout strong{display:block;margin-bottom:2px}.callout ul{margin:4px 0 0;padding-left:18px}.callout-info{background:var(--info-bg);color:var(--info)}.callout-info>div{color:var(--ink)}.callout-warn{background:var(--warn-bg);border-color:color-mix(in srgb,var(--warn) 25%,transparent)}.callout-warn svg,.callout-warn strong{color:var(--warn)}.callout-danger{background:var(--danger-bg)}.callout-danger svg,.callout-danger strong{color:var(--danger)}.callout-ok{background:var(--ok-bg)}.callout-ok svg,.callout-ok strong{color:var(--ok)}.sources{display:flex;flex-wrap:wrap;gap:6px 12px;margin:6px 0}.source-link{display:inline-flex;align-items:center;gap:4px;font-size:.82rem;font-weight:600;color:var(--lagoon);text-decoration:none;padding:2px 0}.source-link:hover{text-decoration:underline}.checklist-head{display:flex;flex-wrap:wrap;gap:14px;align-items:flex-end}.phase{display:flex;flex-direction:column;gap:8px}.phase-head{display:flex;align-items:baseline;justify-content:space-between;padding:6px 2px 0;border-bottom:2px solid var(--line)}.phase-head h3{font-family:var(--display);font-size:1.15rem}.task{background:var(--surface);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);overflow:hidden}.task.status-confirm{border-left:4px solid var(--sun-2)}.task.status-done{opacity:.82}.task.status-done .task-title{text-decoration:line-through;text-decoration-color:var(--muted)}.task-summary{width:100%;display:flex;gap:12px;align-items:flex-start;text-align:left;background:none;border:0;font:inherit;color:inherit;padding:14px;cursor:pointer;min-height:56px}.task-check{width:24px;height:24px;border-radius:8px;border:2px solid var(--line-2);flex:none;display:grid;place-items:center;margin-top:1px}.task-check.on{background:var(--ok);border-color:var(--ok);color:#fff}.task-title{display:block;font-weight:620}.task-badges{display:flex;flex-wrap:wrap;gap:5px;margin-top:6px}.chev{flex:none;color:var(--muted);transition:transform .15s;margin-top:2px}.task.open .chev{transform:rotate(90deg)}.task-body{padding:0 14px 14px 50px;display:flex;flex-direction:column;gap:10px}@media (max-width: 560px){.task-body{padding-left:14px}}.status-buttons{display:flex;flex-wrap:wrap;gap:6px}.links input{max-width:240px}.history ul{margin:6px 0 0;padding-left:18px;font-size:.86rem}.history summary,details summary{cursor:pointer;font-weight:600;font-size:.9rem;padding:4px 0}.compare-grid{display:grid;gap:14px;grid-template-columns:repeat(auto-fill,minmax(min(100%,300px),1fr))}.compare-grid.three{grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));margin-bottom:10px}.compare-card{display:flex;flex-direction:column;gap:6px}.compare-card.best,.scenario.best{border-color:var(--ok);box-shadow:0 0 0 2px color-mix(in srgb,var(--ok) 30%,transparent),var(--shadow)}.scenario{border:1px solid var(--line);border-radius:14px;padding:14px;background:var(--surface-2);display:flex;flex-direction:column;gap:4px;align-items:flex-start}.big-number{font-family:var(--display);font-size:1.6rem;font-weight:600;display:flex;flex-wrap:wrap;align-items:baseline;gap:8px}.big-number small{font-family:var(--font);font-size:.85rem}.gaps{list-style:none;padding:0;margin:4px 0;display:flex;flex-direction:column;gap:4px;font-size:.85rem;color:var(--warn)}.gaps li{display:flex;gap:6px;align-items:flex-start}.gaps svg{flex:none;margin-top:2px}.group-title{display:flex;align-items:center;gap:10px;margin-top:6px}.req-row{border-top:1px dashed var(--line);padding-top:8px}.lounge-plan{border-top:1px solid var(--line);padding-top:12px;margin-top:12px}.credit-card{background:linear-gradient(135deg,#0b1f3a,#1d4677 60%,#2f6ea8);color:#fff;border:0;min-height:150px;display:flex;flex-direction:column;justify-content:flex-end}.credit-card .eyebrow{color:#ffffffb3}.credit-card .source-link{color:#9fe7dd}.directory{display:grid;gap:10px}.dir-item{display:flex;gap:14px;align-items:center;flex-wrap:wrap;padding:14px 16px}.dir-item h3{margin-bottom:2px}.dir-actions{display:flex;gap:6px;flex-wrap:wrap}.stat-grid{display:grid;gap:10px;grid-template-columns:repeat(auto-fill,minmax(min(100%,160px),1fr))}.stat{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px;display:flex;flex-direction:column;gap:2px;box-shadow:var(--shadow)}.stat strong{font-size:1.15rem}.stat.em{background:linear-gradient(160deg,var(--navy),var(--navy-2));color:#fff;border:0}.stat.em small{color:#ffffffbf}.table-wrap{overflow-x:auto;border-radius:12px}.table{width:100%;border-collapse:collapse;font-size:.9rem;min-width:560px}.table th{text-align:left;font-size:.76rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:8px;border-bottom:2px solid var(--line)}.table td{padding:10px 8px;border-bottom:1px solid var(--line);vertical-align:top}.sheet-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#050c188c;z-index:50;display:flex;align-items:flex-end;justify-content:center}.sheet{background:var(--surface);width:min(760px,100%);max-height:92vh;overflow:auto;border-radius:22px 22px 0 0;padding:18px;box-shadow:var(--shadow-lg)}@media (min-width: 760px){.sheet-backdrop{align-items:center}.sheet{border-radius:22px}}.day-items{list-style:none;padding:0;margin:0 0 8px;display:flex;flex-direction:column;gap:6px}.day-items li,.day-add{display:grid;grid-template-columns:108px 1fr auto auto;gap:8px;align-items:center}.day-add{grid-template-columns:108px 1fr 130px auto;margin:8px 0}@media (max-width: 560px){.day-items li{grid-template-columns:96px 1fr auto}.day-items li .badge{display:none}.day-add{grid-template-columns:96px 1fr}}.alts{margin-top:6px}.wizard-head{display:flex;flex-direction:column;gap:6px}.stepper{list-style:none;padding:0;margin:10px 0 0;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none}.stepper button{display:flex;align-items:center;gap:8px;background:var(--surface);border:1px solid var(--line);border-radius:999px;padding:6px 12px 6px 6px;font:inherit;font-size:.85rem;color:var(--ink-2);cursor:pointer;white-space:nowrap;min-height:40px}.stepper span{width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:var(--bg-2);font-weight:700;font-size:.8rem}.stepper em{font-style:normal}.stepper .current button{border-color:var(--sun);color:var(--ink);font-weight:650}.stepper .current span{background:var(--sun);color:#fff}.stepper .done span{background:var(--lagoon);color:#fff}.wizard-nav{display:flex;gap:10px;justify-content:space-between;flex-wrap:wrap;position:sticky;bottom:76px;background:color-mix(in srgb,var(--bg) 85%,transparent);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);padding:10px 0}@media (min-width: 900px){.wizard-nav{bottom:0}}.sos-big{display:flex;gap:16px;align-items:center;background:linear-gradient(135deg,#b8321a,#c2410c);color:#fff;text-decoration:none;border-radius:20px;padding:18px 20px;box-shadow:var(--shadow-lg)}.sos-big strong{display:block;font-size:1.3rem}.print-page{max-width:860px;margin:0 auto;padding:24px;background:#fff;color:#000}.print-page table{width:100%;border-collapse:collapse;font-size:12px;margin-bottom:10px}.print-page td{border-bottom:1px solid #ddd;padding:4px}.print-bar{display:flex;gap:10px;justify-content:space-between;margin-bottom:16px}@media print{.no-print,.topbar,.bottomnav,.footer{display:none!important}body{background:#fff}.print-page{padding:0}}@media (prefers-reduced-motion: reduce){*{transition:none!important}}.account-btn{display:inline-flex;align-items:center;gap:6px;color:#fff;text-decoration:none;font-weight:650;font-size:.88rem;padding:8px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.25);min-height:40px}.account-btn.on{background:#5fd1c42e;border-color:#5fd1c480}@media (max-width: 520px){.account-btn span{display:none}}.toast{position:sticky;top:72px;z-index:20;display:flex;gap:10px;align-items:center;justify-content:space-between;background:var(--navy);color:#fff;border-radius:14px;padding:10px 14px;margin-bottom:14px;box-shadow:var(--shadow-lg);font-size:.92rem}.toast .icon-btn{color:#fff}.import-card{border:2px solid var(--lagoon);margin-bottom:16px}.break{word-break:break-all;display:block;margin:6px 0;font-size:.82rem}textarea.invalid{border-color:var(--danger)}textarea#ed-json{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem}.editorial-grid{display:grid;gap:14px;grid-template-columns:1fr;align-items:start}@media (min-width: 980px){.editorial-grid{grid-template-columns:1fr 1.1fr}.editor-panel{position:sticky;top:80px;max-height:calc(100vh - 100px);overflow:auto}}.editorial-row{text-align:left;font:inherit;color:inherit;cursor:pointer;width:100%}.editorial-row.selected{border-color:var(--sun);box-shadow:0 0 0 2px color-mix(in srgb,var(--sun) 30%,transparent)}.suggest{display:flex;flex-direction:column;gap:6px;width:100%;min-width:240px}.region-map{margin:0;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:10px;box-shadow:var(--shadow)}.region-map svg{width:100%;height:auto;display:block}.rm-bg{fill:color-mix(in srgb,var(--lagoon) 8%,var(--surface))}.rm-road{fill:none;stroke:var(--line-2);stroke-width:1.6;stroke-linecap:round}.rm-road.thin{stroke-width:.9}.rm-road.dashed{stroke-dasharray:2 2}.rm-road-label{font-size:3px;fill:var(--muted);font-weight:700}.rm-airport{fill:var(--navy-2);stroke:#fff;stroke-width:.6}:root[data-theme=dark] .rm-airport{fill:#5fd1c4}.rm-small{font-size:2.6px;fill:var(--muted)}g[aria-hidden] .rm-small{text-anchor:middle}.rm-node{cursor:pointer;outline:none}.rm-dot{fill:var(--sun);stroke:var(--surface);stroke-width:.8;transition:r .2s}.rm-node.empty .rm-dot{fill:var(--line-2)}.rm-node.on .rm-dot{fill:var(--lagoon)}.rm-node:focus-visible .rm-dot{stroke:var(--sun-2);stroke-width:1.4}.rm-count{font-size:2.8px;fill:#fff;font-weight:800;text-anchor:middle}.rm-label{font-size:3.1px;font-weight:700;fill:var(--ink);paint-order:stroke;stroke:var(--surface);stroke-width:.9px}.explore-top{display:grid;gap:14px;grid-template-columns:1fr}@media (min-width: 900px){.explore-top{grid-template-columns:1.2fr 1fr;align-items:start}}.version-tag{font-size:.7rem;font-weight:700;letter-spacing:.02em;color:#9fe7dd;background:#5fd1c424;border:1px solid rgba(95,209,196,.35);border-radius:999px;padding:1px 7px;white-space:nowrap}.topbar-actions{gap:6px}.top-btn{position:relative;display:inline-flex;align-items:center;gap:5px;min-height:40px;min-width:40px;justify-content:center;padding:6px 10px;border-radius:999px;border:1px solid rgba(255,255,255,.22);background:#ffffff0f;color:#fff;font:inherit;font-weight:700;font-size:.8rem;cursor:pointer}.top-btn:hover{background:#ffffff24}.popover{position:relative}.popover-panel{position:absolute;top:calc(100% + 8px);z-index:60;width:min(340px,calc(100vw - 24px));background:var(--surface);color:var(--ink);border:1px solid var(--line);border-radius:16px;box-shadow:var(--shadow-lg);padding:14px}.popover-panel.right{right:0}.popover-panel.left{left:0}@media (max-width: 560px){.popover-panel{position:fixed;left:12px;right:12px;top:64px;width:auto}}.seg{display:grid;gap:6px;margin-bottom:12px}.seg button{display:flex;align-items:center;gap:8px;text-align:left;font:inherit;font-size:.92rem;padding:9px 12px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface-2);color:var(--ink);cursor:pointer;min-height:42px}.seg button.on{border-color:var(--lagoon);background:var(--lagoon-soft);font-weight:700}.bell-count{position:absolute;top:-4px;right:-4px;min-width:18px;height:18px;border-radius:9px;background:#c2410c;color:#fff;font-size:.68rem;font-weight:800;display:grid;place-items:center;padding:0 4px;border:2px solid var(--navy)}.alerts-panel ul{list-style:none;margin:8px 0;padding:0;display:flex;flex-direction:column;gap:2px;max-height:50vh;overflow:auto}.alert-item .linklike{padding:8px;border-radius:10px}.alert-item .linklike:hover{background:var(--surface-2)}.alert-item.read{opacity:.75}.sev-dot-danger{background:var(--danger)}.sev-dot-warn{background:var(--warn)}.sev-dot-info{background:var(--info)}.small-link{font-size:.82rem;color:var(--lagoon);width:auto}.btn.full{width:100%}.account-group{display:inline-flex;gap:6px;align-items:center}.account-btn span{max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.logout-btn{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:7px 12px;border-radius:999px;border:1px solid rgba(255,255,255,.35);background:transparent;color:#fff;font:inherit;font-weight:700;font-size:.85rem;cursor:pointer}.logout-btn:hover{background:#ffffff1f}@media (max-width: 420px){.lang-code{display:none}}.immigration{--c: var(--lagoon)}.imm-block{border-left:6px solid var(--c);padding:16px 18px}.imm-title{display:flex;align-items:center;gap:10px;font-family:var(--font);font-size:1.05rem;font-weight:800;color:var(--c);margin:0 0 8px;text-transform:uppercase;letter-spacing:.04em}.imm-orange{--c: #c2410c}.imm-blue{--c: #1f5aa6}.imm-green{--c: #157a52}.imm-purple{--c: #7a3fb0}.imm-teal{--c: #0e7a72}.imm-gold{--c: #8a6100}.imm-cyan{--c: #0b6d8f}.imm-red{--c: #b4322a}.imm-gray{--c: #4b5872}:root[data-theme=dark] .imm-orange{--c: #ffa37a}:root[data-theme=dark] .imm-blue{--c: #8bb8ff}:root[data-theme=dark] .imm-green{--c: #5fd39c}:root[data-theme=dark] .imm-purple{--c: #d1a6ff}:root[data-theme=dark] .imm-teal{--c: #4fc7bb}:root[data-theme=dark] .imm-gold{--c: #f4c46b}:root[data-theme=dark] .imm-cyan{--c: #6fd0f2}:root[data-theme=dark] .imm-red{--c: #ff8a7d}:root[data-theme=dark] .imm-gray{--c: #b6c2d6}.imm-block{background:color-mix(in srgb,var(--c) 6%,var(--surface))}.imm-rows{margin:0;display:flex;flex-direction:column}.imm-row{display:grid;grid-template-columns:minmax(130px,38%) 1fr;gap:12px;padding:8px 0;border-bottom:1px dashed color-mix(in srgb,var(--c) 30%,var(--line))}.imm-row:last-child{border-bottom:0}.imm-row .imm-k{color:var(--ink-2);font-weight:600;font-size:.9rem}.imm-row .imm-v{margin:0;font-weight:650;font-size:1rem}@media (max-width: 520px){.imm-row{grid-template-columns:1fr;gap:2px}}.missing{color:var(--warn);font-weight:700;font-style:italic}.flight,.stay{padding:6px 0 4px;border-top:1px solid color-mix(in srgb,var(--c) 25%,var(--line));margin-top:6px}.flight-title{font-weight:800;margin:4px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.pill{font-size:.72rem;font-weight:800;color:#fff;background:var(--c);border-radius:999px;padding:2px 8px}.imm-edit{background:var(--surface);border:1px dashed var(--line-2);border-radius:12px;padding:10px}.agent-mode .imm-row .imm-v{font-size:1.15rem}.agent-mode .imm-row .imm-k{font-size:1rem}.agent-head{text-align:center;padding:8px 0 4px}.agent-head h1{font-family:var(--font);font-weight:800}@media print{.imm-block{break-inside:avoid;box-shadow:none}.no-print{display:none!important}}.alert-card{border-left:5px solid var(--info)}.alert-card.sev-danger{border-left-color:var(--danger)}.alert-card.sev-warn{border-left-color:var(--warn)}.alert-card.read{opacity:.85}:root[data-theme=dark] .pill{color:#0a1424}body{font-family:var(--font);color:var(--ink);background:var(--bg);font-feature-settings:"cv11","ss01"}h1,h2,.display{font-family:var(--display);font-weight:700;letter-spacing:-.012em}h1{font-size:var(--fs-3xl)}h2{font-size:var(--fs-2xl)}h3{font-family:var(--font);font-size:var(--fs-lg);font-weight:700;letter-spacing:-.005em}a{color:var(--lagoon);text-underline-offset:3px}:focus-visible{outline:3px solid var(--focus);outline-offset:2px}.topbar{background:linear-gradient(180deg,#102B4F 0%,var(--navy) 100%);box-shadow:0 1px #ffffff0f,0 10px 30px -20px #0009;-webkit-backdrop-filter:none;backdrop-filter:none}.topbar-inner{max-width:1320px;flex-wrap:wrap;gap:var(--space-3) var(--space-4);padding:var(--space-3) var(--space-5)}.brand{gap:var(--space-3)}.logo-mark{flex:none;border-radius:10px;box-shadow:0 4px 14px -6px #0009}.wordmark{font-family:var(--font);font-weight:600;font-size:1.22rem;letter-spacing:-.015em;color:#fff}.wordmark b{font-weight:800;color:var(--sun-2);margin-left:0}.topnav{display:none;border:0;order:2;flex:1;justify-content:center;gap:var(--space-1)}.topnav a{padding:9px 14px;font-size:.92rem;font-weight:600;color:#ffffffd1;border-radius:var(--radius-pill);transition:background var(--t) var(--ease),color var(--t) var(--ease)}.topnav a:hover{background:#ffffff1a;color:#fff}.topnav a.active{background:#fff;color:var(--navy);box-shadow:var(--shadow-xs)}.topbar-actions{order:3;margin-left:auto}@media (min-width: 900px){.topnav{display:flex}.bottomnav{display:none}}.nav-short{display:none}@media (min-width: 1180px) and (max-width: 1499px){.topnav .nav-long{display:none}.topnav .nav-short{display:inline}.topnav a{padding:9px 12px}}@media (min-width: 900px) and (max-width: 1179px){.topnav{order:4;flex-basis:100%;justify-content:flex-start;border-top:1px solid rgba(255,255,255,.08);padding-top:var(--space-2);overflow-x:auto;scrollbar-width:none}}.top-btn,.account-btn,.logout-btn,.trip-switch select{border-color:#ffffff38;background:#ffffff12;transition:background var(--t) var(--ease)}.top-btn:hover,.account-btn:hover,.logout-btn:hover{background:#ffffff29}.account-btn.on{background:#f2b24d24;border-color:#f2b24d73}.sos{background:linear-gradient(180deg,#d04b2f,#b3261e);box-shadow:0 8px 18px -10px #b3261ee6}.version-tag{color:#ffe2b0;background:#f2b24d24;border-color:#f2b24d61}.offline-bar{border-top:1px solid rgba(0,0,0,.08)}.main{max-width:1320px;padding:var(--space-6) var(--space-5) 120px}.footer{max-width:1320px;padding:0 var(--space-5) 120px}@media (min-width: 900px){.main{padding-bottom:56px}.footer{padding-bottom:40px}}@media (max-width: 560px){.main{padding:var(--space-4) var(--space-4) 110px}.footer{padding-left:var(--space-4);padding-right:var(--space-4)}}.page{gap:var(--space-5)}.section-title h2{margin-bottom:var(--space-1)}.eyebrow{font-size:.72rem;letter-spacing:.1em;color:var(--muted)}.card{border-radius:var(--radius);border:1px solid var(--line);box-shadow:var(--shadow);padding:var(--space-5);background:var(--surface)}.card-head h3{gap:var(--space-2)}.card-head .icon-chip,.icon-chip{width:40px;height:40px;border-radius:var(--radius-sm);display:inline-grid;place-items:center;background:var(--accent-bg);color:var(--accent);flex:none}.btn{border-radius:var(--radius-sm);font-weight:650;letter-spacing:.005em;transition:transform var(--t-fast) var(--ease),box-shadow var(--t) var(--ease),background var(--t) var(--ease),border-color var(--t) var(--ease)}.btn.primary{background:var(--btn-primary);color:#fff;box-shadow:var(--shadow-btn);border:0}.btn.primary:hover:not(:disabled){background:var(--btn-primary-hover);filter:none}.btn.ghost,.btn.secondary{background:var(--surface);color:var(--ink);border:1px solid var(--line-2);box-shadow:var(--shadow-xs)}.btn.ghost:hover:not(:disabled),.btn.secondary:hover:not(:disabled){border-color:var(--navy-2);background:var(--surface-2)}.btn.navy{background:var(--navy);color:#fff;border:0}.btn.navy:hover:not(:disabled){background:var(--navy-2)}.btn.tertiary{background:transparent;border:0;color:var(--lagoon);padding-inline:var(--space-2);min-height:40px}.btn.tertiary:hover:not(:disabled){text-decoration:underline}.btn.danger,.btn.destructive{background:var(--surface);color:var(--danger);border:1px solid color-mix(in srgb,var(--danger) 40%,transparent)}.btn.danger:hover:not(:disabled),.btn.destructive:hover:not(:disabled){background:var(--danger-bg)}.btn:disabled{opacity:.55;cursor:not-allowed;box-shadow:none}.btn[aria-busy=true]{position:relative;color:transparent!important;pointer-events:none}.btn[aria-busy=true]:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;margin:auto;width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.45);border-top-color:#fff;animation:spin .8s linear infinite}.btn.ghost[aria-busy=true]:after,.btn.secondary[aria-busy=true]:after{border-color:var(--line-2);border-top-color:var(--navy-2)}@keyframes spin{to{transform:rotate(360deg)}}.btn.lg{min-height:52px;font-size:1.02rem;padding:12px 22px}.btn.block{width:100%}input,select,textarea{border-radius:var(--radius-sm);border-color:var(--line-2);background:var(--surface);min-height:46px;transition:border-color var(--t) var(--ease),box-shadow var(--t) var(--ease)}input:hover,select:hover,textarea:hover{border-color:color-mix(in srgb,var(--navy-2) 35%,var(--line-2))}input:focus,select:focus,textarea:focus{border-color:var(--sun);box-shadow:0 0 0 3px color-mix(in srgb,var(--sun-2) 35%,transparent)}input[aria-invalid=true]{border-color:var(--danger)}.field label,legend{font-size:.82rem;font-weight:650;color:var(--ink-2)}.input-wrap{position:relative;display:flex;align-items:center}.input-wrap>svg:first-child{position:absolute;left:12px;color:var(--muted);pointer-events:none}.input-wrap>input{padding-left:40px}.input-wrap .reveal{position:absolute;right:6px}.input-wrap>input.has-reveal{padding-right:48px}.field-error{color:var(--danger);font-size:.8rem;font-weight:600}.tabs{background:var(--surface);border:1px solid var(--line);box-shadow:var(--shadow-xs);padding:5px;border-radius:var(--radius)}.tab{border-radius:var(--radius-sm);color:var(--ink-2);transition:background var(--t) var(--ease),color var(--t) var(--ease)}.tab:hover{background:var(--surface-2)}.tab.active{background:var(--navy);color:#fff;box-shadow:0 6px 14px -8px #0f2747b3}:root[data-theme=dark] .tab.active{background:var(--sun-2);color:var(--navy)}.badge{font-weight:700;letter-spacing:.01em;padding:3px 10px}.progress{height:8px;background:var(--bg-2)}.progress-bar{background:linear-gradient(90deg,var(--sun),var(--sun-2))}.bar div{background:color-mix(in srgb,var(--sun-2) 60%,transparent)}.bar .paid{background:var(--sun)}.ring-fg{stroke:var(--sun-2)}.hero{min-height:220px;border-radius:var(--radius-lg);padding:var(--space-8) var(--space-8) var(--space-6);background:var(--navy);isolation:isolate}.hero-art{position:absolute;inset:0 0 0 auto;width:min(78%,900px);height:100%;z-index:-1;-webkit-mask-image:linear-gradient(90deg,transparent 0%,#000 38%);mask-image:linear-gradient(90deg,transparent 0%,#000 38%)}.hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(90deg,#0f2747fa,#0f2747db 45%,#0f274733)}.hero-glow{display:none}.hero:after{height:4px;background:linear-gradient(90deg,var(--sun),var(--sun-2),transparent)}.hero h1{font-size:var(--fs-3xl);text-shadow:0 2px 18px rgba(0,0,0,.35)}.hero-meta{font-size:.95rem;gap:var(--space-2) var(--space-5)}.hero-question{color:#ffddb0;font-family:var(--display);font-style:italic;font-weight:600}.countdown{background:#0f27478c;border-color:#ffffff38;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);padding:var(--space-4) var(--space-5);border-radius:var(--radius);min-width:150px}.countdown strong{font-size:2.4rem;font-family:var(--display)}.ring-label strong{font-size:1.3rem}@media (max-width: 640px){.hero{padding:var(--space-6) var(--space-5) var(--space-5)}.hero-art{width:100%;opacity:.55;-webkit-mask-image:linear-gradient(180deg,transparent 0%,#000 60%);mask-image:linear-gradient(180deg,transparent 0%,#000 60%)}.hero:before{background:linear-gradient(180deg,#0f2747f5,#0f2747d1 60%,#0f27478c)}.hero-stats{width:100%;justify-content:flex-start}}.next-action{border-left:0;position:relative;overflow:hidden;padding-left:calc(var(--space-5) + 6px)}.next-action:before{content:"";position:absolute;left:0;top:0;bottom:0;width:6px;background:linear-gradient(180deg,var(--sun),var(--sun-2))}.next-icon{width:48px;height:48px;border-radius:var(--radius-sm);background:var(--accent-bg);color:var(--accent)}.next-meta{display:flex;flex-wrap:wrap;gap:var(--space-2);align-items:center;margin:var(--space-2) 0}.kpi{display:flex;flex-direction:column;gap:2px}.kpi strong{font-size:1.35rem;font-variant-numeric:tabular-nums}.kv .em dd{color:var(--accent)}.day-chip{display:inline-grid;place-items:center;min-width:52px;padding:3px 8px;border-radius:var(--radius-xs);background:var(--accent-bg);color:var(--accent);font-weight:800;font-size:.78rem}.timeline.days{gap:0}.timeline.days li{border-left:0;padding:var(--space-2) 0;display:flex;gap:var(--space-3);align-items:baseline;border-bottom:1px solid var(--line)}.timeline.days li:last-child{border-bottom:0}.card-foot{margin-top:auto;padding-top:var(--space-3)}.grid-3>.card{display:flex;flex-direction:column}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:80;background:#0812228c;display:grid;place-items:center;padding:var(--space-4);animation:fade var(--t) var(--ease)}.modal{width:min(460px,100%);background:var(--surface);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);padding:var(--space-6);border:1px solid var(--line)}.modal h2{font-size:var(--fs-xl)}@keyframes fade{0%{opacity:0}}.spinner{width:22px;height:22px;border-radius:50%;border:3px solid var(--line-2);border-top-color:var(--sun);animation:spin .8s linear infinite;display:inline-block}.skeleton{background:linear-gradient(90deg,var(--bg-2) 0%,var(--surface-2) 50%,var(--bg-2) 100%);background-size:200% 100%;animation:shimmer 1.2s var(--ease) infinite;border-radius:var(--radius-xs);min-height:14px}@keyframes shimmer{to{background-position:-200% 0}}.tip{position:relative;display:inline-flex}.tip [role=tooltip]{position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%);background:var(--navy);color:#fff;font-size:.78rem;padding:6px 10px;border-radius:var(--radius-xs);width:max-content;max-width:240px;opacity:0;pointer-events:none;transition:opacity var(--t) var(--ease);z-index:40}.tip:hover [role=tooltip],.tip:focus-within [role=tooltip]{opacity:1}.bottomnav{border-top:1px solid var(--line);background:color-mix(in srgb,var(--surface) 96%,transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.bottomnav a{color:var(--muted);font-weight:650}.bottomnav a.active{background:var(--navy);color:#fff}:root[data-theme=dark] .bottomnav a.active{background:var(--sun-2);color:var(--navy)}@media (prefers-reduced-motion: reduce){.btn[aria-busy=true]:after,.spinner,.skeleton{animation:none}}.clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.next-details summary{font-size:.85rem;color:var(--lagoon)}.countdown svg{opacity:.8;margin-bottom:2px}.hero-content{max-width:640px}.btn.sm.tertiary{min-height:36px}.stat-glass{background:#0f27478c;border:1px solid rgba(255,255,255,.22);border-radius:var(--radius);padding:var(--space-3);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}@media (max-width: 640px){.next-action{flex-direction:column}.next-action>.btn{width:100%;order:3}}.dash{display:flex;flex-direction:column;gap:var(--space-5)}.auth-layout{display:grid;gap:var(--space-5);grid-template-columns:1fr;align-items:stretch;max-width:1180px;margin:0 auto;width:100%}@media (min-width: 900px){.auth-layout{grid-template-columns:1.1fr .9fr;min-height:620px}}.auth-visual{position:relative;overflow:hidden;isolation:isolate;border-radius:var(--radius-lg);background:var(--navy);color:#fff;padding:var(--space-8);display:flex;flex-direction:column;gap:var(--space-5);box-shadow:var(--shadow-lg)}.auth-visual:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;background:linear-gradient(180deg,#0f2747f5,#0f2747c7 48%,#0f274740)}.auth-art{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;z-index:-2}.auth-brand{display:flex;align-items:center;gap:var(--space-3)}.auth-brand .wordmark{font-size:1.6rem;display:block}.auth-brand small{display:block;color:#ffffffbf;font-size:.82rem;letter-spacing:.02em}.auth-visual h1{color:#fff;font-size:clamp(2rem,4vw,3rem);max-width:12ch;line-height:1.08;margin:var(--space-4) 0 0}.auth-points{list-style:none;padding:0;margin:0;display:grid;gap:var(--space-2);font-weight:600}.auth-points li{display:flex;gap:var(--space-2);align-items:center}.auth-points svg{color:var(--sun-2);flex:none;background:#f2b24d29;border-radius:50%;padding:3px;width:22px;height:22px}.auth-card{display:flex;flex-direction:column;justify-content:center;gap:var(--space-4);padding:var(--space-8);border-radius:var(--radius-lg)}@media (max-width: 640px){.auth-visual,.auth-card{padding:var(--space-6) var(--space-5)}.auth-visual{min-height:0}.auth-points{display:none}}.auth-form{display:flex;flex-direction:column;gap:var(--space-4)}.auth-form h2{margin:0 0 4px}.divider{display:flex;align-items:center;gap:var(--space-3);color:var(--muted);font-size:.85rem}.divider:before,.divider:after{content:"";flex:1;height:1px;background:var(--line)}.center{text-align:center}.btn.inline{display:inline;padding:0;min-height:0;vertical-align:baseline}.align-end{align-items:flex-end}.account-hero{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center}.account-hero h1{margin:0}.avatar{width:64px;height:64px;border-radius:50%;display:grid;place-items:center;font-family:var(--display);font-size:1.8rem;font-weight:700;color:#fff;background:linear-gradient(135deg,var(--sun),var(--sun-2));box-shadow:var(--shadow);flex:none}.account-layout{display:grid;gap:var(--space-5);grid-template-columns:1fr;align-items:start}@media (min-width: 900px){.account-layout{grid-template-columns:250px 1fr}.account-nav{position:sticky;top:140px}}.account-nav{display:flex;flex-direction:column;gap:4px;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:var(--space-2);box-shadow:var(--shadow-xs)}@media (max-width: 899px){.account-nav{flex-direction:row;overflow-x:auto;scrollbar-width:none}.account-nav a{white-space:nowrap}}.account-nav a{display:flex;gap:var(--space-3);align-items:center;padding:10px 12px;border-radius:var(--radius-sm);color:var(--ink-2);font-weight:600;text-decoration:none;min-height:44px}.account-nav a:hover{background:var(--accent-bg);color:var(--accent)}.account-section{scroll-margin-top:150px}.danger-zone{display:flex;flex-wrap:wrap;gap:var(--space-4);align-items:center;margin-top:var(--space-5);padding:var(--space-4);border:1px solid color-mix(in srgb,var(--danger) 30%,var(--line));border-radius:var(--radius-sm);background:color-mix(in srgb,var(--danger-bg) 45%,var(--surface))}.footer-prefs .popover-panel{top:auto;bottom:calc(100% + 8px);left:0;right:auto}@media (max-width: 560px){.footer-prefs .popover-panel{position:absolute;bottom:calc(100% + 8px);top:auto;left:0;right:auto;width:min(340px,calc(100vw - 32px))}}@media (max-width: 1499px){.account-btn.on span{display:none}}.table-wrap,.tabs,.toolbar-actions,.account-nav,.topnav{position:relative}.card-head{flex-wrap:wrap}.card-head>*{min-width:0}.card-head>.row{flex-wrap:wrap;justify-content:flex-end}.badge{white-space:normal;text-align:center}@media (max-width: 430px){.topbar-inner{padding:10px 12px;gap:8px;flex-wrap:nowrap}.topbar-actions{gap:4px;flex:none}.top-btn,.account-btn,.logout-btn,.sos{min-height:38px;min-width:38px;padding:6px 8px}.brand{min-width:0}.logout-btn span{display:none}}@media (max-width: 389px){.wordmark{font-size:.9rem}.logo-mark{width:28px;height:28px}.brand{gap:6px}.version-tag{font-size:.58rem;padding:1px 4px}.top-btn,.account-btn,.logout-btn,.sos{min-width:36px;min-height:36px;padding:5px 7px}}.sound-options{gap:6px}.sound-row{display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}input[type=range]{min-height:32px;padding:0;accent-color:var(--sun);border:0;box-shadow:none}.bottomnav{grid-template-columns:repeat(6,1fr)}.bottomnav a{font-size:.68rem;padding:6px 1px}.h-sub{font-size:var(--fs-xl);margin:0}.alerts-panel .row .btn{flex:1}.update-banner{position:sticky;top:76px;z-index:25;display:flex;align-items:center;gap:12px;flex-wrap:wrap;background:var(--surface);color:var(--ink);border:1px solid color-mix(in srgb,#E67E22 45%,var(--line));border-left:4px solid #E67E22;border-radius:14px;padding:12px 14px;margin-bottom:16px;box-shadow:var(--shadow-lg)}.update-banner.done{border-left-color:var(--ok, #1f8a5b);border-color:var(--line)}.update-banner small{color:var(--muted);display:block;margin-top:2px}.update-ico{display:grid;place-items:center;width:34px;height:34px;border-radius:50%;background:color-mix(in srgb,#F2B24D 22%,transparent);color:#b45309;flex:none}:root[data-theme=dark] .update-ico{color:#f2b24d}.update-banner.done .update-ico{background:var(--ok-bg, rgba(31,138,91,.12));color:var(--ok, #1f8a5b)}.update-actions{display:flex;gap:8px;flex-wrap:wrap}.update-banner .grow{min-width:180px}@media (max-width: 560px){.update-banner{top:64px}.update-actions{width:100%}.update-actions .btn{flex:1}}.explore-body{display:flex;flex-direction:column;gap:18px}.explore-map{min-width:0}.gmap{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);padding:14px;display:flex;flex-direction:column;gap:10px;box-shadow:var(--shadow-sm, none)}.gmap-head{display:flex;justify-content:space-between;align-items:flex-start;gap:10px;flex-wrap:wrap}.gmap-title{font-size:1.02rem}.gmap-layers{display:flex;gap:6px;overflow-x:auto;padding-bottom:4px;position:relative;scrollbar-width:thin}.gmap-layers .chip{flex:none;min-height:34px;padding:5px 10px;font-size:.8rem}.gmap-frame{position:relative;border-radius:12px;overflow:hidden;background:var(--surface-2, #eef1f5);border:1px solid var(--line);height:340px}.gmap-frame iframe{width:100%;height:100%;border:0;display:block}.gmap-placeholder{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:6px;padding:18px;color:var(--ink-2)}.gmap-placeholder p{margin:0;max-width:360px}.gmap-note{margin:0}.attraction .btn.on{border-color:var(--orange, #E67E22);color:var(--ink);background:color-mix(in srgb,#F2B24D 18%,transparent)}@media (min-width: 1100px){.explore-body{display:grid;grid-template-columns:minmax(0,1fr) minmax(380px,40%);align-items:start}.explore-map{order:2;position:sticky;top:92px}.explore-list{order:1}.gmap-layers{flex-wrap:wrap;overflow:visible}.gmap-frame{height:min(62vh,560px)}.explore-list .compare-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,280px),1fr))}}.sugg-tabs{display:flex;gap:6px;flex-wrap:wrap;margin:10px 0 6px}.sugg-tabs .chip{min-height:34px;padding:5px 10px;font-size:.8rem}.sugg-tip{margin:4px 0 8px}.sugg-list{list-style:none;margin:6px 0 10px;padding:0;display:grid;gap:6px;grid-template-columns:repeat(auto-fill,minmax(min(100%,260px),1fr))}.sugg-item{display:flex;align-items:flex-start;gap:8px;width:100%;text-align:left;background:var(--surface);border:1px solid var(--line);border-radius:12px;padding:9px 10px;font:inherit;color:var(--ink);cursor:pointer;min-height:44px}.sugg-item:hover{border-color:var(--orange, #E67E22)}.sugg-item>svg{margin-top:3px;color:var(--orange, #E67E22);flex:none}.access .kpis,.visit-panel .kpis{display:grid;gap:10px;grid-template-columns:repeat(auto-fit,minmax(min(100%,140px),1fr))}.access .kpi{background:var(--surface);border:1px solid var(--line);border-radius:14px;padding:12px 14px}.visit-panel .kpi{background:var(--surface-2);border-radius:12px;padding:10px 12px}.kpi-label{font-size:.78rem;color:var(--muted);font-weight:600}.access .card-head .seg{display:flex;margin:0}.access .seg button{min-height:36px;padding:6px 12px}.access-filters{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin-top:8px}.access-filters .field{display:flex;flex-direction:column;gap:4px;font-size:.82rem;font-weight:600;color:var(--ink-2);min-width:150px}.access-filters .field.grow{flex:1 1 220px}.access-filters select,.access-filters input{font:inherit;font-size:.92rem;padding:8px 10px;border-radius:10px;border:1px solid var(--line-2);background:var(--surface);color:var(--ink);min-height:40px}.access-filters .seg{display:flex;margin:0}.k-create{--k: #16A34A}.k-logout{--k: #7C3AED}.k-update{--k: #D97706}.k-login{--k: #2563EB}.k-delete{--k: #DC2626}.k-open{--k: #0891B2}.kind-legend{list-style:none;margin:12px 0 0;padding:0;display:flex;flex-wrap:wrap;gap:6px 14px;font-size:.82rem;color:var(--ink-2)}.kind-legend li{display:inline-flex;align-items:center;gap:6px}.kind-dot{display:inline-grid;place-items:center;width:24px;height:24px;border-radius:50%;background:var(--k, var(--muted));color:#fff;flex:none}.acc-timeline section+section{margin-top:14px}.tl-day{font-size:.86rem;color:var(--muted);margin:0 0 8px;font-weight:700}.tl-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.tl-item{display:grid;grid-template-columns:92px 24px minmax(0,1fr);gap:10px;align-items:start;padding:10px 12px;border:1px solid var(--line);border-left:4px solid var(--k, var(--line));border-radius:12px;background:var(--surface)}.tl-item.k-update{background:color-mix(in srgb,#D97706 7%,var(--surface))}.tl-time{font-variant-numeric:tabular-nums;font-weight:700;font-size:.88rem;color:var(--ink-2);padding-top:3px}.tl-body{min-width:0;overflow-wrap:anywhere}.tl-trip{font-weight:600}.tl-changes{margin:6px 0 0;padding:0;list-style:none;display:flex;flex-wrap:wrap;gap:6px}.tl-changes li{font-size:.8rem;padding:3px 9px;border-radius:999px;border:1px solid color-mix(in srgb,#D97706 45%,var(--line));background:var(--surface)}@media (max-width: 560px){.tl-item{grid-template-columns:24px minmax(0,1fr)}.tl-time{grid-column:1 / -1;padding:0}}.visit-charts{display:grid;gap:18px;grid-template-columns:1fr;margin-top:12px}@media (min-width: 900px){.visit-charts{grid-template-columns:1.3fr 1fr}.visit-charts .vchart:last-child{grid-column:1 / -1}}.vchart{margin:0}.vchart figcaption{font-size:.85rem;font-weight:700;margin-bottom:8px;color:var(--ink-2)}.vbars{display:flex;align-items:flex-end;gap:2px;height:160px;padding-bottom:20px;border-bottom:1px solid var(--line);position:relative}.bar-col{flex:1 1 0;min-width:4px;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;position:relative;outline:none}.vbar{width:100%;max-width:28px;background:#163a63;border-radius:4px 4px 0 0;transition:opacity .15s}:root[data-theme=dark] .vbar{background:#f2b24d}.vbars:hover .vbar{opacity:.55}.bar-col:hover .vbar,.bar-col:focus-visible .vbar{opacity:1}.bar-x{position:absolute;bottom:-19px;font-size:.68rem;color:var(--muted);white-space:nowrap}.vbars:not(.hours) .bar-col:not(:first-child):not(:last-child) .bar-x{display:none}.bar-tip{position:absolute;bottom:calc(100% + 4px);background:var(--ink);color:var(--surface);font-size:.74rem;padding:3px 7px;border-radius:6px;white-space:nowrap;opacity:0;pointer-events:none;z-index:2}.bar-col:hover .bar-tip,.bar-col:focus-visible .bar-tip{opacity:1;bottom:50%}.device-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:8px}.device-list li{display:grid;grid-template-columns:110px 1fr 40px 40px;gap:10px;align-items:center;font-size:.88rem}.device-bar{height:10px;background:var(--surface-2);border-radius:999px;overflow:hidden}.device-bar span{display:block;height:100%;background:#163a63;border-radius:999px}:root[data-theme=dark] .device-bar span{background:#f2b24d}.visit-panel .table-wrap{display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(260px,1fr))}.visit-panel .table{min-width:0}.device-list .grow{text-transform:capitalize}.install-modal{max-width:520px}.install-modal h2{display:flex;align-items:center;gap:8px}.install-steps{border:1px solid var(--line);border-radius:12px;padding:10px 12px;margin-top:10px}.install-steps summary{font-weight:700;cursor:pointer}.install-steps ol{margin:8px 0 0;padding-left:20px;display:flex;flex-direction:column;gap:4px;color:var(--ink)}.modal{max-height:calc(100dvh - 32px);overflow:auto}.btn.install-btn{color:#172033;border:0;background:linear-gradient(135deg,#f2b24d,#e67e22);font-weight:800;box-shadow:0 6px 18px -6px #e67e22cc;animation:install-pulse 3s ease-in-out infinite}.btn.install-btn:hover:not(:disabled){background:linear-gradient(135deg,#f6c46e,#ea8a35);color:#172033}.btn.install-btn:focus-visible{outline:3px solid #F2B24D;outline-offset:2px}@keyframes install-pulse{0%,to{box-shadow:0 6px 18px -6px #e67e22cc,0 0 #f2b24d00}50%{box-shadow:0 6px 18px -6px #e67e22cc,0 0 0 6px #f2b24d47}}@media (prefers-reduced-motion: reduce){.btn.install-btn{animation:none}}
