@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-vietnamese-wght-normal-D0rl6rjA.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-ext-wght-normal-D9tNdqV9.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Space Grotesk Variable;font-style:normal;font-display:swap;font-weight:300 700;src:url(/assets/space-grotesk-latin-wght-normal-BhU9QXUp.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(data:font/woff2;base64,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) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-cyrillic-wght-normal-Dvxsihut.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-greek-wght-normal-DL7QRZyv.woff2) format("woff2-variations");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-vietnamese-wght-normal-usUDDRr7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-ext-wght-normal-Ch3YOpNY.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Manrope Variable;font-style:normal;font-display:swap;font-weight:200 800;src:url(/assets/manrope-latin-wght-normal-DHIcAJRg.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.v2{--navy: #15304a;--navy-deep: #0f2438;--brass: #c0862c;--brass-ink: #a06f22;--brass-lt: #e0a544;--brass-soft: #f6ecd6;--bg: #f5f6f3;--panel: #ffffff;--ink: #15304a;--ink-2: #3c4d5e;--muted: #5f6e7c;--line: #e7eae5;--line-2: #eef1ec;--heading: #15304a;--green: #2f7d55;--green-soft: #e7f2ec;--amber: #b45309;--amber-soft: #fdf1df;--danger: #c0413f;--danger-soft: #fbeceb;--rough: #d9711c;--rough-soft: #fbe9db;--stop: #6f8db3;--forecast: #3b82c4;--actual: #15304a;--primary: #9a6a1f;--primary-ink: #ffffff;--primary-hover: #875c1a;--shadow-sm: 0 1px 2px rgba(21, 48, 74, .05), 0 1px 3px rgba(21, 48, 74, .06);--shadow-md: 0 4px 14px rgba(21, 48, 74, .07), 0 2px 4px rgba(21, 48, 74, .05);--shadow-lg: 0 26px 64px rgba(15, 36, 56, .3);--r-lg: 10px;--r-md: 8px;--r-sm: 6px;--chrome: linear-gradient(180deg, #15304a 0%, #0f2438 100%);--chrome-ink: #b7c6d6;--field: #ffffff;--font-display: "Space Grotesk Variable", ui-sans-serif, system-ui, sans-serif;--font-text: "Manrope Variable", ui-sans-serif, -apple-system, system-ui, sans-serif;--ground: var(--bg);--paper: var(--panel);--caption: var(--muted);--yellow: var(--amber-soft);--yellow-line: var(--amber);--green-line: var(--green);--red: var(--danger);--red-soft: var(--danger-soft);--font: var(--font-text);min-height:100vh;display:flex;flex-direction:column;background:var(--bg);color:var(--ink);font-family:var(--font-text);font-size:15px;line-height:1.5;-webkit-font-smoothing:antialiased}[data-theme=dark] .v2{--bg: #0c1a29;--panel: #15273b;--ink: #e8eef5;--ink-2: #b6c4d2;--muted: #8497aa;--line: #24384f;--line-2: #1a2c40;--heading: #eef4fa;--brass-ink: #d79a3e;--brass-soft: #2f2711;--green: #5fbf8b;--green-soft: #12291d;--amber: #e0973f;--amber-soft: #2c2110;--danger: #e07b78;--danger-soft: #2c1616;--rough: #ef9550;--rough-soft: #33200f;--stop: #86a3c6;--forecast: #5aa9f0;--actual: #ffffff;--primary: #c0862c;--primary-ink: #0c1a29;--primary-hover: #d79a3e;--shadow-sm: 0 1px 2px rgba(0,0,0,.35);--shadow-md: 0 6px 18px rgba(0,0,0,.4);--shadow-lg: 0 26px 64px rgba(0,0,0,.55);--chrome: linear-gradient(180deg, #0a1725 0%, #050d16 100%);--chrome-ink: #aebccd;--field: #182b40;background:radial-gradient(900px 480px at 15% -10%,rgba(224,165,68,.07) 0%,transparent 55%),radial-gradient(1100px 620px at 85% 108%,#16324e 0%,transparent 58%),var(--bg)}.v2 *{box-sizing:border-box}.v2 a{color:var(--ink)}.v2 h1,.v2 h2,.v2 h3{font-family:var(--font-display);color:var(--heading);margin:0;font-weight:600;letter-spacing:-.02em}.v2 h1{font-size:1.6rem}.v2 h2{font-size:1.05rem;letter-spacing:-.01em}.v2 .cap{color:var(--muted);font-size:.82rem}.v2 .eyebrow{color:var(--muted);font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase}.v2 :focus-visible{outline:2px solid var(--brass-lt);outline-offset:2px;border-radius:4px}.v2 .hdr{background:var(--chrome);color:#fff}.v2 .hdr-in{max-width:1180px;margin:0 auto;padding:0 20px;display:flex;align-items:center;gap:22px;min-height:56px;flex-wrap:wrap}.v2 .wordmark{font-family:var(--font-display);font-weight:700;letter-spacing:.14em;font-size:.95rem;color:#fff;text-decoration:none}.v2 .tabs{display:flex;gap:2px}.v2 .tab{color:var(--chrome-ink);text-decoration:none;padding:18px 12px 15px;border-bottom:3px solid transparent;font-weight:600;font-size:.95rem;display:inline-flex;align-items:center;gap:8px;transition:color .15s,background .15s}.v2 .tab:hover{color:#fff;background:#ffffff0a}.v2 .tab.active{color:#fff;border-bottom-color:var(--brass-lt)}.v2 .badge-count{background:var(--brass-lt);color:#0f2438;border-radius:999px;font-size:.72rem;font-weight:800;padding:1px 7px}.v2 .hdr-right{margin-left:auto;display:flex;align-items:center;gap:12px;color:var(--chrome-ink);font-size:.86rem;flex-wrap:nowrap}.v2 .hdr-right>span:first-child{display:block;flex:0 1 auto;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:420px}.v2 .hdr-right>span.hdr-voyage{display:inline-flex;align-items:center;gap:10px;flex:0 1 auto;min-width:0;max-width:none;overflow:hidden}.v2 .hdr-voyage .all-voyages{color:var(--chrome-ink);text-decoration:none;font-weight:600;white-space:nowrap}.v2 .hdr-voyage .all-voyages:hover{color:#fff}.v2 .hdr-voyage .plan-run{color:var(--chrome-ink);white-space:nowrap;opacity:.85}.v2 .hdr-voyage .strip{width:auto}.v2 .hdr-voyage .strip-name{color:#fff}.v2 .hdr-voyage .pill{background:#ffffff14;border-color:#ffffff59;color:#fff}.v2 .hdr-voyage .pill.at_sea{border-color:var(--brass-lt)}.v2 .hdr-right label,.v2 .hdr-right button{white-space:nowrap;flex:none}.v2 .hdr-right b{color:#fff;font-weight:700}.v2 .hdr-right select{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.25);border-radius:var(--r-sm);padding:5px 8px;font:inherit;font-size:.84rem;max-width:260px}.v2 .hdr-right button.linkish{background:none;border:0;color:var(--chrome-ink);cursor:pointer;font:inherit;font-size:.84rem;padding:0;text-decoration:underline}.v2 .hdr-right button.linkish:hover{color:#fff}.v2 .hdr-right button.theme-switch{display:inline-flex;align-items:center;gap:6px;text-decoration:none;padding:5px 9px;border-radius:var(--r-sm)}.v2 .hdr-right button.theme-switch:hover{background:#ffffff0f}.v2 .hdr-right button.theme-switch .i{display:inline-flex;color:#8fa2b6}.v2 .page{max-width:1180px;margin:0 auto;padding:22px 20px 120px;width:100%;flex:1}.v2 .title-row{display:flex;align-items:baseline;gap:14px;flex-wrap:wrap;margin-bottom:14px}.v2 .card{background:var(--panel);border:1px solid var(--line);border-radius:var(--r-lg);padding:18px 20px;margin-bottom:14px;box-shadow:var(--shadow-sm)}.v2 .card.two{box-shadow:var(--shadow-md);border-left:4px solid var(--brass)}.v2 .card.yellow{background:var(--amber-soft);border-color:var(--amber)}.v2 .card.green{background:var(--green-soft);border-color:var(--green)}.v2 .card.red{background:var(--danger-soft);border-color:var(--danger);padding-left:34px;position:relative}.v2 .card.red:before{content:"";position:absolute;left:14px;top:24px;width:9px;height:9px;border-radius:50%;background:var(--danger)}.v2 .two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.v2 .big{font-family:var(--font-display);font-size:2.6rem;font-weight:600;line-height:1;color:var(--heading);letter-spacing:-.02em;font-variant-numeric:tabular-nums}.v2 .big small{font-family:var(--font-text);font-size:1rem;font-weight:600;color:var(--muted);margin-left:6px;letter-spacing:0}.v2 .line{margin-top:8px}.v2 .line.red{color:var(--danger);font-weight:650}.v2 .assumed{background:var(--amber-soft);border:1px solid var(--amber);color:var(--ink);border-radius:var(--r-sm);padding:1px 6px;font-size:.85em;-webkit-box-decoration-break:clone;box-decoration-break:clone}.v2 .assumed:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--amber);margin:0 6px 1px 0;vertical-align:middle}.v2 .warn{background:var(--amber-soft);border:1px solid var(--amber);color:var(--ink);border-radius:var(--r-md);padding:10px 14px 10px 32px;margin-bottom:8px;position:relative}.v2 .warn:before{content:"";position:absolute;left:13px;top:16px;width:9px;height:9px;border-radius:50%;background:var(--amber)}.v2 .warn a,.v2 .warn button{font-weight:650;color:var(--ink)}.v2 input.num-amber{border-color:var(--amber);background:var(--amber-soft)}.v2 .num-issue{display:block;color:var(--ink);font-size:11px;margin-top:2px}.v2 .num-issue:before{content:"● ";color:var(--amber)}.v2 .row{display:flex;gap:10px;flex-wrap:wrap;align-items:center}.v2 .btn{font:inherit;font-weight:600;font-size:.92rem;border-radius:var(--r-sm);padding:10px 18px;border:1px solid var(--line);background:var(--field);color:var(--ink-2);cursor:pointer;transition:background .15s,box-shadow .15s,transform .05s,border-color .15s}.v2 .btn:hover{border-color:var(--muted)}.v2 .btn:active{transform:translateY(1px)}.v2 .btn.primary{background:var(--primary);border-color:var(--primary);color:var(--primary-ink);box-shadow:0 6px 16px #c0862c42}.v2 .btn.primary:hover{background:var(--primary-hover);border-color:var(--primary-hover)}.v2 .btn.text{border-color:transparent;background:transparent;text-decoration:underline;padding-left:4px;padding-right:4px;color:var(--ink)}.v2 .btn:disabled{opacity:.55;cursor:default;box-shadow:none}.v2 details{margin-bottom:14px}.v2 details>summary{cursor:pointer;font-weight:650;color:var(--heading);padding:8px 0;list-style:none}.v2 details>summary:before{content:"▸ ";color:var(--muted)}.v2 details[open]>summary:before{content:"▾ "}.v2 table.t{width:100%;border-collapse:collapse;font-size:.9rem}.v2 table.t th{text-align:left;color:var(--muted);font-weight:700;font-size:.72rem;letter-spacing:.04em;text-transform:uppercase;padding:6px 8px;border-bottom:1px solid var(--line)}.v2 table.t td{padding:7px 8px;border-bottom:1px solid var(--line-2);vertical-align:top;font-variant-numeric:tabular-nums}.v2 .empty{color:var(--muted);padding:24px;text-align:center}.v2 .err{background:var(--danger-soft);border:1px solid var(--danger);color:var(--ink);border-radius:var(--r-md);padding:10px 14px 10px 32px;margin-bottom:12px;position:relative}.v2 .err:before{content:"";position:absolute;left:13px;top:16px;width:9px;height:9px;border-radius:50%;background:var(--danger)}.v2 .ok-note{background:var(--green-soft);border:1px solid var(--green);color:var(--ink);border-radius:var(--r-md);padding:10px 14px 10px 32px;margin-bottom:12px;position:relative}.v2 .ok-note:before{content:"";position:absolute;left:13px;top:16px;width:9px;height:9px;border-radius:50%;background:var(--green)}.v2 label.f{display:flex;flex-direction:column;gap:4px;font-size:.78rem;font-weight:600;color:var(--muted)}.v2 label.f input,.v2 label.f select,.v2 label.f textarea{font:inherit;font-size:.95rem;font-weight:500;color:var(--ink);border:1px solid var(--line);border-radius:var(--r-sm);padding:8px 10px;background:var(--field);transition:border-color .15s,box-shadow .15s}.v2 label.f input:focus,.v2 label.f select:focus,.v2 label.f textarea:focus{outline:none;border-color:var(--brass);box-shadow:0 0 0 3px var(--brass-soft)}.v2 label.f.read input{border-color:var(--green);background:var(--green-soft)}.v2 label.f.missing input,.v2 label.f.missing select{border-color:var(--amber);background:var(--amber-soft)}.v2 label.f .tag{font-size:.7rem;color:var(--muted);font-weight:600}.v2 .grid4{display:grid;grid-template-columns:repeat(4,1fr);gap:10px 12px}.v2 textarea.tele{width:100%;min-height:120px;font:inherit;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.86rem;color:var(--ink);background:var(--field);border:1px solid var(--line);border-radius:var(--r-md);padding:10px}.v2 .tiles{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.v2 .tiles.four{grid-template-columns:repeat(4,1fr)}.v2 .tile{border:1px solid var(--line);border-radius:var(--r-lg);padding:14px;background:var(--panel);box-shadow:var(--shadow-sm)}.v2 .tile.done{background:var(--green-soft);border-color:var(--green)}.v2 .tile.active{background:var(--chrome);color:#fff;border-color:var(--navy-deep)}.v2 .tile.active .cap,.v2 .tile.active .eyebrow{color:#ffffffbf}.v2 .tile.active h2{color:#fff}.v2 .rob-box{background:var(--amber-soft);border:1px solid var(--amber);border-radius:var(--r-lg);padding:14px 16px}.v2 .rob-box input{font-family:var(--font-display);font-size:1.4rem;font-weight:600;width:100%;font-variant-numeric:tabular-nums}.v2 .sticky{position:sticky;bottom:0;background:var(--bg);padding:10px 0 14px;border-top:1px solid var(--line);margin-top:10px}[data-theme=dark] .v2 .sticky{background:#0c1a29}.v2 .ftr{border-top:1px solid var(--line);color:var(--muted);font-size:.8rem;padding:12px 20px;display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.v2 .ftr a,.v2 .ftr span{white-space:nowrap}.v2.login{align-items:center;justify-content:center}.v2.login form{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:26px 28px;width:min(380px,92vw);display:flex;flex-direction:column;gap:12px;box-shadow:var(--shadow-lg)}.v2.login .wordmark{color:var(--heading);font-size:1.1rem}.v2 .card.map .leaflet-container{background:var(--panel)}.v2 .today{display:flex;flex-direction:column}@media (max-width: 640px){.v2 .hdr-in{gap:10px;padding:0 12px}.v2 .tab{padding:14px 7px 12px;font-size:.86rem;white-space:nowrap;flex:0 0 auto}.v2 .tabs{max-width:100%;flex-wrap:wrap;row-gap:0}.v2 .tabs .tab{padding:10px 7px 8px}.v2 table.t.stack thead{display:none}.v2 table.t.stack,.v2 table.t.stack tbody,.v2 table.t.stack tr,.v2 table.t.stack td{display:block;width:100%;box-sizing:border-box}.v2 table.t.stack tr{border-bottom:1px solid var(--line);padding:6px 0}.v2 table.t.stack td{border-bottom:0;padding:3px 0}.v2 table.t.stack td[data-l]:before{content:attr(data-l) ": ";color:var(--muted);font-size:.8rem}.v2 table.t.stack td:empty{display:none}.v2 .hdr-right{width:100%;padding-bottom:10px;gap:8px;font-size:.8rem;flex-wrap:wrap}.v2 .hdr-right>span:first-child{max-width:100%;white-space:normal}.v2 .hdr-right>span.hdr-voyage{flex-wrap:wrap;gap:6px 10px}.v2 .hdr-voyage .strip{min-width:0;width:100%}.v2 .page{padding:14px 12px 140px}.v2 .two,.v2 .grid4,.v2 .tiles,.v2 .tiles.four{grid-template-columns:1fr}.v2 .big{font-size:2.2rem}.v2 .card{padding:14px}}.v2 .pill{display:inline-flex;align-items:center;border-radius:999px;padding:4px 11px;font-size:.72rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase;border:1px solid var(--line);color:var(--ink);background:var(--panel);white-space:nowrap}.v2 .pill.at_sea{border-color:var(--brass);color:var(--ink);background:var(--brass-soft)}.v2 .pill.at_port{border-color:var(--green);background:var(--green-soft)}.v2 .pill.planned{border-color:var(--line);color:var(--muted)}.v2 .pill.closed{border-color:var(--muted);color:var(--muted)}.v2 .pill.small{padding:2px 8px;font-size:.66rem}.v2 .active-voyage{cursor:pointer}.v2 .active-voyage:hover{box-shadow:var(--shadow-lg)}.v2 .tile.amber{background:var(--amber-soft);border-color:var(--amber)}.v2 .strip{display:flex;align-items:flex-start;width:100%}.v2 .strip-seg{display:flex;align-items:flex-start;flex:1 1 0;min-width:0}.v2 .strip-seg:last-child{flex:0 0 auto}.v2 .strip-port{display:flex;flex-direction:column;align-items:flex-start;min-width:0}.v2 .strip .dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--muted);background:var(--panel);display:block}.v2 .strip .dot.done{background:var(--green);border-color:var(--green)}.v2 .strip .dot.current{background:var(--brass);border-color:var(--brass)}.v2 .strip-name{font-weight:650;font-size:.88rem;margin-top:6px;white-space:nowrap}.v2 .strip-date{white-space:nowrap}.v2 .strip .bar{position:relative;flex:1 1 0;height:4px;margin:4px 8px 0;border-radius:2px;background:var(--line)}.v2 .strip .bar.done{background:var(--green)}.v2 .strip .bar.current{background:var(--brass-soft);border:1px solid var(--brass);height:6px;margin-top:3px}.v2 .strip .bar.to_come{background:var(--line)}.v2 .strip .ship{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:var(--brass);border:2px solid var(--panel);transform:translate(-50%,-50%);box-shadow:0 0 0 2px var(--brass)}.v2 .strip.compact{align-items:center}.v2 .strip.compact .strip-port{flex-direction:row;align-items:center;gap:6px}.v2 .strip.compact .strip-name{margin-top:0;font-size:.8rem}.v2 .strip.compact .dot{width:9px;height:9px;border-width:2px}.v2 .strip.compact .strip-seg{flex:0 1 auto}.v2 .strip.compact .strip-seg:last-child{flex:0 0 auto}.v2 .strip.compact .bar{margin:0 8px;flex:0 0 56px;width:56px}.v2 .strip.compact .bar.current{flex-basis:72px;width:72px}.v2 .strip.compact .ship{width:11px;height:11px}@media (max-width: 640px){.v2 .strip-name{font-size:.78rem;white-space:normal}.v2 .strip-date{white-space:normal;font-size:.72rem}}:focus-visible{outline:2px solid var(--brass-lt);outline-offset:2px;border-radius:4px}.toaster{position:fixed;top:18px;right:18px;z-index:1000;display:flex;flex-direction:column;gap:10px}.toast{display:flex;align-items:center;gap:10px;min-width:220px;max-width:360px;background:var(--panel);color:var(--ink);border:1px solid var(--line);border-left:3px solid var(--green);border-radius:10px;padding:12px 16px;box-shadow:var(--shadow-lg);font-size:.9rem;font-weight:500;animation:toast-in .35s cubic-bezier(.2,.7,.2,1) both}.toast.error{border-left-color:var(--danger)}.toast.info{border-left-color:var(--brass)}.toast-dot{width:8px;height:8px;border-radius:50%;background:var(--green);flex:none}.toast.error .toast-dot{background:var(--danger)}.toast.info .toast-dot{background:var(--brass)}@keyframes toast-in{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:none}}.v2 .card.safety{border-left:4px solid var(--danger)}.v2 table.options{width:100%;border-collapse:collapse;font-size:.9rem}.v2 table.options th,.v2 table.options td{text-align:left;padding:6px 8px;border-bottom:1px solid var(--line);vertical-align:top}.v2 table.options th{font-weight:600;color:var(--muted);font-size:.8rem;letter-spacing:.02em}.v2 table.options tr.red td{color:var(--danger)}.v2 table.options tr.amber td:last-child{color:var(--brass-ink)}.v2 .caution{border-left:3px solid var(--brass);padding-left:10px}@media (max-width: 640px){.v2 table.options thead{display:none}.v2 table.options tr{display:block;padding:8px 0;border-bottom:1px solid var(--line)}.v2 table.options td{display:block;border:0;padding:2px 0}.v2 table.options td[data-l]:not([data-l=Tested]):before{content:attr(data-l) ": ";color:var(--muted)}}.v2 .intake .drop{border:2px dashed var(--line);border-radius:var(--r-md);padding:18px;text-align:center;cursor:pointer;margin-top:10px}.v2 .intake .drop.on{border-color:var(--brass);background:var(--amber-soft)}.v2 .intake .pill{border:1px solid var(--line);border-radius:999px;padding:2px 4px 2px 10px;font-size:.85rem}.v2 .chip{display:inline-block;border-radius:999px;padding:1px 9px;font-size:.78rem;font-weight:650;border:1px solid var(--line)}.v2 .chip.new{background:var(--green-soft);border-color:var(--green)}.v2 .chip.update{background:var(--amber-soft);border-color:var(--amber)}.v2 .chip.already_in{color:var(--muted)}.v2 .chip.red{background:var(--danger-soft);border-color:var(--danger)}.v2 .chip.amber{background:var(--amber-soft);border-color:var(--amber)}.v2 .chip.ok{background:var(--green-soft);border-color:var(--green)}.v2 table.intake-preview tr.blocked td{background:var(--danger-soft)}.v2 label.f.bad input,.v2 label.f.bad select{border-color:var(--danger);background:var(--danger-soft)}.v2 .map-slider{display:flex;align-items:center;gap:12px;padding:10px 14px;flex-wrap:wrap}.v2 .map-slider input[type=range]{flex:1 1 220px;accent-color:var(--amber)}.leaflet-tooltip.map-label{background:#0a1420c7;color:#fff;border:0;box-shadow:none;font-size:11px;padding:1px 5px}.leaflet-tooltip.map-label:before{display:none}.v2 .order-card .order-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.v2 .pill.chip-red{border-color:var(--danger);background:var(--danger-soft);color:var(--ink)}.v2 .pill.chip-amber{border-color:var(--amber);background:var(--amber-soft);color:var(--ink)}.v2 .order-card .span2{grid-column:1 / -1}.v2 .order-card .line.free{font-family:var(--font-display);font-size:1.15rem;font-weight:600;color:var(--heading)}.v2 .clock-caption{margin:10px 0 0}.v2 .clock-caption.amber{color:var(--ink);background:var(--amber-soft);border:1px solid var(--amber);border-radius:var(--r-sm);padding:4px 8px}.v2 .clock-caption.red{color:var(--ink);background:var(--danger-soft);border:1px solid var(--danger);border-radius:var(--r-sm);padding:4px 8px}.v2 .card.warn-card{background:var(--amber-soft);border-color:var(--amber)}.v2 .today h2.q{font-size:1.05rem}.v2 .card.map h2.q{padding:14px 14px 0}.v2 .why-card .figures{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;margin-top:10px}.v2 .why-card .figure{border-left:3px solid var(--line);padding-left:10px}.v2 .why-card .fig-head{font-family:var(--font-display);font-weight:600;color:var(--heading);font-size:1.05rem}@media (max-width: 640px){.v2 .why-card .figures{grid-template-columns:1fr}}.v2 .card.built-on{border-color:var(--amber)}.v2 .built-on .bo-line{margin-top:8px;padding-left:18px;position:relative}.v2 .built-on .bo-line:before{content:"";position:absolute;left:2px;top:7px;width:8px;height:8px;border-radius:50%;background:var(--amber)}.v2 .built-on .bo-line.red-dot:before{background:var(--danger)}.v2 .built-on .bo-line.measured:before{background:var(--green)}.v2 .built-on .bo-line.instruction:before{background:var(--brass);border-radius:2px}.v2 .built-on .bo-line a,.v2 .built-on .bo-line button{font-weight:650;color:var(--ink)}.v2 .built-on .bo-block{margin-top:10px}.v2 .card.map{padding:0;overflow:hidden}.v2 .card.map .map-chips{display:flex;gap:6px;align-items:center;flex-wrap:wrap;padding:10px 14px}.v2 .card.map .map-chips .chip{cursor:pointer;background:var(--field);color:var(--ink);font:inherit;font-size:.8rem;font-weight:650;padding:4px 12px}.v2 .card.map .map-chips .chip.on{background:var(--brass-soft);border-color:var(--brass)}.v2 .card.map .map-chips .chip:disabled{opacity:.45;cursor:default}.v2 .card.map .map-frame{position:relative}.v2 .card.map .map-legend{padding:8px 14px 12px}.v2 .options-block tr.order td{font-weight:700;background:var(--brass-soft)}.v2 .options-block tr.best td{border-top:1px solid var(--green);border-bottom:1px solid var(--green)}.v2 .options-block tr.best td:first-child{border-left:1px solid var(--green)}.v2 .options-block tr.best td:last-child{border-right:1px solid var(--green)}.v2 .options-block tr.best td:first-child:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--green);margin:0 6px 1px 0;vertical-align:middle}.v2 .options-block tr.infeasible td{opacity:.55}.v2 .today-buttons{margin-bottom:14px}@media (max-width: 640px){.v2 .today-buttons{position:sticky;bottom:0;z-index:5;background:var(--bg);padding:10px 0 14px;border-top:1px solid var(--line)}[data-theme=dark] .v2 .today-buttons{background:#0c1a29}}.v2 .vstrip{margin-top:8px;overflow-x:auto}.v2 .vstrip svg{display:block;min-width:320px}.v2 .vstrip-line{stroke:var(--line);stroke-width:3}.v2 .vstrip-day circle{stroke:var(--panel);stroke-width:1.5}.v2 .vstrip-day.green circle{fill:var(--green)}.v2 .vstrip-day.amber circle{fill:var(--amber)}.v2 .vstrip-day.red circle{fill:var(--danger)}.v2 .vstrip-day.grey circle{fill:var(--muted)}.v2 .vstrip-day.pending circle{fill:var(--panel);stroke:var(--line)}.v2 .vstrip-day.click,.v2 .vstrip-tick.click{cursor:pointer}.v2 .vstrip-day.click:hover circle{stroke:var(--danger);stroke-width:3}.v2 .vstrip-date{fill:var(--muted);font-size:10px;font-family:var(--font-text)}.v2 .vstrip-band rect{fill:var(--line);opacity:.55}.v2 .vstrip-bandlabel{fill:var(--muted);font-size:10px;font-weight:700;letter-spacing:.04em;text-transform:uppercase}.v2 .vstrip-legchange{stroke:var(--brass);stroke-width:2;stroke-dasharray:3 3}.v2 .vstrip-tick line{stroke:var(--line);stroke-width:1.5}.v2 .vstrip-tick circle{fill:var(--panel);stroke:var(--muted);stroke-width:1.5}.v2 .vstrip-tick.on line{stroke:var(--brass)}.v2 .vstrip-tick.on circle{fill:var(--brass);stroke:var(--brass)}.v2 .vstrip-tick.off:hover circle{stroke:var(--brass);stroke-width:2.5}.v2 .vstrip-ticklabel{fill:var(--brass-ink);font-size:9px;font-weight:700}.v2 .vstrip-tick.off .pending-stem{stroke-dasharray:2 3}.v2 .vstrip-tick.off.open circle{stroke:var(--brass);stroke-width:2.5}.v2 .vstrip-pending{fill:var(--muted);font-size:10px;font-weight:700;font-family:var(--font-text)}.v2 .vstrip-leader{stroke:var(--muted);stroke-width:.8;opacity:.7}.v2 .vstrip-record{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:4px 0 2px}.v2 .vstrip-record .chip{cursor:pointer;background:var(--field);color:var(--ink);font:inherit;font-size:.8rem;padding:3px 10px;border:1px dashed var(--muted);border-radius:999px}.v2 .vstrip-record .chip:hover{border-color:var(--brass)}.v2 .vstrip-legend{margin-top:6px}.v2 .vstrip-legend .green{color:var(--green)}.v2 .vstrip-legend .amber{color:var(--amber)}.v2 .vstrip-legend .red{color:var(--danger)}.v2 .vstrip-legend .grey{color:var(--muted)}.v2 .card.diary-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.v2 .card.diary-head h2{margin:0}.v2 .intake-focus>.card{box-shadow:0 0 0 3px var(--danger);transition:box-shadow .3s}.v2 .model-chart svg{display:block}.v2 .model-chart .grid{stroke:var(--line);stroke-width:1}.v2 .model-chart .axis,.v2 .lane-title{fill:var(--muted);font-size:11px;font-family:var(--font-text)}.v2 .lane-title{font-weight:700}.v2 .lane-unit{font-weight:400}.v2 .model-chart .ship-line{fill:none;stroke:var(--brass);stroke-width:2.5;stroke-linejoin:round}.v2 .model-chart .model-line{fill:none;stroke:var(--heading);stroke-width:1.8;stroke-dasharray:6 4}.v2 .model-chart .gap-shade{fill:var(--amber);opacity:.18}.v2 .model-chart .ship-point circle{fill:var(--brass);stroke:var(--panel);stroke-width:1.5}.v2 .model-chart .stop-band{fill:var(--muted);opacity:.16}.v2 .model-chart .stop-band.port{fill:var(--line);opacity:.7}.v2 .model-chart .leg-change line{stroke:var(--brass);stroke-width:1.5;stroke-dasharray:3 3}.v2 .model-chart .leg-change text{fill:var(--brass-ink);font-size:10px;font-weight:700;text-transform:uppercase}.v2 .chart-legend{margin-top:6px}.v2 .chart-legend .k{font-weight:700}.v2 .chart-legend .k.ship{color:var(--brass)}.v2 .chart-legend .k.model{color:var(--heading)}.v2 .chart-legend .k.gap{color:var(--amber);opacity:.6}.v2 .chart-legend .k.stop{color:var(--muted);opacity:.6}.v2 .chart-legend .k.green{color:var(--green)}.v2 .chart-legend .k.amber{color:var(--amber)}.v2 .chart-legend .k.red{color:var(--danger)}.v2 .chart-legend .k.mean{color:#fff;text-shadow:0 0 2px var(--ink),0 0 2px var(--ink)}.v2 details.lanes{margin-top:10px}.v2 details.lanes>summary{cursor:pointer;list-style:none}.v2 details.lanes>summary:before{content:"▸ "}.v2 details.lanes[open]>summary:before{content:"▾ "}.v2 .lane{margin-top:4px}.v2 .lane-zero{stroke:var(--muted);stroke-width:1}.v2 .lane-day.green .lane-bar{fill:var(--green)}.v2 .lane-day.amber .lane-bar{fill:var(--amber)}.v2 .lane-day.red .lane-bar{fill:var(--danger)}.v2 .lane-day .lane-bar{opacity:.85}.v2 .error-lane .band.green{fill:var(--green);opacity:.14}.v2 .error-lane .band.amber{fill:var(--amber);opacity:.12}.v2 .error-lane .mean-halo{fill:none;stroke:var(--ink);stroke-width:3.5;opacity:.5}.v2 .error-lane .mean-line{fill:none;stroke:#fff;stroke-width:1.8}.v2 .error-lane .lane-outline{fill:none;stroke:var(--heading);stroke-width:1.2}.v2 .chart-legend .k.outline{color:var(--heading)}.v2 .tool-ledger svg{display:block}.v2 .tool-ledger .not-live rect{fill:var(--muted);opacity:.12}.v2 .tool-ledger .not-live text{fill:var(--muted);font-size:11px;font-weight:700}.v2 .ledger-day .run-bar{fill:var(--muted);opacity:.55}.v2 .ledger-day.green .run-bar{fill:var(--green);opacity:.8}.v2 .ledger-day.amber .run-bar{fill:var(--amber);opacity:.85}.v2 .ledger-day.red .run-bar{fill:var(--danger);opacity:.8}.v2 .ledger-day .order-mark{stroke:var(--heading);stroke-width:2.5}.v2 .ledger-day.green .order-mark{stroke:var(--green)}.v2 .ledger-day.amber .order-mark{stroke:var(--amber)}.v2 .tool-ledger .eta-band{fill:var(--green);opacity:.14}.v2 .tool-ledger .eta-line{fill:none;stroke:var(--brass);stroke-width:2}.v2 .tool-ledger .eta-point circle{fill:var(--brass);stroke:var(--panel);stroke-width:1.5}.v2 .tool-ledger .actual-line{stroke:var(--heading);stroke-width:1.8;stroke-dasharray:6 4}.v2 .tool-ledger .running-line{fill:none;stroke:var(--heading);stroke-width:1.8}.v2 .rob-chart svg{display:block}.v2 .rob-chart .rob-line{fill:none;stroke:var(--brass);stroke-width:2}.v2 .rob-chart .rob-point circle{fill:var(--brass);stroke:var(--panel);stroke-width:1.5}.v2 .rob-chart .plan-line{stroke:var(--brass);stroke-width:1.8;stroke-dasharray:6 4}.v2 .rob-chart .plan-label{fill:var(--brass-ink);font-size:10px;font-weight:700;paint-order:stroke;stroke:var(--panel);stroke-width:3px}.v2 .rob-chart .reserve-line{stroke:var(--danger);stroke-width:1.5;stroke-dasharray:2 3}.v2 .rob-chart .reserve-label{fill:var(--danger);font-size:10px;font-weight:700;paint-order:stroke;stroke:var(--panel);stroke-width:3px}.v2 .rob-chart .sounding-step{stroke:var(--amber);stroke-width:2.5}.v2 .rob-chart .sounding-label{fill:var(--ink);font-size:10px;font-weight:650;paint-order:stroke;stroke:var(--panel);stroke-width:3px}.v2 .rob-chart .rob-range{fill:var(--brass);opacity:.16}.v2 .rob-chart .axis.ahead{fill:var(--brass-ink)}.v2 .entry-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;align-items:start;margin-bottom:14px}.v2 .entry-cards>.card,.v2 .entry-cards>div>.card{margin-bottom:0;min-width:0}.v2 .entry-card h2.q{margin:0}.v2 .entry-cards .focus-lead{margin:6px 0 8px;color:var(--danger);font-size:.88rem}.v2 .entry-cards .tiles.port-tiles{grid-template-columns:1fr;gap:8px}.v2 .entry-cards .tile{padding:10px 12px}@media (max-width: 1100px){.v2 .entry-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 640px){.v2 .entry-cards{grid-template-columns:minmax(0,1fr)}}.v2 .report details.reports-table>summary{cursor:pointer;font-weight:650;margin:4px 0 10px}.v2 .report .reports-table td.notes{max-width:260px;white-space:normal}.v2 .model-chart .verdict{margin:8px 0 10px;font-weight:600}.v2 .tool-ledger .ledger-tiles{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px}.v2 .tool-ledger .ledger-tiles .big{font-size:1.4rem;font-weight:700;margin-top:4px}.v2 .tool-ledger .ledger-tiles .tile.amber{background:var(--amber-soft);border-color:var(--amber)}.v2 details.record{margin-top:10px}.v2 details.record>summary{cursor:pointer;list-style:none}.v2 details.record>summary:before{content:"▸ "}.v2 details.record[open]>summary:before{content:"▾ "}@media (max-width: 640px){.v2 .tool-ledger .ledger-tiles{grid-template-columns:1fr}}.v2 .entry-cards .tiles.port-tiles{grid-template-columns:1fr 1fr;gap:8px}.v2 .entry-cards .tiles.port-tiles .tile{padding:8px 10px}.v2 .entry-cards .tiles.port-tiles .tile .eyebrow{font-size:.66rem}.v2 .diary-unavailable{margin:8px 0 0;color:var(--amber);font-weight:600}@media (max-width: 640px){.v2 .entry-cards .tiles.port-tiles{grid-template-columns:1fr}}.v2 .vstrip-day.ok circle{fill:var(--green)}.v2 .vstrip-day.stop circle{fill:var(--stop)}.v2 .chart-legend .k.ok{color:var(--green)}.v2 .chart-legend .k.rough{color:var(--rough)}.v2 .chart-legend .k.beyond{color:var(--danger)}.v2 .chart-legend .k.stop{color:var(--stop)}.v2 .chart-legend .k.grey{color:var(--muted)}.v2 .lane-day.ok .lane-bar{fill:var(--green)}.v2 .lane-day.rough .lane-bar{fill:var(--rough)}.v2 .lane-day.beyond .lane-bar{fill:var(--danger)}.v2 .error-lane .band.ok{fill:var(--green);opacity:.14}.v2 .error-lane .band.rough{fill:var(--rough);opacity:.1}.v2 .ledger-day.ok .run-bar{fill:var(--green);opacity:.8}.v2 .ledger-day.rough .run-bar{fill:var(--rough);opacity:.85}.v2 .ledger-day.ok .order-mark{stroke:var(--green)}.v2 .ledger-day.rough .order-mark{stroke:var(--rough)}.v2 .tool-ledger .ledger-tiles .tile.off{background:var(--rough-soft);border-color:var(--rough)}.v2 .lane-top{fill:var(--muted);font-size:10px;font-family:var(--font-text)}.v2 .model-chart .gap-shade{fill:var(--rough);opacity:.16}.v2 .vstrip{overflow:visible}.v2 .vstrip svg{min-width:0}.v2 .chart-legend{white-space:normal}.v2 .chart-legend span[title]{cursor:help}.v2 .port-switch .chip{cursor:pointer;background:var(--field);color:var(--ink);font:inherit;font-size:.8rem;font-weight:650;padding:3px 10px;border:1px solid var(--line);border-radius:999px}.v2 .port-switch .chip.on{background:var(--brass-soft);border-color:var(--brass)}.v2 .port-rows{display:grid;grid-template-columns:1fr 1fr;gap:6px 10px}.v2 .port-row{display:flex;flex-direction:column;gap:4px;padding:6px 8px;border:1px solid var(--line);border-radius:var(--r-sm);min-height:54px;justify-content:space-between}.v2 .port-row.done{background:var(--green-soft);border-color:var(--green)}.v2 .port-row.open,.v2 .port-row.wide{grid-column:1 / -1}.v2 .port-row b{font-size:.86rem}.v2 .port-row .btn.small{padding:4px 10px;font-size:.8rem;align-self:flex-start}.v2 .entry-cards .tiles.port-tiles{grid-template-columns:1fr}@media (max-width: 640px){.v2 .port-rows{grid-template-columns:1fr 1fr}}.v2 .ledger-day .run-bar.order{opacity:.55}.v2 .ledger-day.none .run-bar{fill:var(--muted);opacity:.5}.v2 .tool-ledger .ledger-tiles .tile.met{background:var(--green-soft);border-color:var(--green)}.v2 .tool-ledger .actual-label{fill:var(--heading);font-size:10px;font-weight:700}.v2 .tool-ledger .axis,.v2 .tool-ledger .lane-title,.v2 .rob-chart .axis,.v2 .rob-chart .lane-title{fill:var(--muted);font-size:11px;font-family:var(--font-text)}.v2 .tool-ledger .grid{stroke:var(--line);stroke-width:1}.v2 .tool-ledger .eta-axis{font-size:10px}.v2 .weather-panels{margin-top:6px}.v2 .wpanel svg{display:block}.v2 .wpanel .fc-line{fill:none;stroke:var(--forecast);stroke-width:1.8}.v2 .wpanel .actual-line-w{fill:none;stroke:var(--actual);stroke-width:1.6;stroke-dasharray:5 4}.v2 .wpanel .report-ring circle{fill:var(--panel);stroke:var(--rough);stroke-width:2}.v2 .wpanel .limit-line{stroke:var(--danger);stroke-width:1.4}.v2 .wpanel .limit-label{fill:var(--danger);font-size:10px;font-weight:700}.v2 .wpanel .day-shade.adverse{fill:var(--rough);opacity:.14}.v2 .wpanel .day-shade.excluded{fill:var(--stop);opacity:.16}.v2 .wpanel .dir-ship{fill:var(--muted)}.v2 .wpanel .dir-arrow{stroke:var(--heading);stroke-width:1.4}.v2 .wpanel .dir-head{fill:var(--heading)}.v2 .chart-legend .k.fc{color:var(--forecast)}.v2 .chart-legend .k.actual{color:var(--heading)}.v2 .chart-legend .k.ring{color:var(--rough)}.v2 .chart-legend .k.limit{color:var(--danger)}.v2 .chart-legend .k.adverse{color:var(--rough);opacity:.75}.v2 .chart-legend .k.excluded{color:var(--stop)}.v2 .gw-line{margin:10px 0 2px;font-weight:600}.v2 .perf{display:flex;flex-direction:column}.v2 .perf .diary-head{display:flex;justify-content:space-between;align-items:baseline;gap:12px;flex-wrap:wrap}.v2 .perf .diary-head h2{margin:0}.v2 .perf .verdict{margin:8px 0 10px;font-weight:600}.v2 .perf-fold{margin-top:10px}.v2 .perf-fold summary{cursor:pointer}.v2 .perf-list{margin:6px 0 8px;padding-left:18px;font-size:.88rem}.v2 .perf-list li{margin:3px 0}.v2 .seg{display:inline-flex;border:1px solid var(--line);border-radius:999px;overflow:hidden}.v2 .seg-b{background:transparent;border:0;padding:4px 12px;font:inherit;font-size:.82rem;color:var(--ink);cursor:pointer}.v2 .seg-b.on{background:var(--heading);color:var(--bg)}.v2 .perf-charts{display:grid;grid-template-columns:1fr 1fr;gap:12px}@media (max-width: 760px){.v2 .perf-charts{grid-template-columns:1fr}}.v2 .xy-chart{min-width:0}.v2 .xy-chart svg{display:block}.v2 .xy-chart .axis,.v2 .xy-chart .lane-title{fill:var(--muted);font-size:11px;font-family:var(--font-text)}.v2 .xy-chart .lane-title{font-weight:700}.v2 .xy-chart .grid{stroke:var(--line);stroke-width:1}.v2 .perf-line{fill:none;stroke:var(--heading);stroke-width:2}.v2 .perf-band{fill:var(--heading);opacity:.1;stroke:none}.v2 .perf-retired{fill:none;stroke:var(--muted);stroke-width:1.5;stroke-dasharray:5 4}.v2 .perf-point{fill:var(--brass);stroke:var(--bg);stroke-width:1}.v2 .perf-label-dot{fill:var(--bg);stroke:var(--heading);stroke-width:2}.v2 .xy-chart .perf-label{fill:var(--heading);font-weight:600}.v2 .chart-legend .k.band{color:var(--heading);opacity:.35}.v2 .chart-legend .k.retired{color:var(--muted)}.v2 .perf-rpm select{margin-left:4px}.v2 .chart-legend .k.prior-k{color:var(--amber)}.v2 .combined{margin-top:12px;padding:10px 12px;border:1px solid var(--line);border-radius:10px}.v2 .perf-leader{stroke:var(--heading);stroke-width:1;stroke-dasharray:1 3;opacity:.7}.v2 .hull-dock{fill:var(--stop);opacity:.16}.v2 .chart-legend .k.dock{color:var(--stop);opacity:.6}.v2 .chart-legend .k.step-k{color:var(--amber)}.v2 .hull-pill{display:inline-block;white-space:nowrap}@media (max-width: 520px){.v2 .hull-pill{white-space:normal;display:block;margin-top:4px}}.v2 .drift-panels{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-top:6px}@media (max-width: 900px){.v2 .drift-panels{grid-template-columns:1fr}}.v2 .drift-panel{min-width:0}.v2 .perf .perf-card h2{margin:0 0 6px}.v2 .perf .answer{margin:4px 0 12px;font-size:1.02rem;line-height:1.45}.v2 .perf .answer b{color:var(--heading)}.v2 .perf-card.trusted{border-left:4px solid var(--green)}.v2 .perf-card.unmeasured{border-left:4px solid var(--amber)}.v2 .perf .eyebrow{font-size:.7rem;font-weight:700;letter-spacing:.14em;color:var(--muted)}.v2 .perf .chart-legend{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.v2 .trust-visual{display:grid;grid-template-columns:1fr 1fr 250px;gap:24px;align-items:center}@media (max-width: 860px){.v2 .trust-visual{grid-template-columns:1fr;gap:14px}}.v2 .gauge svg{display:block;margin-top:6px;max-width:420px}.v2 .gauge .g-lbl,.v2 .rose .g-lbl{fill:var(--muted);font-size:12px;font-family:var(--font-text)}.v2 .gauge .g-val{fill:var(--heading);font-size:14px;font-weight:700;font-family:var(--font-text);font-variant-numeric:tabular-nums}.v2 .gauge .g-track{fill:var(--line)}.v2 .gauge .g-fill{fill:var(--green)}.v2 .gauge .g-fill.bad{fill:var(--danger)}.v2 .gauge .g-limit{stroke:var(--amber);stroke-width:2}.v2 .rose{display:flex;flex-direction:column;align-items:center;gap:4px}.v2 .rose svg{display:block;max-width:100%}.v2 .rose-wedge{fill:var(--line);stroke:var(--panel);stroke-width:2}.v2 .rose-ship{fill:var(--heading)}.v2 .rose-dot{fill:var(--muted);stroke:var(--panel);stroke-width:1.5}.v2 .rose-dot.far{fill:var(--brass)}.v2 .rose-legend{text-align:center;white-space:nowrap}.v2 .k.far-k{color:var(--brass)}.v2 .k.near-k{color:var(--muted)}.v2 .k.g-k{color:var(--green)}.v2 .k.limit-k{color:var(--amber);font-weight:700}.v2 .gauge .g-lbl.small{font-size:11px}.v2 .perf .link-btn{background:none;border:0;padding:0 2px;margin-left:6px;color:var(--brass-ink);font:inherit;font-weight:650;text-decoration:underline;cursor:pointer}.v2 .perf .link-btn:disabled{opacity:.5;cursor:default}.v2 .perf-head{display:flex;justify-content:space-between;align-items:center;gap:10px 16px;flex-wrap:wrap}.v2 .perf-head h2{margin:0}.v2 .perf-tools{display:flex;gap:8px 12px;flex-wrap:wrap;align-items:center}.v2 .wx-visual{display:grid;grid-template-columns:minmax(0,1fr) 280px;gap:20px;align-items:start}@media (max-width: 860px){.v2 .wx-visual{grid-template-columns:minmax(0,1fr)}}.v2 .wx-line{stroke-width:2.5;fill:none}.v2 .wx-line.prior{stroke-dasharray:7 5}.v2 .wx-line.head{stroke:var(--rough)}.v2 .wx-name.head{fill:var(--rough)}.v2 .wx-line.beam{stroke:var(--heading);opacity:.8}.v2 .wx-name.beam{fill:var(--heading)}.v2 .wx-line.following{stroke:var(--muted)}.v2 .wx-name.following{fill:var(--muted)}.v2 .wx-name{font-size:12px;font-weight:700;font-family:var(--font-text)}.v2 .wx-hover{fill:transparent}.v2 .wx-day{stroke:var(--heading);stroke-width:1.5}.v2 .xy-chart .wx-day-label{fill:var(--heading);font-weight:600}.v2 .perf .combined{margin:0;padding:12px 14px;border:1px solid var(--line);border-radius:var(--r-md);display:flex;flex-direction:column;gap:10px}.v2 .combined-grid{display:grid;grid-template-columns:auto 64px 1fr;gap:6px 8px;align-items:center;font-size:.88rem}.v2 .combined-grid input,.v2 .combined-grid select{width:100%;box-sizing:border-box}.v2 .combined-out{border-top:1px solid var(--line);padding-top:8px;display:flex;flex-wrap:wrap;align-items:baseline;gap:4px 10px}.v2 .perf .big{font-family:var(--font-display);font-size:1.8rem;font-weight:600;color:var(--heading);font-variant-numeric:tabular-nums}@media (max-width: 520px){.v2 .perf .wide-only{display:none}}.v2 .hull-tl-bar{stroke:none}.v2 .hull-tl-bar.green{fill:var(--green-soft)}.v2 .hull-tl-bar.amber{fill:var(--amber-soft)}.v2 .hull-tl-bar.grey{fill:var(--line)}.v2 .hull-tl-bar.open{stroke:var(--amber);stroke-width:1.5;stroke-dasharray:5 4}.v2 .hull-tl-dock-block{fill:var(--stop);opacity:.45}.v2 .hull-tl-in{font-size:12.5px;font-weight:650;font-family:var(--font-text);fill:var(--heading)}.v2 .hull-tl-in.green,.v2 .xy-chart .hull-tl-lbl.green{fill:var(--green)}.v2 .hull-tl-in.amber,.v2 .xy-chart .hull-tl-lbl.amber{fill:var(--amber)}.v2 .hull-tl-in.grey,.v2 .xy-chart .hull-tl-lbl.grey{fill:var(--muted)}.v2 .xy-chart .hull-tl-dock{fill:var(--stop);font-weight:650}.v2 .hull-q-line{stroke:var(--amber);stroke-width:2}.v2 .hull-q{fill:var(--amber-soft);stroke:var(--amber);stroke-width:2}.v2 .hull-q-t{fill:var(--amber);font-size:12px;font-weight:800;font-family:var(--font-text)}.v2 .hull-marks{list-style:none;margin:6px 0 0;padding:0;font-size:.88rem;display:flex;flex-direction:column;gap:3px}.v2 .q-mark{display:inline-flex;align-items:center;justify-content:center;width:16px;height:16px;border-radius:50%;border:2px solid var(--amber);color:var(--amber);font-size:10px;font-weight:800;background:var(--amber-soft)}.v2 .hull-figures{display:flex;gap:12px 36px;flex-wrap:wrap;margin-top:12px;align-items:flex-start}.v2 .hull-figures .big{font-size:1.6rem}.v2 .perf .muted-big{color:var(--muted)}.v2 .drift-panel{background:color-mix(in srgb,var(--bg) 55%,var(--panel));border-radius:var(--r-md);padding:10px 12px}.v2 .drift-top{display:flex;justify-content:space-between;align-items:center;gap:8px;margin-bottom:4px}.v2 .perf .badge{display:inline-flex;align-items:center;padding:2px 9px;border-radius:6px;font-size:.82rem;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;border:1px solid transparent}.v2 .perf .badge.green{background:var(--green-soft);color:var(--green);border-color:var(--green)}.v2 .perf .badge.amber{background:var(--amber-soft);color:var(--amber);border-color:var(--amber)}.v2 .perf .badge.grey{background:var(--line);color:var(--muted)}.v2 .spark-zero{stroke:var(--line);stroke-dasharray:3 3}.v2 .spark-last{stroke:var(--heading);stroke-width:3}.v2 .spark-prev{stroke:var(--muted);stroke-width:2;stroke-dasharray:5 3}.v2 .spark-change{stroke:var(--amber);stroke-dasharray:2 3;stroke-width:1.5}.v2 .spark-pt{opacity:.85}.v2 .drift-cap{margin-top:2px}.v2 .perf .drift-needs{margin:8px 0;padding:26px 10px;border:1px dashed var(--line);border-radius:8px;text-align:center;color:var(--muted);font-weight:600}.v2 .perf .amb-text{color:var(--amber);font-weight:650}.v2 .perf-shell{display:flex;flex-wrap:wrap;align-items:center;gap:6px 14px;margin:0 0 14px}.v2 .perf-vessel{font-family:var(--font-display);font-size:1.1rem;font-weight:600;color:var(--heading)}.v2 .perf-chip{display:inline-flex;align-items:center;padding:3px 11px;border-radius:999px;font-size:.72rem;font-weight:700;letter-spacing:.04em;border:1px solid;white-space:nowrap}.v2 .perf-chip.ok{background:var(--green-soft);border-color:var(--green);color:var(--green)}.v2 .perf-chip.amber{background:var(--amber-soft);border-color:var(--amber);color:var(--amber)}.v2 .perf-next{margin-left:auto}@media (max-width: 520px){.v2 .perf-next{margin-left:0;width:100%}}.v2 .perf-point.faint,.v2 .rose-dot.faint{opacity:.32}.v2 .perf-physics{fill:none;stroke:var(--muted);stroke-width:1.2;stroke-dasharray:5 4}.v2 .perf-retired{stroke-dasharray:1.5 3.5}.v2 .wx-line.prior{stroke:var(--muted);stroke-width:1.2;stroke-dasharray:5 4;opacity:.9}.v2 .wx-name.prior{fill:var(--muted);font-weight:600}.v2 .xy-chart .perf-tag{fill:var(--heading);font-weight:650}.v2 .zone-switch{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:6px}.v2 .zone-echo{margin:4px 0 0;font-weight:650;color:var(--heading);font-variant-numeric:tabular-nums}.v2 .port-done{display:flex;align-items:baseline;gap:4px 12px;flex-wrap:wrap}.v2 .port-actions,.v2 .port-confirm{gap:6px;align-items:center;flex-wrap:wrap}.v2 .port-history{margin-top:8px}.v2 .port-history ul{margin:6px 0 0;padding-left:18px}.v2 .btn.danger{background:var(--danger);border-color:var(--danger);color:#fff}.v2 .zone-switch .chip{background:transparent;color:var(--ink);border:1px solid var(--line);cursor:pointer;font-weight:600}.v2 .zone-switch .chip.on{background:var(--brass-soft);border-color:var(--brass);color:var(--heading);font-weight:750}.v2 .tce-figure{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}.v2 .tce-figure .tce-tiles{grid-template-columns:repeat(3,minmax(0,1fr));margin-top:8px}.v2 .tce-figure .tce-tiles .big{font-size:1.4rem;font-weight:700;margin-top:4px;overflow-wrap:anywhere}.v2 .tce-figure .tce-tiles .tile.none .big{color:var(--muted);font-weight:600;font-size:1.1rem}.v2 .estimate{color:var(--muted);opacity:.8;font-style:italic}.v2 .tce-figure .tce-tiles .tile.replayed{border-left:3px solid color-mix(in srgb,var(--amber) 55%,var(--muted))}.v2 .tce-figure .tce-tiles .tile.replayed .big{color:color-mix(in srgb,var(--amber) 55%,var(--muted));font-weight:600}.v2 .tce-figure .replay-line{color:color-mix(in srgb,var(--amber) 55%,var(--muted));font-size:.82rem;margin-top:4px}.v2 .tce-figure .delta-table td{white-space:nowrap}.v2 .tce-figure .delta-table td:first-child{white-space:normal}.v2 .tce-today{margin:10px 0 0;font-weight:600}.v2 .tce-today.grey{color:var(--muted);font-weight:400}.v2 .econ-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(210px,1fr));gap:8px 14px;margin-top:8px;align-items:end}.v2 .econ-grid label.f input,.v2 .econ-grid label.f select{width:100%;box-sizing:border-box}@media (max-width: 640px){.v2 .tce-figure .tce-tiles{grid-template-columns:1fr}.v2 .tce-figure .delta-table td{white-space:normal}}.v2 button.stem-link{background:none;border:0;padding:0;font:inherit;color:inherit;cursor:pointer;text-decoration:underline dotted;text-underline-offset:3px}.v2 .stem-form{margin:8px 0;padding:10px;border:1px solid var(--line, #d6d6d6);border-radius:8px;max-width:100%;box-sizing:border-box}.v2 .stem-form input{max-width:160px}.v2 .unmet{border-left:3px solid var(--danger);padding-left:8px}.v2 .jobs-line{margin:10px 0 0}.v2 .jobs-line.failed{border-left:3px solid var(--danger);padding-left:8px}.v2 .jobs-line .job-failed{font-weight:650;color:var(--ink)}.v2 .jobs-line .job-late{font-weight:650;color:var(--amber)}.v2 .jobs-line .jobs-folded{display:inline-block;margin-left:8px}.v2 .one-card .order-head{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.v2 .one-card .big.arrive{font-size:1.9rem}.v2 .one-card .dot-line{display:flex;align-items:baseline;gap:8px;margin-top:6px}.v2 .one-card .dot-line .dot{flex:0 0 auto;width:9px;height:9px;border-radius:50%;background:var(--green);transform:translateY(-1px)}.v2 .one-card .dot-line.amber .dot{background:var(--amber)}.v2 .one-card .dot-line.red .dot{background:var(--danger)}.v2 .one-card .why-one{font-size:17px;line-height:1.45;margin:12px 0 0;color:var(--ink)}.v2 .one-card .one-foot{display:flex;align-items:center;justify-content:space-between;gap:8px 14px;flex-wrap:wrap;margin-top:12px;border-top:1px solid var(--line);padding-top:10px}.v2 .one-card .one-foot .chips{display:flex;gap:8px;flex-wrap:wrap}.v2 .one-card .one-foot .measured-short{text-align:right;margin-left:auto}.v2 .pill.chip-green{border-color:var(--green);background:var(--green-soft);color:var(--ink)}.v2 button.pill{cursor:pointer;font:inherit;font-size:.8rem;font-weight:650}.v2 .tce-tiles-wrap{margin-bottom:14px}.v2 .tce-tiles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.v2 .tce-tile{margin:0;padding:12px 14px}.v2 .tce-tile .tce-value{font-family:var(--font-display);font-size:1.45rem;font-weight:600;color:var(--heading);margin-top:4px;font-variant-numeric:tabular-nums}.v2 .tce-tile.green{border:2px solid var(--green)}.v2 .tce-tile.red{border:2px solid var(--danger)}.v2 .tce-tile.grey .tce-value{color:var(--muted)}.v2 details.fold{padding:4px 16px}.v2 details.fold>summary{padding:10px 0;font-weight:400;color:var(--ink)}.v2 details.fold>summary .fold-title{font-weight:700;color:var(--heading)}.v2 details.fold>summary .fold-conclusion{color:var(--muted)}.v2 details.fold[open]>.fold-body{padding-bottom:12px}.v2 details.fold .card{border:0;box-shadow:none;margin:0;padding-left:0;padding-right:0;background:none}.v2 details.fold .card.map{overflow:visible}.v2 details.fold .built-on .bo-line{margin-top:8px}.v2 .today.v5 .jobs-line{margin-top:4px}@media (max-width: 640px){.v2 .tce-tiles{grid-template-columns:1fr;gap:8px}.v2 .one-card .one-foot .measured-short{text-align:left;margin-left:0}.v2 .one-card .big.arrive{font-size:1.6rem}}.v2 .one-card>*{min-width:0}.v2 .one-card .pill{white-space:normal;text-align:left;line-height:1.35}@media (max-width: 640px){.v2 .card.two.one-card{grid-template-columns:minmax(0,1fr)}}.v2 .ci-band{margin:0 0 8px;padding:8px 12px;border-radius:var(--r-md);font-weight:650;border:1px solid}.v2 .ci-band.red{background:var(--danger-soft);border-color:var(--danger);color:var(--ink)}.v2 .ci-band.amber{background:var(--amber-soft);border-color:var(--amber);color:var(--ink);font-weight:500}.v2 td.amber-cell,.v2 .amber-words{color:var(--amber);font-weight:650}
