@font-face{font-family:Zilla Slab;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/zilla-slab-latin-600-normal.woff2)format("woff2");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:Zilla Slab;font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/zilla-slab-latin-ext-600-normal.woff2)format("woff2");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:Zilla Slab;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/zilla-slab-latin-700-normal.woff2)format("woff2");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:Zilla Slab;font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/zilla-slab-latin-ext-700-normal.woff2)format("woff2");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:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/source-sans-3-latin-400-normal.woff2)format("woff2");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:"Source Sans 3";font-style:normal;font-weight:400;font-display:swap;src:url(/fonts/source-sans-3-latin-ext-400-normal.woff2)format("woff2");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:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-sans-3-latin-600-normal.woff2)format("woff2");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:"Source Sans 3";font-style:normal;font-weight:600;font-display:swap;src:url(/fonts/source-sans-3-latin-ext-600-normal.woff2)format("woff2");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:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/source-sans-3-latin-700-normal.woff2)format("woff2");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:"Source Sans 3";font-style:normal;font-weight:700;font-display:swap;src:url(/fonts/source-sans-3-latin-ext-700-normal.woff2)format("woff2");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}:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#1e1611;--paper-deep:#140e0a;--panel:#2c2119;--panel-raised:#382a20;--line:#5a4535;--line-strong:#8a7158;--ink:#f2e8d3;--ink-soft:#cdbda0;--ink-placeholder:#a89a80;--accent:#e0a93b;--on-accent:#22180f;--accent-ink:#e0a93b;--accent-line:color-mix(in srgb, var(--accent) 45%, transparent);--ok:#a9cf95;--danger-ink:#f09080;--photo-empty:#4a3a2d;--track:#f2e8d32e;--on-dark:#fff;--hazard-fire:#e07a6b;--hazard-fire-far:#c08a80;--hazard-warn:#d8962e;--hazard-watch:#a7b4b0;--warn:#d8962e;--scrim-sheet:#140e0a8c;--scrim-modal:#140e0a9e;--geology:#de8d5e;--biology:#86ce76;--history:#92b5da;--food:#dc93ac;--kids:#6ed4e2;--fuel:#ec6e3d;--r-tag:3px;--r-sign:6px;--r-plaque:8px;--frame:1.5px solid var(--line);--shadow:0 14px 40px #140e0a73;--sp-2xs:4px;--sp-xs:8px;--sp-sm:12px;--sp-md:16px;--sp-lg:24px;--sp-xl:32px;--sp-2xl:48px;--gutter:20px;--col-max:560px;--f-disp:"Zilla Slab", Rockwell, "Roboto Slab", Georgia, serif;--f-head:var(--f-disp);--f-body:"Source Sans 3", system-ui, "Segoe UI", Roboto, sans-serif;--fs-drive:2.875rem;--fs-4xl:2.125rem;--fs-2xl:1.625rem;--fs-xl:1.375rem;--fs-lg:1.1875rem;--fs-read:1.0625rem;--fs-md:1rem;--fs-base:.875rem;--fs-sm:.8125rem;--fs-kicker:.75rem;--lh-drive:1.02;--lh-4xl:1.05;--lh-2xl:1.1;--lh-xl:1.1;--lh-lg:1.15;--lh-read:1.5;--lh-md:1.4;--lh-base:1.35;--lh-sm:1.35;--lh-kicker:1.2;--ls-kicker:.14em;--ls-wordmark:.01em;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-in:cubic-bezier(.32, 0, .67, 0);--ease-drawer:cubic-bezier(.32, .72, 0, 1);--dur-press:.15s;--dur-fast:.18s;--dur-base:.24s;--tabbar-h:60px}body.light-theme{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#efe6d2;--paper-deep:#efe6d2;--panel:#fbf6ea;--panel-raised:#fff;--line:#b9a586;--line-strong:#7d654e;--ink:#2e2117;--ink-soft:#5e4b3a;--ink-placeholder:#6e5a47;--accent:#5a3a1e;--on-accent:#f6ebd3;--accent-ink:#8a5a12;--ok:#3b6a2b;--danger-ink:#a3271b;--photo-empty:#d9cbb0;--track:#2e211729;--hazard-fire:#a3271b;--hazard-fire-far:#8f5040;--hazard-warn:#924800;--hazard-watch:#4a5c57;--warn:#924800;--shadow:0 12px 32px #2e21172e;--geology:#98370d;--biology:#2c5a33;--history:#23456e;--food:#8a2f49;--kids:#15616b;--fuel:#a8451b}*{box-sizing:border-box}html,body{height:100%;margin:0;padding:0}#root{height:100%}button{transition:transform var(--dur-press) var(--ease-out)}button:active:not(:disabled){transform:scale(.97)}input::placeholder,textarea::placeholder{color:var(--ink-placeholder);opacity:1}:where(a,button,input,select,textarea,summary,[tabindex],[role=button],[role=tab],[role=radio],[role=checkbox],[role=switch]):focus-visible{outline:3px solid var(--accent-ink);outline-offset:2px;border-radius:var(--r-sign)}.on-accent:focus-visible,.btn-primary:focus-visible{outline-color:var(--ink)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}button:active:not(:disabled){transform:none}}body{background:var(--paper);color:var(--ink);font-family:var(--f-body);font-size:var(--fs-base);line-height:var(--lh-base);font-kerning:normal;-webkit-font-smoothing:antialiased;transition:background .3s,color .3s}h1,h2,h3{font-family:var(--f-head);font-weight:700;line-height:var(--lh-2xl);text-wrap:balance;margin:0}button,input,select,textarea{font-family:var(--f-body)}button{cursor:pointer}::-webkit-scrollbar{width:0;height:0}.icon{flex:none;display:inline-flex}.app-shell{width:100%;max-width:var(--col-max);flex-direction:column;min-height:100dvh;margin:0 auto;display:flex}.app-main{flex:1;width:100%;min-width:0}.tabbar,.mini-player{width:min(100%, var(--col-max));position:fixed;left:50%;transform:translate(-50%)}.tabbar{z-index:60;height:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));padding-bottom:env(safe-area-inset-bottom,0px);background:var(--panel);border-top:var(--frame);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;bottom:0}.tabbar-btn{color:var(--ink-soft);font-family:var(--f-body);font-size:var(--fs-sm);line-height:var(--lh-sm);background:0 0;border:none;border-radius:0;flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:0;font-weight:600;display:flex}.tabbar-btn.current{color:var(--accent-ink);box-shadow:inset 0 3px 0 var(--accent-ink);font-weight:700}.tabbar-btn:active:not(:disabled){transform:none}.tabbar-btn:focus-visible{outline-offset:-3px}.app-shell.has-tabbar{--bars-h:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px))}.app-shell.has-tabbar>main{padding-bottom:calc(var(--bars-h) + var(--sp-lg))}.app-shell.has-mini>main{padding-bottom:calc(var(--bars-h) + 72px + var(--sp-lg))}html{scroll-padding-bottom:calc(var(--tabbar-h) + 80px + env(safe-area-inset-bottom,0px))}.places{padding:var(--sp-md) var(--gutter) 0}.places-header{justify-content:space-between;align-items:flex-start;gap:var(--sp-sm) var(--sp-md);padding-bottom:var(--sp-sm);flex-wrap:wrap;display:flex}.places-header-id{align-items:center;gap:var(--sp-sm);flex:220px;min-width:0;display:flex}.places-titles{min-width:0}.places-title{font-size:var(--fs-xl);line-height:var(--lh-xl);overflow-wrap:anywhere}.places-sub{font-size:var(--fs-base);color:var(--ink-soft);margin-top:2px}.places-status{align-items:flex-start;gap:var(--sp-2xs);flex-direction:column;min-width:0;display:flex}@media (width>=420px){.places-status{align-items:flex-end;margin-left:auto}}.ready-badge{border:1.5px solid var(--ok);border-radius:var(--r-tag);min-height:32px;color:var(--ok);font-size:var(--fs-sm);line-height:var(--lh-sm);white-space:nowrap;align-items:center;gap:6px;padding:4px 10px;font-weight:700;display:inline-flex}.download-slot{align-items:inherit;flex-direction:column;gap:2px;display:flex}.download-line{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft);align-items:center;gap:6px;font-weight:600;display:inline-flex}.download-failed{color:var(--danger-ink);font-weight:700}.download-row{align-items:center;gap:var(--sp-xs);display:flex}.voice-offer{align-items:flex-start;gap:var(--sp-xs);flex-direction:column;margin:0;display:flex}.voice-offer p{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft);margin:0;font-weight:600}.voice-legs{margin:var(--sp-xs) 0 0;align-self:stretch;padding:0;list-style:none}.voice-legs li{align-items:center;column-gap:var(--sp-sm);padding:var(--sp-xs) 0;border-top:1px solid var(--line);grid-template-columns:1fr auto;display:grid}.voice-leg-name{font-weight:700;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink)}.voice-legs li .download-line{grid-column:1}.voice-legs li .btn-text{grid-area:1/2/span 2}.download-missing{margin:0 0 var(--sp-sm);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft)}.download-missing summary{min-height:44px;color:var(--danger-ink);cursor:pointer;align-items:center;font-weight:700;display:flex}.download-missing ul{margin:0 0 var(--sp-xs);padding-left:var(--sp-md)}.download-missing p{margin:0}.download-slot:has(>.btn-text){align-items:center;gap:var(--sp-xs);flex-direction:row}.download-progress{height:4px;margin:0 calc(var(--gutter) * -1) var(--sp-sm);background:var(--track)}.download-progress-fill{background:var(--accent);height:100%;transition:width var(--dur-fast) var(--ease-out)}.conditions{align-items:center;gap:2px var(--sp-sm);padding:var(--sp-xs) var(--sp-sm);margin-bottom:var(--sp-md);border:var(--frame);border-radius:var(--r-sign);background:var(--panel);font-size:var(--fs-base);line-height:var(--lh-base);flex-wrap:wrap;display:flex}.conditions-text{color:var(--ink);min-width:0;font-weight:600}.conditions-note{font-size:var(--fs-sm);color:var(--ink-soft);align-items:center;gap:6px;display:inline-flex}.conditions-hazard{border:1.5px solid var(--danger-ink);color:var(--danger-ink);padding:0}.conditions-hazard-btn{align-items:center;gap:var(--sp-xs);width:100%;min-height:44px;padding:var(--sp-xs) var(--sp-sm);color:var(--danger-ink);text-align:left;font-size:var(--fs-base);background:0 0;border:none;display:flex}.conditions-hazard-btn .conditions-text{color:var(--danger-ink);flex:1;font-weight:700}.conditions-list{padding:0 var(--sp-sm) var(--sp-sm) calc(var(--sp-sm) + 24px);color:var(--ink);margin:0;font-weight:600}.conditions-list li+li{margin-top:var(--sp-2xs)}.conditions-list .conditions-weather{color:var(--ink-soft);font-weight:400}.places-section{justify-content:space-between;align-items:center;gap:var(--sp-sm);margin-bottom:var(--sp-2xs);min-height:44px;display:flex}.btn-text[aria-pressed]{margin-right:calc(var(--sp-xs) * -1)}.place-list{gap:var(--sp-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.place-row{border:var(--frame);border-radius:var(--r-sign);background:var(--panel);flex-direction:column;display:flex}.place-row.playing{border-color:var(--accent)}.place-row-open{align-items:center;gap:var(--sp-sm);border-radius:var(--r-sign);width:100%;min-height:64px;color:inherit;font:inherit;text-align:left;background:0 0;border:none;padding:10px;display:flex}.place-row-open:active:not(:disabled){transform:none}.place-chevron{color:var(--ink-soft)}.place-tile{object-fit:cover;border-radius:var(--r-tag);background:var(--photo-empty);flex:0 0 64px;width:64px;height:64px}.place-tile.empty{color:var(--ink-soft);justify-content:center;align-items:center;display:flex}.place-text{flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.place-name{font-family:var(--f-head);font-weight:600;font-size:var(--fs-lg);line-height:var(--lh-lg);color:var(--ink);-webkit-line-clamp:2;overflow-wrap:break-word;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.place-meta{font-size:var(--fs-base);line-height:var(--lh-base);color:var(--ink-soft)}.place-status{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft);align-items:center;gap:4px;font-weight:700;display:inline-flex}.place-status.ready{color:var(--ok)}.place-status.playing{color:var(--accent-ink)}.place-edit{justify-content:flex-end;gap:var(--sp-xs);padding:0 10px 10px;display:flex}.box-btn{min-width:44px;min-height:44px;padding:0 var(--sp-sm);border:1.5px solid var(--line-strong);border-radius:var(--r-sign);color:var(--ink);font-size:var(--fs-md);background:0 0;justify-content:center;align-items:center;font-weight:700;display:inline-flex}.box-btn:disabled{color:var(--ink-soft);border-color:var(--line);cursor:default}.box-btn.remove{color:var(--danger-ink)}.places-add{margin-top:var(--sp-md)}.places-empty p{margin:0 0 var(--sp-sm);font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink)}.places-empty-actions{gap:var(--sp-sm);flex-wrap:wrap;display:flex}.places-empty-actions>*{flex:180px}.places-empty-actions .btn-ghost{width:100%}.add-place{padding:var(--sp-sm)}.add-place-hit{text-align:left;border:none;border-bottom:1px solid var(--line);width:100%;min-height:48px;color:inherit;font:inherit;background:0 0;border-radius:0;padding:8px 4px;display:block}.add-place-title{color:var(--ink);font-weight:700;display:block}.add-place-extract{font-size:var(--fs-sm);color:var(--ink-soft);display:block}.leg-tabs{gap:var(--sp-xs);margin-bottom:var(--sp-md);flex-direction:column;display:flex}.leg-tab{min-height:48px;padding:8px var(--sp-sm);border:1.5px solid var(--line-strong);border-radius:var(--r-sign);color:var(--ink);font-size:var(--fs-md);text-align:left;background:0 0;font-weight:600}.leg-tab.current{border-color:var(--accent);background:var(--accent);color:var(--on-accent);font-weight:700}.first-run{z-index:300;background:var(--paper);justify-content:center;display:flex;position:fixed;inset:0;overflow-y:auto}.first-run-scrim{pointer-events:none;background:radial-gradient(ellipse 620px 640px at 50% 50%, color-mix(in srgb, var(--paper) 96%, transparent) 0%, color-mix(in srgb, var(--paper) 92%, transparent) 45%, color-mix(in srgb, var(--paper) 55%, transparent) 70%, color-mix(in srgb, var(--paper) 10%, transparent) 100%);position:fixed;inset:0}.first-run-card{width:min(440px,100%);padding:var(--sp-lg) var(--gutter) var(--sp-xl);gap:var(--sp-sm);flex-direction:column;margin:auto;display:flex;position:relative}.first-run-title{font-size:var(--fs-2xl);line-height:var(--lh-2xl);margin-top:var(--sp-md)}.first-run-sub{font-size:var(--fs-read);line-height:var(--lh-read);color:var(--ink-soft);margin:0}.first-run-hint{font-size:var(--fs-base);line-height:var(--lh-base);color:var(--ink-soft);overflow-wrap:anywhere;align-items:center;gap:6px;margin:0;display:flex}.first-run-hint.ok{color:var(--ok);font-weight:700}.first-run-error{align-items:flex-start;gap:var(--sp-xs);font-size:var(--fs-base);line-height:var(--lh-base);color:var(--danger-ink);margin:0;font-weight:600;display:flex}.first-run-error>:first-child{flex:none;margin-top:2px}.first-run-fields{margin-top:var(--sp-xs)}.first-run-actions{gap:var(--sp-sm);margin-top:var(--sp-sm);flex-direction:column;display:flex}.first-run-actions>*{width:100%}.first-run-busy{align-items:center;gap:var(--sp-xs);display:inline-flex}.route-fields{gap:var(--sp-md);flex-direction:column;display:flex}.route-label{font-size:var(--fs-base);line-height:var(--lh-base);color:var(--ink);margin-bottom:6px;font-weight:600;display:block}.route-add{align-self:flex-start}.route-via-row{justify-content:space-between;align-items:center;gap:var(--sp-xs) var(--sp-sm);margin-top:var(--sp-xs);flex-wrap:wrap;display:flex}.route-check{align-items:center;gap:var(--sp-xs);min-height:44px;font-size:var(--fs-md);color:var(--ink);display:inline-flex}.route-check input{width:24px;height:24px;accent-color:var(--accent);margin:0}.route-via-buttons{gap:var(--sp-xs);display:flex}.location-field,.location-input-wrap{position:relative}.field-input.picked{border-color:var(--ok);padding-right:44px}.location-ok{color:var(--ok);display:flex;position:absolute;top:50%;right:12px;transform:translateY(-50%)}.location-suggest{z-index:5;border:var(--frame);border-radius:var(--r-sign);background:var(--panel-raised);box-shadow:var(--shadow);margin:0;padding:0;list-style:none;position:absolute;top:calc(100% + 6px);left:0;right:0;overflow:hidden}.location-suggest li+li{border-top:1px solid var(--line)}.location-hit{align-items:center;gap:var(--sp-sm);width:100%;min-height:52px;padding:8px var(--sp-md);color:var(--ink);text-align:left;background:0 0;border:none;border-radius:0;display:flex}.location-hit:active:not(:disabled){transform:none}.location-hit>svg{color:var(--accent-ink)}.location-hit-text{flex-direction:column;flex:1;min-width:0;display:flex}.location-hit-name{font-size:var(--fs-md);font-weight:700}.location-hit-sub{font-size:var(--fs-sm);color:var(--ink-soft)}.location-note{margin-top:var(--sp-xs);font-size:var(--fs-base);color:var(--ink-soft)}.location-note.error{color:var(--danger-ink)}.settings,.saved,.help{padding:var(--sp-lg) var(--gutter) 0}.screen-title{font-size:var(--fs-2xl);line-height:var(--lh-2xl)}.screen-sub{margin:var(--sp-2xs) 0 var(--sp-lg);font-size:var(--fs-base);line-height:var(--lh-base);color:var(--ink-soft)}.settings-group{margin-top:var(--sp-lg);gap:var(--sp-xs);flex-direction:column;display:flex}.settings-group .section-head{margin:0}.settings-card{gap:var(--sp-md);flex-direction:column;display:flex}.setting-block{align-items:flex-start;gap:var(--sp-xs);border:0;flex-direction:column;min-width:0;margin:0;padding:0;display:flex}.setting-block>:not(.field-label):not(.setting-sub){align-self:stretch}.setting-block .field-label{margin:0;padding:0}.setting-row{align-items:center;gap:var(--sp-md);min-height:56px;display:flex}.setting-row+.setting-row,.setting-block+.setting-row,.setting-row+.setting-block{border-top:1px solid var(--line);padding-top:var(--sp-md)}.setting-text{text-align:left;flex-direction:column;flex:1;gap:2px;min-width:0;display:flex}.setting-label{font-size:var(--fs-md);line-height:var(--lh-md);color:var(--ink);font-weight:600}.setting-sub{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft)}.setting-value{font-size:var(--fs-md);color:var(--ink);font-variant-numeric:tabular-nums;font-weight:600}.settings-list{padding:0;overflow:hidden}.settings-link{align-items:center;gap:var(--sp-sm);width:100%;min-height:60px;padding:var(--sp-sm) var(--sp-md);color:var(--ink);background:0 0;border:none;border-radius:0;display:flex}.settings-link+.settings-link{border-top:1px solid var(--line)}.settings-link>svg{color:var(--ink-soft)}.settings-link:active:not(:disabled){transform:none}.settings-about{margin:var(--sp-sm) 0 0;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft)}.feedback-text{resize:vertical;min-height:96px;font-family:inherit;line-height:var(--lh-md)}.feedback-actions{align-items:center;gap:var(--sp-sm);flex-wrap:wrap;display:flex}.more-backdrop{z-index:58;background:var(--scrim-sheet);position:fixed;inset:0}.more-sheet{left:50%;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));z-index:59;width:min(100%, var(--col-max));padding:var(--sp-xs) var(--gutter) var(--sp-md);border:var(--frame);border-radius:var(--r-plaque) var(--r-plaque) 0 0;background:var(--panel-raised);box-shadow:var(--shadow);border-bottom:none;position:fixed;transform:translate(-50%)}.more-sheet ul{margin:0;padding:0;list-style:none}.more-sheet li+li{border-top:1px solid var(--line)}.more-row{align-items:center;gap:var(--sp-md);width:100%;min-height:60px;padding:var(--sp-xs) 0;color:var(--ink);text-align:left;background:0 0;border:none;border-radius:0;display:flex}.more-row:active:not(:disabled){transform:none}.more-icon{border-radius:var(--r-sign);border:var(--frame);width:40px;height:40px;color:var(--accent-ink);flex:none;justify-content:center;align-items:center;display:flex}.more-text{flex-direction:column;flex:1;min-width:0;display:flex}.more-label{font-family:var(--f-head);font-weight:600;font-size:var(--fs-lg);line-height:var(--lh-lg)}.more-desc{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft)}.more-chevron{color:var(--ink-soft)}.saved-list{gap:var(--sp-sm);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.saved-row{gap:var(--sp-sm);flex-direction:column;display:flex}.saved-row.current{border-color:var(--accent)}.saved-name{font-size:var(--fs-lg);line-height:var(--lh-lg);overflow-wrap:anywhere;font-weight:600}.saved-current{font-family:var(--f-body);font-size:var(--fs-base);color:var(--accent-ink);font-weight:600}.saved-meta{font-size:var(--fs-base);color:var(--ink-soft);margin-top:2px}.saved-ready{margin-top:var(--sp-xs)}.saved-actions{gap:var(--sp-sm);display:flex}.saved-empty p{font-size:var(--fs-read);color:var(--ink);margin:0}.saved-new{width:100%;margin-top:var(--sp-lg)}.help-group{margin-top:var(--sp-lg);gap:var(--sp-xs);flex-direction:column;display:flex}.help-head{margin:0}.help-card{padding:0;overflow:hidden}.help-item+.help-item{border-top:1px solid var(--line)}.help-q{font:inherit;margin:0}.help-q-btn{justify-content:space-between;align-items:center;gap:var(--sp-sm);width:100%;min-height:56px;padding:var(--sp-sm) var(--sp-md);color:var(--ink);text-align:left;font-family:var(--f-head);font-weight:600;font-size:var(--fs-md);line-height:var(--lh-md);background:0 0;border:none;border-radius:0;display:flex}.help-q-btn:active:not(:disabled){transform:none}.help-q-btn>svg{color:var(--ink-soft)}.help-a{gap:var(--sp-xs);padding:0 var(--sp-md) var(--sp-md);flex-direction:column;display:flex}.help-a p{color:var(--ink-soft);margin:0}.help-foot{margin:var(--sp-lg) 0 0;text-align:center;font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft)}.tag{border-radius:var(--r-tag);font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink);border:1.5px solid;padding:2px 8px;font-weight:700;display:inline-block}.tag.ok{color:var(--ok)}.tag.warn{color:var(--warn)}.place-page{z-index:100;background:var(--paper);scroll-padding-bottom:var(--sp-xl);position:fixed;inset:0;overflow-y:auto}.place-page-inner{width:100%;max-width:var(--col-max);padding-bottom:calc(var(--sp-xl) + env(safe-area-inset-bottom,0px));margin:0 auto}.place-hero{background:var(--photo-empty);height:230px;position:relative;overflow:hidden}.place-hero-img{object-fit:cover;width:100%;height:100%;display:block}.place-hero-empty{height:100%;color:var(--ink-soft);justify-content:center;align-items:center;display:flex}.place-back{top:calc(var(--sp-sm) + env(safe-area-inset-top,0px));left:var(--gutter);border:1.5px solid var(--line-strong);background:var(--panel);width:44px;height:44px;color:var(--ink);border-radius:50%;justify-content:center;align-items:center;display:flex;position:absolute}.place-body{padding:var(--sp-md) var(--gutter) 0;gap:var(--sp-md);flex-direction:column;display:flex}.place-kicker-row{align-items:center;gap:var(--sp-xs) var(--sp-sm);flex-wrap:wrap;display:flex}.place-page-title{font-size:var(--fs-4xl);line-height:var(--lh-4xl);overflow-wrap:anywhere}.place-hazard{padding:var(--sp-sm);border:1.5px solid var(--danger-ink);border-radius:var(--r-sign);color:var(--ink)}.place-hazard-badges{gap:var(--sp-xs);flex-wrap:wrap;display:flex}.place-hazard p{margin:var(--sp-xs) 0 0;font-size:var(--fs-base);line-height:var(--lh-base)}.narration{align-items:stretch;gap:var(--sp-sm);padding:var(--sp-md);border:var(--frame);border-radius:var(--r-sign);background:var(--panel);flex-direction:column;display:flex}.narration-head{align-items:center;gap:var(--sp-sm);display:flex}.narration-meta{font-size:var(--fs-base);color:var(--ink-soft);font-variant-numeric:tabular-nums}.narration-checking{align-items:center;gap:var(--sp-sm);font-size:var(--fs-md);color:var(--ink);font-weight:600;display:flex}.narration-play{width:100%}.narration-blurb{color:var(--ink);margin:0}.narration-caption{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink-soft);margin:0}.narration-voice{font-size:var(--fs-sm);color:var(--ink-soft)}.narration-requested{align-items:center;gap:var(--sp-xs);font-size:var(--fs-base);color:var(--ink-soft);min-height:44px;display:flex}.narration-progress{gap:var(--sp-2xs);flex-direction:column;display:flex}.narration-bar{border-radius:var(--r-tag);background:var(--track);height:6px;overflow:hidden}.narration-bar-fill{background:var(--accent);height:100%}.narration-times{font-size:var(--fs-sm);color:var(--ink-soft);font-variant-numeric:tabular-nums;justify-content:space-between;align-items:center;display:flex}.narration-seek{gap:var(--sp-sm);display:flex}.narration-transcript{align-items:flex-start;gap:var(--sp-xs);border-top:var(--frame);padding-top:var(--sp-xs);flex-direction:column;display:flex}.narration-transcript .btn-text{padding-left:0}.place-actions{gap:var(--sp-sm);flex-direction:column;display:flex}.place-actions .btn-primary,.place-actions .btn-ghost{width:100%}.sources{gap:var(--sp-xs);padding-top:var(--sp-xs);border-top:var(--frame);flex-direction:column;display:flex}.sources ul{gap:var(--sp-xs);flex-direction:column;margin:0;padding:0;list-style:none;display:flex}.sources li{font-size:var(--fs-sm);line-height:var(--lh-sm);color:var(--ink);overflow-wrap:anywhere}.sources a{color:var(--accent-ink);text-underline-offset:2px;text-decoration:underline}.source-license{color:var(--ink-soft)}.place-remove{padding-top:var(--sp-sm);border-top:var(--frame);justify-content:center;display:flex}.mini-player{bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom,0px));z-index:30;align-items:center;gap:var(--sp-sm);padding:var(--sp-xs) var(--gutter);background:var(--accent);color:var(--on-accent);display:flex}.mini-player-open{min-width:0;min-height:48px;color:inherit;text-align:left;background:0 0;border:none;flex-direction:column;flex:1;justify-content:center;align-items:flex-start;gap:2px;padding:0;display:flex}.mini-player-open:active:not(:disabled){transform:none}.mini-player-kicker{color:var(--on-accent)}.mini-player-title{max-width:100%;font-family:var(--f-head);font-weight:700;font-size:var(--fs-lg);line-height:var(--lh-lg);-webkit-line-clamp:1;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.mini-player-toggle{background:var(--on-accent);width:48px;height:48px;color:var(--accent);border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.segmented{background:var(--panel-raised);border:1.5px solid var(--line-strong);border-radius:var(--r-sign);flex-wrap:wrap;gap:3px;padding:3px;display:flex}.segmented-btn{border-radius:var(--r-tag);min-height:44px;color:var(--ink);font-weight:700;font-size:var(--fs-md);transition:background var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);background:0 0;border:none;flex:auto;padding:8px 12px}.segmented-btn.active{background:var(--accent);color:var(--on-accent)}.segmented-btn:focus-visible{outline-offset:0;outline-color:var(--accent-ink)}.segmented-btn.active:focus-visible{outline-color:var(--ink)}.surface-card{border-radius:var(--r-sign);background:var(--panel);border:var(--frame);padding:var(--sp-md)}.kicker{font-family:var(--f-body);font-size:var(--fs-kicker);line-height:var(--lh-kicker);letter-spacing:var(--ls-kicker);text-transform:uppercase;color:var(--ink-soft);font-weight:700}.prose{font-size:var(--fs-read);line-height:var(--lh-read);text-wrap:pretty;max-width:68ch}.truncate{text-overflow:ellipsis;white-space:nowrap;min-width:0;overflow:hidden}.category-chip{align-items:center;gap:var(--sp-2xs);font-size:var(--fs-sm);border-radius:var(--r-tag);border:1.5px solid;padding:2px 8px;font-weight:700;display:inline-flex}.badge{align-items:center;gap:var(--sp-2xs);font-size:var(--fs-sm);border-radius:var(--r-tag);white-space:nowrap;text-overflow:ellipsis;min-width:0;max-width:100%;padding:2px 8px;font-weight:700;display:inline-flex;overflow:hidden}.badge>svg{flex:none}.badge-hero{line-height:var(--lh-md);gap:6px;padding:4px 10px}.badge-fire{color:var(--hazard-fire);background:color-mix(in srgb, var(--hazard-fire) 8%, var(--paper))}.badge-fire-distant{color:var(--hazard-fire-far);background:color-mix(in srgb, var(--hazard-fire-far) 8%, var(--paper))}.badge-warn{color:var(--hazard-warn);background:color-mix(in srgb, var(--hazard-warn) 8%, var(--paper))}.badge-watch{color:var(--hazard-watch);background:color-mix(in srgb, var(--hazard-watch) 8%, var(--paper))}.round-btn{background:var(--accent);color:var(--on-accent);border:none;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.round-btn:focus-visible{outline-color:var(--ink)}.round-btn-ghost{color:var(--accent-ink);border:1.5px solid var(--line-strong);background:0 0}.round-btn-ghost:focus-visible{outline-color:var(--accent-ink)}.btn-primary,.btn-ghost,.btn-text{justify-content:center;align-items:center;gap:var(--sp-xs);font-family:var(--f-body);font-size:var(--fs-md);line-height:var(--lh-md);border-radius:var(--r-sign);text-decoration:none;display:inline-flex}.btn-primary,.btn-ghost{min-height:52px;padding:10px 22px}.dense .btn-primary,.dense .btn-ghost{min-height:48px}.btn-primary{border:1.5px solid var(--accent);background:var(--accent);color:var(--on-accent);font-weight:700}.btn-ghost{border:1.5px solid var(--line-strong);color:var(--ink);background:0 0;font-weight:700}.btn-ghost.accent{color:var(--accent-ink)}.btn-text{white-space:nowrap;min-height:44px;padding:0 var(--sp-xs);color:var(--accent-ink);background:0 0;border:none;font-weight:600}.btn-text.danger{color:var(--danger-ink)}.btn-primary:disabled,.btn-ghost:disabled{border-color:var(--line);color:var(--ink-soft);cursor:default;background:0 0}.btn-text:disabled{color:var(--ink-soft);cursor:default}@keyframes dvx-ping{0%{opacity:.5;transform:scale(1)}80%,to{opacity:0;transform:scale(2.2)}}@keyframes dvx-eq{0%,to{transform:scaleY(.35)}50%{transform:scaleY(1)}}@keyframes dvx-spin{to{transform:rotate(360deg)}}@keyframes dvx-pulse{0%,to{opacity:.55}50%{opacity:1}}.sheet-overlay{z-index:60;background:var(--scrim-sheet);-webkit-backdrop-filter:blur(3px);position:fixed;inset:0}.sheet{z-index:61;background:var(--panel-raised);border-radius:var(--r-plaque) var(--r-plaque) 0 0;border-top:var(--frame);max-height:90vh;box-shadow:var(--shadow);animation:dvx-sheet var(--dur-base) var(--ease-drawer);flex-direction:column;display:flex;position:fixed;bottom:0;left:0;right:0}@keyframes dvx-sheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes dvx-sheet-out{0%{transform:translateY(0)}to{transform:translateY(100%)}}.sheet[data-exiting=true]{animation:dvx-sheet-out .2s var(--ease-drawer) forwards}.sheet-overlay[data-exiting=true]{animation:.2s forwards dvx-fade-out}@keyframes dvx-pop{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes dvx-fade{0%{opacity:0}to{opacity:1}}.modal-card{animation:dvx-pop .19s var(--ease-out)}.form-overlay,.modal-overlay{animation:.19s dvx-fade}@keyframes dvx-pop-out{0%{opacity:1;transform:scale(1)}to{opacity:0;transform:scale(.96)}}@keyframes dvx-fade-out{0%{opacity:1}to{opacity:0}}.modal-card[data-exiting=true]{animation:dvx-pop-out .16s var(--ease-in) forwards}.form-overlay[data-exiting=true],.modal-overlay[data-exiting=true]{animation:.16s forwards dvx-fade-out}.toast-item{opacity:1;transition:opacity var(--dur-base) var(--ease-out), transform var(--dur-base) var(--ease-out);transform:translateY(0)}@starting-style{.toast-item{opacity:0;transform:translateY(14px)}}.toast-item[data-exiting=true]{opacity:0;transition-timing-function:var(--ease-in);transform:translateY(14px)}.sheet-handle-wrap{flex:none;justify-content:center;padding:10px 0 4px;display:flex}.sheet-handle{border-radius:var(--r-tag);background:var(--line-strong);width:42px;height:4px}.sheet-content{padding:6px 22px 30px;overflow-y:auto}.modal-overlay{z-index:200;background:var(--scrim-modal);-webkit-backdrop-filter:blur(4px);justify-content:center;align-items:center;padding:30px;display:flex;position:fixed;inset:0}.modal-card{border-radius:var(--r-plaque);background:var(--panel-raised);border:var(--frame);width:min(470px,94vw);max-height:88vh;box-shadow:var(--shadow);overflow-y:auto}.modal-art{height:152px;color:var(--on-dark);background-position:50%;background-size:cover;align-items:flex-end;padding:18px;display:flex;position:relative}.modal-body{padding:18px 20px 22px}.form-overlay{z-index:220;background:var(--scrim-modal);-webkit-backdrop-filter:blur(4px);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.form-card{width:min(var(--col-max), 100%);border-radius:var(--r-plaque) var(--r-plaque) 0 0;background:var(--panel-raised);border:var(--frame);max-height:92dvh;box-shadow:var(--shadow);padding:var(--sp-lg) var(--gutter) calc(var(--sp-lg) + env(safe-area-inset-bottom,0px));animation:dvx-sheet var(--dur-base) var(--ease-drawer);border-bottom:none;overflow-y:auto}.form-card[data-exiting=true]{animation:dvx-sheet-out .2s var(--ease-drawer) forwards}.sheet-actions{gap:var(--sp-sm);margin-top:var(--sp-lg);display:flex}.sheet-actions>.btn-primary{flex:1}.sheet-caption{margin:var(--sp-sm) 0 0;font-size:var(--fs-base);line-height:var(--lh-base);color:var(--ink-soft)}.sheet-error{margin:var(--sp-sm) 0 0;font-size:var(--fs-base);line-height:var(--lh-base);color:var(--danger-ink);font-weight:600}.field-label{font-size:var(--fs-base);line-height:var(--lh-base);color:var(--ink);margin:var(--sp-md) 0 6px;font-weight:600}.field-input{border:1.5px solid var(--line-strong);background:var(--panel-raised);width:100%;min-height:48px;color:var(--ink);font-size:var(--fs-md);line-height:var(--lh-md);border-radius:var(--r-sign);padding:10px 14px}.toggle-switch{border-radius:var(--r-sign);border:1.5px solid var(--line-strong);cursor:pointer;background:var(--panel-raised);flex:none;width:52px;height:32px;position:relative}.toggle-switch:before{content:"";position:absolute;inset:-6px -2px}.toggle-switch.on{background:var(--accent);border-color:var(--accent)}.toggle-knob{background:var(--ink);width:22px;height:22px;transition:transform var(--dur-fast) var(--ease-out);border-radius:50%;position:absolute;top:3px;left:3px}.toggle-switch.on .toggle-knob{background:var(--on-accent);transform:translate(20px)}.app-shell.driving{background:var(--paper-deep);max-width:none}.drive{width:100%;max-width:var(--col-max);gap:var(--sp-md);min-height:100dvh;padding:calc(var(--sp-md) + env(safe-area-inset-top,0px)) var(--gutter) calc(var(--sp-lg) + env(safe-area-inset-bottom,0px));background:var(--paper-deep);flex-direction:column;margin:0 auto;display:flex}.drive-top{justify-content:space-between;align-items:center;gap:var(--sp-sm);min-height:48px;display:flex}.drive-end{min-height:48px;padding:6px var(--sp-md);font-size:var(--fs-md);white-space:nowrap;flex:none}.drive-offline{min-width:0;font-size:var(--fs-lg);line-height:var(--lh-lg);color:var(--danger-ink);text-align:right;font-weight:700}.drive-hazard{align-items:center;gap:var(--sp-sm);padding:var(--sp-sm) var(--sp-md);border:2px solid var(--danger-ink);border-radius:var(--r-plaque);color:var(--danger-ink);font-size:var(--fs-lg);line-height:var(--lh-lg);font-weight:700;display:flex}.plaque{gap:var(--sp-xs);padding:var(--sp-md);border:2px solid var(--accent);border-radius:var(--r-plaque);background:var(--panel);flex-direction:column;display:flex}h1.plaque-label,.plaque-label{font-family:var(--f-body);font-size:var(--fs-lg);line-height:var(--lh-lg);color:var(--ink-soft);font-weight:700}.plaque-name{font-size:var(--fs-drive);line-height:var(--lh-drive);color:var(--ink);overflow-wrap:anywhere;text-wrap:balance}.plaque-detail{font-size:var(--fs-xl);line-height:var(--lh-xl);color:var(--ink);font-weight:600}.plaque-progress{height:6px;margin-top:var(--sp-xs);border-radius:var(--r-tag);background:var(--track);overflow:hidden}.plaque-progress-fill{background:var(--accent);height:100%;transition:width 1s linear}.drive-lower{gap:var(--sp-lg);flex-direction:column;margin-top:auto;display:flex}.drive-controls{justify-content:center;align-items:center;gap:var(--sp-md);display:flex}.drive-ctl{border:2px solid var(--line-strong);color:var(--ink);background:0 0;border-radius:50%;flex:none;justify-content:center;align-items:center;display:flex}.drive-ctl.small{width:76px;height:76px}.drive-ctl.big{border-color:var(--accent);background:var(--accent);width:120px;height:120px;color:var(--on-accent)}.drive-ctl:disabled{border-color:var(--line);color:var(--ink-soft);cursor:default;opacity:.7;background:0 0}.drive-ctl.big:disabled{border-style:dashed;border-color:var(--line-strong)}@media (width<=359px){.drive{padding-left:var(--sp-sm);padding-right:var(--sp-sm)}.drive-ctl.big{width:112px;height:112px}}.up-next{flex-direction:column;gap:2px;min-height:5.75rem;display:flex}.up-next-label{font-size:var(--fs-lg);line-height:var(--lh-lg);color:var(--ink-soft);font-weight:700}.up-next-name{font-family:var(--f-head);font-weight:700;font-size:var(--fs-2xl);line-height:var(--lh-2xl);color:var(--ink);overflow-wrap:anywhere}.up-next-none{font-family:var(--f-body);font-size:var(--fs-lg);color:var(--ink-soft);font-weight:600}.up-next-detail{font-size:var(--fs-lg);line-height:var(--lh-lg);color:var(--ink-soft)}.up-next-actions{gap:var(--sp-md);margin-top:var(--sp-xs);display:flex}.up-next-actions>*{flex:1}.section-head{font-family:var(--f-head);font-size:var(--fs-lg);line-height:var(--lh-lg);color:var(--ink);font-weight:600}.loading-screen{height:100dvh;font-family:var(--f-head);font-weight:600;font-size:var(--fs-lg);color:var(--ink-soft);justify-content:center;align-items:center;gap:var(--sp-sm);flex-direction:column;display:flex}@media (width<=720px){.desk-only{display:none!important}}@media (width>=721px){.mobile-only{display:none!important}}.route-map{border-radius:var(--r-sign);border:var(--frame);touch-action:pan-y;background-color:var(--panel);background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);background-position:50%;background-size:34px 34px;position:relative;overflow:hidden}.route-map-bare:after{content:"";background:radial-gradient(120% 100% at 50% 0%, transparent 30%, var(--panel) 100%);opacity:.72;pointer-events:none;position:absolute;inset:0}.route-map-tiles{position:absolute;inset:0}.route-map-tiles img{-webkit-user-select:none;user-select:none;filter:saturate(.62)brightness(.72)contrast(1.04);width:256px;height:256px;position:absolute}body.light-theme .route-map-tiles img{filter:saturate(.72)brightness(1.02)}.route-map-overlay{position:absolute;inset:0}.route-map-casing{fill:none;stroke:#00000073;stroke-width:7px;stroke-linejoin:round;stroke-linecap:round}body.light-theme .route-map-casing{stroke:#ffffffd9}.route-map-line{fill:none;stroke:var(--accent);stroke-width:3.4px;stroke-linejoin:round;stroke-linecap:round}.route-map-line.muted{stroke-width:2.2px;opacity:.5}.route-map-dot{stroke:var(--paper);stroke-width:2px;transition:r var(--dur-fast) var(--ease-out)}.route-map-pin.muted{opacity:.45}.route-map-pin:hover .route-map-dot{stroke:var(--accent)}.route-map-halo{opacity:.26;animation:wayside-map-halo 2.4s var(--ease-out) 2 forwards}@keyframes wayside-map-halo{0%{opacity:.34;transform:scale(.7)}70%{opacity:0;transform:scale(1.25)}to{opacity:0;transform:scale(1.25)}}.route-map-label{pointer-events:none;white-space:nowrap;text-overflow:ellipsis;border:1px solid var(--line);background:var(--panel-raised);max-width:148px;color:var(--ink);font-family:var(--f-body);font-size:var(--fs-sm);border-radius:var(--r-sign);cursor:pointer;padding:3px 7px;font-weight:700;position:absolute;overflow:hidden;transform:translate(-50%,-230%)}.route-map-label.active{border-color:var(--accent-line);background:var(--accent);color:var(--on-accent)}.route-map-credit{font-size:var(--fs-sm);color:var(--ink-soft);background:color-mix(in srgb, var(--panel-raised) 80%, transparent);border-radius:var(--r-sign);pointer-events:none;padding:2px 6px;position:absolute;bottom:5px;right:6px}.screen-skeleton{flex:1;width:100%;max-width:1180px;margin:0 auto;padding:20px 22px}.skeleton-block{border-radius:var(--r-sign);background:var(--panel);border:1px solid var(--line);position:relative;overflow:hidden}.skeleton-block:after{content:"";background:linear-gradient(100deg, transparent 20%, var(--line) 50%, transparent 80%);animation:dvx-skeleton 1.4s var(--ease-out) infinite;position:absolute;inset:0;transform:translate(-100%)}@keyframes dvx-skeleton{to{transform:translate(100%)}}.lazy-fallback{justify-content:center;align-items:center;gap:var(--sp-sm);min-height:180px;padding:var(--sp-xl) var(--gutter);text-align:center;color:var(--ink-soft);font-size:var(--fs-base);flex-direction:column;flex:1;display:flex}.lazy-fallback-sub{max-width:44ch;font-size:var(--fs-base);line-height:var(--lh-base);color:var(--ink-soft)}.lazy-fallback-retry{border:1.5px solid var(--line-strong);min-height:48px;color:var(--ink);font-family:inherit;font-weight:700;font-size:var(--fs-md);border-radius:var(--r-sign);background:0 0;padding:8px 20px}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (forced-colors:active){.badge-fire{color:marktext;outline-offset:-3px;background:mark;outline:3px solid marktext}.badge-warn{color:canvastext;outline-offset:-2px;background:canvas;outline:2px solid canvastext}.badge-fire-distant{color:canvastext;outline-offset:-2px;background:canvas;outline:2px dashed canvastext}.badge-watch{color:graytext;outline-offset:-1px;background:canvas;outline:1px dotted graytext}.segmented-btn.active,.tabbar-btn.current,.route-map-label.active{color:highlighttext;background:highlight}.toast-item{border:1px solid canvastext}.toast-item[data-tone=warn]{border:2px dashed canvastext}.toast-item[data-tone=error]{border:3px solid mark}:where(a,button,input,select,textarea,summary,[tabindex],[role=button],[role=tab],[role=radio],[role=checkbox],[role=switch]):focus-visible{outline-offset:2px;outline:3px solid highlight}}
