/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}::backdrop{--tw-rotate-x:initial;--tw-rotate-y:initial;--tw-rotate-z:initial;--tw-skew-x:initial;--tw-skew-y:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial}}}@layer theme{:root,:host{--font-sans:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";--font-mono:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono)}}@layer base{*,:after,:before{box-sizing:border-box;border:0 solid;margin:0;padding:0}::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){-webkit-appearance:button;appearance:button}::file-selector-button{-webkit-appearance:button;appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}}@layer components;@layer utilities{.\!visible{visibility:visible!important}.invisible{visibility:hidden}.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.static{position:static}.sticky{position:sticky}.block{display:block}.contents{display:contents}.grid{display:grid}.hidden{display:none}.inline{display:inline}.table{display:table}.transform{transform:var(--tw-rotate-x,) var(--tw-rotate-y,) var(--tw-rotate-z,) var(--tw-skew-x,) var(--tw-skew-y,)}.resize{resize:both}.antialiased{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.ring{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow)}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.filter{filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}.transition{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to,opacity,box-shadow,transform,translate,scale,rotate,filter,-webkit-backdrop-filter,backdrop-filter,display,content-visibility,overlay,pointer-events;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration))}}:root{--ink:#06151b;--panel:#0a2028;--line:#cde6e224;--muted:#8ba3a3;--foam:#edf5f1;--aqua:#73e5cb;--amber:#ffd27a;--danger:#ff745f;--instrument-surface:#071b22;--shore-stroke:#83aaa5;--shore-close:#ff8a76}html[data-theme=dark]{--ink:#030405;--panel:#101114;--muted:#92989e;--foam:#f5f6f7;--aqua:#dce3e7;--amber:#ffc857;--danger:#ff6257;--instrument-surface:#060709;--shore-stroke:#929da5;--shore-close:#ff756a}html[data-theme=xp]{--ink:#245ed7;--panel:#ece9d8;--muted:#4f5966;--foam:#10213b;--aqua:#1769e0;--amber:#dc7b00;--danger:#d33a2c;--instrument-surface:#edf0ed;--shore-stroke:#526779;--shore-close:#b72c21}html[data-theme=nautical]{--ink:#cbb98e;--panel:#e8dbb9;--muted:#75694f;--foam:#152f3b;--aqua:#174c5b;--amber:#a86d20;--danger:#ad382e;--instrument-surface:#e3d6b6;--shore-stroke:#776440;--shore-close:#9f2d23}*{box-sizing:border-box}[hidden]{display:none!important}html{background:var(--ink);min-height:100%}body{min-height:100%;color:var(--foam);font-family:var(--font-geist-sans), Arial, Helvetica, sans-serif;background:radial-gradient(circle at 70% -10%,#237e8533,#0000 36rem),linear-gradient(#071a20,#041116);margin:0;overflow-x:hidden}html[data-theme=dark] body{background:radial-gradient(circle at 68% -10%,#747e881f,#0000 34rem),linear-gradient(#090a0c,#020203)}html[data-theme=xp] body{background:linear-gradient(#1e5bd7 0%,#3a7de3 58%,#4c9f45 58%,#2f7f37 100%)}html[data-theme=nautical] body{background:radial-gradient(circle at 22% 12%,#ffffff3d,#0000 24rem),repeating-linear-gradient(96deg,#5d411c06 0 2px,#0000 2px 9px),#cbb98e}button{font:inherit;-webkit-tap-highlight-color:transparent;border:0}.alarm-audio{opacity:.001;pointer-events:none;width:1px;height:1px;position:fixed;overflow:hidden}.app-shell{width:min(100%,580px);min-height:100svh;padding:max(18px, env(safe-area-inset-top)) 16px max(24px, env(safe-area-inset-bottom));margin:0 auto}.topbar{justify-content:space-between;align-items:center;gap:16px;min-height:37px;display:flex}.brand{letter-spacing:.1em;text-transform:uppercase;align-items:center;gap:11px;font-size:.82rem;font-weight:730;display:flex}.brand-mark{width:39px;height:39px;color:var(--aqua);background:#73e5cb14;border-radius:50%;place-items:center;display:grid}.brand-mark svg{width:22px;height:22px}.app-version{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.04em;text-transform:lowercase;margin-left:-5px;font-size:.68rem;font-weight:650}.connection{color:var(--muted);align-items:center;gap:7px;font-size:.76rem;display:flex}.connection-dot{background:var(--aqua);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #73e5cb14}.connection-dot.offline{background:var(--amber);box-shadow:0 0 0 4px #ffd27a14}.intro{grid-template-columns:minmax(0,1fr) 126px;align-items:center;gap:8px;min-height:210px;padding:clamp(26px,5svh,48px) 0 20px;display:grid;position:relative}.intro-copy-block{z-index:2;animation:.55s cubic-bezier(.2,.75,.25,1) both launch-rise;position:relative}.eyebrow{color:var(--aqua);font-family:var(--font-geist-mono), monospace;letter-spacing:.16em;text-transform:uppercase;margin:0 0 11px;font-size:.68rem}.intro h1{letter-spacing:-.065em;max-width:370px;margin:0;font-size:clamp(2.8rem,12.5vw,4.25rem);font-weight:590;line-height:.88}.intro-copy{color:#afc1bf;max-width:350px;margin:14px 0 0;font-size:.86rem;line-height:1.42}.launch-radar{background:radial-gradient(circle,#73e5cb1f,#0a2d340a 57%,#0000 58%);border:1px solid #73e5cb2b;border-radius:50%;width:126px;height:126px;animation:.7s cubic-bezier(.2,.75,.25,1) 80ms both launch-radar-in;position:relative;overflow:hidden;box-shadow:0 0 40px #3cd3bb14}.launch-radar:before{transform-origin:0;content:"";background:linear-gradient(90deg,#73e5cbbd,#0000);width:48%;height:1px;animation:3.6s linear infinite launch-sweep;position:absolute;inset:50% 50% auto}.launch-radar:after{content:"";background:conic-gradient(#73e5cb21,#0000 22%,#0000);animation:3.6s linear infinite launch-sweep;position:absolute;inset:0}.launch-radar>i{border:1px solid #73e5cb29;border-radius:50%;position:absolute;inset:16%}.launch-radar>i:nth-child(2){inset:32%}.launch-radar>i:nth-child(3){border:0;border-top:1px solid #73e5cb1f;border-radius:0;inset:50% 5% auto}.launch-radar>span{z-index:2;width:38px;height:38px;color:var(--aqua);background:#0b3d42;border-radius:50%;place-items:center;animation:2.8s ease-in-out infinite launch-boat;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 0 0 7px #73e5cb0f,0 0 24px #73e5cb3d}.launch-radar svg{width:20px;height:20px}.launch-panel{padding-top:4px;animation:.55s cubic-bezier(.2,.75,.25,1) 80ms both launch-rise}.readiness{color:#b8cbc8;align-items:center;gap:10px;font-size:.82rem;display:flex}.readiness.failed{color:#ffd1ca}.readiness-dot{background:var(--aqua);border-radius:50%;width:8px;height:8px;animation:2s ease-in-out infinite readiness-pulse;box-shadow:0 0 0 4px #73e5cb14}.failed .readiness-dot{background:var(--danger)}.preferences{grid-template-columns:1fr 1fr;gap:8px;margin-top:14px;display:grid}.preference-field{gap:7px;display:grid}.preference-field>span{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;font-size:.68rem;font-weight:680}.preference-field select{-webkit-appearance:auto;appearance:auto;width:100%;min-height:44px;color:var(--foam);font:inherit;background:#fff1;border:0;border-radius:10px;outline:0;padding:0 13px;font-size:.82rem;font-weight:650}.preference-field select:focus-visible{box-shadow:0 0 0 3px #73e5cb42}.sunlight-setting{min-height:48px;color:var(--foam);background:#ffffff0b;border-radius:10px;justify-content:space-between;align-items:center;gap:14px;margin-top:10px;padding:8px 14px;display:flex}.offline-packages{background:#ffffff0a;border:1px solid #73e5cb21;border-radius:12px;margin-top:10px;overflow:hidden}.offline-packages>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:12px;min-height:52px;padding:9px 14px;list-style:none;display:flex}.offline-packages>summary::-webkit-details-marker{display:none}.offline-packages>summary>span{gap:3px;display:grid}.offline-packages>summary strong{color:var(--foam);font-size:.78rem}.offline-packages>summary small{color:var(--muted);font-size:.68rem}.offline-packages>summary>b{color:var(--aqua);font-family:var(--font-geist-mono), monospace;background:#73e5cb1f;border-radius:999px;padding:5px 9px;font-size:.68rem}.offline-package-body{border-top:1px solid #73e5cb1a;gap:9px;padding:11px;display:grid}.offline-package-body>p,.offline-package-body>small{color:var(--muted);margin:0;font-size:.68rem;line-height:1.45}.offline-package-list{gap:6px;display:grid}.offline-package-list article{background:#ffffff0b;border-radius:10px;grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:55px;padding:7px 8px;display:grid;position:relative;overflow:hidden}.offline-package-list article>span:nth-child(2){gap:2px;min-width:0;display:grid}.offline-package-list article strong{color:var(--foam);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.offline-package-list article small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.offline-package-icon{width:28px;height:28px;color:var(--aqua);background:#73e5cb1a;border-radius:9px;place-items:center;font-weight:900;display:grid}.offline-package-list button{min-height:31px;color:var(--aqua);cursor:pointer;background:#73e5cb24;border-radius:8px;padding:0 9px;font-size:.68rem;font-weight:800}.offline-package-list button:disabled{cursor:wait;opacity:.7}.offline-package-list article.ready{box-shadow:inset 0 0 0 1px #73e5cb26}.offline-package-list article>i{background:linear-gradient(90deg,var(--aqua) var(--offline-progress),#73e5cb14 var(--offline-progress));height:3px;animation:1.2s ease-in-out infinite offline-glow;position:absolute;bottom:0;left:0;right:0}.offline-package-error{color:var(--danger)!important}.sunlight-setting>span{gap:3px;display:grid}.sunlight-setting strong{font-size:.78rem}.sunlight-setting small{max-width:355px;color:var(--muted);font-size:.68rem;line-height:1.35}.sunlight-setting input{width:42px;height:24px;accent-color:var(--aqua);flex:none}.warning-settings{background:#ffffff0b;border-radius:10px;margin-top:10px}.warning-settings summary{min-height:48px;color:var(--muted);cursor:pointer;justify-content:space-between;align-items:center;gap:18px;padding:0 14px;font-size:.78rem;list-style:none;display:flex}.warning-settings summary::-webkit-details-marker{display:none}.warning-settings summary:before{content:"⚙";color:var(--aqua);font-size:.9rem}.warning-settings summary>span{margin-right:auto;font-weight:680}.warning-settings summary strong{color:var(--foam);font-family:var(--font-geist-mono), monospace;font-size:.68rem;font-weight:650}.settings-content{gap:12px;padding:3px 14px 15px;display:grid}.setting-row,.toggle-row{min-height:50px;color:var(--foam);justify-content:space-between;align-items:center;gap:14px;font-size:.8rem;display:flex}.setting-row-with-hint>span:first-child{gap:3px;display:grid}.setting-row-with-hint strong{font-size:.8rem}.setting-row-with-hint small{max-width:310px;color:var(--muted);font-size:.68rem;line-height:1.35}.number-field{background:#fff1;border-radius:8px;align-items:center;gap:7px;height:42px;padding:0 10px;display:flex}.number-field input{width:62px;color:var(--foam);font:inherit;text-align:right;background:0 0;border:0;outline:0;font-weight:700}.number-field b{color:var(--muted);font-family:var(--font-geist-mono), monospace;font-size:.68rem}.toggle-row>span{gap:3px;display:grid}.toggle-row strong{font-size:.8rem}.toggle-row small{color:var(--muted);font-size:.68rem;line-height:1.35}.toggle-row input{width:42px;height:24px;accent-color:var(--aqua)}.settings-section-label{color:var(--aqua);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;margin:5px 0 -2px;font-size:.68rem;font-weight:750}.setting-note{color:var(--muted);margin:-7px 0 0;font-size:.68rem;line-height:1.35}.volume-setting{color:var(--foam);grid-template-columns:1fr auto;align-items:center;gap:5px 12px;display:grid}.volume-setting>span{gap:3px;display:grid}.volume-setting strong{font-size:.8rem}.volume-setting small{color:var(--muted);font-size:.68rem;line-height:1.35}.volume-setting output{color:var(--aqua);font-family:var(--font-geist-mono), monospace;font-size:.82rem;font-weight:750}.volume-setting input{width:100%;height:32px;accent-color:var(--aqua);cursor:pointer;grid-column:1/-1;margin:0}.preset-row{background:#ffffff0a;border-radius:8px;align-items:center;gap:12px;padding:10px 11px;display:flex}.preset-row p{color:var(--muted);flex:1;margin:0;font-size:.68rem;line-height:1.42}.preset-row button{min-height:34px;color:var(--aqua);cursor:pointer;background:#73e5cb1c;border-radius:7px;flex:none;padding:0 10px;font-size:.68rem;font-weight:700}.launch-actions{grid-template-columns:1.35fr .65fr;gap:8px;margin-top:14px;display:grid}.navigation-resume-card{background:linear-gradient(135deg,#73e5cb1f,#ffd27a0d);border:1px solid #73e5cb33;border-radius:12px;grid-template-columns:40px minmax(0,1fr);gap:9px 11px;margin-top:10px;padding:11px;display:grid;box-shadow:0 8px 22px #0212171f}.navigation-resume-card>span{background:var(--aqua);color:#05362f;border-radius:50%;place-items:center;width:40px;height:40px;font-size:1.25rem;font-weight:900;display:grid}.navigation-resume-card>div{gap:3px;min-width:0;display:grid}.navigation-resume-card strong{color:var(--foam);font-size:.8rem}.navigation-resume-card small{color:var(--muted);text-overflow:ellipsis;font-size:.68rem;line-height:1.35;overflow:hidden}.navigation-resume-card>div:last-child{grid-column:2;gap:7px;display:flex}.navigation-resume-card button{min-height:36px;color:var(--foam);cursor:pointer;background:#ffffff12;border-radius:8px;padding:0 11px;font-size:.68rem;font-weight:800}.navigation-resume-card button.navigation-resume-primary{background:var(--aqua);color:#05362f}.navigation-resume-card button:disabled{cursor:wait;opacity:.45}.primary-button,.secondary-button{cursor:pointer;border-radius:10px;min-height:54px;font-weight:740;position:relative;overflow:hidden}.primary-button{background:var(--aqua);color:#05231f}.primary-button:after{content:"";background:#ffffff4d;width:24%;animation:4.2s ease-in-out 1.2s infinite launch-button-shine;position:absolute;top:-60%;bottom:-60%;left:-35%;transform:rotate(18deg)}.primary-button:disabled,.secondary-button:disabled{cursor:wait;opacity:.45}.secondary-button{color:var(--foam);background:#fff1}.fine-print{color:#6d8585;margin:15px 0 0;font-size:.69rem;line-height:1.5}.is-tracking{height:100svh;min-height:0;padding-inline:0;padding-top:max(13px, env(safe-area-inset-top));padding-bottom:max(13px, env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow:hidden}.is-tracking .topbar{flex:none;min-height:38px;padding-inline:10px}.is-tracking .brand-mark{width:30px;height:30px}.is-tracking .brand-mark svg{width:18px;height:18px}.tracking-brand,.tracking-controls{align-items:center;gap:9px;display:flex}.tracking-controls{gap:12px}.is-tracking .connection{font-size:.68rem}.is-tracking .text-button{background:#ffffff0f;border-radius:999px;min-height:32px;padding:0 11px}.tracker{flex-direction:column;flex:1;gap:7px;min-height:0;padding-top:5px;display:flex}.tracker-content{flex:1;min-height:0;position:relative;overflow:hidden}.tracker-content>.instrument,.route-tab-panel,.weather-tab-panel,.activity-tab-panel{height:100%}.route-tab-panel,.weather-tab-panel,.activity-tab-panel{min-height:0}.trip-mode{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.13em;text-transform:uppercase;font-size:.68rem;font-weight:650}.sunlight-badge{color:#ffd972;font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;text-transform:uppercase;background:#ffd65a26;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:780}.text-button{color:#a8bcba;cursor:pointer;background:0 0;min-width:44px;min-height:36px;font-size:.77rem}.instrument{min-height:0;box-shadow:none;isolation:isolate;background:radial-gradient(circle at 50% 55%,#1d60671f,#0000 58%),linear-gradient(#0b222ae0,#06161cf2);border-radius:0;grid-template-rows:auto minmax(0,1fr) auto;transition:background .3s,box-shadow .3s;display:grid;position:relative;overflow:hidden}.instrument.inside-limit{background:radial-gradient(circle at 50% 56%,#ff745f17,#0000 60%),linear-gradient(#172024e6,#0a161bf7)}.instrument.course-danger{box-shadow:inset 0 0 90px #ff462d0e}.theme-dark .instrument{background:radial-gradient(circle at 50% 55%,#ffffff0e,#0000 58%),linear-gradient(#111215f5,#050608fa)}.theme-dark .primary-button{color:#0a0b0c}.theme-xp .brand-mark{color:#fff;background:#1769e0;box-shadow:inset 0 1px #fff6,0 2px 5px #0000002e}.theme-xp .connection-dot,.theme-xp .readiness-dot{background:#51aa37;box-shadow:0 0 0 4px #23751e1a}.theme-xp .eyebrow{color:#eff6ff;text-shadow:0 1px 2px #00000047}.theme-xp .intro-copy,.theme-xp .readiness,.theme-xp .fine-print,.theme-xp .connection{color:#ffffffd1;text-shadow:0 1px 2px #00000040}.theme-xp .preference-field>span{color:#ffffffd1}.theme-xp .preference-field select,.theme-xp .secondary-button{color:#10213b;background:#ece9d8;box-shadow:inset 0 2px #ffffffbf,0 3px 8px #0000002e}.theme-xp .sunlight-setting{color:#10213b;background:#ece9d8;box-shadow:inset 0 2px #ffffffbf,0 3px 8px #00000024}.theme-xp .offline-packages,.theme-xp .activity-entry-button{color:#10213b;background:#ece9d8;border-color:#174f9f33;box-shadow:inset 0 2px #ffffffbf,0 3px 8px #00000024}.theme-xp .offline-packages :where(strong,small),.theme-xp .activity-entry-button :where(b,small){color:#304155}.theme-xp .warning-settings{background:#ece9d8}.theme-xp .warning-settings summary,.theme-xp .settings-content,.theme-xp .setting-row,.theme-xp .toggle-row,.theme-xp .volume-setting,.theme-xp .warning-settings summary strong,.theme-xp .number-field input{color:#10213b}.theme-xp .number-field,.theme-xp .preset-row{background:#245ed714}.theme-xp .preset-row button{color:#174f9f;background:#dce9f9}.theme-xp .primary-button{color:#fff;background:linear-gradient(#4087ed,#0d55c7);box-shadow:inset 0 2px #ffffff52,0 3px 8px #0003}.theme-xp.is-tracking .topbar{color:#fff}.theme-xp .trip-mode,.theme-xp .text-button,.theme-xp.is-tracking .connection{color:#ffffffd9}.theme-xp .instrument{box-shadow:none;background:radial-gradient(circle at 50% 54%,#5d97e01f,#0000 60%),linear-gradient(#f8f8f4,#e5e8e5)}.theme-xp .instrument.inside-limit{background:radial-gradient(circle at 50% 55%,#d33a2c17,#0000 60%),linear-gradient(#fff8f5,#e9e5de)}.theme-xp .instrument-summary,.theme-xp .instrument-footer{background:#eef1f0f0;border-color:#213f5924}.theme-xp .status-pill,.theme-xp .sound-state,.theme-xp .instrument-meta{color:#304155;background:#dae0e2d1}.theme-xp .instrument-meta strong{color:#10213b}.theme-xp .course-alert{background:#ffe597eb}.theme-xp .course-alert.danger{background:#ffcdc3f0}.theme-xp .course-alert strong,.theme-xp .course-alert small{color:#5f3b00}.theme-xp .course-alert.danger strong,.theme-xp .course-alert.danger small{color:#78251d}.theme-xp .sound-button{color:#10213b;background:#dce9f9;box-shadow:inset 0 2px #ffffffb3}.theme-xp .next-button{color:#10213b;background:#ece9d8;box-shadow:inset 0 2px #fffc}.theme-xp #plotGlow stop:first-child{stop-color:#74a9e8}.theme-xp #plotGlow stop:nth-child(2){stop-color:#b7d1ee}.theme-nautical{font-family:Georgia,Times New Roman,serif}.theme-nautical .brand,.theme-nautical .eyebrow,.theme-nautical .trip-mode,.theme-nautical .preference-field>span,.theme-nautical .distance-readout small,.theme-nautical .status-pill,.theme-nautical .sound-state,.theme-nautical .instrument-meta,.theme-nautical .course-alert small,.theme-nautical .sound-button small{font-family:var(--font-geist-mono), monospace}.theme-nautical .brand-mark{color:#f4e9cb;background:#174c5b}.theme-nautical :where(.intro-copy,.readiness,.fine-print,.connection){color:#314c50;text-shadow:none}.theme-nautical .readiness.failed{color:#7c2e27}.theme-nautical .preference-field>span{color:#5f563f}.theme-nautical .preference-field select,.theme-nautical .secondary-button{color:#152f3b;background:#f4e9cb94;box-shadow:0 5px 14px #432f141f}.theme-nautical .sunlight-setting{color:#152f3b;background:#f4e9cb80}.theme-nautical .warning-settings{background:#f4e9cb80}.theme-nautical .offline-packages,.theme-nautical .activity-entry-button{color:#152f3b;background:#f4e9cb8f;border-color:#174c5b29}.theme-nautical .offline-packages :where(strong,small),.theme-nautical .activity-entry-button :where(b,small){color:#314c50}.theme-nautical .warning-settings summary,.theme-nautical .setting-row,.theme-nautical .toggle-row,.theme-nautical .volume-setting,.theme-nautical .warning-settings summary strong,.theme-nautical .number-field input{color:#152f3b}.theme-nautical .number-field,.theme-nautical .preset-row{background:#174c5b14}.theme-nautical .preset-row button{color:#174c5b;background:#174c5b24}.theme-nautical .primary-button{color:#f4e9cb;background:#174c5b;box-shadow:0 5px 14px #174c5b38}.theme-nautical .instrument{box-shadow:none;background:radial-gradient(circle at 50% 54%,#ffffff47,#0000 60%),repeating-linear-gradient(96deg,#5d411c05 0 2px,#0000 2px 8px),linear-gradient(#eee3c5,#ded0ab)}.theme-nautical .instrument.inside-limit{background:radial-gradient(circle at 50% 55%,#ad382e1a,#0000 60%),linear-gradient(#eee0c0,#d9c8a1)}.theme-nautical .instrument-summary,.theme-nautical .instrument-footer{background:#e7dbbbf0;border-color:#483b1d24}.theme-nautical .status-pill,.theme-nautical .sound-state,.theme-nautical .instrument-meta{color:#5e553f;background:#e0d2afcc}.theme-nautical .instrument-meta strong{color:#152f3b}.theme-nautical .course-alert{background:#c3974642}.theme-nautical .course-alert.danger{background:#ad382e2e}.theme-nautical .course-alert strong,.theme-nautical .course-alert small{color:#694711}.theme-nautical .course-alert.danger strong,.theme-nautical .course-alert.danger small{color:#7c2e27}.theme-nautical .sound-button{color:#152f3b;background:#174c5b26}.theme-nautical .next-button{color:#152f3b;background:#f4e9cb94}.theme-nautical #plotGlow stop:first-child{stop-color:#a9a079}.theme-nautical #plotGlow stop:nth-child(2){stop-color:#d6c9a3}.sunlight-mode{--foam:#071b22;--muted:#405f62;--aqua:#006b60;--amber:#8c5b00;--danger:#c52e22;--shore-stroke:#385f64;--shore-close:#b8271f}.sunlight-mode.is-tracking{color:#071b22;background:#dcebe7}.sunlight-mode.is-tracking .topbar,.sunlight-mode.is-tracking .connection,.sunlight-mode .trip-mode,.sunlight-mode .text-button{color:#173b40;text-shadow:none}.sunlight-mode .brand-mark{color:#fff;box-shadow:none;background:#006b60}.sunlight-mode .connection-dot{background:#006b60;box-shadow:0 0 0 4px #006b601a}.sunlight-mode .sunlight-badge{color:#644300;background:#fff1a8}.sunlight-mode .instrument,.sunlight-mode .instrument.inside-limit{box-shadow:none;background:radial-gradient(circle at 50% 54%,#378b841f,#0000 61%),linear-gradient(#fbfdfc,#e4efec)}.sunlight-mode .instrument.inside-limit{background:radial-gradient(circle at 50% 55%,#c52e221a,#0000 60%),linear-gradient(#fffdfb,#eee5df)}.sunlight-mode .instrument-summary,.sunlight-mode .instrument-footer{background:#f6fbf9f0;border-color:#00634f24}.sunlight-mode .distance-readout strong{color:#071b22;text-shadow:none}.sunlight-mode .distance-readout strong.placeholder{color:#72898a}.sunlight-mode .distance-map-overlay{background:0 0}.sunlight-mode .status-pill,.sunlight-mode .sound-state,.sunlight-mode .instrument-meta{color:#405f62;background:#ffffffd1;box-shadow:0 4px 18px #123e3f14}.sunlight-mode .instrument-meta strong{color:#071b22}.sunlight-mode .proximity-ring{stroke:#006b6094;fill:#006b6006}.sunlight-mode .map-boat .boat-halo{fill:#006b6017;stroke:#006b6061}.sunlight-mode .map-boat path{fill:#006b60;stroke:#003c37}.sunlight-mode #plotGlow stop:first-child{stop-color:#c5ded9}.sunlight-mode #plotGlow stop:nth-child(2){stop-color:#e0ece9}.sunlight-mode .course-alert{background:#ffeebdf0}.sunlight-mode .course-alert strong,.sunlight-mode .course-alert small{color:#624000}.sunlight-mode .course-alert.danger{background:#ffd6cff5}.sunlight-mode .course-alert.danger strong,.sunlight-mode .course-alert.danger small{color:#7b2018}.instrument-summary{z-index:4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#05141ac2;border-bottom:1px solid #73e5cb1f;gap:6px;padding:8px 12px 9px;display:grid;position:relative}.summary-status-row{justify-content:space-between;align-items:center;gap:8px;min-width:0;display:flex}.status-pill,.sound-state{color:#d7e7e3;min-width:0;font-family:var(--font-geist-mono), monospace;letter-spacing:.055em;text-transform:uppercase;background:#ffffff0e;border-radius:999px;align-items:center;gap:7px;font-weight:800;display:flex}.status-pill{min-height:42px;padding:0 13px;font-size:.78rem;box-shadow:0 5px 20px #0000001f}.sound-state{min-height:30px;color:var(--muted);text-overflow:ellipsis;white-space:nowrap;padding:0 10px;font-size:.68rem;overflow:hidden}.status-pill span,.sound-state span{background:var(--aqua);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 4px #73e5cb14}.status-pill.danger{color:#fff4f2;background:#841f17f0;box-shadow:0 0 0 2px #ff745f47,0 8px 28px #7118114d}.status-pill.danger span,.sound-state.blocked span{background:var(--danger);box-shadow:0 0 0 3px #ff745f1a}.status-pill.waiting span{background:var(--amber)}.status-pill.stale{color:var(--amber)}.status-pill.stale span{background:var(--amber);box-shadow:0 0 0 3px #ffd27a1f}.sound-state.blocked{color:#ff9b8c}.sound-state.muted{color:var(--muted)}.sound-state.muted span{background:var(--muted);box-shadow:none}.visual-signal{z-index:7;pointer-events:none;justify-content:center;align-items:center;padding-top:32%;display:flex;position:absolute;inset:0}.visual-signal.distance,.visual-signal.speed,.visual-signal.anchor{animation:2.4s ease-out both danger-screen-signal}.visual-signal.safe{animation:2s ease-out both safe-screen-signal}.visual-signal-card{text-align:center;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:13px;gap:3px;min-width:min(82%,330px);padding:13px 18px;animation:.35s ease-out both signal-card-arrive;display:grid}.visual-signal.distance .visual-signal-card,.visual-signal.speed .visual-signal-card,.visual-signal.anchor .visual-signal-card{color:#fff0ed;background:#571712f0;box-shadow:0 12px 40px #5f140d57}.visual-signal.safe .visual-signal-card{color:#e7fff9;background:#073f38f0;box-shadow:0 12px 40px #04403747}.visual-signal-card strong{letter-spacing:.01em;font-size:1.28rem}.visual-signal-card small{font-family:var(--font-geist-mono), monospace;opacity:.9;font-size:.8rem}.theme-xp .visual-signal.distance .visual-signal-card,.theme-xp .visual-signal.speed .visual-signal-card{color:#fff;background:#97271ef2}.theme-xp .visual-signal.safe .visual-signal-card{color:#fff;background:#1c682bf2}.theme-nautical .visual-signal.distance .visual-signal-card,.theme-nautical .visual-signal.speed .visual-signal-card{color:#fff5dc;background:#77261ff0}.theme-nautical .visual-signal.safe .visual-signal-card{color:#fff5dc;background:#174c5bf0}.summary-primary-row{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:8px 12px;display:grid}.distance-map-overlay{z-index:4;pointer-events:none;background:0 0;grid-template-rows:auto minmax(0,1fr) auto;align-items:start;padding:14px 12px 12px;position:absolute;inset:0}.distance-readout{text-align:left;pointer-events:none;grid-column:1/-1;min-width:0;container-type:inline-size}.distance-readout>span:first-child{color:var(--muted);letter-spacing:.14em;text-transform:uppercase;font-size:.68rem;font-weight:680;display:block}.distance-value{align-items:baseline;gap:8px;min-width:0;display:flex}.distance-readout strong{min-width:0;max-width:100%;font-size:min(clamp(calc(11.2rem * var(--distance-scale,1)), calc(56vw * var(--distance-scale,1)), calc(17rem * var(--distance-scale,1))), calc((100cqi - 3rem) * .47));font-variant-numeric:tabular-nums;letter-spacing:-.055em;white-space:nowrap;text-shadow:0 8px 28px #00000038;font-weight:650;line-height:.82;display:block;overflow:visible}.distance-readout strong.placeholder{color:#395158;letter-spacing:-.03em}.distance-readout small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-transform:uppercase;flex:none;font-size:.7rem;display:block}.summary-primary-row>.go-no-go{grid-column:2;justify-self:end}.distance-map-overlay>.go-no-go{grid-row:3;align-self:end}.distance-map-overlay>.distance-readout{color:#071b22;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);background:linear-gradient(135deg,#fafffdf5,#e5f3f0e6);border:1px solid #fff3;border-radius:18px;justify-self:start;width:min(72%,280px);padding:12px 15px 14px;box-shadow:0 12px 30px #031c202e}.distance-map-overlay .distance-readout>span:first-child,.distance-map-overlay .distance-readout small{color:#45696b}.distance-map-overlay .distance-readout strong{color:#071b22;font-size:min(clamp(calc(5.6rem * var(--distance-scale,1)), calc(27vw * var(--distance-scale,1)), calc(8rem * var(--distance-scale,1))), calc((100cqi - 2rem) * .47));text-shadow:none;line-height:.88}.distance-map-overlay .distance-readout strong.placeholder{color:#395158}.anchor-timer-chip{width:100%;min-height:27px;color:var(--muted);font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;background:#05141a8f;border-radius:8px;justify-content:center;align-items:center;gap:6px;padding:0 9px;display:flex}.anchor-timer-chip small,.anchor-timer-chip em{letter-spacing:.03em;text-transform:uppercase;font-size:.68rem;font-style:normal}.anchor-timer-chip b{color:var(--foam);font-size:.68rem}.anchor-timer-chip.running{box-shadow:inset 0 0 0 1px #73e5cb26}.anchor-timer-chip.active{color:#dffff7;background:#075f50e0}.anchor-timer-chip.blocked{box-shadow:inset 0 0 0 1px #ffd27a29}.anchor-set-button{min-height:30px;color:var(--aqua);cursor:pointer;background:#73e5cb14;border:1px solid #73e5cb33;border-radius:9px;justify-content:center;align-items:center;gap:7px;font-size:.68rem;font-weight:800;display:flex}.anchor-set-button:disabled{cursor:default;opacity:.42}.anchor-watch-card{color:#fff;background:linear-gradient(135deg,#055b4de6,#062c2de6);border:1px solid #73e5cb40;border-radius:11px;grid-template-columns:34px minmax(0,1fr) auto auto;align-items:center;gap:7px;min-height:45px;padding:5px 7px;display:grid;box-shadow:0 7px 22px #02221f33}.anchor-watch-symbol{background:#ffffff21;border-radius:9px;place-items:center;width:32px;height:32px;font-size:1.05rem;display:grid}.anchor-watch-card>span:nth-child(2),.anchor-watch-distance{gap:1px;display:grid}.anchor-watch-card small{color:#ffffffbf;text-transform:uppercase;font-size:.68rem}.anchor-watch-card b{font-size:.68rem}.anchor-watch-distance{text-align:right}.anchor-watch-distance strong{font-family:var(--font-geist-mono), monospace;font-size:.8rem}.anchor-watch-card button{color:#fff;cursor:pointer;background:#ffffff21;border-radius:8px;min-height:30px;padding:0 8px;font-size:.68rem;font-weight:800}.anchor-watch-card.breached{background:linear-gradient(135deg,#91271df5,#4f1915f0);border-color:#ff745fb3;animation:1.25s ease-in-out infinite anchor-card-alert}.sunlight-mode .anchor-timer-chip{color:#405f62;background:#ffffffe0}.sunlight-mode .anchor-timer-chip b{color:#071b22}.go-no-go{min-height:58px;font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;border:3px solid #0000;border-radius:999px;align-items:center;gap:8px;padding:0 15px 0 6px;font-size:1.12rem;font-weight:950;display:inline-flex}.go-no-go span{border-radius:50%;place-items:center;width:42px;height:42px;font-size:1.55rem;font-weight:950;line-height:1;display:grid}.go-no-go.go{color:#fff;background:#075f50;border-color:#7ff3d1;box-shadow:0 9px 30px #044a3e59,0 0 0 3px #7ff3d157}.go-no-go.go span{color:#063f36;background:#8ff5d8;box-shadow:inset 0 0 0 2px #ffffff7a}.go-no-go.no-go{color:#fff;background:#8b1f17f5;box-shadow:0 7px 26px #7418114d,0 0 0 3px #ff745f3d}.go-no-go.no-go span{background:#ff745f2e}.go-no-go.unknown{color:#ffe7a8;background:#4b3a12f0}.go-no-go.unknown span{background:#ffd27a24}.theme-xp .go-no-go.go,.theme-nautical .go-no-go.go,.sunlight-mode .go-no-go.go{color:#fff;background:#006b54;border-color:#a2ffe1;box-shadow:0 9px 30px #00503e47,0 0 0 3px #006b5433}.theme-xp .go-no-go.no-go,.theme-nautical .go-no-go.no-go,.sunlight-mode .go-no-go.no-go{color:#fff;background:#9f2d23}.theme-xp .go-no-go.unknown,.theme-nautical .go-no-go.unknown,.sunlight-mode .go-no-go.unknown{color:#fff3c5;background:#6b5316}.map-stage{min-height:260px;position:relative;overflow:hidden}.wind-overlay{--wind-flow-colour:#70eed6e6;--wind-flow-strong-colour:#ffcb5ceb;--wind-flow-danger-colour:#ff6452f0;z-index:3;contain:strict;opacity:0;pointer-events:none;width:100%;height:100%;transition:opacity .3s;display:block;position:absolute;inset:0}.wind-overlay.visible{opacity:.94}.sunlight-mode .wind-overlay{--wind-flow-colour:#00695be0;--wind-flow-strong-colour:#a66500e6;--wind-flow-danger-colour:#ae2d20eb}.theme-xp .wind-overlay{--wind-flow-colour:#0d53b1e0}.theme-nautical .wind-overlay{--wind-flow-colour:#005569e6}.wind-map-control{z-index:5;color:#d7e6e5;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#071c21d1;border:1px solid #73e5cb2e;border-radius:12px;align-items:center;gap:7px;min-height:42px;padding:5px 9px;display:flex;position:absolute;top:14px;right:12px;box-shadow:0 6px 18px #0214182e}.wind-map-control>span:last-child{text-align:left;gap:1px;display:grid}.wind-map-control small{color:#9eb5b4;text-transform:uppercase;font-size:.68rem;font-weight:750}.wind-map-control b{font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:.68rem}.wind-map-control.active{color:#fff;background:#04534fe6;border-color:#73e5cb80}.wind-map-control.offline{border-color:#ffd27a59}.wind-source-credit{z-index:4;color:#e6f6f1b8;text-shadow:0 1px 3px #06151b;pointer-events:none;font-size:.68rem;position:absolute;bottom:5px;left:50%;transform:translate(-50%)}.wind-arrow{width:25px;height:25px;color:var(--aqua);background:#73e5cb24;border-radius:50%;flex:none;place-items:center;font-size:1rem;font-weight:900;transition:transform .35s;display:inline-grid}.map-orientation-control{color:#d7e6e5;cursor:pointer;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#071c21d6;border:1px solid #73e5cb38;border-radius:12px;place-items:center;width:42px;height:42px;padding:5px;display:grid;box-shadow:0 6px 18px #0214182e}.map-orientation-control svg{width:28px;height:28px;display:block}.map-orientation-control svg>circle:first-child{fill:#ffffff0f;stroke:currentColor;stroke-width:1.4px}.map-orientation-control .compass-north{fill:#ff7465}.map-orientation-control .compass-south{fill:#dff9f2;opacity:.92}.map-orientation-control .compass-centre{fill:#06151b;stroke:#fff;stroke-width:1px}.map-orientation-control .compass-needle{transform-box:view-box;transform-origin:14px 14px;transition:transform .25s ease-out}.map-orientation-control.active{color:#fff;background:#04534ff0;border-color:#73e5cb9e;box-shadow:0 0 0 2px #73e5cb29,0 6px 18px #0214182e}.distance-orientation-control{z-index:5;position:absolute;top:64px;right:12px}.distance-map-gesture-surface{z-index:4;cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;position:absolute;inset:0}.distance-map-gesture-surface:active{cursor:grabbing}.distance-map-gesture-surface:focus-visible{outline-offset:-3px;outline:3px solid #73e5cb8c}.distance-map-zoom{z-index:5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#071c21db;border:1px solid #73e5cb38;border-radius:12px;display:grid;position:absolute;top:114px;right:12px;overflow:hidden;box-shadow:0 6px 18px #0214182e}.distance-map-zoom button{color:#effffb;cursor:pointer;background:0 0;border-bottom:1px solid #ffffff1f;place-items:center;width:42px;height:38px;font-size:1.1rem;font-weight:850;display:grid}.distance-map-zoom button:last-child{border-bottom:0}.distance-map-zoom .distance-map-auto{height:30px;color:var(--aqua);font-family:var(--font-geist-mono), monospace;letter-spacing:.02em;text-transform:uppercase;font-size:.68rem;font-weight:850}.distance-map-zoom.manual{border-color:#ffd27a85}.distance-map-zoom.manual .distance-map-auto{color:var(--amber)}.proximity-plot{z-index:2;width:100%;height:100%;position:absolute;inset:0;overflow:hidden}.gps-stale .proximity-plot{opacity:.62}.gps-inaccurate .proximity-plot{opacity:.7}.gps-lost .proximity-plot{opacity:.38;filter:grayscale(.45)}.gps-lost .distance-readout strong{opacity:.62}.land-hatch-layer{pointer-events:none}.land-hatch-area{fill:url(#landHatch);opacity:.94;shape-rendering:crispedges}.land-fill-mark{fill:#415353}.land-hatch-mark{fill:none;stroke:var(--shore-stroke);stroke-width:1.15px;opacity:.28;vector-effect:non-scaling-stroke}.sunlight-mode .land-fill-mark{fill:#cdd8d0}.theme-xp .land-fill-mark{fill:#c9d1c3}.theme-nautical .land-fill-mark{fill:#cbbd94}.nearest-shore-line{stroke:var(--shore-stroke);stroke-width:1.4px;stroke-linecap:round;stroke-dasharray:2.5 7;opacity:.3;vector-effect:non-scaling-stroke}.shore-segment{stroke:var(--shore-stroke);stroke-width:3px;stroke-linecap:round;opacity:.78;transition:stroke .25s,opacity .25s}.shore-segment.close{stroke:var(--shore-close);opacity:.92}.proximity-ring{fill:#73e5cb04;stroke:#73e5cb4a;stroke-width:2px;stroke-dasharray:2 5;vector-effect:non-scaling-stroke}.danger-ring-arc{fill:none;stroke:var(--danger);stroke-width:4.2px;stroke-linecap:round;vector-effect:non-scaling-stroke}.nearest-point{fill:#ff8c79;stroke:#ffffffbf;stroke-width:1px;vector-effect:non-scaling-stroke}.course-line{stroke:var(--amber);stroke-width:2.2px;stroke-linecap:round;stroke-dasharray:5 6;vector-effect:non-scaling-stroke}.course-hit{fill:var(--amber)}.course-danger .course-line{stroke:var(--danger)}.course-danger .course-hit{fill:var(--danger)}.map-boat .boat-halo{fill:#73e5cb14;stroke:#73e5cb3d;stroke-width:1.2px}.map-boat path{fill:var(--aqua);stroke:#062a29;stroke-width:1.5px;vector-effect:non-scaling-stroke}.map-boat .boat-centre{fill:#effffb}.map-boat .boat-halo,.route-boat circle{transform-box:fill-box;transform-origin:50%;animation:2.6s ease-out infinite boat-radar}.shallow-water-zone circle,.route-shallow-zone circle{fill:#ffaa3c33;stroke:#ffb14b;stroke-width:2px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke;animation:1.8s ease-in-out infinite shallow-pulse}.shallow-water-zone text,.route-shallow-zone text{fill:#fff3d3;stroke:#5a2b07e6;stroke-width:2.5px;paint-order:stroke;font-family:var(--font-geist-mono), monospace;text-anchor:middle;font-size:6px;font-weight:900}.anchor-swing-circle{fill:#73e5cb0b;stroke:var(--aqua);stroke-width:2px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.anchor-rode{stroke:var(--aqua);stroke-width:1.7px;stroke-dasharray:3 4;vector-effect:non-scaling-stroke;animation:1.3s linear infinite anchor-rode-flow}.anchor-point{fill:#075f50;stroke:#dffff7;stroke-width:1.5px;vector-effect:non-scaling-stroke}.anchor-map-watch text{fill:#fff;stroke:#04161be6;stroke-width:2.4px;paint-order:stroke;font-size:14px}.anchor-map-watch.breached .anchor-swing-circle,.anchor-map-watch.breached .anchor-rode{stroke:var(--danger)}.anchor-map-watch.breached .anchor-swing-circle{fill:#ff745f1a;animation:1.2s ease-in-out infinite ring-breathe}.plot-placeholder{fill:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;text-anchor:middle;font-size:9px;font-weight:700}.map-feature-labels{pointer-events:none}.map-feature-label text{fill:#f4fffc;stroke:#04161bf0;stroke-width:2.8px;paint-order:stroke;font-family:var(--font-geist-sans), sans-serif;text-anchor:middle;font-size:8.5px;font-weight:780}.map-feature-label.island text{fill:#fff6cf;letter-spacing:.04em;font-size:9px;font-weight:900}.map-feature-label.settlement text{font-size:8.5px}.map-feature-label.restaurant text{font-size:7.5px;font-weight:700}.map-feature-label.restaurant circle{fill:var(--amber);stroke:#04161be6;stroke-width:1.4px}.sunlight-mode .map-feature-label text,.theme-xp .map-feature-label text,.theme-nautical .map-feature-label text{fill:#102e31;stroke:#fffffff0}.sunlight-mode .map-feature-label.island text,.theme-nautical .map-feature-label.island text{fill:#5b470d}.proximity-map-credit{fill:#e6f6f1b8;stroke:#051419e0;stroke-width:1.4px;paint-order:stroke;text-anchor:start;font-size:4.4px}.sunlight-mode .proximity-map-credit,.theme-xp .proximity-map-credit,.theme-nautical .proximity-map-credit{fill:#345658;stroke:#ffffffe6}.instrument-footer{z-index:5;background:#05141ab8;border-top:1px solid #73e5cb1a;padding:7px 10px;position:relative}.instrument-meta{-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);min-height:48px;color:var(--muted);font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;background:#05141a94;border-radius:12px;justify-content:center;align-items:center;gap:0;font-size:.72rem;display:flex}.instrument-meta span{text-align:center;text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;padding-inline:3px;overflow:hidden}.instrument-meta strong{color:#d9e7e3;font-size:.88rem;font-weight:650}.current-depth-footer strong{color:var(--aqua)}.current-depth-footer.loading,.current-depth-footer.idle{opacity:.68}.current-depth-footer.unavailable,.current-depth-footer.error,.current-depth-footer.unavailable strong,.current-depth-footer.error strong{color:var(--amber)}.current-depth-footer.shallow,.current-depth-footer.shallow strong,.route-live-footer .shallow strong,.route-live-footer .shallow small{color:var(--danger)}.current-speed-footer strong{color:var(--aqua);font-size:1.05rem;font-weight:750}.current-speed-footer.danger,.current-speed-footer.danger strong{color:var(--danger)}.course-alert{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#3d2f0ff0;border-radius:11px;align-items:center;gap:12px;min-height:64px;padding:9px 12px;display:flex;box-shadow:0 8px 28px #00000038}.course-alert.danger{background:#371613e6}.course-symbol{width:48px;height:48px;color:var(--amber);background:#ffd27a2e;border-radius:50%;flex:none;place-items:center;font-size:1.55rem;display:grid}.course-alert.danger .course-symbol{color:var(--danger);background:#ff745f24}.course-alert>span:last-child{gap:2px;display:grid}.course-alert strong{color:#fff0cf;font-size:1.02rem;line-height:1.15}.course-alert.danger strong{color:#ffd4cd}.course-alert small{color:#e0c58f;font-family:var(--font-geist-mono), monospace;font-size:.76rem}.course-alert.danger small{color:#dca99f}.course-alert.gps-alert.stale{background:#413111eb}.course-alert.gps-alert.stale .course-symbol{color:var(--amber);background:#ffd27a29}.course-alert.gps-alert.inaccurate{background:#413111eb}.course-alert.gps-alert.inaccurate .course-symbol{color:var(--amber);background:#ffd27a29}.course-alert.gps-alert.lost{background:#4b1612f0}.course-alert.gps-alert.lost .course-symbol{color:var(--danger);background:#ff745f29}.course-alert.gps-alert.lost strong{color:#ffd4cd}.course-alert.gps-alert.lost small{color:#dca99f}.sunlight-mode .course-alert.gps-alert.stale,.sunlight-mode .course-alert.gps-alert.inaccurate{background:#ffedb1}.sunlight-mode .course-alert.gps-alert.lost{background:#ffd6cf}.compact-error{color:#ffd8d1;background:#ff745f1f;border-radius:8px;padding:10px 13px;font-size:.76rem;line-height:1.35}.tracker-actions{grid-template-columns:1fr 1fr;gap:9px;display:grid}.sound-button,.next-button{cursor:pointer;border-radius:13px;min-height:64px}.sound-button{color:var(--foam);background:#73e5cb1a;justify-content:center;align-items:center;gap:12px;display:flex}.sound-button svg{width:24px;height:24px;color:var(--aqua)}.sound-button>span{text-align:left;gap:1px;display:grid}.sound-button strong{font-size:.9rem}.sound-button small{color:var(--muted);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;font-size:.68rem}.next-button{color:var(--foam);background:#fff1;font-size:.87rem;font-weight:680}.sound-button:active,.next-button:active,.primary-button:active,.secondary-button:active{filter:brightness(.92);transform:translateY(1px)}.activity-entry-button{min-height:58px;color:var(--foam);cursor:pointer;text-align:left;background:linear-gradient(135deg,#73e5cb17,#2669751a);border:1px solid #73e5cb29;border-radius:12px;grid-template-columns:38px 1fr;align-items:center;gap:1px 10px;margin-top:10px;padding:8px 12px;display:grid}.activity-entry-button>span{width:38px;height:38px;color:var(--aqua);background:#73e5cb1f;border-radius:10px;grid-row:1/3;place-items:center;font-size:1.2rem;display:grid}.activity-entry-button b{align-self:end;font-size:.8rem}.activity-entry-button small{color:var(--muted);align-self:start;font-size:.68rem}.activity-tab-panel{overflow:hidden}.activity-overview{--activity-card:#ffffff0e;height:100%;min-height:0;color:var(--foam);padding:10px 10px max(14px,env(safe-area-inset-bottom));scrollbar-width:thin;background:radial-gradient(circle at 80% 0,#15848b33,#0000 20rem),linear-gradient(#08232b,#06171d);flex-direction:column;gap:10px;display:flex;overflow-y:auto}.activity-header{justify-content:space-between;align-items:center;min-height:44px;padding:0 3px;display:flex}.activity-header>span{gap:1px;display:grid}.activity-header small{color:var(--aqua);letter-spacing:.16em;font-size:.68rem;font-weight:850}.activity-header strong{font-size:1.25rem}.activity-header button{min-height:34px;color:var(--foam);cursor:pointer;background:#ffffff14;border-radius:9px;padding:0 12px}.activity-hero{background:linear-gradient(145deg,#0f6468b8,#072c36f0);border:1px solid #73e5cb24;border-radius:18px;grid-template-columns:1.25fr .8fr .95fr;align-items:end;min-height:146px;padding:16px;animation:.5s ease-out both activity-rise;display:grid;position:relative;overflow:hidden;box-shadow:0 16px 36px #0003}.activity-hero>span{z-index:1;gap:2px;display:grid;position:relative}.activity-hero small{color:#a9cfca;text-transform:uppercase;font-size:.68rem}.activity-hero strong{font-family:var(--font-geist-mono),monospace;font-size:1.35rem}.activity-hero em{color:#bcd2cf;font-size:.68rem;font-style:normal}.activity-radar{border:1px solid #73e5cb29;border-radius:50%;width:205px;height:205px;position:absolute;top:-70px;right:-45px}.activity-radar:before,.activity-radar:after{content:"";border:1px solid #73e5cb24;border-radius:50%;position:absolute;inset:22%}.activity-radar:after{inset:43%}.activity-radar i{transform-origin:0;background:linear-gradient(90deg,#73e5cbbf,#0000);width:48%;height:1px;animation:4s linear infinite activity-sweep;position:absolute;top:50%;left:50%}.activity-radar b{color:var(--aqua);position:absolute;top:52%;left:47%}.activity-live{background:#73e5cb14;border:1px solid #73e5cb29;border-radius:12px;grid-template-columns:9px 1fr auto;align-items:center;gap:10px;min-height:50px;padding:7px 11px;animation:.45s ease-out 80ms both activity-rise;display:grid}.activity-live>i{background:var(--aqua);border-radius:50%;width:8px;height:8px;animation:1.6s ease-in-out infinite activity-live-pulse;box-shadow:0 0 0 4px #73e5cb1f}.activity-live>span{display:grid}.activity-live small{color:var(--aqua);letter-spacing:.12em;font-size:.68rem}.activity-live strong{font-size:.72rem}.activity-live>b{font-family:var(--font-geist-mono),monospace;font-size:.7rem}.activity-timeline{gap:7px;display:grid}.activity-row{background:var(--activity-card);min-height:86px;animation:activity-rise .42s calc(var(--activity-index) * 55ms) ease-out both;border:1px solid #73e5cb1a;border-radius:14px;grid-template-columns:minmax(0,1fr) 42px;align-items:stretch;gap:3px;padding:6px;transition:border-color .2s,background .2s,transform .2s;display:grid;overflow:hidden}.activity-row.trip:hover,.activity-row.trip:focus-within{background:#73e5cb17;border-color:#73e5cb57;transform:translateY(-1px)}.activity-row-open{width:100%;min-width:0;color:inherit;text-align:left;background:0 0;border:0;border-radius:10px;grid-template-columns:38px minmax(0,1fr) clamp(78px,22vw,104px);align-items:center;gap:8px;padding:2px;display:grid}button.activity-row-open{cursor:pointer}button.activity-row-open:focus-visible{outline:2px solid var(--aqua);outline-offset:-2px}.activity-icon{width:38px;height:38px;color:var(--aqua);background:#3faab424;border-radius:11px;place-items:center;font-size:1.05rem;display:grid}.activity-row.anchor .activity-icon{color:var(--amber);background:#ffd27a1f}.activity-row-main{gap:2px;min-width:0;display:grid}.activity-row-main>small{color:var(--muted);text-transform:uppercase;font-size:.68rem}.activity-row-main>strong{text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.activity-row-main>span{color:#afc6c3;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.activity-row-open>b{color:var(--foam);font-family:var(--font-geist-mono),monospace;align-self:start;padding-top:4px;font-size:.68rem}.activity-meter{background:#ffffff12;border-radius:2px;height:3px;overflow:hidden}.activity-meter i{border-radius:inherit;background:linear-gradient(90deg,var(--aqua),#5aaec2);height:100%;animation:1s ease-out .2s both activity-meter;display:block}.activity-row.anchor .activity-meter i{background:linear-gradient(90deg,var(--amber),#f18d62)}.activity-mini-map{pointer-events:none;background:#b9d9dc;border:1px solid #73e5cb42;border-radius:11px;width:100%;height:64px;display:block;position:relative;overflow:hidden;box-shadow:inset 0 0 0 1px #ffffff38,0 5px 14px #0000001f}.activity-mini-map svg{width:100%;height:100%;display:block}.activity-mini-map>b{color:#fff;background:#03232ac7;border-radius:50%;place-items:center;width:17px;height:17px;font-size:.7rem;line-height:1;display:grid;position:absolute;top:5px;right:5px;box-shadow:0 2px 5px #0003}.activity-mini-water{fill:#b9d9dc}.activity-mini-land rect{fill:#d8ddce;shape-rendering:crispedges}.activity-mini-shore line{stroke:#4d716d;stroke-width:1.4px;stroke-linecap:round}.activity-mini-route-shadow{fill:none;stroke:#031e2380;stroke-width:5px;stroke-linecap:round;stroke-linejoin:round}.activity-mini-route{fill:none;stroke:#0b9e87;stroke-width:2.7px;stroke-linecap:round;stroke-linejoin:round}.activity-mini-start{fill:#fff;stroke:#087d68;stroke-width:2px}.activity-mini-end{fill:#ffd27a;stroke:#8f5a06;stroke-width:2px}.activity-mini-map.empty{background:radial-gradient(circle,#73e5cb24,#0000 38%),#0b333c;place-items:center;display:grid}.activity-mini-map.empty>i{border:1px solid #73e5cb3d;border-radius:50%;width:40px;height:40px;position:absolute}.activity-mini-map.empty>i:after{content:"";border:1px solid #73e5cb38;border-radius:50%;position:absolute;inset:9px}.activity-mini-map.empty>b{color:var(--aqua);box-shadow:none;background:0 0;position:relative;inset:auto}.activity-delete{color:#ffaaa0;cursor:pointer;background:#ff745f13;border:0;border-radius:11px;align-self:center;place-items:center;width:42px;height:52px;transition:background .18s,color .18s,transform .18s;display:grid}.activity-delete>svg{fill:none;stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;width:18px;height:18px}:is(.activity-delete:hover,.activity-delete:focus-visible){color:#ffd7d2;background:#ff745f33;outline:1px solid #ffaaa073;transform:scale(1.03)}.activity-empty{min-height:190px;color:var(--muted);text-align:center;border:1px dashed #73e5cb2e;border-radius:15px;align-content:center;place-items:center;gap:7px;padding:24px;display:grid}.activity-empty>span{color:var(--aqua);font-size:2rem}.activity-empty strong{color:var(--foam)}.activity-empty p{max-width:280px;font-size:.68rem;line-height:1.45}.activity-privacy{background:#00000021;border-radius:11px;grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:8px;margin-top:auto;padding:9px 10px;display:grid}.activity-privacy>span{color:var(--aqua)}.activity-privacy p{gap:1px;display:grid}.activity-privacy strong{font-size:.68rem}.activity-privacy small{color:var(--muted);font-size:.68rem}.activity-privacy button{color:#ffaaa0;cursor:pointer;background:#ff745f1a;border-radius:8px;min-height:30px;padding:0 9px;font-size:.68rem}.trip-detail{height:100%;min-height:0;color:var(--foam);padding:9px 10px max(14px,env(safe-area-inset-bottom));background:radial-gradient(circle at 85% 0,#23889133,#0000 22rem),linear-gradient(#08232b,#06171d);flex-direction:column;gap:9px;display:flex;overflow-y:auto}.trip-detail-header{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;min-height:52px;display:grid}.trip-detail-header>span{text-align:center;gap:2px;min-width:0;display:grid}.trip-detail-header small{color:var(--muted);text-transform:uppercase;font-size:.68rem}.trip-detail-header strong{text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.trip-detail-header button{min-height:34px;color:var(--foam);cursor:pointer;background:#ffffff14;border-radius:9px;padding:0 10px;font-size:.68rem;font-weight:800}.trip-detail-header button:last-child{color:var(--aqua);font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;background:#73e5cb24}.trip-detail-header button:disabled{cursor:default;opacity:.38}.track-map-wrap{background:#0b3943;border:1px solid #73e5cb24;border-radius:17px;min-height:246px;animation:.45s ease-out both activity-rise;position:relative;overflow:hidden;box-shadow:0 16px 34px #0003}.track-map{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;width:100%;min-height:246px;display:block}.track-map:active{cursor:grabbing}.track-map-water{fill:#dcecea}.track-map-land{fill:url(#trackLandHatch);opacity:.98}.track-map-land-base{fill:#bac8bd}.track-map-land-line{stroke:#314d4140;stroke-width:2px}.track-map-shore line{stroke:#546e69;stroke-width:1.8px;stroke-linecap:round}.track-route-underlay{fill:none;stroke:#031d228c;stroke-width:5.5px;stroke-linecap:round;stroke-linejoin:round}.track-route-segments line{stroke-width:3.2px;stroke-linecap:round}.track-route-segments .slow,.track-speed-legend .slow:before{stroke:#087d68;background:#087d68}.track-route-segments .cruise,.track-speed-legend .cruise:before{stroke:#e59b2f;background:#e59b2f}.track-route-segments .fast,.track-speed-legend .fast:before{stroke:#db4d3f;background:#db4d3f}.track-marker circle{stroke:#fff;stroke-width:1.6px}.track-marker.start circle{fill:#087d68}.track-marker.end circle{fill:#d48618}.track-marker text{fill:#fff;font-family:var(--font-geist-mono),monospace;text-anchor:middle;font-size:8px;font-weight:950}.track-map-scale{fill:#456761;font-family:var(--font-geist-mono),monospace;letter-spacing:.08em;font-size:6px;font-weight:800}.track-map-north path{fill:#0d766b;stroke:#fff;stroke-width:.8px}.track-map-north text{fill:#244c4b;font-family:var(--font-geist-mono),monospace;text-anchor:middle;font-size:7px;font-weight:900}.track-map-controls{-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#052327e6;border:1px solid #ffffff8c;border-radius:12px;display:grid;position:absolute;top:10px;right:10px;overflow:hidden;box-shadow:0 7px 18px #041e2238}.track-map-controls button{color:#f2fffc;cursor:pointer;background:0 0;border-bottom:1px solid #ffffff24;place-items:center;width:38px;height:38px;font-size:1.05rem;font-weight:800;display:grid}.track-map-controls button:last-child{color:var(--aqua);border-bottom:0;font-size:.9rem}.track-speed-legend{color:#d9e7e4;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#041d22c7;border-radius:999px;gap:7px;padding:6px 8px;font-size:.68rem;display:flex;position:absolute;top:9px;right:9px}.track-speed-legend span{align-items:center;gap:4px;display:flex}.track-speed-legend span:before{content:"";border-radius:50%;width:6px;height:6px}.track-map-help{color:#244c4b;pointer-events:none;background:#ffffffd1;border-radius:999px;padding:5px 8px;font-size:.68rem;font-weight:750;position:absolute;bottom:9px;right:54px}.track-map-loading,.track-map-empty{min-height:220px;color:var(--muted);border:1px dashed #73e5cb33;border-radius:17px;place-items:center;font-size:.68rem;display:grid}.track-speed-chart{background:#ffffff0b;border:1px solid #73e5cb1a;border-radius:14px;grid-template-rows:auto 1fr;gap:4px;min-height:96px;padding:10px 12px 7px;animation:.45s ease-out 60ms both activity-rise;display:grid}.track-speed-chart>span{justify-content:space-between;align-items:center;display:flex}.track-speed-chart small{color:var(--aqua);letter-spacing:.12em;font-size:.68rem;font-weight:850}.track-speed-chart b{font-family:var(--font-geist-mono),monospace;font-size:.68rem}.track-speed-chart svg{width:100%;height:58px;overflow:visible}.track-speed-chart path{fill:none;stroke:#ffffff1a;stroke-width:1px}.track-speed-chart polyline{fill:none;stroke:var(--aqua);stroke-width:2.2px;vector-effect:non-scaling-stroke}.trip-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:7px;display:grid}.trip-detail-grid>span{background:#ffffff0a;border:1px solid #73e5cb17;border-radius:11px;align-content:center;gap:3px;min-height:58px;padding:8px 10px;animation:.4s ease-out both activity-rise;display:grid}.trip-detail-grid small{color:var(--muted);text-transform:uppercase;font-size:.68rem}.trip-detail-grid strong{font-family:var(--font-geist-mono),monospace;font-size:.7rem}.trip-route-note{color:var(--aqua);background:#73e5cb14;border-radius:11px;grid-template-columns:28px 1fr;align-items:center;gap:8px;padding:9px 11px;display:grid}.trip-route-note p{color:var(--foam);gap:2px;display:grid}.trip-route-note strong{font-size:.68rem}.trip-route-note small{color:var(--muted);font-size:.68rem;line-height:1.35}.sunlight-mode .activity-overview,.sunlight-mode .trip-detail{--activity-card:#ffffffb8;color:#102d31;background:radial-gradient(circle at 85% 0,#00786e1f,#0000 20rem),linear-gradient(#e6f2ef,#d8e9e6)}.sunlight-mode .activity-hero{background:linear-gradient(145deg,#f9fcfb,#cfe5df);border-color:#005b4e33;box-shadow:0 12px 28px #123e3f1f}.sunlight-mode .activity-hero :where(strong,small,em){color:#173a3b}.sunlight-mode .activity-radar{border-color:#005b4e33}.sunlight-mode .activity-radar:before,.sunlight-mode .activity-radar:after{border-color:#005b4e29}.sunlight-mode .activity-row-main>span,.sunlight-mode .activity-header small,.sunlight-mode .track-speed-chart small{color:#076e63}.sunlight-mode .activity-row-main>small,.sunlight-mode .activity-hero small,.sunlight-mode .activity-hero em,.sunlight-mode .trip-detail-grid small,.sunlight-mode .trip-route-note small,.sunlight-mode .trip-detail-header small{color:#53716f}.sunlight-mode .activity-header button,.sunlight-mode .trip-detail-header button{color:#173a3b;background:#fffc}.sunlight-mode .trip-detail-grid>span,.sunlight-mode .track-speed-chart{background:#ffffffa6}.sunlight-mode .trip-route-note{background:#006b541a}.sunlight-mode .trip-route-note p{color:#173a3b}.sunlight-mode .activity-delete{color:#a22c24;background:#ab2a2012}:is(.sunlight-mode .activity-delete:hover,.sunlight-mode .activity-delete:focus-visible){color:#761b16;background:#ab2a2024;outline-color:#761b1659}@keyframes activity-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes activity-sweep{to{transform:rotate(360deg)}}@keyframes activity-live-pulse{50%{opacity:.45;transform:scale(.8)}}@keyframes activity-meter{0%{transform-origin:0;transform:scaleX(0)}}.tracker-tabs{grid-template-columns:repeat(4,1fr);gap:6px;min-height:50px;padding-inline:8px;display:grid}.tracker-tabs button{color:var(--muted);cursor:pointer;letter-spacing:.04em;background:#ffffff0b;border-radius:11px;justify-content:center;align-items:center;gap:8px;font-size:.76rem;font-weight:730;display:flex}.tracker-tabs button span{font-size:1rem}.tracker-tabs button.active{color:var(--aqua);background:#73e5cb21}.sunlight-mode .tracker-tabs button{color:#405f62;background:#ffffff94}.sunlight-mode .tracker-tabs button.active{color:#006b60;background:#fff;box-shadow:0 3px 15px #123e3f14}.theme-xp .tracker-tabs button{color:#40536a;background:#dfe5e7}.theme-xp .tracker-tabs button.active{color:#174f9f;background:#fff;box-shadow:inset 0 2px #fffc,0 2px 5px #00000026}.theme-nautical .tracker-tabs button{color:#655b43;background:#f4e9cb80}.theme-nautical .tracker-tabs button.active{color:#174c5b;background:#f4e9cbdb}.tracker-tabs button>span:first-child{background:currentColor;border:1px solid;border-radius:50%;flex:0 0 30px;place-items:center;width:30px;height:30px;display:grid}@supports (color:color-mix(in lab, red, red)){.tracker-tabs button>span:first-child{background:color-mix(in srgb,currentColor 8%,transparent)}}.tracker-tabs button>span:first-child{font-size:.92rem}.tracker-tabs button.active>span:first-child{background:currentColor}@supports (color:color-mix(in lab, red, red)){.tracker-tabs button.active>span:first-child{background:color-mix(in srgb,currentColor 14%,transparent)}}.weather-tab-panel{overflow:hidden}.weather-panel{--weather-ink:#edf5f1;--weather-muted:#a9c1bf;--weather-accent:#73e5cb;--weather-card:#ffffff0e;--weather-border:#73e5cb24;overscroll-behavior:contain;height:100%;min-height:0;color:var(--weather-ink);padding:8px 9px max(12px, env(safe-area-inset-bottom));scrollbar-width:thin;scrollbar-color:#73e5cb40 transparent;background:radial-gradient(circle at 82% 2%,#24919b30,#0000 22rem),linear-gradient(#081d25fa,#05141bfc);flex-direction:column;gap:10px;display:flex;overflow:hidden auto}.weather-panel>*{flex:none}.weather-header{justify-content:space-between;align-items:center;gap:12px;min-height:42px;padding:0 4px;display:flex}.weather-header>span:first-child{gap:2px;display:grid}.weather-header strong{color:var(--weather-ink);font-size:.96rem}.weather-header small{color:var(--weather-muted);font-size:.68rem}.weather-freshness{color:var(--weather-muted);white-space:nowrap;background:#73e5cb1a;border-radius:999px;align-items:center;gap:6px;padding:7px 9px;font-size:.68rem;font-weight:750;display:flex}.weather-freshness i{background:var(--weather-accent);border-radius:50%;width:7px;height:7px;box-shadow:0 0 0 3px #73e5cb1f}.weather-freshness.offline i,.weather-freshness.error i{background:var(--amber);box-shadow:0 0 0 3px #ffd27a1a}.weather-day-switch{border:1px solid var(--weather-border);background:var(--weather-card);border-radius:13px;grid-template-columns:1fr 1fr;gap:6px;padding:4px;display:grid}.weather-day-switch button{min-height:44px;color:var(--weather-muted);cursor:pointer;background:0 0;border-radius:10px;justify-content:space-between;align-items:center;padding:0 12px;display:flex}.weather-day-switch button span{font-size:.78rem;font-weight:800}.weather-day-switch button small{text-transform:uppercase;font-size:.68rem}.weather-day-switch button.active{color:var(--weather-accent);background:#73e5cb24;box-shadow:inset 0 0 0 1px #73e5cb29}.weather-hero{isolation:isolate;background:linear-gradient(145deg,#135963ad,#082631d1 60%,#061b23f5);border:1px solid #73e5cb1a;border-radius:18px;grid-template-columns:minmax(0,1fr) auto;align-content:space-between;min-height:156px;padding:15px 16px;display:grid;position:relative;overflow:hidden;box-shadow:0 15px 36px #00000029}.weather-caution .weather-hero{background:linear-gradient(145deg,#7455268c,#312e25d1 62%,#131c21f5)}.weather-danger .weather-hero{background:linear-gradient(145deg,#82322b94,#382224e0 62%,#18181dfa)}.weather-sky{z-index:-1;position:absolute;inset:0;overflow:hidden}.weather-sky>span{color:#edf5f147;filter:drop-shadow(0 8px 22px #00000029);font-size:4.8rem;line-height:1;animation:6s ease-in-out infinite weather-float;position:absolute;top:12px;right:20px}.weather-sky i{border:2px solid #73e5cb29;border-radius:50%;width:78%;height:78px;animation:5s ease-in-out infinite weather-wave;position:absolute;bottom:-43px;right:-12%;transform:rotate(-4deg)}.weather-sky i+i{border-color:#e6f6f117;animation-duration:6.5s;animation-delay:-2.2s;bottom:-56px;right:30%}.weather-condition-copy{grid-column:1/-1;grid-template-columns:auto 1fr;align-items:end;gap:3px 12px;display:grid}.weather-condition-copy>strong{color:var(--weather-ink);letter-spacing:-.075em;font-size:3.85rem;font-weight:620;line-height:.83}.weather-condition-copy p{max-width:76%;color:var(--weather-muted);grid-column:1/-1;margin:5px 0 0;font-size:.68rem;line-height:1.4}.weather-condition-badge{color:#dff8ef;letter-spacing:.04em;text-transform:uppercase;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);background:#04232780;border-radius:999px;align-self:start;align-items:center;gap:7px;width:max-content;min-height:24px;padding:0 9px;font-size:.68rem;font-weight:850;display:inline-flex}.weather-condition-badge i{background:var(--weather-accent);border-radius:50%;width:7px;height:7px;animation:2.4s ease-in-out infinite weather-status;box-shadow:0 0 0 4px #73e5cb1f}.weather-condition-badge.caution i{background:var(--amber);box-shadow:0 0 0 4px #ffd27a1f}.weather-condition-badge.danger i{background:var(--danger);box-shadow:0 0 0 4px #ff745f21}.weather-hero-range{text-align:right;gap:2px;display:grid;position:absolute;bottom:15px;right:16px}.weather-hero-range small{color:var(--weather-muted);text-transform:uppercase;font-size:.68rem}.weather-hero-range b{color:var(--weather-ink);font-family:var(--font-geist-mono), monospace;font-size:.8rem}.weather-metric-hint{color:var(--weather-muted);margin:-1px 3px -3px;font-size:.68rem}.weather-primary-grid{grid-template-columns:1fr 1fr;gap:7px;display:grid}.weather-primary-grid button{border:1px solid var(--weather-border);background:var(--weather-card);text-align:left;cursor:pointer;border-radius:14px;align-items:center;gap:10px;min-width:0;min-height:92px;padding:11px;transition:border-color .2s,background .2s,transform .2s;display:flex}.weather-primary-grid button:active{transform:scale(.98)}.weather-primary-grid button.active{border-color:var(--weather-accent);box-shadow:inset 0 0 0 1px var(--weather-accent);background:#73e5cb1f}@supports (color:color-mix(in lab, red, red)){.weather-primary-grid button.active{box-shadow:inset 0 0 0 1px color-mix(in srgb,var(--weather-accent) 25%,transparent)}}.weather-primary-grid button>span:last-child{gap:2px;min-width:0;display:grid}.weather-primary-grid small,.weather-details-grid small{color:var(--weather-muted);letter-spacing:.05em;text-transform:uppercase;font-size:.68rem;font-weight:760}.weather-primary-grid strong{color:var(--weather-ink);font-family:var(--font-geist-mono), monospace;font-variant-numeric:tabular-nums;white-space:nowrap;font-size:1.18rem;overflow:hidden}.weather-primary-grid strong em{color:var(--weather-muted);font-size:.68rem;font-style:normal;font-weight:650}.weather-primary-grid b{color:var(--weather-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;font-weight:600;overflow:hidden}.weather-metric-icon{width:38px;height:38px;color:var(--weather-accent);background:#73e5cb1f;border-radius:50%;flex:none;place-items:center;font-size:1.1rem;display:grid}.weather-metric-icon.wind-direction{transform:rotate(var(--direction));transition:transform .5s}.weather-metric-icon.wave-icon{animation:2.8s ease-in-out infinite weather-bob}.weather-window{background:linear-gradient(90deg,#115d5457,#ffffff09);border:1px solid #73e5cb2e;border-radius:14px;grid-template-columns:38px minmax(0,1fr) 24px;align-items:center;gap:10px;min-height:72px;padding:9px 12px;display:grid}.weather-window.caution{background:linear-gradient(90deg,#704e1b47,#ffffff08);border-color:#ffd27a38}.weather-window.danger{background:linear-gradient(90deg,#7d2c2645,#ffffff08);border-color:#ff745f3b}.weather-window-clock{width:38px;height:38px;color:var(--weather-accent);background:#73e5cb1c;border-radius:50%;place-items:center;font-size:1.2rem;display:grid}.weather-window>span:nth-child(2){gap:1px;display:grid}.weather-window small{color:var(--weather-accent);letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:800}.weather-window strong{color:var(--weather-ink);font-family:var(--font-geist-mono), monospace;font-size:1.04rem}.weather-window p{color:var(--weather-muted);margin:0;font-size:.68rem}.weather-window>i{color:var(--weather-accent);font-size:1rem;font-style:normal}.weather-hourly-section{gap:7px;display:grid}.weather-section-title{justify-content:space-between;align-items:center;padding:2px 3px 0;display:flex}.weather-section-title strong{color:var(--weather-ink);font-size:.76rem}.weather-section-title small{color:var(--weather-muted);font-size:.68rem}.weather-hourly-strip{scroll-snap-type:x mandatory;scrollbar-width:none;gap:7px;padding:1px 1px 5px;display:flex;overflow-x:auto}.weather-hourly-strip::-webkit-scrollbar{display:none}.weather-hour{border:1px solid var(--weather-border);background:var(--weather-card);scroll-snap-align:start;border-radius:13px;grid-template-rows:auto 29px auto auto auto auto;place-items:center;gap:4px;min-width:96px;min-height:158px;padding:10px 8px;animation:.35s both weather-card-in;display:grid}.weather-hour.caution{border-color:#ffd27a2e}.weather-hour.danger{border-color:#ff745f3d}.weather-hour time{color:var(--weather-muted);font-family:var(--font-geist-mono), monospace;font-size:.68rem}.weather-hour-symbol{color:var(--weather-accent);font-size:1.35rem}.weather-hour>strong{color:var(--weather-ink);font-size:1.08rem}.weather-hour-wind,.weather-hour-wave,.weather-hour-rain{color:var(--weather-muted);font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:.68rem}.weather-hour-wind{color:var(--weather-ink);align-items:center;gap:4px;display:flex}.weather-hour-wind i{color:var(--weather-accent);font-size:.68rem;font-style:normal;display:inline-block}.weather-visual-section{gap:7px;display:grid}.weather-section-title>span{gap:2px;display:grid}.weather-section-title>button{background:var(--weather-card);width:28px;height:28px;color:var(--weather-muted);cursor:pointer;border-radius:50%;place-items:center;font-size:1rem;display:grid}.weather-section-title>time{color:var(--weather-accent);font-family:var(--font-geist-mono), monospace;font-size:.68rem;font-weight:800}.weather-chart-card{border:1px solid var(--weather-border);background:linear-gradient(180deg,var(--weather-accent),var(--weather-card));border-radius:16px;overflow:hidden}@supports (color:color-mix(in lab, red, red)){.weather-chart-card{background:linear-gradient(180deg,color-mix(in srgb,var(--weather-accent) 9%,var(--weather-card)),var(--weather-card))}}.weather-chart-card{color:var(--weather-accent);padding:12px 10px 8px;animation:.28s both weather-card-in}.weather-chart-card>header{justify-content:space-between;align-items:end;gap:12px;padding:0 4px 6px;display:flex}.weather-chart-card>header span{gap:2px;display:grid}.weather-chart-card>header small{color:var(--weather-muted);letter-spacing:.06em;text-transform:uppercase;font-size:.68rem;font-weight:800}.weather-chart-card>header strong{color:var(--weather-ink);font-family:var(--font-geist-mono), monospace;font-size:1.35rem}.weather-chart-card>header time{color:var(--weather-accent);font-family:var(--font-geist-mono), monospace;font-size:.78rem;font-weight:850}.weather-chart{touch-action:none;cursor:crosshair;width:100%;height:auto;display:block}.weather-chart-grid{stroke:var(--weather-border);stroke-width:1px;stroke-dasharray:2 5}.weather-chart-area{fill:url(#weather-chart-fill)}.weather-chart-line{fill:none;stroke:currentColor;stroke-width:3px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 2px 4px var(--weather-accent))}@supports (color:color-mix(in lab, red, red)){.weather-chart-line{filter:drop-shadow(0 2px 4px color-mix(in srgb,var(--weather-accent) 28%,transparent))}}.weather-chart-line{animation:.7s both weather-chart-draw}.weather-chart-cursor line{stroke:var(--weather-ink);stroke-width:1px;stroke-dasharray:3 3;opacity:.55}.weather-chart-cursor circle{fill:var(--weather-ink);stroke:var(--weather-accent);stroke-width:3px}.weather-chart text{fill:var(--weather-muted);font-family:var(--font-geist-mono), monospace;font-size:8px}.weather-chart .weather-chart-extreme{opacity:.78;font-size:7px}.weather-chart-card>input{width:calc(100% - 12px);height:20px;accent-color:var(--weather-accent);cursor:ew-resize;margin:-5px 6px 0}.weather-metric-tabs{scrollbar-width:none;gap:6px;padding:0 1px 3px;display:flex;overflow-x:auto}.weather-metric-tabs::-webkit-scrollbar{display:none}.weather-metric-tabs button{border:1px solid var(--weather-border);background:var(--weather-card);min-height:34px;color:var(--weather-muted);cursor:pointer;border-radius:999px;flex:none;align-items:center;gap:5px;padding:0 10px;font-size:.68rem;font-weight:760;display:inline-flex}.weather-metric-tabs button span{color:var(--weather-accent);font-size:.72rem}.weather-metric-tabs button.active{border-color:var(--weather-accent);background:var(--weather-accent)}@supports (color:color-mix(in lab, red, red)){.weather-metric-tabs button.active{background:color-mix(in srgb,var(--weather-accent) 16%,var(--weather-card))}}.weather-metric-tabs button.active{color:var(--weather-ink)}.weather-map-card{border:1px solid var(--weather-border);background:#092c36;border-radius:17px;position:relative;overflow:hidden;box-shadow:0 10px 28px #00000024}.weather-map-card>svg{width:100%;height:auto;min-height:205px;display:block}.weather-map-water{fill:#0b3642}.weather-map-heat{opacity:.76;filter:saturate(.9)}.weather-map-land{fill:url(#weather-map-land-hatch);opacity:.97}.weather-map-land-base{fill:#17393e}.weather-map-land-line{stroke:#cde5dc38;stroke-width:2px}.weather-map-coast line{stroke:#c4ded7;stroke-width:1.4px;vector-effect:non-scaling-stroke;filter:drop-shadow(0 1px 2px #00000080)}.weather-map-labels text{fill:#eff9f5e0;paint-order:stroke;stroke:#04191fd1;stroke-width:2.7px;text-anchor:middle;font-size:7px;font-weight:780}.weather-map-vectors path{fill:none;stroke:#f8fefce6;stroke-width:1.3px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 2px #000000b8);animation:2.5s ease-in-out infinite weather-vector-pulse}.weather-map-hit-areas g{cursor:pointer;outline:none}.weather-map-hit-areas circle{fill:#041d24e6;stroke:#f0fffb;stroke-width:2.4px;filter:drop-shadow(0 2px 4px #0000008c)}.weather-map-hit-areas circle.focus-ring{opacity:0}.weather-map-hit-areas g:focus-visible circle{opacity:1;stroke:var(--weather-accent);stroke-width:4px}.weather-map-boat circle{fill:#73e5cb33;stroke:#73e5cb;stroke-width:2px;animation:2.6s ease-out infinite boat-radar}.weather-map-boat path{fill:#73e5cb;stroke:#062a29;stroke-width:1.5px}.weather-map-compass circle{fill:#04161bb3;stroke:#ffffff4d}.weather-map-compass path,.weather-map-scale path{fill:none;stroke:#dff9f2;stroke-width:1.25px;stroke-linecap:round;stroke-linejoin:round}.weather-map-compass text,.weather-map-scale text{fill:#fff;paint-order:stroke;stroke:#04161bb8;stroke-width:2px;text-anchor:middle;font-size:7px;font-weight:900}.weather-map-scale text{text-anchor:start}.weather-map-inspector{z-index:2;color:#f1faf7;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);background:#041c23c9;border:1px solid #e7faf533;border-radius:11px;justify-content:space-between;align-items:center;gap:12px;min-width:142px;padding:7px 9px;display:flex;position:absolute;top:9px;left:9px;box-shadow:0 5px 16px #0003}.weather-map-inspector>span{gap:1px;display:grid}.weather-map-inspector>span:last-child{text-align:right}.weather-map-inspector small{color:#abc7c3;font-size:.68rem}.weather-map-inspector strong{font-family:var(--font-geist-mono), monospace;font-size:.76rem}.weather-map-inspector b{color:#80ead1;font-size:.68rem}.weather-map-card>footer{color:#d8ece9;min-height:34px;font-family:var(--font-geist-mono), monospace;background:#04161beb;justify-content:space-between;align-items:center;gap:8px;padding:0 11px;font-size:.68rem;display:flex}.weather-map-card>footer span{align-items:center;gap:5px;display:inline-flex}.weather-map-card>footer i{border-radius:50%;width:9px;height:9px}.weather-map-card>footer time{color:#73e5cb;font-weight:850}.weather-map-loading{color:#d8ece9;-webkit-backdrop-filter:blur(7px);backdrop-filter:blur(7px);background:#04161bd1;border-radius:999px;padding:5px 9px;font-size:.68rem;position:absolute;top:8px;left:50%;transform:translate(-50%)}.weather-map-placeholder{border:1px solid var(--weather-border);min-height:205px;color:var(--weather-muted);background:linear-gradient(145deg,#0d3f49bf,#061c23f0);border-radius:17px;align-content:center;place-items:center;gap:9px;display:grid}.weather-map-placeholder .weather-loader{width:32px;height:32px}.weather-map-placeholder small{font-size:.68rem}.weather-map-placeholder button{color:#dff9f2;cursor:pointer;background:#73e5cb24;border-radius:999px;min-height:44px;padding:0 16px;font-size:.68rem;font-weight:850}.weather-details-grid{grid-template-columns:repeat(4,1fr);gap:6px;display:grid}.weather-details-grid article,.weather-details-grid button{border:1px solid var(--weather-border);background:var(--weather-card);text-align:left;border-radius:12px;align-content:center;gap:4px;min-width:0;min-height:78px;padding:9px;display:grid}.weather-details-grid button{cursor:pointer}.weather-details-grid button.active{border-color:var(--weather-accent);background:var(--weather-accent)}@supports (color:color-mix(in lab, red, red)){.weather-details-grid button.active{background:color-mix(in srgb,var(--weather-accent) 13%,var(--weather-card))}}.weather-details-grid strong{color:var(--weather-ink);font-family:var(--font-geist-mono), monospace;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem;overflow:hidden}.weather-details-grid span{color:var(--weather-muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.weather-source{border-top:1px solid var(--weather-border);color:var(--weather-muted);gap:2px;padding:8px 4px 2px;font-size:.68rem;line-height:1.35;display:grid}.weather-source small{font-size:.68rem}.weather-empty{text-align:center;justify-content:center;align-items:center;gap:9px}.weather-empty-symbol{color:var(--weather-accent);font-size:2.4rem}.weather-empty p{max-width:290px;color:var(--weather-muted);margin:0;font-size:.72rem;line-height:1.45}.weather-empty small{color:var(--weather-muted);font-family:var(--font-geist-mono), monospace;font-size:.68rem}.weather-empty button{min-height:40px;color:var(--weather-accent);cursor:pointer;background:#73e5cb21;border-radius:999px;padding:0 18px;font-size:.68rem;font-weight:800}.weather-loader{border:3px solid #73e5cb21;border-top-color:var(--weather-accent);border-radius:50%;width:42px;height:42px;animation:.8s linear infinite weather-spin}.theme-xp .weather-panel{--weather-ink:#10213b;--weather-muted:#4f5966;--weather-accent:#174f9f;--weather-card:#ffffffb8;--weather-border:#174f9f2e;background:linear-gradient(#edf1ef,#d9e3e5)}.theme-xp .weather-hero{background:linear-gradient(145deg,#f8fbff,#dce8f7);border-color:#174f9f38;box-shadow:0 8px 20px #293d5821}.theme-xp .weather-caution .weather-hero{background:linear-gradient(145deg,#fffaf0,#f1dfb7)}.theme-xp .weather-danger .weather-hero{background:linear-gradient(145deg,#fff6f3,#f0cfca)}.theme-xp .weather-sky>span{color:#174f9f38}.theme-xp .weather-sky i{border-color:#174f9f24}.theme-xp .weather-day-switch button.active{background:#fff;box-shadow:inset 0 0 0 1px #174f9f29,0 2px 6px #293d581a}.theme-xp .weather-metric-icon,.theme-xp .weather-window-clock{background:#174f9f1c}.theme-xp .weather-window{background:linear-gradient(90deg,#174f9f1c,#ffffffb3);border-color:#174f9f33}.theme-xp .weather-map-water{fill:#cadde9}.theme-xp .weather-map-coast line{stroke:#40553e}.theme-xp .weather-map-land-base{fill:#9cac9c}.theme-xp .weather-map-land-line{stroke:#1f3f2d3d}.theme-nautical .weather-panel{--weather-ink:#152f3b;--weather-muted:#655b43;--weather-accent:#174c5b;--weather-card:#f4e9cb9e;--weather-border:#49381829;background:repeating-linear-gradient(96deg,#5d411c05 0 2px,#0000 2px 9px),#e3d6b6}.theme-nautical .weather-hero{background:linear-gradient(145deg,#f4e9cb,#d8c69c);border-color:#4938182e;box-shadow:0 8px 20px #49381824}.theme-nautical .weather-caution .weather-hero{background:linear-gradient(145deg,#f3e4bd,#d6b874)}.theme-nautical .weather-danger .weather-hero{background:linear-gradient(145deg,#f2ddd0,#d6aaa0)}.theme-nautical .weather-sky>span{color:#174c5b38}.theme-nautical .weather-sky i{border-color:#174c5b26}.theme-nautical .weather-day-switch button.active{background:#f4e9cbe6;box-shadow:inset 0 0 0 1px #4938182e}.theme-nautical .weather-metric-icon,.theme-nautical .weather-window-clock{background:#174c5b1c}.theme-nautical .weather-window{background:linear-gradient(90deg,#174c5b1a,#f4e9cba6);border-color:#4938182e}.theme-nautical .weather-map-water{fill:#9fc2c3}.theme-nautical .weather-map-coast line{stroke:#604a25}.theme-nautical .weather-map-land-base{fill:#ad9d75}.theme-nautical .weather-map-land-line{stroke:#4b371647}.sunlight-mode .weather-panel{--weather-ink:#071b22;--weather-muted:#49696b;--weather-accent:#006b60;--weather-card:#ffffffd1;--weather-border:#005b4e2e;color:var(--weather-ink);scrollbar-color:#006b6052 transparent;background:radial-gradient(circle at 82% 2%,#47aa9d1f,#0000 22rem),linear-gradient(#f8fbfa,#dfecea)}.sunlight-mode .weather-hero{background:linear-gradient(145deg,#f8fcfb,#d7ebe7);border-color:#005b4e33;box-shadow:0 10px 25px #123e3f1f}.sunlight-mode .weather-caution .weather-hero{background:linear-gradient(145deg,#fff9eb,#f0ddb1)}.sunlight-mode .weather-danger .weather-hero{background:linear-gradient(145deg,#fff3f0,#eec9c3)}.sunlight-mode .weather-sky>span{color:#005b4e33}.sunlight-mode .weather-sky i{border-color:#006b6029}.sunlight-mode .weather-sky i+i{border-color:#071b221a}.sunlight-mode .weather-freshness{background:#006b601a}.sunlight-mode .weather-day-switch button.active{color:#006b60;background:#fff;box-shadow:inset 0 0 0 1px #005b4e29,0 3px 12px #123e3f14}.sunlight-mode .weather-primary-grid button,.sunlight-mode .weather-hour,.sunlight-mode .weather-details-grid article,.sunlight-mode .weather-details-grid button,.sunlight-mode .weather-day-switch{box-shadow:0 5px 16px #123e3f12}.sunlight-mode .weather-window{background:linear-gradient(90deg,#47aa9d29,#ffffffc2);border-color:#006b6038;box-shadow:0 5px 16px #123e3f12}.sunlight-mode .weather-window.caution{background:linear-gradient(90deg,#f4bc4533,#ffffffc2);border-color:#915d0040}.sunlight-mode .weather-window.danger{background:linear-gradient(90deg,#d2514329,#ffffffc2);border-color:#9f2d2340}.sunlight-mode .weather-map-water{fill:#d4e8e6}.sunlight-mode .weather-map-coast line{stroke:#45655c}.sunlight-mode .weather-map-land-base{fill:#aabfb7}.sunlight-mode .weather-map-land-line{stroke:#1c4c3e38}@keyframes weather-float{50%{transform:translateY(6px)scale(.98)}}@keyframes weather-wave{50%{transform:translate(-4%,-5px)rotate(-2deg)scaleX(1.08)}}@keyframes weather-status{50%{box-shadow:0 0 0 7px #0000}}@keyframes weather-bob{50%{transform:translateY(-3px)}}@keyframes weather-card-in{0%{opacity:0;transform:translateY(7px)}}@keyframes weather-spin{to{transform:rotate(360deg)}}@keyframes weather-chart-draw{0%{stroke-dasharray:1;stroke-dashoffset:1px}to{stroke-dasharray:1;stroke-dashoffset:0}}@keyframes weather-vector-pulse{50%{opacity:.58;transform:translateY(1px)}}.route-planner{overscroll-behavior:contain;height:100%;min-height:0;padding-bottom:max(6px, env(safe-area-inset-bottom));flex-direction:column;gap:8px;display:flex;overflow:auto}.route-planner>*{flex:none}.route-screen-header{min-height:42px;padding:2px 4px 0;display:block}.route-screen-heading{justify-content:space-between;align-items:center;gap:10px;min-height:40px;display:flex}.route-screen-heading>span:first-child{gap:1px;min-width:0;display:grid}.route-screen-heading strong{color:var(--foam);font-size:.86rem}.route-screen-heading small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.route-place-search{z-index:12;gap:4px;display:grid;position:relative}.route-place-search form{background:#ffffff0e;border:1px solid #73e5cb29;border-radius:12px;grid-template-columns:28px minmax(0,1fr) auto;align-items:center;min-height:42px;padding:3px 4px 3px 8px;display:grid;box-shadow:0 7px 18px #02121714}.route-place-search form>span{color:var(--aqua);font-size:1rem}.route-place-search input{min-width:0;color:var(--foam);background:0 0;border:0;outline:0;font-size:.68rem}.route-place-search input::placeholder{color:var(--muted);opacity:.9}.route-place-search form button{background:var(--aqua);color:#063a34;cursor:pointer;border-radius:9px;min-height:34px;padding:0 12px;font-size:.68rem;font-weight:900}.route-place-search form button:disabled{cursor:default;opacity:.42}.route-destination-history{background:#ffffff09;border:1px solid #73e5cb21;border-radius:12px;overflow:hidden}.route-destination-history>div:first-child{justify-content:space-between;align-items:center;min-height:32px;padding:3px 8px 2px 10px;display:flex}.route-destination-history>div:first-child strong{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem}.route-destination-history>div:first-child button{min-height:26px;color:var(--aqua);cursor:pointer;background:0 0;border-radius:7px;padding:0 6px;font-size:.68rem;font-weight:750}.route-destination-history>div:last-child{border-top:1px solid #73e5cb14;max-height:146px;padding:3px;display:grid;overflow:auto}.route-destination-history>div:last-child>button{min-height:43px;color:var(--foam);cursor:pointer;text-align:left;background:0 0;border-radius:9px;grid-template-columns:27px minmax(0,1fr) 16px;align-items:center;gap:7px;padding:5px 7px;display:grid}:is(.route-destination-history>div:last-child>button:hover,.route-destination-history>div:last-child>button:focus-visible){background:#73e5cb17;outline:0}.route-destination-history i{width:25px;height:25px;color:var(--aqua);background:#73e5cb1c;border-radius:50%;place-items:center;font-style:normal;display:grid}.route-destination-history span{gap:1px;min-width:0;display:grid}.route-destination-history span strong,.route-destination-history span small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.route-destination-history span strong{font-size:.68rem}.route-destination-history span small{color:var(--muted);font-size:.68rem}.route-destination-history b{color:var(--aqua);font-size:.9rem}.route-place-results{z-index:20;-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#071b20fa;border:1px solid #73e5cb2e;border-radius:12px;width:100%;max-height:min(48svh,340px);padding:5px;display:grid;position:absolute;top:calc(100% + 3px);left:0;overflow:auto;box-shadow:0 18px 38px #00000052}.route-place-results>button{width:100%;color:var(--foam);cursor:pointer;text-align:left;background:0 0;border-radius:9px;grid-template-columns:26px minmax(0,1fr) 16px;align-items:center;gap:7px;padding:8px;display:grid}:is(.route-place-results>button:hover,.route-place-results>button:focus-visible){background:#73e5cb1a;outline:0}.route-place-results button i{width:25px;height:25px;color:var(--aqua);background:#73e5cb1f;border-radius:50%;place-items:center;font-style:normal;display:grid}.route-place-results button span{gap:2px;min-width:0;display:grid}.route-place-results button strong{text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.route-place-results button small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.route-place-results button b{color:var(--aqua);font-size:1rem}.route-place-results>p{color:var(--muted);text-align:center;margin:0;padding:10px;font-size:.68rem}.route-place-results>p.route-place-offline{color:#ffd27a;padding-top:5px}.route-place-credit{color:#779092;text-align:right;padding:4px 8px 2px;font-size:.68rem}.route-place-focus{color:var(--aqua);text-overflow:ellipsis;white-space:nowrap;padding:0 5px;font-size:.68rem;overflow:hidden}.route-map-wrap{aspect-ratio:1;background:var(--instrument-surface);isolation:isolate;border:1px solid #ffffff12;border-radius:16px;width:100%;height:auto;min-height:0;position:relative;overflow:hidden;box-shadow:0 12px 28px #02121724}.route-map{cursor:crosshair;touch-action:none;-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;background:0 0;width:100%;height:100%;min-height:0;padding:0;display:block}.route-map:focus-visible{outline-offset:-3px;outline:3px solid #73e5cb80}.route-map svg{width:100%;height:100%;display:block}.route-static-map{will-change:transform}.route-water{fill:#85bac8}.route-land-area{fill:url(#routeLandHatch);opacity:.96;shape-rendering:geometricprecision}.route-land-fill-mark{fill:#c8c4aa}.route-land-hatch-mark{fill:none;stroke:var(--shore-stroke);stroke-width:1px;opacity:.25;vector-effect:non-scaling-stroke}.route-bathymetry-layer{opacity:0}.route-bathymetry-layer.complete{opacity:1}.route-depth-tile{opacity:.78;filter:none;image-rendering:auto}.route-coast-layer line{stroke:var(--shore-stroke);stroke-width:1.05px;stroke-linecap:round;opacity:.62;vector-effect:non-scaling-stroke}.route-warning-ring{fill:#73e5cb09;stroke:#73e5cbe6;stroke-width:2px;stroke-dasharray:5 4;vector-effect:non-scaling-stroke}.route-live-proximity.danger .route-warning-ring{fill:#ff745f14;stroke:var(--danger);animation:1.6s ease-in-out infinite ring-breathe}.route-nearest-line{stroke:#f7c75d;stroke-width:1.8px;stroke-dasharray:4 4;vector-effect:non-scaling-stroke}.route-nearest-point{fill:#f7c75d;stroke:#102a30;stroke-width:1.5px;vector-effect:non-scaling-stroke}.planned-route{fill:none;stroke:var(--aqua);stroke-width:4.5px;stroke-linecap:round;stroke-linejoin:round;filter:drop-shadow(0 1px 3px #0037318c);vector-effect:non-scaling-stroke}.journey-active .planned-route{stroke-dasharray:10 5;animation:1.5s linear infinite route-flow}.planned-route.restricted{stroke:var(--danger);stroke-dasharray:7 5;filter:drop-shadow(0 0 5px #ff745f40)}.route-start circle,.route-target circle{stroke:var(--instrument-surface);stroke-width:2px;vector-effect:non-scaling-stroke}.route-start circle{fill:var(--aqua)}.route-target circle{fill:var(--amber)}.route-start text,.route-target text{fill:#06151b;font-family:var(--font-geist-mono), monospace;text-anchor:middle;font-size:9px;font-weight:950}.route-search-marker circle{fill:#ffd27a33;stroke:#ffd27a;stroke-width:2px;vector-effect:non-scaling-stroke}.route-search-marker path{stroke:#ffd27a;stroke-width:2px;vector-effect:non-scaling-stroke}.route-search-marker text{fill:#fff;stroke:#06151be6;stroke-width:2.5px;paint-order:stroke;text-anchor:middle;font-size:7px;font-weight:850}.route-boat circle{fill:#73e5cb1f;stroke:#73e5cb73;stroke-width:1.5px;vector-effect:non-scaling-stroke}.route-boat path{fill:var(--aqua);stroke:var(--instrument-surface);stroke-width:1.5px;vector-effect:non-scaling-stroke}.route-state{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;background:#05151bb8;border-radius:999px;flex:none;padding:7px 10px;font-size:.68rem;font-weight:850}.route-state.ready{color:var(--aqua)}.route-state.check{color:var(--danger)}.route-state.active{color:#fff;background:#006b54;box-shadow:0 0 0 2px #7ff3d14d}.route-state.arrived{color:#063f36;background:#8ff5d8}.route-map-mode{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#081c20c7;border-radius:11px;gap:3px;padding:3px;display:flex;position:absolute;top:11px;left:11px}.route-map-mode button{color:#d4e5e4;cursor:pointer;background:0 0;border-radius:8px;align-items:center;gap:6px;min-height:34px;padding:0 10px;font-size:.68rem;font-weight:750;display:flex}.route-map-mode button b{width:19px;height:19px;font-family:var(--font-geist-mono), monospace;background:#ffffff24;border-radius:50%;place-items:center;font-size:.68rem;display:grid}.route-map-mode button.active{color:#073b38;background:#fff;box-shadow:0 2px 8px #0000002e}.route-map-mode button:first-child.active b{background:var(--aqua)}.route-map-mode button:last-child.active b{background:var(--amber)}.route-long-press-hint{z-index:5;color:#dcebea;-webkit-backdrop-filter:blur(9px);backdrop-filter:blur(9px);text-align:center;background:#081c20cc;border:1px solid #ffffff1a;border-radius:999px;align-items:center;gap:6px;max-width:calc(100% - 120px);min-height:27px;padding:0 9px;font-size:.68rem;font-weight:750;display:flex;position:absolute;top:56px;left:50%;transform:translate(-50%)}.route-long-press-hint span{border:1px solid var(--aqua);border-radius:50%;flex:none;width:8px;height:8px}.route-long-press-hint.active{color:#fff;border-color:#73e5cb59}.route-long-press-hint.active span{background:var(--aqua);animation:.65s linear both long-press-fill}.route-live-guidance{background:#071e23e6;border:1px solid #ffffff24;border-radius:13px;grid-template-columns:1.05fr 1fr 1fr;gap:4px;padding:5px;display:grid;box-shadow:0 8px 18px #02161b24}.route-live-guidance>span{color:#fff;text-align:center;border-radius:9px;align-content:center;gap:2px;min-width:0;min-height:48px;padding:5px 7px;display:grid}.route-live-guidance>span.bearing{background:#08725e}.route-live-guidance small{color:#b9cecd;font-family:var(--font-geist-mono), monospace;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:750;overflow:hidden}.route-live-guidance strong{font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;overflow:hidden}.route-live-guidance .bearing small,.route-live-guidance .bearing strong{color:#fff}.route-live-guidance .clearance.restricted strong{color:var(--danger)}.route-live-footer{min-height:66px;color:var(--muted);background:#ffffff0e;border:1px solid #ffffff14;border-radius:14px;grid-template-columns:repeat(3,1fr);align-items:stretch;padding:6px;display:grid;box-shadow:0 8px 22px #02121714}.route-live-footer>span{text-align:center;align-content:center;gap:3px;min-width:0;min-height:52px;padding:4px 8px;display:grid}.route-live-footer>span+span{border-left:1px solid #73e5cb1f}.route-live-footer small{color:var(--muted);font-family:var(--font-geist-mono), monospace;letter-spacing:.05em;text-overflow:ellipsis;text-transform:uppercase;white-space:nowrap;font-size:.68rem;font-weight:750;overflow:hidden}.route-live-footer strong{color:var(--foam);font-variant-numeric:tabular-nums;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem;overflow:hidden}.route-live-footer .current-speed-footer strong{color:var(--aqua);font-size:1.02rem}.route-live-footer .error strong,.route-live-footer .unavailable strong{color:var(--danger)}.route-layer-tools{z-index:4;pointer-events:none;gap:3px;display:grid;position:absolute;bottom:27px;left:10px}.route-layer-tools button{color:#d7e6e5;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);cursor:pointer;pointer-events:auto;background:#081c20d1;border-radius:10px;align-items:center;gap:7px;width:max-content;min-height:34px;padding:0 10px;font-size:.68rem;font-weight:800;display:flex}.route-layer-tools button.active{color:#fff;background:#055c6ceb}.route-layer-tools button.wind{background:#082d33e0;font-size:.68rem}.route-layer-tools button.wind.active{background:#09685beb}.route-layer-tools button.wind .wind-arrow{width:20px;height:20px;font-size:.75rem}.route-layer-status{background:#667c7e;border-radius:50%;width:7px;height:7px}.route-layer-status.loading{background:#ffd27a;animation:1.2s ease-in-out infinite ring-breathe}.route-layer-status.ready{background:#8ff5d8;box-shadow:0 0 0 3px #8ff5d82e}.route-layer-status.error{background:#ff7465}.route-layer-tools small{color:#f3fbfa;text-shadow:0 1px 3px #06151b;max-width:180px;font-size:.68rem}.route-map-credit{z-index:3;color:#effbf9e0;text-shadow:0 1px 3px #06151b;font-size:.68rem;position:absolute;bottom:7px;left:10px}.route-zoom{z-index:4;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#081c20c7;border-radius:11px;gap:3px;padding:3px;display:grid;position:absolute;top:11px;right:11px}.route-zoom button{color:#fff;cursor:pointer;background:#ffffff1c;border-radius:8px;place-items:center;width:36px;height:36px;font-size:1.15rem;display:grid}.route-zoom .route-recenter{color:var(--aqua);font-size:1rem}.route-zoom .route-orientation-control{width:36px;height:36px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;border:0;border-radius:8px;padding:4px}.route-zoom .route-orientation-control.active{box-shadow:inset 0 0 0 1px #73e5cb80}.route-zoom .route-orientation-control svg{width:26px;height:26px}.route-scale{z-index:3;color:#f5fbfa;font-family:var(--font-geist-mono), monospace;text-shadow:0 1px 3px #06151b;align-items:flex-end;gap:6px;font-size:.68rem;display:flex;position:absolute;bottom:8px;right:11px}.route-scale span{border-bottom:2px solid;border-left:1px solid;border-right:1px solid;width:48px;height:5px}.route-panel{background:#ffffff0a;border:1px solid #fff1;border-radius:13px;overflow:hidden}.route-panel>summary{cursor:pointer;justify-content:space-between;align-items:center;gap:10px;min-height:52px;padding:8px 11px;list-style:none;display:flex}.route-panel>summary::-webkit-details-marker{display:none}.route-panel>summary>span{gap:2px;min-width:0;display:grid}.route-panel>summary strong{color:var(--foam);font-size:.69rem}.route-panel>summary small{color:var(--muted);font-family:var(--font-geist-mono), monospace;text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.route-panel>summary>b{color:var(--aqua);flex:none;font-size:.68rem}.route-panel[open]>summary{border-bottom:1px solid #ffffff0f}.route-panel-body{padding:9px}.route-points-editor{gap:7px;display:grid;position:relative}.route-point-row{grid-template-columns:30px minmax(0,1fr) auto;align-items:center;gap:7px;min-width:0;display:grid}.route-point-badge{color:#06151b;width:29px;height:29px;font-family:var(--font-geist-mono), monospace;border-radius:50%;place-items:center;font-size:.7rem;font-weight:950;display:grid}.route-point-badge.start{background:var(--aqua)}.route-point-badge.target{background:var(--amber)}.route-point-fields{grid-template-columns:minmax(72px,.9fr) 1fr 1fr;align-items:end;gap:5px;min-width:0;display:grid}.route-point-fields>span{gap:1px;min-width:0;display:grid}.route-point-fields strong{color:var(--foam);font-size:.69rem}.route-point-fields small{color:var(--muted);text-overflow:ellipsis;white-space:nowrap;font-size:.68rem;overflow:hidden}.route-point-fields label{gap:2px;min-width:0;display:grid}.route-point-fields label span{color:var(--muted);text-transform:uppercase;font-size:.68rem}.route-point-fields input{width:100%;min-width:0;height:32px;color:var(--foam);font-family:var(--font-geist-mono), monospace;background:#fff1;border:1px solid #0000;border-radius:7px;outline:0;padding:0 6px;font-size:.68rem}.route-point-fields input:focus{border-color:#73e5cb94}.route-point-actions{gap:4px;display:flex}.route-point-actions button,.route-swap{width:32px;height:32px;color:var(--muted);cursor:pointer;background:#ffffff13;border-radius:8px;place-items:center;display:grid}.route-point-actions button.active{color:var(--aqua);background:#73e5cb29;box-shadow:inset 0 0 0 1px #73e5cb40}.route-swap{z-index:2;width:26px;height:26px;color:var(--aqua);background:#17343b;font-size:.83rem;position:absolute;top:50%;right:9px;transform:translateY(-50%)}.route-swap:disabled{opacity:.35;cursor:default}.route-input-error{color:#ffada0;text-align:center;margin:0;font-size:.68rem}.route-calculate{min-height:40px;color:var(--aqua);cursor:pointer;background:#73e5cb26;border-radius:9px;font-size:.69rem;font-weight:850}.route-calculate:disabled{opacity:.42;cursor:default}.route-summary{background:#ffffff0a;border:1px solid #fff1;border-radius:13px;min-height:64px;padding:10px 11px}.route-message{min-height:46px;color:var(--muted);text-align:center;justify-content:center;align-items:center;margin:0;font-size:.72rem;display:flex}.route-message.error{color:#ffada0}.route-navigation{grid-template-columns:1.15fr 1fr 1fr;gap:6px;display:grid}.route-navigation span{text-align:center;background:#73e5cb17;border-radius:9px;place-content:center;min-height:58px;display:grid}.route-navigation small{color:var(--muted);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;font-size:.68rem}.route-navigation strong{color:var(--foam);font-variant-numeric:tabular-nums;font-size:1.12rem}.route-navigation span:first-child{background:#075f50}.route-navigation span:first-child small,.route-navigation span:first-child strong{color:#fff}.route-navigation.arrived span{background:#73e5cb29}.route-metrics{grid-template-columns:repeat(3,1fr);display:grid}.route-metrics span{text-align:center;gap:2px;display:grid}.route-metrics small{color:var(--muted);font-family:var(--font-geist-mono), monospace;text-transform:uppercase;font-size:.68rem}.route-metrics strong{color:var(--foam);font-variant-numeric:tabular-nums;font-size:.76rem}.route-clearance-chip{width:max-content;color:var(--aqua);background:#73e5cb1a;border-radius:999px;margin:7px auto 0;padding:4px 8px;font-size:.68rem}.route-clearance-chip.restricted{color:var(--danger);background:#ff745f1a}.route-notices{background:#ff745f17;border-radius:9px;margin-top:8px;overflow:hidden}.route-notices summary{color:#ff9a8d;cursor:pointer;justify-content:space-between;align-items:center;min-height:36px;padding:0 9px;font-size:.68rem;font-weight:750;list-style:none;display:flex}.route-notices summary::-webkit-details-marker{display:none}.route-notices summary b{background:#ff745f24;border-radius:999px;padding:3px 6px;font-size:.68rem}.route-notices>div{border-top:1px solid #ff745f1f;padding:8px 9px}.route-detail,.route-passage-warning{color:#ffada0;margin:0;font-size:.68rem;line-height:1.4}.route-passage-warning+.route-detail,.route-detail+.route-passage-warning{margin-top:6px}.route-progress{background:#ffffff12;border-radius:999px;height:17px;margin-top:8px;position:relative;overflow:hidden}.route-progress>span{border-radius:inherit;background:linear-gradient(90deg,#0a7a65,#8ff5d8);position:absolute;inset:0 auto 0 0}.route-progress small{color:#143f3d;font-family:var(--font-geist-mono), monospace;text-shadow:0 1px 2px #ffffffe0;place-items:center;font-size:.68rem;font-weight:850;display:grid;position:absolute;inset:0}.route-trip-actions{gap:4px;display:grid}.route-trip-actions button{cursor:pointer;letter-spacing:.03em;border-radius:11px;min-height:52px;font-size:.82rem;font-weight:900}.route-start-trip{color:#fff;background:#08725e;box-shadow:0 0 0 2px #7ff3d140}.route-start-trip:disabled{color:var(--muted);box-shadow:none;cursor:default;background:#ffffff0f}.route-end-trip{color:#fff;background:#a9382d;box-shadow:0 0 0 2px #ff887638}.route-finish-trip{color:#063f36;background:#8ff5d8}.route-trip-actions small{color:var(--muted);text-align:center;font-size:.68rem}.route-controls{grid-template-columns:1fr auto;gap:7px;display:grid}.route-speed{background:#ffffff0b;border-radius:9px;justify-content:space-between;align-items:center;gap:8px;min-height:42px;padding:6px 10px;display:flex}.route-speed>span:first-child{gap:1px;display:grid}.route-speed strong{color:var(--foam);font-size:.68rem}.route-speed small{color:var(--muted);font-size:.68rem}.route-speed>span:last-child{color:var(--muted);font-family:var(--font-geist-mono), monospace;white-space:nowrap;font-size:.68rem}.route-speed input{width:42px;color:var(--foam);font:inherit;text-align:right;background:0 0;border:0;outline:0;font-weight:750}.route-rule{min-height:42px;color:var(--aqua);font-family:var(--font-geist-mono), monospace;white-space:nowrap;background:#73e5cb12;border-radius:9px;align-items:center;padding:0 10px;font-size:.68rem;display:flex}.route-option{background:#ffffff0a;border-radius:9px;grid-column:1/-1;justify-content:space-between;align-items:center;min-height:42px;padding:6px 10px;display:flex}.route-option>span{gap:1px;display:grid}.route-option strong{color:var(--foam);font-size:.68rem}.route-option small{color:var(--muted);font-size:.68rem}.route-option input{accent-color:#0f9d83;width:18px;height:18px}.route-reset{min-height:36px;color:var(--aqua);cursor:pointer;background:#73e5cb1a;border-radius:8px;grid-column:1/-1;padding:0 10px;font-size:.68rem;font-weight:700}.route-live-gps-warning{z-index:8;color:#fff;text-align:center;background:#8b1f17f5;border-radius:9px;margin:0;padding:9px 11px;font-size:.68rem;position:sticky;bottom:0}.journey-active,.journey-arrived{isolation:isolate;background:linear-gradient(#0b222ae0,#06161cf2);grid-template-rows:auto minmax(0,1fr) auto;gap:0;display:grid;overflow:hidden}.journey-active .route-screen-header,.journey-arrived .route-screen-header{z-index:7;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#05141ac2;border-bottom:1px solid #73e5cb1f;gap:6px;min-height:96px;padding:8px 12px 9px;display:grid;position:relative}.journey-active .route-screen-heading,.journey-arrived .route-screen-heading{min-height:30px}.journey-active .route-screen-heading strong,.journey-arrived .route-screen-heading strong{letter-spacing:.06em;text-transform:uppercase;font-size:.78rem}.journey-active .route-screen-header .route-live-guidance,.journey-arrived .route-screen-header .route-live-guidance{box-shadow:none;background:#73e5cb12;border:0;border-radius:9px;grid-template-columns:repeat(4,minmax(0,1fr));padding:3px}.journey-active .route-screen-header .route-live-guidance>span,.journey-arrived .route-screen-header .route-live-guidance>span{min-height:31px;padding:3px 5px}.journey-active .route-map-wrap,.journey-arrived .route-map-wrap{aspect-ratio:auto;width:100%;max-width:none;height:100%;min-height:0;box-shadow:none;border:0;border-radius:0;margin:0}.journey-active .route-map,.journey-arrived .route-map{cursor:grab}.journey-active .route-map:active,.journey-arrived .route-map:active{cursor:grabbing}.journey-active .route-controls,.journey-arrived .route-controls{display:none}.journey-active .route-zoom,.journey-arrived .route-zoom{z-index:7;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#071c21d1;border:1px solid #73e5cb24;grid-template-columns:repeat(2,36px);gap:3px;padding:3px;display:grid;top:62px;right:12px;box-shadow:0 6px 18px #0214182e}.journey-active .route-zoom>button,.journey-arrived .route-zoom>button{width:36px;height:36px;display:grid}.journey-active .route-zoom .route-orientation-control,.journey-arrived .route-zoom .route-orientation-control{width:36px;height:36px;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;background:#ffffff1c;border-radius:8px;padding:4px}.journey-active .route-layer-tools,.journey-arrived .route-layer-tools{z-index:7;inset:14px 12px auto auto}.journey-active .route-layer-tools button:first-child,.journey-arrived .route-layer-tools button:first-child{display:none}.journey-active .route-layer-tools button.wind,.journey-arrived .route-layer-tools button.wind{background:#071c21d1;border:1px solid #73e5cb2e;border-radius:12px;min-height:42px;padding-inline:9px;box-shadow:0 6px 18px #0214182e}.journey-active .route-scale,.journey-arrived .route-scale,.journey-active .route-map-credit,.journey-arrived .route-map-credit{bottom:104px;left:auto;right:12px}.route-live-map-overlay{z-index:6}.route-live-footer{min-height:62px;box-shadow:none;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#05141ab8;border:0;border-top:1px solid #73e5cb1a;border-radius:0;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;gap:7px;padding:7px 10px;display:grid}.route-live-footer .route-live-meta{min-width:0}.route-live-footer button{color:#fff;cursor:pointer;border-radius:11px;min-width:76px;min-height:48px;padding:0 10px;font-size:.68rem;font-weight:850}.route-live-footer .route-finish-trip{color:#063f36}.journey-active .route-live-gps-warning,.journey-arrived .route-live-gps-warning{z-index:9;position:absolute;bottom:78px;left:10px;right:10px}.sunlight-mode .route-map-wrap,.sunlight-mode .route-water{fill:#f7fbfa;background:#f7fbfa}.sunlight-mode .journey-active .route-screen-header,.sunlight-mode .journey-arrived .route-screen-header{background:#ffffffeb;border-color:#0d4d4c1a}.sunlight-mode .route-land-fill-mark{fill:#d6d1b8}.sunlight-mode .route-screen-header strong,.sunlight-mode .route-panel>summary strong,.sunlight-mode .route-speed strong,.sunlight-mode .route-speed input,.sunlight-mode .route-metrics strong,.sunlight-mode .route-point-fields strong,.sunlight-mode .route-point-fields input,.sunlight-mode .route-option strong{color:#071b22}.sunlight-mode .route-map-wrap{border-color:#0d4d4c1f;box-shadow:0 10px 25px #123e3f1a}.sunlight-mode .route-depth-tile{opacity:.72;filter:none}.sunlight-mode .route-place-search form{background:#ffffffe6;border-color:#00574829}.sunlight-mode .route-place-search input{color:#071b22}.sunlight-mode .route-place-results{background:#fafffdfa;border-color:#00574826}.sunlight-mode .route-place-results>button,.sunlight-mode .route-place-results button strong{color:#071b22}.sunlight-mode .route-destination-history,.sunlight-mode .navigation-resume-card{background:#ffffffd6;border-color:#00574826}.sunlight-mode .route-destination-history span strong,.sunlight-mode .navigation-resume-card strong{color:#071b22}.sunlight-mode .route-long-press-hint{color:#193f42;background:#ffffffe6;border-color:#00574826}.sunlight-mode .route-live-footer{color:#49696b;background:#ffffffe6;border-color:#0d4d4c1a}.sunlight-mode .route-live-footer strong{color:#071b22}.sunlight-mode .route-live-footer>span+span{border-left-color:#0d4d4c1f}.sunlight-mode .route-summary,.sunlight-mode .route-panel,.sunlight-mode .route-speed,.sunlight-mode .route-option{background:#ffffffd1;border-color:#0d4d4c1a}.sunlight-mode .route-state{background:#ffffffe6}.sunlight-mode .route-state.ready{color:#00634f;background:#d7f4eb;box-shadow:0 0 0 1px #00634f33}.sunlight-mode .route-state.check{color:#a52e24;background:#fff0ed;box-shadow:0 0 0 1px #a52e242e}.sunlight-mode .route-state.active{color:#fff;background:#006b54;box-shadow:0 0 0 2px #004a3a33}.sunlight-mode .route-state.arrived{color:#fff;background:#0c715d;box-shadow:0 0 0 2px #004a3a33}.sunlight-mode .route-point-fields input{background:#edf5f3}.theme-xp .route-map-wrap,.theme-xp .route-water{fill:#edf0ed;background:#edf0ed}.theme-xp .route-land-fill-mark{fill:#cbd5c6}.theme-nautical .route-map-wrap,.theme-nautical .route-water{fill:#e3d6b6;background:#e3d6b6}.theme-nautical .route-land-fill-mark{fill:#c5af79}.theme-xp .route-screen-header strong,.theme-xp .route-panel>summary strong,.theme-xp .route-speed strong,.theme-xp .route-speed input,.theme-xp .route-metrics strong,.theme-xp .route-point-fields strong,.theme-xp .route-point-fields input,.theme-xp .route-option strong,.theme-nautical .route-screen-header strong,.theme-nautical .route-panel>summary strong,.theme-nautical .route-speed strong,.theme-nautical .route-speed input,.theme-nautical .route-metrics strong,.theme-nautical .route-point-fields strong,.theme-nautical .route-point-fields input,.theme-nautical .route-option strong{color:var(--foam)}@keyframes long-press-fill{0%{opacity:.55;transform:scale(.45)}to{opacity:1;transform:scale(1.2)}}.course-danger .proximity-ring{animation:1.6s ease-in-out infinite ring-breathe}.course-danger .danger-ring-arc{animation:1.1s ease-in-out infinite arc-pulse}.course-danger .course-line{animation:1.1s linear infinite course-flow}.course-danger .shore-segment.close{animation:1.5s ease-in-out infinite coast-pulse}.speed-danger .danger-ring-arc{animation:1.1s ease-in-out infinite arc-pulse}.power-save-active{background:#000!important}.power-save-active *{animation-play-state:paused!important}.power-save-screen{z-index:50;color:#19483f;cursor:pointer;background:#000;flex-direction:column;justify-content:center;align-items:center;width:100%;min-height:100svh;display:flex;position:fixed;inset:0}.power-save-mode{top:max(24px, env(safe-area-inset-top));font-family:var(--font-geist-mono), monospace;letter-spacing:.15em;text-transform:uppercase;font-size:.68rem;font-weight:700;position:absolute}.power-save-go{color:#276d5e;font-family:var(--font-geist-mono), monospace;letter-spacing:.12em;align-items:center;gap:8px;font-size:.9rem;font-weight:850;display:inline-flex}.power-save-go i{border:1px solid #19483f;border-radius:50%;place-items:center;width:27px;height:27px;font-style:normal;display:grid}.debug-panel{z-index:40;width:30px;color:var(--foam);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#05141adb;border:1px solid #73e5cb33;border-radius:999px;flex:none;gap:7px;display:grid;position:relative}.debug-panel[open]{top:max(8px, env(safe-area-inset-top));border-radius:12px;width:min(100vw - 24px,556px);padding:9px;position:fixed;right:max(12px,50vw - 278px);box-shadow:0 7px 24px #00000040}.debug-panel summary{cursor:pointer;width:28px;min-height:28px;color:var(--aqua);justify-content:center;align-items:center;font-size:.9rem;list-style:none;display:flex}.debug-panel summary::-webkit-details-marker{display:none}.debug-panel summary b{color:var(--aqua);font-size:.68rem;display:none}.debug-panel[open] summary{justify-content:space-between;width:100%;font-size:.8rem}.debug-panel[open] summary b{display:inline}.debug-panel button{width:fit-content;min-height:30px;color:var(--aqua);cursor:pointer;background:#73e5cb1f;border-radius:8px;padding:0 10px;font-size:.68rem;font-weight:800}.debug-panel pre{color:#b9f5e5;max-height:42svh;font-family:var(--font-geist-mono), monospace;white-space:pre-wrap;word-break:break-word;background:#031116;border-radius:8px;padding:10px;font-size:.68rem;line-height:1.45;overflow:auto}.sunlight-mode .debug-panel{color:#071b22;background:#ffffffd1;border-color:#00634f29}.power-save-scope{font-family:var(--font-geist-mono), monospace;letter-spacing:.06em;text-transform:uppercase;margin-top:9px;font-size:.68rem}.power-save-screen strong{color:#24594f;font-variant-numeric:tabular-nums;letter-spacing:-.055em;margin-top:16px;font-size:clamp(5.4rem,25vw,8.5rem);font-weight:560;line-height:.9}.power-save-screen small{font-family:var(--font-geist-mono), monospace;letter-spacing:.14em;text-transform:uppercase;margin-top:7px;font-size:.68rem}.power-save-screen em{margin-top:22px;font-size:.75rem;font-style:normal}.power-save-wake{bottom:max(25px, env(safe-area-inset-bottom));opacity:.72;font-size:.68rem;position:absolute}@keyframes ring-breathe{50%{stroke-width:3.2px;stroke:#ff745f7a}}@keyframes arc-pulse{50%{stroke-width:6px;filter:drop-shadow(0 0 5px #ff745f80)}}@keyframes course-flow{to{stroke-dashoffset:-22px}}@keyframes coast-pulse{50%{stroke:var(--shore-close);opacity:1}}@keyframes danger-screen-signal{0%,28%,58%{background:#ff432f4f}16%,44%,76%,to{background:#ff432f00}}@keyframes safe-screen-signal{0%,38%{background:#3ee1b13d}20%,62%,to{background:#3ee1b100}}@keyframes signal-card-arrive{0%{opacity:0;transform:translateY(8px)scale(.97)}to{opacity:1;transform:none}}@keyframes offline-glow{50%{filter:brightness(1.45)}}@keyframes boat-radar{0%{opacity:.85;transform:scale(.78)}70%,to{opacity:.08;transform:scale(1.5)}}@keyframes shallow-pulse{50%{fill:#ff745f47;stroke-width:3px}}@keyframes anchor-rode-flow{to{stroke-dashoffset:-14px}}@keyframes anchor-card-alert{50%{box-shadow:0 7px 28px #ff4d3673}}@keyframes route-flow{to{stroke-dashoffset:-30px}}@keyframes launch-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:none}}@keyframes launch-radar-in{0%{opacity:0;transform:scale(.78)rotate(-10deg)}to{opacity:1;transform:none}}@keyframes launch-sweep{to{transform:rotate(360deg)}}@keyframes launch-boat{50%{transform:translate(-50%,-54%)rotate(2deg);box-shadow:0 0 0 11px #73e5cb06,0 0 30px #73e5cb4d}}@keyframes readiness-pulse{50%{filter:brightness(1.35);box-shadow:0 0 0 7px #73e5cb00}}@keyframes launch-button-shine{0%,68%{opacity:0;transform:translate(0)rotate(18deg)}74%{opacity:.8}88%,to{opacity:0;transform:translate(620%)rotate(18deg)}}@media (min-width:700px){.app-shell{width:min(100%,980px);padding-inline:28px}.intro,.launch-panel{max-width:600px}.tracker,.is-tracking .topbar{width:min(100%,680px);margin:0 auto}}@media (min-width:600px) and (max-width:1199px){.app-shell.is-tracking{width:100%;padding-inline:clamp(12px,2.4vw,24px)}.is-tracking .tracker,.is-tracking .topbar{width:100%;max-width:none}.tracker{gap:10px}.tracker-tabs{min-height:56px;padding-inline:0}.instrument{grid-template-rows:minmax(0,1fr)}.instrument-summary{-webkit-backdrop-filter:none;backdrop-filter:none;background:linear-gradient(#05141ae0,#05141a00);border-bottom:0;padding:12px 16px 28px;position:absolute;top:0;left:0;right:0}.map-stage{grid-row:1;height:100%;min-height:0}.distance-map-overlay{padding:106px 18px 78px}.distance-map-overlay>.distance-readout{width:min(48%,320px)}.instrument-footer{background:linear-gradient(#05141a00,#05141ab3 30%,#05141aeb);border-top:0;padding:20px 14px 10px;position:absolute;bottom:0;left:0;right:0}.instrument-meta{min-height:52px}.route-planner{gap:10px}.route-map-wrap{border-radius:20px}.journey-active,.journey-arrived{grid-template:"header""map"minmax(0,1fr)"footer"/minmax(0,1fr);gap:0;position:relative;overflow:hidden}.journey-active .route-screen-header,.journey-arrived .route-screen-header{grid-area:header}.journey-active .route-map-wrap,.journey-arrived .route-map-wrap{aspect-ratio:auto;grid-area:map;width:100%;max-width:none;height:100%;min-height:320px;margin:0}.journey-active .route-live-footer,.journey-arrived .route-live-footer{grid-area:footer;min-height:60px}}@media (min-width:600px) and (max-width:1199px) and (orientation:landscape){.journey-active .route-map-wrap,.journey-arrived .route-map-wrap{min-height:0}.route-live-map-overlay{padding:14px 18px 12px}.route-live-map-overlay>.route-live-distance{width:min(48%,320px)}}@media (max-width:390px){.app-shell:not(.is-tracking){padding-inline:10px}.brand{font-size:.72rem}.intro{grid-template-columns:minmax(0,1fr) 104px;min-height:190px;padding-top:20px}.launch-radar{width:104px;height:104px}.is-tracking .connection{display:none}.summary-primary-row{gap:8px}.go-no-go{min-height:52px;padding-right:12px;font-size:.94rem}.go-no-go span{width:36px;height:36px;font-size:1.3rem}.route-point-row{grid-template-columns:27px minmax(0,1fr) auto;gap:5px}.route-point-fields{grid-template-columns:1fr 1fr}.route-point-fields>span{grid-column:1/-1}.route-point-actions{flex-direction:column}.route-point-actions button{width:29px;height:29px}.route-swap{right:7px}.tracker-tabs button{gap:5px;font-size:.68rem}.weather-panel{padding-inline:7px}.weather-primary-grid button{gap:7px;min-height:76px;padding:8px}.weather-metric-icon{width:30px;height:30px}.weather-details-grid{grid-template-columns:1fr 1fr}.weather-condition-copy p{max-width:70%}}@media (max-height:720px){.is-tracking{padding-top:max(7px, env(safe-area-inset-top));padding-bottom:max(7px, env(safe-area-inset-bottom))}.instrument-summary{gap:4px;padding-block:6px 7px}.status-pill{min-height:34px;padding-inline:10px;font-size:.68rem}.distance-readout strong{font-size:min(clamp(calc(10rem * var(--distance-scale,1)), calc(50vw * var(--distance-scale,1)), calc(14.4rem * var(--distance-scale,1))), calc((100cqi - 3rem) * .47))}.anchor-timer-chip{min-height:24px}.go-no-go{min-height:48px;padding-right:12px;font-size:.95rem}.go-no-go span{width:34px;height:34px;font-size:1.3rem}.instrument-footer{padding-block:5px}.instrument-meta{min-height:40px}.course-alert{min-height:52px}.sound-button,.next-button{min-height:54px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.visual-signal{background:0 0!important;animation:none!important}.wind-overlay.visible{opacity:.62}}:where(button,input,select,summary,[role=button]):focus-visible{outline:3px solid var(--aqua)}@supports (color:color-mix(in lab, red, red)){:where(button,input,select,summary,[role=button]):focus-visible{outline:3px solid color-mix(in srgb, var(--aqua) 72%, white)}}:where(button,input,select,summary,[role=button]):focus-visible{outline-offset:2px}.readiness-retry{background:var(--danger);border-radius:9px;min-height:44px;margin-top:9px}@supports (color:color-mix(in lab, red, red)){.readiness-retry{background:color-mix(in srgb,var(--danger) 14%,transparent)}}.readiness-retry{color:var(--danger);cursor:pointer;padding:0 14px;font-size:.72rem;font-weight:850}.launch-error{border:1px solid var(--danger);margin-top:10px}@supports (color:color-mix(in lab, red, red)){.launch-error{border:1px solid color-mix(in srgb,var(--danger) 42%,transparent)}}.launch-error{background:var(--danger);border-radius:10px}@supports (color:color-mix(in lab, red, red)){.launch-error{background:color-mix(in srgb,var(--danger) 12%,transparent)}}.launch-error{color:var(--danger)}@supports (color:color-mix(in lab, red, red)){.launch-error{color:color-mix(in srgb,var(--danger) 76%,white)}}.launch-error{padding:10px 12px;font-size:.72rem;line-height:1.4}.tracker{position:relative}.visual-signal{z-index:60;pointer-events:none;padding-top:0;position:fixed}.global-safety-alert{z-index:24;top:4px;right:max(8px,env(safe-area-inset-right));left:max(8px,env(safe-area-inset-left));color:#fff7f4;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#6f1912f0;border:1px solid #ffab9b7a;border-radius:12px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:8px;min-height:48px;padding:7px 10px;display:grid;position:absolute;box-shadow:0 10px 28px #3309054d}.global-safety-alert>span:first-child{border:2px solid;border-radius:50%;place-items:center;width:27px;height:27px;font-weight:950;display:grid}.global-safety-alert>span:last-child{gap:1px;display:grid}.global-safety-alert strong{font-size:.72rem}.global-safety-alert small{color:#ffffffdb;font-size:.68rem;line-height:1.25}.global-safety-alert.gps-waiting{background:#533b0af0;border-color:#ffd98675}.anchor-ready-controls{grid-template-columns:minmax(0,1fr) auto;gap:6px;width:100%;display:grid}.anchor-ready-controls .anchor-set-button{min-width:104px;min-height:44px}.distance-map-overlay>.distance-readout{width:min(55%,260px)}.wind-map-control{max-width:40%}.wind-map-control>span:last-child{min-width:0}.wind-map-control b{text-overflow:ellipsis;overflow:hidden}.route-live-map-overlay>.route-live-distance{width:min(55%,260px)}.journey-active .route-map-credit,.journey-arrived .route-map-credit{bottom:8px;left:12px;right:auto}.journey-active .route-scale,.journey-arrived .route-scale{bottom:82px;left:auto;right:12px}.route-map-wrap .wind-overlay{--wind-flow-colour:#004353fa;--wind-flow-strong-colour:#6d3700fa;--wind-flow-danger-colour:#7a1612fa}.route-map-wrap .wind-overlay.visible{opacity:.98}.power-save-screen,.power-save-mode,.power-save-scope,.power-save-screen small,.power-save-screen em,.power-save-wake{color:#8dd9c5}.power-save-go{color:#91dfcb}.power-save-go i{border-color:#91dfcb}.power-save-go.no-go{color:#ff8277}.power-save-go.no-go i{border-color:#ff8277}.power-save-go.unknown{color:#f6ca68}.power-save-go.unknown i{border-color:#f6ca68}.power-save-screen strong{color:#a4ead8}.power-save-wake{opacity:1}.theme-xp .activity-overview,.theme-xp .trip-detail{--activity-card:#ffffffc7;color:#10213b;background:linear-gradient(#edf1ef,#d9e3e5)}.theme-xp .activity-hero{background:linear-gradient(145deg,#f9fbff,#d9e5f3);border-color:#174f9f33;box-shadow:0 12px 28px #293d5821}.theme-xp .activity-hero :where(strong,small,em){color:#10213b}.theme-nautical .activity-overview,.theme-nautical .trip-detail{--activity-card:#f4e9cbb3;color:#152f3b;background:repeating-linear-gradient(96deg,#5d411c06 0 2px,#0000 2px 9px),#e3d6b6}.theme-nautical .activity-hero{background:linear-gradient(145deg,#f4e9cb,#d8c69c);border-color:#4938182e;box-shadow:0 12px 28px #49381824}.theme-nautical .activity-hero :where(strong,small,em){color:#152f3b}.theme-xp .activity-overview :where(.activity-header strong,.activity-hero strong,.activity-row strong,.activity-row b,.activity-privacy strong,.trip-detail-header strong,.trip-detail-grid strong,.trip-route-note strong),.theme-nautical .activity-overview :where(.activity-header strong,.activity-hero strong,.activity-row strong,.activity-row b,.activity-privacy strong,.trip-detail-header strong,.trip-detail-grid strong,.trip-route-note strong){color:var(--foam)}.theme-xp .activity-overview :where(.activity-hero small,.activity-hero em,.activity-row-main span),.theme-nautical .activity-overview :where(.activity-hero small,.activity-hero em,.activity-row-main span){color:var(--muted)}.theme-xp .journey-active,.theme-xp .journey-arrived{background:linear-gradient(#edf1ef,#d9e3e5)}.theme-xp .route-planner{color:#10213b;background:linear-gradient(#edf1ef,#d9e3e5);padding-inline:8px}.theme-xp .route-screen-heading strong,.theme-xp .route-screen-heading small{color:#10213b}.theme-xp .route-panel,.theme-xp .route-summary{background:#ffffffb8;border-color:#174f9f29}.theme-nautical .journey-active,.theme-nautical .journey-arrived{background:linear-gradient(#eee3c5,#ded0ab)}.theme-xp .journey-active .route-screen-header,.theme-xp .journey-arrived .route-screen-header,.theme-xp .journey-active .route-live-footer,.theme-xp .journey-arrived .route-live-footer{background:#f1f4f3f0}.theme-nautical .journey-active .route-screen-header,.theme-nautical .journey-arrived .route-screen-header,.theme-nautical .journey-active .route-live-footer,.theme-nautical .journey-arrived .route-live-footer{background:#ebdfbff0}.theme-xp .journey-active .route-live-guidance,.theme-xp .journey-arrived .route-live-guidance,.theme-nautical .journey-active .route-live-guidance,.theme-nautical .journey-arrived .route-live-guidance{background:#174c5b17}.theme-xp .journey-active .route-live-guidance :where(strong,small),.theme-xp .journey-arrived .route-live-guidance :where(strong,small),.theme-nautical .journey-active .route-live-guidance :where(strong,small),.theme-nautical .journey-arrived .route-live-guidance :where(strong,small){color:var(--foam)}.activity-overview :where(small,em),.weather-panel :where(small,.weather-source),.route-planner :where(small,.route-place-credit,.route-place-focus){font-size:max(.625rem,1em)}.weather-metric-tabs button,.route-map-mode button,.route-layer-tools button,.activity-privacy button{min-height:44px}@media (min-width:600px) and (max-width:1600px){.app-shell.is-tracking{width:100%;padding-right:max(12px,env(safe-area-inset-right));padding-left:max(12px,env(safe-area-inset-left))}.is-tracking .tracker,.is-tracking .topbar{width:100%;max-width:none}.is-tracking .topbar{padding-right:max(10px,env(safe-area-inset-right));padding-left:max(10px,env(safe-area-inset-left))}.tracker{max-width:1100px!important}.journey-active .route-map-wrap,.journey-arrived .route-map-wrap{min-height:0}}@media (min-width:1200px){.tracker,.is-tracking .topbar{width:min(100%,1100px)}.activity-hero{grid-template-columns:repeat(3,minmax(0,1fr))}.app-shell:not(.is-tracking):has(.launch-panel){grid-template-columns:minmax(0,1fr) minmax(440px,560px);align-items:start;column-gap:clamp(54px,7vw,108px);width:min(100%,1180px);display:grid}.app-shell:not(.is-tracking):has(.launch-panel) .topbar{grid-column:1/-1}.app-shell:not(.is-tracking):has(.launch-panel) .intro{max-width:560px;padding-top:clamp(110px,17svh,190px)}.app-shell:not(.is-tracking):has(.launch-panel) .intro h1{font-size:clamp(4.5rem,6.6vw,6.6rem)}.app-shell:not(.is-tracking):has(.launch-panel) .launch-panel{max-width:none;padding-top:clamp(72px,11svh,126px)}}@media (min-width:800px){.route-planner.journey-planning .route-map-wrap{aspect-ratio:16/9}}@media (max-width:430px){.distance-map-overlay>.distance-readout,.route-live-map-overlay>.route-live-distance{width:54%;padding-inline:10px}.wind-map-control{max-width:41%;padding-inline:7px;right:8px}.wind-map-control b{font-size:.68rem}.distance-map-overlay .distance-readout strong{font-size:min(clamp(calc(4.6rem * var(--distance-scale,1)),calc(24vw * var(--distance-scale,1)),calc(6.4rem * var(--distance-scale,1))),calc((100cqi - 2rem) * .45))}.global-safety-alert{left:6px;right:6px}.activity-hero{grid-template-columns:1fr 1fr;gap:10px;min-height:168px}.activity-hero>span:first-of-type{grid-column:1/-1}}@property --tw-rotate-x{syntax:"*";inherits:false}@property --tw-rotate-y{syntax:"*";inherits:false}@property --tw-rotate-z{syntax:"*";inherits:false}@property --tw-skew-x{syntax:"*";inherits:false}@property --tw-skew-y{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}
