:root{color-scheme:dark;--fjord-navy: #0d1722;--fjord-midnight: #111f2e;--fjord-blue: #267da1;--fjord-teal: #33a6a6;--fjord-cyan: #70d6d1;--fjord-mist: #dcecef;--fjord-white: #f6fafb;--fjord-amber: #e5a00d;--fjord-orange: #e67e22;--fjord-red: #d95050;--fjord-green: #4d9b72;--fjord-gray: #7c8b96;--color-surface: var(--fjord-navy);--color-surface-raised: #142536;--color-surface-sunken: #0a131c;--color-surface-glass: rgba(20, 37, 54, .72);--color-border: rgba(112, 214, 209, .14);--color-border-strong: rgba(112, 214, 209, .28);--color-text: var(--fjord-white);--color-text-muted: #93a9b8;--color-text-faint: #5f7385;--color-accent: var(--fjord-teal);--color-accent-strong: #3fc1c0;--color-water: var(--fjord-blue);--color-highlight: var(--fjord-cyan);--color-amber: var(--fjord-amber);--color-good: var(--fjord-green);--color-caution: var(--fjord-amber);--color-warning: var(--fjord-orange);--color-poor: var(--fjord-red);--font-sans: "Inter var", "Inter", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-display: var(--font-sans);--text-xs: .75rem;--text-sm: .8125rem;--text-base: .9375rem;--text-md: 1.0625rem;--text-lg: clamp(1.25rem, 1.1rem + .6vw, 1.5rem);--text-xl: clamp(1.6rem, 1.3rem + 1.4vw, 2.25rem);--text-2xl: clamp(2.2rem, 1.6rem + 2.6vw, 3.4rem);--tracking-tight: -.02em;--tracking-wide: .08em;--leading-tight: 1.15;--leading-normal: 1.55;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--space-page: clamp(1rem, .6rem + 2vw, 2rem);--space-section: clamp(2.5rem, 1.5rem + 4vw, 5rem);--radius-sm: .5rem;--radius-md: .875rem;--radius-lg: 1.25rem;--radius-pill: 999px;--elev-1: 0 1px 0 rgba(112, 214, 209, .06), 0 2px 8px rgba(5, 11, 18, .4);--elev-2: 0 1px 0 rgba(112, 214, 209, .08), 0 12px 32px -12px rgba(5, 11, 18, .7);--ring: 0 0 0 2px var(--color-surface), 0 0 0 4px var(--color-accent);--duration-fast: .14s;--duration-normal: .26s;--ease-out: cubic-bezier(.16, 1, .3, 1)}*,*:before,*:after{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--color-text);background-color:var(--color-surface);background-image:radial-gradient(120% 80% at 50% -10%,rgba(38,125,161,.22),transparent 60%),radial-gradient(90% 60% at 85% 8%,rgba(112,214,209,.08),transparent 55%),url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='1200' height='1200' viewBox='0 0 1200 1200'%3E%3Cg fill='none' stroke='%2370d6d1' stroke-opacity='0.05' stroke-width='1.2'%3E%3Cpath d='M-50 300 C 250 220 450 360 700 300 S 1150 220 1300 320'/%3E%3Cpath d='M-50 460 C 250 380 480 520 720 450 S 1150 380 1300 480'/%3E%3Cpath d='M-50 640 C 280 560 500 700 760 620 S 1150 560 1300 660'/%3E%3Cpath d='M-50 820 C 260 740 520 880 780 800 S 1150 740 1300 840'/%3E%3Cpath d='M-50 1000 C 300 920 540 1060 820 980 S 1150 920 1300 1020'/%3E%3C/g%3E%3C/svg%3E");background-attachment:fixed;background-repeat:no-repeat,no-repeat,repeat;-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}h1,h2,h3,h4{font-family:var(--font-display);line-height:var(--leading-tight);letter-spacing:var(--tracking-tight);font-weight:650;margin:0 0 var(--space-3);text-wrap:balance}h1{font-size:var(--text-xl)}h2{font-size:var(--text-lg)}p{margin:0 0 var(--space-4)}a{color:var(--color-highlight);text-decoration-color:var(--color-border-strong);text-underline-offset:.18em;transition:color var(--duration-fast) var(--ease-out)}a:hover{color:var(--color-accent-strong)}.brand-wordmark{font-family:var(--font-display);font-weight:700;letter-spacing:var(--tracking-wide);text-transform:uppercase;background:linear-gradient(100deg,var(--fjord-cyan),var(--fjord-mist));-webkit-background-clip:text;background-clip:text;color:transparent}.brand-wordmark>.brand-accent{color:var(--color-amber);-webkit-text-fill-color:var(--color-amber)}button{font:inherit;cursor:pointer}input,select,textarea{font-family:inherit;font-size:max(1rem,16px);color:var(--color-text);background-color:var(--color-surface-sunken);border:1px solid var(--color-border);border-radius:var(--radius-sm);padding:.55em .75em;min-height:44px;max-width:100%;transition:border-color var(--duration-fast) var(--ease-out),box-shadow var(--duration-fast) var(--ease-out)}input[type=checkbox],input[type=radio]{min-height:0;width:1.15rem;height:1.15rem;accent-color:var(--color-accent)}input::placeholder,textarea::placeholder{color:var(--color-text-faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--color-accent);box-shadow:0 0 0 3px #33a6a640}:focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}.surface-card{background:var(--color-surface-glass);border:1px solid var(--color-border);border-radius:var(--radius-lg);box-shadow:var(--elev-1);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);padding:.6em 1.1em;min-height:44px;border:1px solid transparent;border-radius:var(--radius-md);font-weight:600;letter-spacing:.01em;-webkit-tap-highlight-color:transparent;transition:transform var(--duration-fast) var(--ease-out),background-color var(--duration-fast) var(--ease-out),border-color var(--duration-fast) var(--ease-out)}.btn:active{transform:translateY(1px)}.btn-primary{background:linear-gradient(180deg,var(--color-accent-strong),var(--color-accent));color:#04181a}.btn-primary:hover{background:var(--color-accent-strong)}.btn-ghost{background:transparent;border-color:var(--color-border-strong);color:var(--color-text)}.btn-ghost:hover{border-color:var(--color-accent);background:#33a6a614}.btn:disabled{opacity:.55;cursor:not-allowed}.page{width:100%;margin:0 auto;padding:var(--space-page);padding-bottom:var(--space-8)}.page-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin:var(--space-2) 0 var(--space-5)}.page-head h1{margin:0}.back-link{display:inline-flex;align-items:center;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted);text-decoration:none}.back-link:hover{color:var(--color-highlight)}.toolbar{display:flex;gap:var(--space-2);align-items:center;margin-bottom:var(--space-4)}.toolbar>input,.toolbar>select{flex:1;min-width:0}.field{display:grid;gap:var(--space-1);font-size:var(--text-sm);color:var(--color-text-muted)}.field>input,.field>select{color:var(--color-text)}.stack{list-style:none;margin:0;padding:0;display:grid;gap:var(--space-2)}.row-card{background:var(--color-surface-glass);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:var(--space-3) var(--space-4);transition:border-color var(--duration-fast) var(--ease-out),transform var(--duration-fast) var(--ease-out)}a.row-card,button.row-card{display:block;width:100%;text-align:left;color:inherit;text-decoration:none}a.row-card:hover,button.row-card:hover{border-color:var(--color-border-strong)}.muted{color:var(--color-text-muted)}.note{font-size:var(--text-xs);color:var(--color-text-faint);margin-top:var(--space-5)}.trip-nav{position:sticky;top:0;z-index:5;display:flex;gap:var(--space-1);margin:calc(var(--space-2) * -1) 0 var(--space-5);padding:var(--space-2);overflow-x:auto;background:#0d1722db;border:1px solid var(--color-border);border-radius:var(--radius-md);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.trip-nav a{flex:0 0 auto;min-height:40px;display:inline-flex;align-items:center;justify-content:center;padding:0 var(--space-3);border-radius:var(--radius-sm);color:var(--color-text-muted);text-decoration:none;font-weight:650;font-size:var(--text-sm)}.trip-nav a:hover{color:var(--color-text);background:#70d6d114}.trip-nav a.active{color:#04181a;background:var(--color-highlight)}.mobile-hero{display:grid;gap:var(--space-3);grid-template-columns:1fr;padding:var(--space-4);margin-bottom:var(--space-3)}.quick-panel{padding:var(--space-4);margin-bottom:var(--space-4);border-color:var(--color-border-strong)}.quick-panel-head{display:flex;justify-content:space-between;align-items:center;gap:var(--space-3);margin-bottom:var(--space-3)}.quick-grid{display:grid;gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr))}.quick-grid .btn{min-height:56px;padding-left:var(--space-2);padding-right:var(--space-2)}.quick-status{display:flex;gap:var(--space-2);flex-wrap:wrap;align-items:center;margin-top:var(--space-3);color:var(--color-text-muted);font-size:var(--text-sm)}.quick-status-actions{display:inline-flex;gap:var(--space-2);flex-wrap:wrap}.live-recorder{position:fixed;left:max(var(--space-2),env(safe-area-inset-left));right:max(var(--space-2),env(safe-area-inset-right));bottom:calc(max(var(--space-2),env(safe-area-inset-bottom)) + 58px);z-index:20;display:grid;grid-template-columns:1fr auto auto;gap:var(--space-2);align-items:center;padding:var(--space-2);background:#0a131cf0;border:1px solid var(--color-highlight);border-radius:var(--radius-md);box-shadow:var(--elev-2);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.live-recorder-main{display:grid;gap:0;min-width:0;color:var(--color-text);background:transparent;border:0;text-align:left}.live-recorder-main span{color:var(--color-text-muted);font-size:var(--text-xs)}.emergency-hero{display:grid;gap:var(--space-4);padding:var(--space-5);border-color:var(--color-poor);margin-bottom:var(--space-5)}.emergency-actions{display:grid;gap:var(--space-2);grid-template-columns:repeat(auto-fit,minmax(150px,1fr))}.emergency-call{min-height:64px;font-size:var(--text-lg)}.emergency-coord{font-size:var(--text-2xl);font-weight:800;letter-spacing:.01em;font-variant-numeric:tabular-nums;color:var(--color-highlight);margin:var(--space-1) 0}.dashboard-grid{display:grid;gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin-bottom:var(--space-5)}.metric-card{min-height:112px;padding:var(--space-4)}.metric-value{font-size:var(--text-xl);font-weight:750;line-height:1.05;font-variant-numeric:tabular-nums}.metric-label{margin-top:var(--space-1);color:var(--color-text-muted);font-size:var(--text-xs)}.empty{color:var(--color-text-muted);padding:var(--space-4);text-align:center;border:1px dashed var(--color-border);border-radius:var(--radius-md)}.tag{display:inline-flex;align-items:center;gap:var(--space-1);padding:.15em .6em;font-size:var(--text-xs);font-weight:600;letter-spacing:.02em;border-radius:var(--radius-pill);background:#70d6d11f;color:var(--color-highlight)}.data-table{width:100%;border-collapse:collapse;font-size:var(--text-sm);font-variant-numeric:tabular-nums}.data-table th,.data-table td{padding:.45rem .6rem;text-align:center;border-bottom:1px solid var(--color-border)}.data-table thead th{position:sticky;top:0;background:var(--color-surface-raised);color:var(--color-text-muted);font-weight:600;white-space:nowrap}.data-table th:first-child,.data-table td:first-child{text-align:left;white-space:nowrap}.table-wrap{overflow-x:auto;border:1px solid var(--color-border);border-radius:var(--radius-md)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}html{overflow-x:hidden;-webkit-text-size-adjust:100%}img,svg,canvas,video{max-width:100%}.page{padding-left:max(var(--space-page),env(safe-area-inset-left));padding-right:max(var(--space-page),env(safe-area-inset-right));padding-bottom:max(var(--space-8),calc(env(safe-area-inset-bottom) + var(--space-4)))}.table-wrap,.stack,[style*=overflow-x]{-webkit-overflow-scrolling:touch}@media (max-width: 540px){.page-head{flex-wrap:wrap}.trip-nav{position:fixed;left:max(var(--space-2),env(safe-area-inset-left));right:max(var(--space-2),env(safe-area-inset-right));top:auto;bottom:max(var(--space-2),env(safe-area-inset-bottom));margin:0;box-shadow:var(--elev-2)}.trip-nav a{min-width:74px}.page{padding-bottom:max(9rem,calc(env(safe-area-inset-bottom) + 8rem))}.quick-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.live-recorder{grid-template-columns:1fr auto}.live-recorder .btn{min-height:40px;padding:.45em .75em}.live-recorder .btn-ghost{display:none}.toolbar{flex-wrap:wrap}.toolbar>input,.toolbar>select{flex:1 1 100%}.toolbar>.btn{flex:1 1 auto}h1{overflow-wrap:anywhere}}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}body{background-attachment:scroll}}
