@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-ext-400-normal-BQZuk6qB.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-400-normal-DQukG94-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-cyrillic-400-normal-obahsSVq.woff2) format("woff2"),url(/assets/inter-cyrillic-400-normal-HOLc17fK.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-ext-400-normal-DGGRlc-M.woff2) format("woff2"),url(/assets/inter-greek-ext-400-normal-KugGGMne.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-greek-400-normal-B4URO6DV.woff2) format("woff2"),url(/assets/inter-greek-400-normal-q2sYcFCs.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-vietnamese-400-normal-DMkecbls.woff2) format("woff2"),url(/assets/inter-vietnamese-400-normal-Bbgyi5SW.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-ext-400-normal-C1nco2VV.woff2) format("woff2"),url(/assets/inter-latin-ext-400-normal-77YHD8bZ.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-ext-500-normal-B0yAr1jD.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-500-normal-BmqWE9Dz.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-cyrillic-500-normal-BasfLYem.woff2) format("woff2"),url(/assets/inter-cyrillic-500-normal-CxZf_p3X.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-ext-500-normal-C4iEst2y.woff2) format("woff2"),url(/assets/inter-greek-ext-500-normal-2j5mBUwD.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-greek-500-normal-BIZE56-Y.woff2) format("woff2"),url(/assets/inter-greek-500-normal-Xzm54t5V.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-vietnamese-500-normal-DOriooB6.woff2) format("woff2"),url(/assets/inter-vietnamese-500-normal-mJboJaSs.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-ext-500-normal-CV4jyFjo.woff2) format("woff2"),url(/assets/inter-latin-ext-500-normal-BxGbmqWO.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-ext-600-normal-Dfes3d0z.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-600-normal-Bcila6Z-.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-cyrillic-600-normal-CWCymEST.woff2) format("woff2"),url(/assets/inter-cyrillic-600-normal-4D_pXhcN.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-ext-600-normal-DRtmH8MT.woff2) format("woff2"),url(/assets/inter-greek-ext-600-normal-B8X0CLgF.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-greek-600-normal-plRanbMR.woff2) format("woff2"),url(/assets/inter-greek-600-normal-BZpKdvQh.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-vietnamese-600-normal-Cc8MFFhd.woff2) format("woff2"),url(/assets/inter-vietnamese-600-normal-BuLX-rYi.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-ext-600-normal-D2bJ5OIk.woff2) format("woff2"),url(/assets/inter-latin-ext-600-normal-CIVaiw4L.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-ext-700-normal-BjwYoWNd.woff2) format("woff2"),url(/assets/inter-cyrillic-ext-700-normal-LO58E6JB.woff) format("woff");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-cyrillic-700-normal-CjBOestx.woff2) format("woff2"),url(/assets/inter-cyrillic-700-normal-DrXBdSj3.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-ext-700-normal-qfdV9bQt.woff2) format("woff2"),url(/assets/inter-greek-ext-700-normal-BoQ6DsYi.woff) format("woff");unicode-range:U+1F00-1FFF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-greek-700-normal-C3JjAnD8.woff2) format("woff2"),url(/assets/inter-greek-700-normal-BUv2fZ6O.woff) format("woff");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-vietnamese-700-normal-DlLaEgI2.woff2) format("woff2"),url(/assets/inter-vietnamese-700-normal-BZaoP0fm.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-ext-700-normal-Ca8adRJv.woff2) format("woff2"),url(/assets/inter-latin-ext-700-normal-TidjK2hL.woff) format("woff");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:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-devanagari-500-normal-B_DH_jja.woff2) format("woff2"),url(/assets/rajdhani-devanagari-500-normal-BPH8g_s8.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-ext-500-normal-DiyUS11w.woff2) format("woff2"),url(/assets/rajdhani-latin-ext-500-normal-CyRWJZ5B.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/rajdhani-latin-500-normal-ByNUCHrt.woff2) format("woff2"),url(/assets/rajdhani-latin-500-normal-DfvNI-Td.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-devanagari-600-normal-DhS7ScYx.woff2) format("woff2"),url(/assets/rajdhani-devanagari-600-normal-BtY48IV_.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-ext-600-normal-C9ZjJQAt.woff2) format("woff2"),url(/assets/rajdhani-latin-ext-600-normal-BleIgkPp.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/rajdhani-latin-600-normal-CXCVEoA9.woff2) format("woff2"),url(/assets/rajdhani-latin-600-normal-Dx02qI2_.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-devanagari-700-normal-BQQOj9BB.woff2) format("woff2"),url(/assets/rajdhani-devanagari-700-normal-DBRwWuxA.woff) format("woff");unicode-range:U+0900-097F,U+1CD0-1CF9,U+200C-200D,U+20A8,U+20B9,U+20F0,U+25CC,U+A830-A839,U+A8E0-A8FF,U+11B00-11B09}@font-face{font-family:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-ext-700-normal-S6aYESQK.woff2) format("woff2"),url(/assets/rajdhani-latin-ext-700-normal-BPaQ7tlD.woff) format("woff");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:Rajdhani;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/rajdhani-latin-700-normal-BPDUZo87.woff2) format("woff2"),url(/assets/rajdhani-latin-700-normal-e0Uj8ZlN.woff) format("woff");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}:root{color-scheme:light;--topbar-bg: #12132e;--bg: #e9e9f1;--bg2: #e1e1ec;--surface: #ffffff;--surface-2: #ffffff;--surface-sunken: #ececf3;--navy: #232050;--navy-2: #17123d;--navy-hi: #322e60;--glass-blur: 20px;--glass-sat: 1.7;--glass-dark: rgba(18, 19, 46, .72);--glass-dark-solid: #12132e;--glass-light: rgba(249, 249, 253, .72);--glass-light-solid: #f9f9fd;--glass-hi: rgba(255, 255, 255, .14);--silver: #cfd0dc;--silver-dk: #9698ab;--silver-lt: #ececf3;--accent: #4b4e8f;--accent-dim: #383a70;--accent-weak: rgba(75, 78, 143, .12);--accent-red: #a83c4b;--blue: #3f5fa0;--red: #b23b3b;--orange: #a8632e;--text: #1c1b2b;--text-strong: #0c0b1a;--text-muted: #5f5e72;--text-faint: #9695a6;--hairline: rgba(20, 16, 60, .1);--border: rgba(20, 16, 60, .12);--border-2: rgba(20, 16, 60, .07);--ok-bg: #e7f1ea;--ok-fg: #2f7048;--ok-bd: #c4ddcd;--err-bg: #f6e9ea;--err-fg: #a23b3b;--err-bd: #e6c6c7;--warn-bg: #f5efdc;--warn-fg: #836218;--warn-bd: #e2d4ac;--info-bg: #e9ecf6;--info-fg: #3a4f8a;--active-bg: var(--accent-weak);--active-fg: var(--accent-dim);--panel: var(--surface);--panel-2: var(--surface-sunken);--panel-alt: var(--bg2);--muted: var(--text-muted);--muted-fg: var(--text-muted);--chip-bg: var(--surface-sunken);--danger: var(--red);--teal: var(--accent);--zebra: rgba(20, 16, 60, .025);--control-hover: rgba(20, 16, 60, .05);--halo: rgba(30, 24, 90, .13);--task-teak: #b0913f;--task-polishing: #55564a;--task-washing: #2a5c8a;--task-pdi: #7d858f;--task-delivery: #223039;--task-seatrial: #223039;--task-other: #6b6a60;--task-engineinstall: #2e7d52;--task-enginestartup: #1a5c3a;--task-upholstery: #6b3fa0;--task-stickers: #66140e;--radius-sm: 2px;--radius: 3px;--radius-lg: 4px;--radius-pill: 2px;--shadow-sm: 0 1px 2px rgba(10, 8, 40, .07), 0 1px 1px rgba(10, 8, 40, .05);--shadow-md: 0 6px 20px rgba(10, 8, 40, .11), 0 1px 3px rgba(10, 8, 40, .07);--shadow-lg: 0 24px 64px rgba(7, 4, 40, .22), 0 6px 18px rgba(7, 4, 40, .13);--ring: 0 0 0 3.5px color-mix(in srgb, var(--accent) 32%, transparent);--font-body: -apple-system, BlinkMacSystemFont, "SF Pro Text", "Inter", system-ui, "Segoe UI", sans-serif;--font-disp: -apple-system, BlinkMacSystemFont, "SF Pro Display", "Inter", system-ui, sans-serif;--font-mono: ui-monospace, "SF Mono", "JetBrains Mono", "Menlo", monospace;--dur-fast: .14s;--dur: .22s;--dur-slow: .32s;--ease-out: cubic-bezier(.32, .72, 0, 1);--ease-in-out: cubic-bezier(.65, 0, .35, 1);--ease-spring: linear( 0, .104 3.7%, .393 8.2%, .678 12.9%, .884 17.7%, .996 21%, 1.036 23.5%, 1.052 26.5%, 1.045 30.3%, 1.017 37.1%, 1.001 42.9%, .996 54.3%, 1 );--topbar-h: 54px;--subbar-h: 34px}:root[data-theme=dark]{color-scheme:dark;--topbar-bg: #12132e;--bg: #0a0820;--bg2: #100d2a;--surface: #151230;--surface-2: #1c1842;--surface-sunken: #0b0922;--navy: #1e1a4a;--navy-2: #13103a;--navy-hi: #2a2660;--glass-dark: rgba(18, 19, 46, .8);--glass-dark-solid: #12132e;--glass-light: rgba(28, 24, 66, .82);--glass-light-solid: #1c1842;--glass-hi: rgba(255, 255, 255, .05);--silver: #2b2850;--silver-dk: #8a8aa8;--silver-lt: #201d44;--accent: #8c8fe0;--accent-dim: #6f72c4;--accent-weak: rgba(140, 143, 224, .2);--text: #e5e5f2;--text-strong: #f4f4fb;--text-muted: #9a9ab5;--text-faint: #64647e;--hairline: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .12);--border-2: rgba(255, 255, 255, .06);--ok-bg: rgba(64, 150, 96, .18);--ok-fg: #77c99a;--ok-bd: rgba(64, 150, 96, .34);--err-bg: rgba(190, 74, 74, .2);--err-fg: #e58a8a;--err-bd: rgba(190, 74, 74, .42);--warn-bg: rgba(176, 140, 56, .2);--warn-fg: #dcbc68;--warn-bd: rgba(176, 140, 56, .36);--info-bg: rgba(90, 110, 190, .2);--info-fg: #9fb0e8;--info-bd: rgba(90, 110, 190, .36);--active-fg: #9fa2ee;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .45), 0 1px 1px rgba(0, 0, 0, .35);--shadow-md: 0 8px 24px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 28px 70px rgba(0, 0, 0, .66), 0 8px 22px rgba(0, 0, 0, .5);--zebra: rgba(255, 255, 255, .028);--control-hover: rgba(255, 255, 255, .07);--halo: rgba(140, 143, 224, .1)}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--topbar-bg: #12132e;--bg: #0a0820;--bg2: #100d2a;--surface: #151230;--surface-2: #1c1842;--surface-sunken: #0b0922;--navy: #1e1a4a;--navy-2: #13103a;--navy-hi: #2a2660;--glass-dark: rgba(18, 19, 46, .8);--glass-dark-solid: #12132e;--glass-light: rgba(28, 24, 66, .82);--glass-light-solid: #1c1842;--glass-hi: rgba(255, 255, 255, .05);--silver: #2b2850;--silver-dk: #8a8aa8;--silver-lt: #201d44;--accent: #8c8fe0;--accent-dim: #6f72c4;--accent-weak: rgba(140, 143, 224, .2);--text: #e5e5f2;--text-strong: #f4f4fb;--text-muted: #9a9ab5;--text-faint: #64647e;--hairline: rgba(255, 255, 255, .08);--border: rgba(255, 255, 255, .12);--border-2: rgba(255, 255, 255, .06);--ok-bg: rgba(64, 150, 96, .18);--ok-fg: #77c99a;--ok-bd: rgba(64, 150, 96, .34);--err-bg: rgba(190, 74, 74, .2);--err-fg: #e58a8a;--err-bd: rgba(190, 74, 74, .42);--warn-bg: rgba(176, 140, 56, .2);--warn-fg: #dcbc68;--warn-bd: rgba(176, 140, 56, .36);--info-bg: rgba(90, 110, 190, .2);--info-fg: #9fb0e8;--info-bd: rgba(90, 110, 190, .36);--active-fg: #9fa2ee;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .45), 0 1px 1px rgba(0, 0, 0, .35);--shadow-md: 0 8px 24px rgba(0, 0, 0, .55), 0 2px 6px rgba(0, 0, 0, .4);--shadow-lg: 0 28px 70px rgba(0, 0, 0, .66), 0 8px 22px rgba(0, 0, 0, .5);--zebra: rgba(255, 255, 255, .028);--control-hover: rgba(255, 255, 255, .07);--halo: rgba(140, 143, 224, .1)}}:root[data-palette=indigo]{--topbar-bg:#12132e;--glass-dark:rgba(18,19,46,.72);--glass-dark-solid:#12132e;--navy:#1f2147;--navy-2:#14152f;--navy-hi:#2c2e5e;--accent:#4b4e8f;--accent-dim:#383a70;--accent-weak:rgba(75,78,143,.12);--halo:rgba(30,24,90,.13)}:root[data-palette=teal]{--topbar-bg:#0f2b30;--glass-dark:rgba(15,43,48,.74);--glass-dark-solid:#0f2b30;--navy:#123a41;--navy-2:#0d2b30;--navy-hi:#18525c;--accent:#158393;--accent-dim:#0f6472;--accent-weak:rgba(21,131,147,.12);--halo:rgba(15,64,74,.13)}:root[data-palette=slate]{--topbar-bg:#1a2130;--glass-dark:rgba(26,33,48,.74);--glass-dark-solid:#1a2130;--navy:#232c3d;--navy-2:#171d29;--navy-hi:#313c50;--accent:#4d6a86;--accent-dim:#3a5169;--accent-weak:rgba(77,106,134,.12);--halo:rgba(40,60,86,.13)}:root[data-palette=graphite]{--topbar-bg:#1c1d21;--glass-dark:rgba(28,29,33,.74);--glass-dark-solid:#1c1d21;--navy:#26282d;--navy-2:#191a1e;--navy-hi:#34363d;--accent:#5f6470;--accent-dim:#474b55;--accent-weak:rgba(95,100,112,.12);--halo:rgba(60,64,74,.12)}:root[data-palette=burgundy]{--topbar-bg:#2a1220;--glass-dark:rgba(42,18,32,.74);--glass-dark-solid:#2a1220;--navy:#3a1a2b;--navy-2:#24101b;--navy-hi:#4d2438;--accent:#9c4256;--accent-dim:#7c3244;--accent-weak:rgba(156,66,86,.12);--halo:rgba(90,30,48,.13)}:root[data-palette=forest]{--topbar-bg:#10241a;--glass-dark:rgba(16,36,26,.74);--glass-dark-solid:#10241a;--navy:#163524;--navy-2:#0f2418;--navy-hi:#1f4c34;--accent:#3f7f5a;--accent-dim:#2f6446;--accent-weak:rgba(63,127,90,.12);--halo:rgba(24,70,46,.13)}:root[data-palette=blue]{--topbar-bg:#0f0f42;--glass-dark:rgba(15,15,66,.78);--glass-dark-solid:#0f0f42;--navy:#191a5e;--navy-2:#0a0930;--navy-hi:#2e2dae;--accent:#2e2dae;--accent-dim:#22237f;--accent-weak:rgba(46,45,174,.12);--halo:rgba(20,20,90,.14)}:root[data-palette=red]{--topbar-bg:#5e1219;--glass-dark:rgba(94,18,25,.8);--glass-dark-solid:#5e1219;--navy:#8a1620;--navy-2:#4a0e14;--navy-hi:#b91d27;--accent:#b91d27;--accent-dim:#8f1720;--accent-weak:rgba(185,29,39,.12);--halo:rgba(120,20,28,.14)}:root[data-palette=green]{--topbar-bg:#0c2a27;--glass-dark:rgba(12,42,39,.8);--glass-dark-solid:#0c2a27;--navy:#124d38;--navy-2:#0c2a27;--navy-hi:#1a6a44;--accent:#0f8a41;--accent-dim:#0c6d34;--accent-weak:rgba(19,163,77,.12);--halo:rgba(16,90,52,.14)}:root[data-palette=gold]{--topbar-bg:#3b222c;--glass-dark:rgba(59,34,44,.8);--glass-dark-solid:#3b222c;--navy:#5a4526;--navy-2:#2e2018;--navy-hi:#6e5a2c;--accent:#8f7a2c;--accent-dim:#6e5a2c;--accent-weak:rgba(163,141,51,.14);--halo:rgba(110,90,44,.14)}:root[data-palette=silver]{--topbar-bg:#141414;--glass-dark:rgba(20,20,20,.8);--glass-dark-solid:#141414;--navy:#26262a;--navy-2:#161618;--navy-hi:#3a3a3a;--accent:#5f5f5f;--accent-dim:#474747;--accent-weak:rgba(95,95,95,.14);--halo:rgba(60,60,64,.13)}:root[data-theme=dark][data-palette=indigo]{--accent:#8c8fe0;--accent-dim:#6f72c4;--accent-weak:rgba(140,143,224,.2);--halo:rgba(140,143,224,.1)}:root[data-theme=dark][data-palette=teal]{--accent:#4fc6d8;--accent-dim:#2ea5b8;--accent-weak:rgba(79,198,216,.2);--halo:rgba(90,196,216,.1)}:root[data-theme=dark][data-palette=slate]{--accent:#86a6c4;--accent-dim:#6a8bab;--accent-weak:rgba(134,166,196,.2);--halo:rgba(134,166,196,.1)}:root[data-theme=dark][data-palette=graphite]{--accent:#aeb3bf;--accent-dim:#8f95a3;--accent-weak:rgba(174,179,191,.2);--halo:rgba(174,179,191,.09)}:root[data-theme=dark][data-palette=burgundy]{--accent:#d98aa0;--accent-dim:#c06d85;--accent-weak:rgba(217,138,160,.2);--halo:rgba(217,138,160,.1)}:root[data-theme=dark][data-palette=forest]{--accent:#79c99a;--accent-dim:#57ac7c;--accent-weak:rgba(121,201,154,.2);--halo:rgba(121,201,154,.1)}:root[data-theme=dark][data-palette=blue]{--accent:#7f7ef0;--accent-dim:#5b5ae0;--accent-weak:rgba(127,126,240,.22);--halo:rgba(127,126,240,.1)}:root[data-theme=dark][data-palette=red]{--accent:#ef6b73;--accent-dim:#e2434d;--accent-weak:rgba(239,107,115,.22);--halo:rgba(239,107,115,.1)}:root[data-theme=dark][data-palette=green]{--accent:#4fc07a;--accent-dim:#2fa85c;--accent-weak:rgba(79,192,122,.22);--halo:rgba(79,192,122,.1)}:root[data-theme=dark][data-palette=gold]{--accent:#d9c25c;--accent-dim:#bda842;--accent-weak:rgba(217,194,92,.22);--halo:rgba(217,194,92,.1)}:root[data-theme=dark][data-palette=silver]{--accent:#c4c4c4;--accent-dim:#9a9a9a;--accent-weak:rgba(196,196,196,.2);--halo:rgba(196,196,196,.09)}@media (prefers-color-scheme: dark){:root:not([data-theme=light])[data-palette=indigo]{--accent:#8c8fe0;--accent-dim:#6f72c4;--accent-weak:rgba(140,143,224,.2);--halo:rgba(140,143,224,.1)}:root:not([data-theme=light])[data-palette=teal]{--accent:#4fc6d8;--accent-dim:#2ea5b8;--accent-weak:rgba(79,198,216,.2);--halo:rgba(90,196,216,.1)}:root:not([data-theme=light])[data-palette=slate]{--accent:#86a6c4;--accent-dim:#6a8bab;--accent-weak:rgba(134,166,196,.2);--halo:rgba(134,166,196,.1)}:root:not([data-theme=light])[data-palette=graphite]{--accent:#aeb3bf;--accent-dim:#8f95a3;--accent-weak:rgba(174,179,191,.2);--halo:rgba(174,179,191,.09)}:root:not([data-theme=light])[data-palette=burgundy]{--accent:#d98aa0;--accent-dim:#c06d85;--accent-weak:rgba(217,138,160,.2);--halo:rgba(217,138,160,.1)}:root:not([data-theme=light])[data-palette=forest]{--accent:#79c99a;--accent-dim:#57ac7c;--accent-weak:rgba(121,201,154,.2);--halo:rgba(121,201,154,.1)}:root:not([data-theme=light])[data-palette=blue]{--accent:#7f7ef0;--accent-dim:#5b5ae0;--accent-weak:rgba(127,126,240,.22);--halo:rgba(127,126,240,.1)}:root:not([data-theme=light])[data-palette=red]{--accent:#ef6b73;--accent-dim:#e2434d;--accent-weak:rgba(239,107,115,.22);--halo:rgba(239,107,115,.1)}:root:not([data-theme=light])[data-palette=green]{--accent:#4fc07a;--accent-dim:#2fa85c;--accent-weak:rgba(79,192,122,.22);--halo:rgba(79,192,122,.1)}:root:not([data-theme=light])[data-palette=gold]{--accent:#d9c25c;--accent-dim:#bda842;--accent-weak:rgba(217,194,92,.22);--halo:rgba(217,194,92,.1)}:root:not([data-theme=light])[data-palette=silver]{--accent:#c4c4c4;--accent-dim:#9a9a9a;--accent-weak:rgba(196,196,196,.2);--halo:rgba(196,196,196,.09)}}:root[data-theme=dark][data-palette=blue],:root:not([data-theme=light])[data-palette=blue]{--bg:#08081f;--bg2:#0d0d2e;--surface:#131338;--surface-2:#1a1a48;--surface-sunken:#060615}:root[data-theme=dark][data-palette=red],:root:not([data-theme=light])[data-palette=red]{--bg:#190709;--bg2:#230b0e;--surface:#2a1013;--surface-2:#351619;--surface-sunken:#120406}:root[data-theme=dark][data-palette=green],:root:not([data-theme=light])[data-palette=green]{--bg:#071613;--bg2:#0b201d;--surface:#0f2926;--surface-2:#143430;--surface-sunken:#050f0d}:root[data-theme=dark][data-palette=gold],:root:not([data-theme=light])[data-palette=gold]{--bg:#150f12;--bg2:#1e161a;--surface:#241a20;--surface-2:#2e232a;--surface-sunken:#0f0b0e}:root[data-theme=dark][data-palette=silver],:root:not([data-theme=light])[data-palette=silver]{--bg:#0c0c0c;--bg2:#131313;--surface:#191919;--surface-2:#202020;--surface-sunken:#080808}:root[data-theme=dark][data-palette=teal],:root:not([data-theme=light])[data-palette=teal]{--bg:#061618;--bg2:#0a2023;--surface:#0e2a2e;--surface-2:#133439;--surface-sunken:#040f11}:root[data-theme=dark][data-palette=slate],:root:not([data-theme=light])[data-palette=slate]{--bg:#0a0e15;--bg2:#10151f;--surface:#161c28;--surface-2:#1c2432;--surface-sunken:#070a10}:root[data-theme=dark][data-palette=graphite],:root:not([data-theme=light])[data-palette=graphite]{--bg:#0d0e10;--bg2:#131417;--surface:#191a1e;--surface-2:#202126;--surface-sunken:#090a0c}:root[data-theme=dark][data-palette=burgundy],:root:not([data-theme=light])[data-palette=burgundy]{--bg:#12080d;--bg2:#1a0c13;--surface:#201018;--surface-2:#29161f;--surface-sunken:#0c0509}:root[data-theme=dark][data-palette=forest],:root:not([data-theme=light])[data-palette=forest]{--bg:#071a12;--bg2:#0b2318;--surface:#0f2c1e;--surface-2:#143626;--surface-sunken:#05130d}*{box-sizing:border-box}html,body,#root{height:100%;margin:0}body{font-family:var(--font-body);font-size:13px;line-height:1.45;color:var(--text);background:radial-gradient(90% 65% at 50% 26%,rgba(255,255,255,.55),transparent 58%),linear-gradient(162deg,#c7d1d6,#a8b6bf 55%,#93a3ad) fixed;-webkit-font-smoothing:antialiased}a{color:var(--accent-dim);text-decoration:none}a:hover{text-decoration:underline}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:#1c93a459;border-radius:0}.app{display:flex;flex-direction:column;height:100vh;overflow:hidden}.topbar{height:var(--topbar-h);flex:0 0 auto;background:var(--topbar-bg);color:#fff;display:flex;align-items:center;gap:14px;padding:0 16px;z-index:40}.topbar-brand{display:flex;align-items:center;gap:10px}.topbar-brand .mark{width:30px;height:28px;display:grid;place-items:center;filter:drop-shadow(0 0 5px rgba(28,147,164,.45))}.topbar-brand .name{font-family:var(--font-disp);font-weight:700;font-size:13px;letter-spacing:.06em;line-height:1.05}.topbar-brand .sub{font-size:8px;letter-spacing:.14em;color:#ffffff8c;text-transform:uppercase}.topbar-spacer{flex:1 1 auto}.topbar-actions{display:flex;align-items:center;gap:10px}.topbar .user{display:flex;align-items:center;gap:8px;font-size:11px}.topbar .avatar{width:30px;height:30px;border-radius:50%;background:var(--accent-dim);color:#fff;display:grid;place-items:center;font-family:var(--font-disp);font-weight:700;flex:0 0 auto}@keyframes logoSpin{to{transform:rotate(360deg)}}:root[data-logo-spin] .topbar-brand .mark img,:root[data-logo-spin] .topbar-brand .mark svg{animation:logoSpin 14s linear infinite;transform-origin:50% 50%;will-change:transform}@media (prefers-reduced-motion: reduce){:root[data-logo-spin] .topbar-brand .mark img,:root[data-logo-spin] .topbar-brand .mark svg{animation:none}}.user-btn{background:none;border:1px solid transparent;color:inherit;cursor:pointer;border-radius:var(--radius);padding:3px 6px;transition:.12s}.user-btn:hover{background:#ffffff14;border-color:#ffffff29}.bell-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;background:none;border:1px solid transparent;color:#fff;line-height:0;cursor:pointer;padding:5px 7px;border-radius:var(--radius)}.bell-btn:hover{background:#ffffff14}.bell-badge{position:absolute;top:-2px;right:-2px;min-width:15px;height:15px;padding:0 3px;background:var(--red);color:#fff;font-size:9px;font-weight:700;line-height:15px;text-align:center;border-radius:8px}.bell-menu{position:absolute;top:calc(100% + 6px);right:0;width:320px;max-height:60vh;overflow-y:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-lg);z-index:61}.bell-menu-hd{display:flex;align-items:center;justify-content:space-between;padding:8px 12px;border-bottom:1px solid var(--border);font-family:var(--font-disp);font-weight:700;font-size:11px;letter-spacing:.05em;text-transform:uppercase;color:var(--text-strong)}.bell-item{display:block;width:100%;text-align:left;padding:9px 12px;background:none;border:none;border-bottom:1px solid var(--border-2);cursor:pointer}.bell-item:hover{background:#1c93a40f}.bell-item.unread{background:#1c93a417}.bell-item.unread .bell-item-title:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--accent);margin-right:6px;vertical-align:middle}.bell-item-title{font-size:12px;font-weight:600;color:var(--text-strong)}.bell-item-msg{font-size:11px;color:var(--text-muted);margin-top:2px}.bell-item-time{font-size:10px;color:var(--text-muted);margin-top:3px}.nav-trigger{display:inline-flex;align-items:center;gap:8px;min-width:160px;height:34px;padding:0 12px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#fff;font-family:var(--font-disp);font-weight:600;font-size:11px;letter-spacing:.08em;text-transform:uppercase;border-radius:var(--radius);cursor:pointer}.nav-trigger:hover{background:#ffffff1f}.nav-menu{position:fixed;top:var(--topbar-h);left:14px;width:min(320px,calc(100vw - 28px));max-height:calc(100vh - var(--topbar-h) - 16px);overflow-y:auto;background:#121a21e6;border:1px solid rgba(255,255,255,.08);box-shadow:0 24px 64px #00000080;z-index:60;padding:10px}.nav-cols{display:flex;flex-direction:column}.nav-group{margin-bottom:6px}.nav-group-hd{font-size:9px;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:#ffffff57;padding:9px 10px 5px}.nav-item{display:block;width:100%;text-align:left;padding:7px 10px;background:none;border:none;border-left:2px solid transparent;color:#ffffffbd;font-size:12px;letter-spacing:.01em;cursor:pointer}.nav-item:hover{background:#ffffff12;color:#fff}.nav-item.active{background:#ffffff0d;border-left-color:var(--accent);color:#fff;font-weight:600}.nav-sub-hd{display:flex;align-items:center;gap:8px;font-weight:600;color:#ffffffe0}.nav-sub-caret{font-size:9px;width:9px;color:#ffffff6b}.nav-sub-hd.open{color:#fff}.nav-sub-item{padding-left:24px;color:#fff9}.nav-sub-item:before{content:""}.content{flex:1 1 auto;overflow:auto;padding:18px 20px}.page-panel{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:18px;margin-bottom:16px}.page-head{display:flex;align-items:center;gap:12px;margin-bottom:14px}.page-title{font-family:var(--font-disp);font-weight:700;font-size:18px;letter-spacing:.03em;text-transform:uppercase;color:var(--text-strong);margin:0}.page-head .spacer{flex:1 1 auto}.help-wrap{position:relative;flex:0 0 auto}.help-btn{width:26px;height:26px;border-radius:50%;border:1px solid var(--border);background:var(--surface);color:var(--text);font-weight:700;font-size:13px;line-height:1;cursor:pointer}.help-btn:hover,.help-btn.open{background:var(--accent);border-color:var(--accent);color:#fff}.help-pop{position:absolute;top:34px;right:0;z-index:70;width:min(340px,86vw);background:var(--surface-2);color:var(--text);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:0 12px 32px #00000038;padding:12px 14px}.help-pop-hd{font-family:var(--font-disp);font-weight:700;font-size:12px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-strong);margin-bottom:6px}.help-pop p{margin:0 0 8px;font-size:12.5px;line-height:1.45;color:var(--text)}.help-pop p:last-child{margin-bottom:0}:root[data-hide-headers] .page-title{display:none}:root[data-hide-headers] .page-head{margin-bottom:8px}.muted{color:var(--text-muted);font-size:11px}.btn{display:inline-flex;align-items:center;gap:6px;height:32px;padding:0 14px;border:1px solid var(--border);background:var(--surface-2);color:var(--text);font-family:var(--font-body);font-size:11px;font-weight:600;border-radius:var(--radius);cursor:pointer;transition:.12s}.btn:hover{border-color:var(--accent)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--navy);border-color:var(--navy);color:#fff}.btn-primary:hover{background:var(--navy-hi);border-color:var(--navy-hi)}.btn-accent{background:var(--accent);border-color:var(--accent);color:#06222a}.btn-ghost{background:transparent}.btn-danger{color:var(--red);border-color:#b8321f66;background:transparent}.btn-danger:hover{background:var(--red);color:#fff}.btn-sm{height:26px;padding:0 10px;font-size:10px}.field{border:1px solid var(--border);background:var(--bg);padding:8px 10px;font-family:var(--font-body);font-size:12px;color:var(--text);border-radius:var(--radius)}.field:focus{outline:none;border-color:var(--accent);box-shadow:var(--ring);background:var(--surface)}.field-label{font-size:8px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);display:block;margin-bottom:4px}select.field{cursor:pointer}.tbl-wrap{overflow-x:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2)}table.tbl{width:100%;border-collapse:collapse;font-size:11.5px}table.tbl thead th{position:sticky;top:0;background:var(--topbar-bg);color:#eaf3f5;font-family:var(--font-disp);font-weight:600;font-size:10px;letter-spacing:.05em;text-transform:uppercase;text-align:left;padding:8px 10px;white-space:nowrap;z-index:1}table.tbl thead th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}table.tbl tbody td{padding:7px 10px;border-bottom:1px solid var(--border-2)}table.tbl tbody tr:nth-child(2n){background:var(--zebra)}table.tbl tbody tr:hover{background:var(--accent-weak)}.tile-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:10px}.tile{background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:var(--radius);padding:12px 14px;box-shadow:var(--shadow-sm)}.tile.warn{border-top-color:#d97706}.tile.bad{border-top-color:var(--red)}.tile .val{font-family:var(--font-disp);font-weight:700;font-size:30px;line-height:1;color:var(--text-strong)}.tile .val.accent{color:var(--accent)}.tile .lbl{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted);margin-top:6px}.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.hub-card{display:flex;flex-direction:column;gap:6px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius);padding:14px 16px;color:var(--text);text-decoration:none;box-shadow:var(--shadow-sm);transition:.14s}.hub-card:hover{text-decoration:none;border-color:var(--accent);transform:translateY(-2px);box-shadow:0 10px 24px #14283229}.hub-card-title{font-family:var(--font-disp);font-weight:700;font-size:14px;letter-spacing:.02em;color:var(--text-strong)}.hub-card-desc{font-size:11px;color:var(--text-muted);flex:1 1 auto}.hub-card-go{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--accent-dim)}.hg-wrap{position:relative;width:100%;height:clamp(480px,72vh,720px);border:1px solid var(--hairline);border-radius:var(--radius);background:radial-gradient(60% 55% at 50% 46%,var(--accent-weak),transparent 62%),var(--surface-sunken);overflow:hidden}.hg-svg{display:block;touch-action:none;user-select:none;-webkit-user-select:none}.hg-edge{stroke:var(--border);stroke-width:1.1;transition:stroke .15s ease,opacity .15s ease}.hg-edge.on{stroke:var(--accent);stroke-width:1.6}.hg-cross{stroke:var(--hairline);stroke-width:.9;stroke-dasharray:2.5 4;opacity:.5}.hg-cross.on{stroke:var(--accent);opacity:1;stroke-width:1.4;stroke-dasharray:none}.hg-svg.has-hover .hg-edge:not(.on){opacity:.14}.hg-hit{fill:transparent}.hg-dot{stroke-width:1.5;transition:transform .16s var(--ease-spring, ease),fill .15s ease,stroke .15s ease;transform-box:fill-box;transform-origin:center}.hg-center .hg-dot{fill:var(--accent);stroke:none;filter:drop-shadow(0 0 9px var(--accent))}.hg-group .hg-dot{fill:var(--accent-weak);stroke:var(--accent)}.hg-leaf .hg-dot{fill:var(--surface);stroke:var(--border)}.hg-node.on .hg-leaf .hg-dot,.hg-leaf.on .hg-dot{stroke:var(--accent)}.hg-node:hover .hg-dot,.hg-node:focus-visible .hg-dot{transform:scale(1.25)}.hg-node:focus-visible{outline:none}.hg-node:focus-visible .hg-dot{stroke:var(--accent);filter:drop-shadow(0 0 6px var(--accent))}.hg-label{text-anchor:middle;pointer-events:none;font-family:var(--font-body);transition:opacity .15s ease,fill .15s ease}.hg-center .hg-label{font-family:var(--font-disp);font-weight:700;font-size:14px;letter-spacing:.03em;fill:var(--text-strong)}.hg-group .hg-label{font-weight:600;font-size:12px;fill:var(--text)}.hg-leaf .hg-label{font-size:10.5px;fill:var(--text-muted)}.hg-node.on .hg-label{fill:var(--text)}.hg-svg.has-hover .hg-node.dim{opacity:.32}.hg-svg.has-hover .hg-node.dim .hg-label{opacity:0}@media (prefers-reduced-motion: reduce){.hg-dot,.hg-edge,.hg-label{transition:none}}.embed{display:flex;flex-direction:column;height:calc(100vh - var(--topbar-h) - 40px);min-height:420px}.embed-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:10px}.embed-frame{flex:1 1 auto;width:100%;border:1px solid var(--border);border-radius:var(--radius);background:#fff}.embed-body{position:relative;flex:1 1 auto;min-height:0;display:flex}.embed-loading{position:absolute;top:0;right:0;bottom:0;left:0;z-index:1;display:grid;place-items:center;grid-auto-flow:row;gap:10px;color:var(--text-muted);background:var(--surface);border:1px solid var(--border);border-radius:var(--radius)}.rev-changes{margin:3px 0 4px;padding-left:16px;font-size:11.5px;list-style:none}.rev-changes li{padding:1px 0}.rev-add{color:var(--ok-fg)}.rev-rem{color:var(--red)}.rev-mod{color:var(--text)}.roles-layout{display:grid;grid-template-columns:220px 1fr;gap:14px;align-items:start}.roles-list{display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:6px}.roles-list-item{display:flex;justify-content:space-between;align-items:center;gap:8px;text-align:left;background:none;border:none;padding:8px 10px;font-size:12px;color:var(--text);border-radius:var(--radius);cursor:pointer}.roles-list-item:hover{background:#1c93a414}.roles-list-item.active{background:var(--navy);color:#fff}.roles-detail{min-width:0;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);padding:16px}.perm-module{border:1px solid var(--border-2);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}.perm-module-hd{background:var(--surface-2);font-family:var(--font-disp);font-weight:700;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-dim);padding:6px 10px;border-bottom:1px solid var(--border-2)}.perm-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:2px 10px;padding:8px 10px}.perm-switch{display:flex;align-items:center;gap:8px;font-size:12px;padding:4px 0;cursor:pointer}.ov-row{display:flex;align-items:center;justify-content:space-between;gap:10px;font-size:12px;padding:4px 10px;border-bottom:1px solid var(--border-2)}.ov-row:last-child{border-bottom:none}@media (max-width: 800px){.roles-layout{grid-template-columns:1fr}}.cfg-layout{display:grid;grid-template-columns:190px 1fr 240px;gap:14px;align-items:start}.cfg-nav{position:sticky;top:0;display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:6px}.cfg-nav-item{text-align:left;background:none;border:none;padding:8px 10px;font-size:12px;color:var(--text-muted);border-radius:var(--radius);cursor:pointer}.cfg-nav-item:hover{background:#1c93a414;color:var(--text)}.cfg-nav-item.active{background:var(--navy);color:#fff;font-weight:600}.cfg-main{min-width:0}.cfg-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:10px 12px}.cfg-grid .field,.cfg-grid textarea.field{width:100%}.cfg-cat{border:1px solid var(--border-2);border-radius:var(--radius);margin-bottom:8px;overflow:hidden}.cfg-cat-hd{background:var(--surface-2);font-family:var(--font-disp);font-weight:700;font-size:10.5px;letter-spacing:.05em;text-transform:uppercase;color:var(--accent-dim);padding:6px 10px;border-bottom:1px solid var(--border-2)}.cfg-std-row{display:flex;align-items:center;gap:8px;padding:5px 10px;font-size:12px;border-bottom:1px solid var(--border-2)}.cfg-std-row:last-child{border-bottom:none}.cfg-std-row.removed span{text-decoration:line-through;opacity:.55}.cfg-opt-row{padding:6px 10px;border-bottom:1px solid var(--border-2)}.cfg-opt-row:last-child{border-bottom:none}.cfg-opt-row.sel{background:#1c93a40d}.cfg-opt-main{display:flex;align-items:center;gap:8px;font-size:12px;cursor:pointer}.cfg-opt-price{margin-left:auto;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;color:var(--text-strong)}.cfg-gallery{position:relative;margin-bottom:12px}.cfg-gallery-main{width:100%;height:320px;object-fit:contain;background:#eceff1;border-radius:8px;border:1px solid var(--border);display:block;cursor:zoom-in}.cfg-gallery-arrow{position:absolute;top:148px;transform:translateY(-50%);width:36px;height:36px;border-radius:50%;border:none;background:#14232b8c;color:#fff;font-size:24px;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background .15s}.cfg-gallery-arrow:hover{background:#14232bd9}.cfg-gallery-arrow.left{left:10px}.cfg-gallery-arrow.right{right:10px}.cfg-gallery-count{position:absolute;top:10px;right:12px;background:#14232b99;color:#fff;font-size:11px;padding:2px 8px;border-radius:10px;font-variant-numeric:tabular-nums}.cfg-gallery-thumbs{display:flex;gap:6px;margin-top:6px;overflow-x:auto;padding-bottom:2px}.cfg-gallery-thumb{height:46px;width:66px;object-fit:cover;border-radius:4px;border:2px solid transparent;cursor:pointer;opacity:.55;flex:0 0 auto;transition:opacity .15s,border-color .15s;background:#eceff1}.cfg-gallery-thumb:hover{opacity:.85}.cfg-gallery-thumb.active{border-color:var(--accent);opacity:1}.cfg-opt-fields{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin:6px 0 2px 24px}.cfg-opt-prod{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:6px;margin:6px 0 2px 24px}.cfg-summary{position:sticky;top:0;background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:var(--radius);padding:12px 14px}.cfg-sum-hd{font-family:var(--font-disp);font-weight:700;font-size:12px;letter-spacing:.05em;text-transform:uppercase;margin-bottom:8px}.cfg-sum-row{display:flex;justify-content:space-between;gap:10px;font-size:12px;padding:3px 0}.cfg-sum-row.strong{font-weight:700;font-size:14px;color:var(--text-strong)}.cfg-sum-div{border-top:1px solid var(--border-2);margin:6px 0}@media (max-width: 900px){.cfg-layout{grid-template-columns:1fr}.cfg-nav{flex-direction:row;flex-wrap:wrap;position:static}.cfg-summary{position:static}}.pdi-card{background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--ok-fg);border-radius:var(--radius);margin-bottom:8px;box-shadow:var(--shadow-sm);overflow:hidden}.pdi-card.has-holds{border-left-color:var(--red)}.pdi-card-hd{display:flex;align-items:center;gap:10px;padding:9px 12px;cursor:pointer;-webkit-user-select:none;user-select:none}.pdi-card-hd:hover{background:#142c490a}.pdi-chevron{color:var(--accent-dim);font-size:11px;width:12px}.pdi-sap{font-family:var(--font-disp);font-weight:700;color:var(--text-strong)}.pdi-name{color:var(--text)}.pdi-sheet{font-size:10px;letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}.pdi-spacer{flex:1 1 auto}.pdi-badge{font-size:9.5px;font-weight:700;letter-spacing:.04em;padding:3px 9px;border-radius:var(--radius);white-space:nowrap}.pdi-badge.has-holds{background:var(--err-bg);color:var(--err-fg);border:1px solid var(--err-bd)}.pdi-badge.no-holds{background:var(--ok-bg);color:var(--ok-fg);border:1px solid var(--ok-bd)}.pdi-card-bd{padding:4px 12px 12px;border-top:1px solid var(--border-2)}.pdi-vessel-actions{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:10px 0}.pdi-holds{display:flex;flex-direction:column;gap:6px}.pdi-hold-row{background:var(--surface-2);border:1px solid var(--border-2);border-radius:var(--radius);padding:8px 10px}.pdi-hold-main{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.pdi-hold-cat{font-weight:600;color:var(--text-strong)}.pdi-hold-tracker{font-size:9.5px;text-transform:uppercase;letter-spacing:.03em;color:var(--accent-dim);border:1px solid var(--border);border-radius:10px;padding:1px 7px}.pdi-hold-sel{margin-left:auto;height:26px;padding:0 8px;font-size:10px}.pdi-hold-comment{font-size:11px;color:var(--text-muted);white-space:pre-wrap;margin:6px 0;border-left:2px solid var(--border);padding:3px 0 3px 8px}.pdi-hold-edit{display:flex;align-items:center;gap:6px;margin-top:6px}.sp-breadcrumb{display:flex;flex-wrap:wrap;align-items:center;gap:4px;margin-bottom:10px;font-size:12px}.sp-crumb{background:none;border:none;color:var(--accent-dim);cursor:pointer;padding:2px 4px;font-size:12px}.sp-crumb:hover{text-decoration:underline}.sp-sep{color:var(--text-muted)}.sp-list{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface-2);overflow:hidden}.sp-row{display:grid;grid-template-columns:20px 1fr 90px 110px auto;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border-2)}.sp-row:last-child{border-bottom:none}.sp-row.sp-head{background:var(--topbar-bg);color:#eaf3f5;font-family:var(--font-disp);font-size:10px;letter-spacing:.05em;text-transform:uppercase}.sp-row:not(.sp-head):hover{background:#1c93a40f}.sp-name-btn{background:none;border:none;text-align:left;color:var(--text-strong);font-size:12.5px;cursor:pointer;padding:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sp-name-btn:hover{color:var(--accent-dim);text-decoration:underline}.sp-meta{font-size:11px;color:var(--text-muted)}.sp-head .sp-meta{color:#eaf3f5}.sp-actions{display:flex;gap:6px;justify-content:flex-end}@media (max-width: 720px){.sp-row{grid-template-columns:20px 1fr auto}.sp-row .sp-meta{display:none}}.pill{display:inline-block;padding:2px 8px;font-size:9px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;border-radius:var(--radius);border:1px solid transparent}.pill.ok{background:var(--ok-bg);color:var(--ok-fg);border-color:var(--ok-bd)}.pill.hold,.pill.bad{background:var(--err-bg);color:var(--err-fg);border-color:var(--err-bd)}.pill.warn{background:var(--warn-bg);color:var(--warn-fg);border-color:var(--warn-bd)}.pill.info{background:var(--info-bg);color:var(--info-fg)}.pill.accent{background:var(--active-bg);color:var(--active-fg)}.pill.grp-green{background:var(--ok-bg);color:var(--ok-fg)}.pill.grp-yellow{background:var(--warn-bg);color:var(--warn-fg)}.pill.grp-red{background:var(--err-bg);color:var(--err-fg)}.pill.grp-blue{background:var(--info-bg);color:var(--info-fg)}.bar{height:8px;background:#1428321a;border-radius:var(--radius);overflow:hidden;min-width:60px}.bar>span{display:block;height:100%;background:var(--accent)}.bar.done>span{background:var(--ok-fg)}.modal-bg{position:fixed;top:0;right:0;bottom:0;left:0;background:#14182099;display:grid;place-items:center;z-index:100}.modal{width:420px;max-width:94vw;max-height:90vh;overflow:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.modal-hd{display:flex;align-items:center;padding:12px 16px;border-bottom:1px solid var(--border)}.modal-hd h3{margin:0;font-family:var(--font-disp);font-size:13px;text-transform:uppercase;letter-spacing:.04em}.modal-bd{padding:16px}.modal-ft{padding:12px 16px;border-top:1px solid var(--border);display:flex;justify-content:flex-end;gap:8px}.state{display:grid;place-items:center;gap:10px;padding:48px 16px;text-align:center;color:var(--text-muted)}.state .big{font-family:var(--font-disp);font-size:16px;text-transform:uppercase;letter-spacing:.05em;color:var(--text)}.state.error .big{color:var(--red)}.spinner{width:26px;height:26px;border:3px solid var(--border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}.toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:12px}.chip{display:inline-flex;align-items:center;gap:6px;padding:4px 10px;border:1px solid var(--border);border-radius:10px;background:var(--bg);color:var(--text-muted);font-size:10px;cursor:pointer}.chip.active{background:var(--navy);color:#fff;border-color:var(--navy)}.gantt-tbl{width:100%;border-collapse:collapse;table-layout:fixed}.gantt-tbl th{background:var(--topbar-bg);color:#eaf3f5;font-family:var(--font-disp);font-size:10px;text-transform:uppercase;letter-spacing:.05em;padding:6px 8px;text-align:center;position:sticky;top:0;z-index:2}.gantt-tbl th.vh{text-align:left;width:220px;left:0;z-index:3}.gantt-tbl td.today{background:#1c93a41a}.gantt-tbl th.today{background:var(--accent);color:#06222a}.gantt-tbl td{border:1px solid var(--border-2);vertical-align:top}.gantt-tbl td.vcell{position:sticky;left:0;background:var(--navy);color:#fff;padding:6px 8px;width:220px;z-index:1}.gantt-tbl td.dcell{min-width:90px;height:46px;padding:3px;cursor:cell}.gantt-tbl td.dcell:hover{background:#1c93a40f}.tbar{display:block;font-size:9px;color:#fff;padding:2px 5px;border-radius:2px;margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;cursor:pointer;border:1px solid rgba(0,0,0,.2)}.tbar.completed{opacity:.55;text-decoration:line-through}.tbar.teak{background:var(--task-teak)}.tbar.polishing{background:var(--task-polishing)}.tbar.washing{background:var(--task-washing)}.tbar.pdi{background:var(--task-pdi)}.tbar.delivery{background:var(--task-delivery)}.tbar.seatrial{background:var(--task-seatrial)}.tbar.engineinstall{background:var(--task-engineinstall)}.tbar.enginestartup{background:var(--task-enginestartup)}.tbar.upholstery{background:var(--task-upholstery)}.tbar.stickers{background:var(--task-stickers)}.tbar.other{background:var(--task-other)}@media (max-width: 720px){.content{padding:12px}.nav-trigger{min-width:44px}}.boot{--boot-glow: rgba(110, 150, 210, .55);--boot-spring: cubic-bezier(.34, 1.4, .5, 1);position:fixed;top:0;right:0;bottom:0;left:0;z-index:200;display:grid;place-items:center;overflow:hidden;background:radial-gradient(120% 92% at 50% 42%,#131a29,#0b0e15 58%,#06080e);animation:bootFade 2.2s cubic-bezier(.4,0,.9,1) forwards;cursor:pointer}.boot:before{content:"";position:absolute;width:min(64vw,480px);aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,var(--boot-glow),transparent 66%);filter:blur(10px);opacity:0;pointer-events:none;animation:bootBloom 2.2s ease-out both}.boot-core{position:relative;display:grid;place-items:center;gap:20px;text-align:center;padding:0 24px;will-change:transform;animation:bootLaunch 2.2s cubic-bezier(.5,0,.75,0) forwards}.boot-mark{display:grid;place-items:center;will-change:transform,filter,opacity;animation:bootMark 1s var(--boot-spring) 40ms both}.boot-title{position:relative;font-family:var(--font-disp);font-weight:600;font-size:27px;letter-spacing:.18em;text-indent:.18em;color:#eef3f8;animation:bootRise .86s var(--boot-spring) .3s both}.boot-title:after{content:attr(data-text);position:absolute;top:0;right:0;bottom:0;left:0;letter-spacing:inherit;text-indent:inherit;background:linear-gradient(105deg,transparent 34%,rgba(255,255,255,.9) 50%,transparent 66%);background-size:250% 100%;background-position:210% 0;-webkit-background-clip:text;background-clip:text;color:transparent;pointer-events:none;animation:bootSheen 1s ease-out .82s both}.boot-sub{font-size:9.5px;font-weight:600;letter-spacing:.26em;text-transform:uppercase;color:#c4d2e485;animation:bootRise .86s var(--boot-spring) .44s both}.boot-bar{width:180px;height:2px;margin-top:4px;background:#ffffff1a;border-radius:2px;overflow:hidden;animation:bootRise .64s cubic-bezier(.33,1,.68,1) .52s both}.boot-bar>span{display:block;height:100%;width:100%;background:linear-gradient(90deg,transparent,var(--accent) 46%,#6ea6ff);transform:scaleX(0);transform-origin:left;animation:bootBar 1.2s cubic-bezier(.6,0,.2,1) .58s forwards}@keyframes bootFade{0%,80%{opacity:1}to{opacity:0;visibility:hidden}}@keyframes bootBloom{0%{opacity:0;transform:scale(.55)}42%{opacity:1;transform:scale(1.04)}72%{opacity:.85;transform:scale(1)}to{opacity:0;transform:scale(1.18)}}@keyframes bootLaunch{0%,80%{transform:scale(1)}to{transform:scale(1.09)}}@keyframes bootMark{0%{opacity:0;transform:scale(.68);filter:blur(11px) drop-shadow(0 14px 38px transparent)}55%{opacity:1}to{opacity:1;transform:scale(1);filter:blur(0) drop-shadow(0 14px 38px var(--boot-glow))}}@keyframes bootRise{0%{opacity:0;transform:translateY(13px)}to{opacity:1;transform:translateY(0)}}@keyframes bootSheen{0%{background-position:210% 0}to{background-position:-110% 0}}@keyframes bootBar{0%{transform:scaleX(0)}to{transform:scaleX(1)}}@media (prefers-reduced-motion: reduce){.boot{animation:bootFade 2.2s linear forwards}.boot:before{opacity:.8;animation:none}.boot-core,.boot-mark,.boot-title,.boot-sub,.boot-bar{animation:none}.boot-title:after{display:none}.boot-bar>span{transform:scaleX(1);animation:none}}@media print{.topbar,.nav-menu,.page-head,.toolbar,.no-print{display:none!important}.app{height:auto;overflow:visible}.content{overflow:visible;padding:0}body{background:#fff}}.mes-wrap{flex:1;min-height:0;overflow-y:auto;padding:20px 24px 40px}.mes-controls{display:flex;align-items:center;gap:10px;margin-bottom:14px}.mes-ctl-sel,.mes-ctl-search{background:var(--surface);border:1px solid var(--border);color:var(--text);border-radius:var(--radius-sm);padding:8px 11px;font-size:12px;font-family:Inter,sans-serif;outline:none}.mes-ctl-sel{min-width:130px;cursor:pointer}.mes-ctl-search{min-width:240px}.mes-ctl-search:focus,.mes-ctl-sel:focus{border-color:var(--accent);box-shadow:var(--ring)}.mes-ctl-spacer{flex:1}.mes-kpis{display:flex;flex-wrap:wrap;gap:12px;margin-bottom:16px}.mes-load{display:grid;grid-template-columns:repeat(6,1fr);gap:10px;margin-bottom:18px}.mes-load-cell{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:10px 12px;box-shadow:var(--shadow-sm)}.mes-load-cell.over{border-color:#d9770680}.mes-load-hd{font-family:var(--font-disp);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}.mes-load-n{font-family:var(--font-disp);font-size:26px;font-weight:700;color:var(--text-strong);line-height:1;margin:2px 0 3px}.mes-load-sub{font-size:10px;color:var(--text-muted)}.mes-load-bar{height:4px;background:var(--bg2);border-radius:2px;overflow:hidden;margin:6px 0 4px}.mes-load-bar span{display:block;height:100%;background:var(--accent)}.mes-load-cell.over .mes-load-bar span{background:#d97706}.mes-load-tgt{font-size:9.5px;color:var(--text-faint);letter-spacing:.02em}.mes-load-cell.over .mes-load-tgt{color:#b45309}@media (max-width:1200px){.mes-load{grid-template-columns:repeat(3,1fr)}}.mes-chip-meta{font-size:9.5px;color:var(--text-muted);margin-top:3px}.mes-viewtoggle{display:flex;border:1px solid var(--border);border-radius:var(--radius-sm);overflow:hidden}.mes-vt{background:var(--surface);border:none;color:var(--text-muted);padding:8px 14px;font-family:var(--font-disp);font-size:11px;font-weight:600;letter-spacing:.06em;cursor:pointer;transition:all .12s}.mes-vt+.mes-vt{border-left:1px solid var(--border)}.mes-vt:hover{color:var(--text-strong)}.mes-vt.on{background:var(--accent);color:#06222a}.mes-opt-hd{font-family:var(--font-disp);font-size:13px;font-weight:600;letter-spacing:.04em;color:var(--text-strong);margin-bottom:10px}.mes-opt-list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.mes-opt-row{display:flex;align-items:center;gap:10px;padding:8px 12px;border-bottom:1px solid var(--border-2);cursor:pointer;font-size:12px}.mes-opt-row:last-child{border-bottom:none}.mes-opt-row:hover{background:var(--bg2)}.mes-opt-rank{font-family:var(--font-disp);font-weight:700;color:var(--accent);min-width:30px}.mes-opt-sap{font-weight:700;color:var(--text-strong);min-width:60px}.mes-opt-name{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;min-width:80px}.mes-opt-next{min-width:120px;font-weight:600;color:var(--accent-dim)}.mes-opt-next.blk{color:#b45309}.mes-opt-reasons{display:flex;gap:4px;flex-wrap:wrap;justify-content:flex-end;flex:1}.mes-opt-reason{font-size:9px;font-weight:600;letter-spacing:.02em;padding:1px 6px;border-radius:2px;background:#1c93a41f;color:var(--accent-dim);white-space:nowrap}.mes-opt-score{font-family:var(--font-disp);font-weight:700;font-size:15px;color:var(--text-strong);min-width:34px;text-align:right}.mes-station-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.mes-station{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.mes-station-hd{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;background:var(--topbar-bg);font-family:var(--font-disp);font-size:11px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:#eaf3f5}.mes-station-n{font-size:11px;font-weight:700;color:#06222a;background:var(--accent);border-radius:2px;padding:1px 7px}.mes-station-item{display:flex;align-items:center;gap:7px;padding:6px 11px;border-bottom:1px solid var(--border-2);cursor:pointer;font-size:11px}.mes-station-item:last-child{border-bottom:none}.mes-station-item:hover{background:var(--bg2)}.mes-si-sap{font-weight:700;color:var(--text-strong)}.mes-si-name{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mes-si-due{font-size:9.5px;font-weight:700;color:#b45309}.mes-station-more{padding:6px 11px;font-size:10px;color:var(--text-faint)}.mes-blocked{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.mes-blocked-item{display:flex;align-items:center;gap:8px;padding:8px 11px;background:var(--surface);border:1px solid var(--border);border-left:3px solid #d97706;border-radius:var(--radius-sm);cursor:pointer;font-size:11px}.mes-blocked-item:hover{box-shadow:var(--shadow-sm)}@media (max-width:1200px){.mes-station-grid{grid-template-columns:repeat(2,1fr)}.mes-blocked{grid-template-columns:1fr}}.mes-kpis .an-kpi{min-width:120px}.mes-alerts{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:18px}.mes-alert-card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);border-top:3px solid var(--border);padding:12px 14px;box-shadow:var(--shadow-sm)}.mes-alert-card.ov{border-top-color:#dc2626}.mes-alert-card.stuck{border-top-color:#d97706}.mes-alert-card.hold{border-top-color:var(--accent)}.mes-alert-hd{font-family:var(--font-disp);font-size:12px;font-weight:600;letter-spacing:.04em;color:var(--text-strong);margin-bottom:8px}.mes-alert-row{display:flex;align-items:center;gap:8px;padding:4px 0;cursor:pointer;border-bottom:1px solid var(--border-2);font-size:11px}.mes-alert-row:last-child{border-bottom:none}.mes-alert-row:hover{color:var(--accent)}.mes-alert-sap{font-weight:700;color:var(--text-strong);min-width:58px}.mes-alert-name{flex:1;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mes-alert-tag{color:var(--text-muted);font-size:10px;white-space:nowrap}.mes-alert-empty{font-size:11px;color:var(--text-faint);padding:4px 0}.mes-board{display:grid;grid-template-columns:repeat(6,1fr);gap:12px;align-items:start}.mes-col{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow-sm);overflow:hidden}.mes-col-hd{display:flex;align-items:center;justify-content:space-between;padding:9px 12px;background:var(--topbar-bg)}.mes-col-label{font-family:var(--font-disp);font-size:12px;font-weight:600;letter-spacing:.08em;color:#eaf3f5;text-transform:uppercase}.mes-col-count{font-size:11px;font-weight:700;color:#06222a;background:var(--accent);border-radius:2px;padding:1px 7px}.mes-col-body{padding:8px;display:flex;flex-direction:column;gap:7px;min-height:40px;max-height:calc(100vh - 360px);overflow-y:auto}.mes-col-empty{text-align:center;color:var(--text-faint);font-size:11px;padding:10px 0}.mes-chip{background:var(--surface-2);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:2px;padding:7px 9px;cursor:pointer;transition:transform .1s,box-shadow .1s,border-color .1s}.mes-chip:hover{transform:translateY(-1px);box-shadow:var(--shadow-md);border-left-color:var(--accent-dim)}.mes-chip.ov{border-left-color:#dc2626}.mes-chip.stuck{border-left-color:#d97706}.mes-chip-top{display:flex;align-items:center;justify-content:space-between}.mes-chip-sap{font-weight:700;font-size:11px;color:var(--text-strong)}.mes-chip-days{font-size:10px;font-weight:700;color:var(--text-muted)}.mes-chip-name{font-size:10.5px;color:var(--text);margin-top:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mes-chip-flags{display:flex;flex-wrap:wrap;gap:4px;margin-top:5px}.mes-flag{font-size:8.5px;font-weight:700;letter-spacing:.02em;padding:1px 5px;border-radius:2px;white-space:nowrap}.mes-flag.ov{background:#dc262624;color:#b91c1c}.mes-flag.stuck{background:#d9770624;color:#b45309}.mes-flag.hold{background:#1c93a424;color:var(--accent-dim)}@media (max-width:1200px){.mes-board{grid-template-columns:repeat(3,1fr)}.mes-alerts{grid-template-columns:1fr}}.mes-traveler-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:220;background:#0a141a8c;display:flex;align-items:center;justify-content:center;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.mes-traveler{width:440px;max-width:94vw;max-height:88vh;overflow-y:auto;background:var(--surface-2);border:1px solid var(--border);border-top:3px solid var(--accent);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg)}.mes-tv-hd{display:flex;align-items:flex-start;justify-content:space-between;padding:16px 18px 12px;border-bottom:1px solid var(--border-2)}.mes-tv-sap{font-family:var(--font-disp);font-size:20px;font-weight:700;color:var(--text-strong);letter-spacing:.02em}.mes-tv-name{font-size:11px;color:var(--text-muted);margin-top:2px}.mes-tv-alert{margin:10px 18px 0;padding:7px 11px;border-radius:2px;font-size:11px;font-weight:600}.mes-tv-alert.ov{background:#dc26261f;color:#b91c1c}.mes-tv-alert.hold{background:#1c93a41f;color:var(--accent-dim)}.mes-tv-body{padding:14px 18px}.mes-tv-step{display:flex;align-items:center;gap:10px;padding:7px 0;position:relative}.mes-tv-step+.mes-tv-step:before{content:"";position:absolute;left:5px;top:-7px;height:14px;width:2px;background:var(--border)}.mes-tv-dot{width:12px;height:12px;border-radius:50%;border:2px solid var(--border);background:var(--surface);flex-shrink:0}.mes-tv-step.done .mes-tv-dot{background:var(--accent);border-color:var(--accent)}.mes-tv-step.sched .mes-tv-dot{border-color:var(--accent)}.mes-tv-step.pending{opacity:.5}.mes-tv-label{flex:1;font-size:12px;color:var(--text)}.mes-tv-step.done .mes-tv-label{font-weight:600;color:var(--text-strong)}.mes-tv-date{font-size:11px;color:var(--text-muted);font-weight:600}.mes-tv-gap{font-size:9.5px;color:var(--text-faint);min-width:40px;text-align:right}.mes-tv-gap.rev{color:#c0392b;font-weight:700}.mes-tv-step.reversed .mes-tv-date{color:#c0392b}.mes-tv-src{display:inline-block;margin-left:6px;padding:0 4px;font-family:var(--font-disp);font-size:7.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--accent);border:1px solid var(--border);border-radius:2px;vertical-align:middle}.mes-hero{display:flex;align-items:center;gap:22px;padding:16px 20px;margin-bottom:14px;background:linear-gradient(135deg,#16222c,#1c2831 60%,#14202a);border:1px solid var(--border);border-radius:3px;box-shadow:0 4px 20px #00000040,inset 0 1px #ffffff0a;position:relative;overflow:hidden}.mes-hero:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(120% 140% at 12% 20%,rgba(28,147,164,.16),transparent 55%);pointer-events:none}.mes-hero-ring{position:relative;width:112px;height:112px;flex-shrink:0}.mes-ring{width:112px;height:112px;transform:rotate(-90deg)}.mes-ring-bg{fill:none;stroke:#ffffff14;stroke-width:9}.mes-ring-fg{fill:none;stroke:var(--accent);stroke-width:9;stroke-linecap:round;transition:stroke-dashoffset .6s ease;filter:drop-shadow(0 0 6px rgba(72,201,214,.6))}.mes-hero-ring.good .mes-ring-fg{stroke:#37d18a;filter:drop-shadow(0 0 6px rgba(55,209,138,.6))}.mes-hero-ring.warn .mes-ring-fg{stroke:#e0a92e;filter:drop-shadow(0 0 6px rgba(224,169,46,.6))}.mes-ring-val{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center}.mes-ring-val b{font-family:var(--font-disp);font-weight:800;font-size:26px;color:#fff;line-height:1}.mes-ring-val span{font-size:7.5px;letter-spacing:.18em;color:#ffffff80;margin-top:3px}.mes-hero-body{flex:1;min-width:0}.mes-hero-top{display:flex;align-items:baseline;gap:12px;margin-bottom:12px;flex-wrap:wrap}.mes-hero-title{font-family:var(--font-disp);font-weight:800;font-size:16px;letter-spacing:.16em;color:#fff}.mes-hero-sub{font-family:var(--font-disp);font-size:10px;letter-spacing:.1em;color:#78c9d6d9}.mes-hero-tiles{display:grid;grid-template-columns:repeat(8,1fr);gap:10px}@media (max-width:1200px){.mes-hero-tiles{grid-template-columns:repeat(4,1fr)}}.mes-hero-tile{display:flex;flex-direction:column;gap:3px;padding-left:9px;border-left:2px solid rgba(72,201,214,.35)}.mes-hero-tile b{font-family:var(--font-disp);font-weight:800;font-size:21px;color:#fff;line-height:1}.mes-hero-tile span{font-size:7.5px;letter-spacing:.1em;color:#ffffff80}.mes-hero-tile.good b{color:#4fdca0}.mes-hero-tile.good{border-left-color:#37d18a}.mes-hero-tile.warn b{color:#f0c04a}.mes-hero-tile.warn{border-left-color:#e0a92e}.mes-hero-tile.bad b{color:#ff7a68}.mes-hero-tile.bad{border-left-color:#e0523e}.mes-report{margin-top:20px}.mes-report-hd{font-family:var(--font-disp);font-weight:800;font-size:10px;letter-spacing:.1em;color:var(--text-strong);margin-bottom:8px}.mes-report-scroll{overflow-x:auto;border:1px solid rgba(28,147,164,.5);border-radius:2px;background:#f2f6f7;box-shadow:0 2px 12px #14283224}.mes-report-table{min-width:920px;font-size:12px;background:#f2f6f7}.mes-report-table th{background:var(--topbar-bg);color:#e3f1f4;font-size:9px;font-weight:800;letter-spacing:.05em;padding:9px 12px;white-space:nowrap;text-align:right;text-transform:uppercase;border-bottom:2px solid var(--accent)}.mes-report-table th:first-child{text-align:left}.mes-report-table td{padding:9px 12px;white-space:nowrap;text-align:right;color:#132430;font-weight:600;font-variant-numeric:tabular-nums;border-bottom:1px solid rgba(28,147,164,.16)}.mes-report-table tbody tr:nth-child(2n) td{background:#1c93a40f}.mes-report-table tbody tr:hover td{background:#1c93a424}.mes-report-table td.an-td-sap{text-align:left;font-family:var(--font-disp);font-weight:800;font-size:13px;color:#0a141b;background:#1c93a41f;letter-spacing:.03em}.mes-report-table td.mes-rep-neg{color:#c0392b;font-weight:800}.mes-report-table td.mes-rep-pos{color:#15803d;font-weight:800}.mes-rep-live{display:inline-block;padding:1px 6px;border-radius:2px;background:#15803d;color:#fff;font-size:8px;font-weight:800;letter-spacing:.08em;animation:mesLivePulse 2.2s ease-in-out infinite}@keyframes mesLivePulse{0%,to{opacity:1}50%{opacity:.55}}.mes-log .mes-report-hd{display:flex;align-items:center;gap:10px}.mes-log-tabs{margin-left:auto;display:inline-flex;gap:4px}.mes-log-tab{font-family:var(--font-disp);font-weight:800;font-size:9px;letter-spacing:.08em;padding:3px 10px;border:1px solid var(--border);border-radius:2px;background:var(--surface);color:var(--text-strong);cursor:pointer}.mes-log-tab:hover{border-color:var(--accent)}.mes-log-tab.on{background:var(--accent);color:#fff;border-color:var(--accent)}.mes-log .mes-report-scroll{max-height:440px;overflow-y:auto}.mes-log .mes-report-table thead th{position:sticky;top:0;z-index:1}.mes-report-table td,.mes-report-table th{border-right:1px solid rgba(28,147,164,.15)}.mes-report-table td:last-child,.mes-report-table th:last-child{border-right:none}.mes-log .mes-report-table tbody tr:first-child td{background:#1c93a42b;font-weight:800}.mes-report-table tbody tr.mes-rep-total td{background:var(--topbar-bg)!important;color:#fff;font-weight:800;border-top:2px solid var(--accent);border-bottom:none}.mes-report-table tbody tr.mes-rep-total td.an-td-sap{background:var(--topbar-bg)!important;color:#fff}.mes-report-table tbody tr.mes-rep-total td.mes-rep-neg{color:#ff8a76}.mes-report-table tbody tr.mes-rep-total td.mes-rep-pos{color:#5fe0a0}.mes-cap-strip{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0 0 14px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:2px;font-size:11px}.mes-cap-lbl{font-family:var(--font-disp);font-weight:800;font-size:9px;letter-spacing:.1em;color:var(--text-muted)}.mes-cap-cell{display:inline-flex;align-items:center;gap:5px;padding:2px 8px;border-radius:2px;background:#1c93a41a;color:var(--text-strong)}.mes-cap-cell b{font-family:var(--font-disp);font-weight:800;color:var(--accent)}.mes-cap-cell em{font-style:normal;font-weight:700;font-size:9.5px;letter-spacing:.04em}.mes-cap-cell.ok em{color:#15803d}.mes-cap-cell.risk{background:#c0392b1a}.mes-cap-cell.risk em{color:#c0392b}.mes-plan{margin-top:6px}.mes-plan-note{font-size:11px;color:var(--text-muted);line-height:1.5;margin-bottom:14px}.mes-plan-note b{color:var(--text-strong)}.mes-plan-warn{color:#c0392b;font-weight:700}.mes-plan-empty{padding:40px 20px;text-align:center;color:var(--text-muted);font-size:12px}.mes-plan-noboats{padding:11px 4px;font-size:11px;color:var(--text-muted);font-style:italic}.mes-plan-lane.empty{opacity:.7}.mes-plan-lane{margin-bottom:16px;border:1px solid var(--border);border-top:2px solid var(--accent);border-radius:2px;overflow:hidden;background:var(--surface)}.mes-plan-lane-hd{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:8px 12px;background:var(--topbar-bg);color:#fff}.mes-plan-team{font-family:var(--font-disp);font-weight:800;font-size:11px;letter-spacing:.08em}.mes-plan-cap{font-size:10px;color:#ffffffb8}.mes-plan-cap b{color:#fff}.mes-plan-cap b.late{color:#ff9b8a}.mes-plan-rows{padding:6px 12px 10px}.mes-plan-row,.mes-plan-axis{display:grid;grid-template-columns:168px 1fr 130px;align-items:center;gap:10px;padding:3px 0}.mes-plan-row{cursor:pointer;border-radius:2px}.mes-plan-row:hover{background:var(--bg)}.mes-plan-lbl{display:flex;flex-direction:column;min-width:0}.mes-plan-sap{font-family:var(--font-disp);font-weight:700;font-size:10px;color:var(--text-strong)}.mes-plan-nm{font-size:11px;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mes-plan-track{position:relative;height:16px;background:#14283212;border-radius:2px}.mes-plan-bar{position:absolute;top:2px;bottom:2px;border-radius:2px;display:flex;align-items:center;padding:0 5px;font-size:8.5px;font-weight:700;color:#fff;white-space:nowrap;overflow:hidden;z-index:2}.mes-plan-bar.ok{background:var(--accent)}.mes-plan-bar.risk{background:#d68a1e}.mes-plan-bar.late{background:#c0392b}.mes-plan-del{position:absolute;top:50%;width:9px;height:9px;background:#0e1920;border:1px solid #fff;transform:translate(-50%,-50%) rotate(45deg);z-index:3}.mes-plan-tgt{position:absolute;top:-4px;bottom:-4px;width:2px;background:#1c93a48c;z-index:1}.mes-plan-when{font-family:var(--font-disp);font-weight:700;font-size:11px;text-align:right;color:var(--text-strong);white-space:nowrap}.mes-plan-when span{font-size:9px;font-weight:800}.mes-plan-when.ok span{color:#15803d}.mes-plan-when.risk,.mes-plan-when.risk span{color:#a56612}.mes-plan-when.late,.mes-plan-when.late span{color:#c0392b}.mes-plan-axis{padding:4px 12px 2px;font-size:9.5px;color:var(--text-muted)}.mes-plan-axis .mes-plan-lbl{flex-direction:row}.mes-plan-axis .mes-plan-track{background:transparent;height:14px;overflow:visible}.mes-plan-ax-tgt{position:absolute;top:0;transform:translate(-50%);font-family:var(--font-disp);font-weight:800;font-size:8.5px;color:var(--accent);white-space:nowrap;z-index:2}.mes-plan-ax-mo{position:absolute;top:0;transform:translate(-50%);font-size:8.5px;color:var(--text-faint);letter-spacing:.04em;text-transform:uppercase}.mes-plan-brief{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:10px}.mes-brief-chip{font-family:var(--font-disp);font-weight:800;font-size:10px;letter-spacing:.06em;padding:3px 9px;border-radius:2px}.mes-brief-chip.good{background:#dcfce7;color:#15803d}.mes-brief-chip.warn{background:#fef3c7;color:#92600a}.mes-brief-chip.bad{background:#fee2e2;color:#991b1b}.mes-brief-rec{font-size:11.5px;color:var(--text-strong)}.mes-brief-rec b{color:var(--accent)}.mes-brief-ok{font-size:11.5px;color:#15803d;font-weight:600}.mes-whatif{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:14px;padding:8px 12px;background:var(--surface);border:1px solid var(--border);border-left:2px solid var(--accent);border-radius:2px}.mes-whatif-lbl{font-family:var(--font-disp);font-weight:800;font-size:9px;letter-spacing:.1em;color:var(--text-muted)}.mes-whatif-team{display:inline-flex;align-items:center;gap:5px;padding:2px 6px 2px 9px;border:1px solid var(--border);border-radius:2px;background:var(--bg);font-size:11px}.mes-whatif-team.chg{border-color:var(--accent);background:#1c93a41a}.mes-whatif-team b{font-family:var(--font-disp);font-weight:800;color:var(--text-strong)}.mes-wi-btn{width:20px;height:20px;border:1px solid var(--border);background:var(--surface);color:var(--accent);font-weight:800;font-size:13px;line-height:1;border-radius:2px;cursor:pointer;display:inline-flex;align-items:center;justify-content:center}.mes-wi-btn:hover{border-color:var(--accent);background:var(--silver-lt)}.mes-wi-n{min-width:26px;text-align:center;font-family:var(--font-disp);font-weight:800;font-size:13px;color:var(--text-strong)}.mes-wi-n em{font-style:normal;font-size:9px;color:var(--accent);font-weight:800}.mes-wi-reset{border:none;background:none;color:var(--text-muted);font-size:10px;cursor:pointer;text-decoration:underline;letter-spacing:.04em}.mes-plan-wi{font-style:normal;color:#ffcf9b;font-size:10px}.mes-wk{margin-top:20px}.mes-wk-hd{font-family:var(--font-disp);font-weight:800;font-size:10px;letter-spacing:.1em;color:var(--text-muted);margin-bottom:8px}.mes-wk-grid{display:flex;flex-direction:column;gap:3px}.mes-wk-row{display:flex;gap:3px;align-items:stretch}.mes-wk-team{width:66px;flex-shrink:0;font-family:var(--font-disp);font-weight:800;font-size:10px;color:var(--text-strong);display:flex;align-items:center}.mes-wk-cell{flex:1;min-width:0;text-align:center;font-size:9.5px;font-weight:700;padding:6px 2px;border-radius:2px;color:var(--text-strong)}.mes-wk-head .mes-wk-cell{background:none;color:var(--text-muted);font-size:8.5px;font-weight:600;padding:2px}.mes-wk-cell.idle{background:#1428320d;color:var(--text-faint)}.mes-wk-cell.mid{background:#1c93a433}.mes-wk-cell.high{background:#1c93a473;color:#fff}.mes-wk-cell.full{background:var(--accent);color:#fff}.mes-wk-cell.tgt{box-shadow:inset 0 0 0 1.5px #1c93a4d9}.mes-wk-head .mes-wk-cell.tgt{box-shadow:none;color:var(--accent);font-weight:800}.mes-tv-ft{padding:12px 18px 16px;border-top:1px solid var(--border-2);font-size:11px;color:var(--text-muted)}.rte{display:flex;flex-direction:column;border:1px solid var(--border);background:var(--surface-2)}.rte-tb{display:flex;gap:2px;padding:4px 6px;border-bottom:1px solid var(--border-2);background:var(--surface);flex-wrap:wrap}.rte-btn{min-width:26px;height:24px;padding:0 7px;border:1px solid transparent;background:transparent;color:var(--text);font-size:12px;line-height:1;cursor:pointer;border-radius:2px}.rte-btn:hover{background:#1c93a41f;border-color:var(--border-2);color:var(--accent-dim)}.rte-area{flex:1;padding:9px 12px;font:inherit;font-size:14px;line-height:22px;color:var(--text);outline:none;overflow:auto}.rte-area:focus{outline:none}.rte-area[contenteditable]:empty:before{content:attr(data-ph);color:var(--text-faint);pointer-events:none}.rte-area ul,.rte-area ol{margin:4px 0;padding-left:22px}.rte-area a{color:var(--accent-dim);text-decoration:underline}.rte-disabled{background:var(--surface)}.rte.agenda-notes-rte{flex:1;min-height:0}.rte.agenda-notes-rte .rte-area{min-height:240px}.ppick{position:relative}.ppick-box{display:flex;flex-wrap:wrap;gap:5px;align-items:center;min-height:36px;padding:5px 7px;border:1px solid var(--border);background:var(--surface-2);border-radius:2px}.ppick-box:focus-within{border-color:var(--accent);box-shadow:var(--ring)}.ppick-disabled .ppick-box{background:var(--surface)}.ppick-chip{display:inline-flex;align-items:center;gap:5px;padding:2px 4px 2px 9px;font-size:12px;font-weight:600;background:#1c93a41f;color:var(--accent-dim);border:1px solid var(--border-2);border-radius:2px}.ppick-x{border:none;background:none;color:var(--accent-dim);font-size:14px;line-height:1;cursor:pointer;padding:0 2px}.ppick-x:hover{color:var(--red)}.ppick-input{flex:1;min-width:120px;border:none;outline:none;background:transparent;color:var(--text);font:inherit;font-size:13px;padding:2px}.ppick-menu{position:absolute;top:calc(100% + 3px);left:0;right:0;z-index:30;max-height:220px;overflow-y:auto;background:var(--surface-2);border:1px solid var(--border);border-radius:2px;box-shadow:var(--shadow-md)}.ppick-opt{display:flex;align-items:baseline;gap:8px;width:100%;text-align:left;padding:7px 11px;background:none;border:none;border-bottom:1px solid var(--border-2);cursor:pointer;color:var(--text)}.ppick-opt:last-child{border-bottom:none}.ppick-opt:hover{background:#1c93a41a}.ppick-opt-name{font-weight:600}.ppick-opt-email{font-size:11px;color:var(--text-muted);margin-left:auto}.ppick-empty{padding:8px 11px;font-size:12px;color:var(--text-faint)}.wb-tabs{display:flex;flex-wrap:wrap;gap:0;border-bottom:2px solid var(--accent);margin-bottom:14px}.wb-tab{font-family:var(--font-disp);font-weight:700;font-size:11px;letter-spacing:.04em;text-transform:uppercase;padding:8px 15px;border:1px solid var(--border);border-bottom:none;background:var(--surface);color:var(--text-muted);cursor:pointer;border-radius:3px 3px 0 0;margin-right:3px}.wb-tab:hover{color:var(--accent-dim)}.wb-tab.on{background:var(--topbar-bg);color:#eaf3f5;border-color:var(--topbar-bg)}.wb-note{font-size:11px;color:var(--text-muted);margin:0 0 10px}.wb-note b{color:var(--text-strong)}.wb-p100{background:#196b2438;color:#0f5a1c;font-weight:800}.wb-p90{background:#4ea72e29}.wb-p70{background:#e9713226}.wb-plow{background:#c000001f;color:#a11}.mes-report-table th.wb-model{background:#15486a}.mes-report-table td.wb-modelcell{font-variant-numeric:tabular-nums;text-align:center}.wb-grid2{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:16px;align-items:start}.vs-pal{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin:0 0 10px;padding:7px 10px;border:1px solid var(--border);background:var(--surface)}.vs-pal-lbl{font-family:var(--font-disp);font-weight:700;font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.vs-sw{width:20px;height:20px;border:1px solid rgba(0,0,0,.25);cursor:pointer;border-radius:2px}.vs-sw.none{background:#fff;position:relative}.vs-sw.none:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top right,transparent 45%,#d33 46%,#d33 54%,transparent 55%)}.vs-mk{font-family:var(--font-disp);font-weight:700;font-size:11px;padding:2px 8px;border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:2px}.vs-mk:hover{border-color:var(--accent);color:var(--accent-dim)}.vs-wrap{overflow:auto;max-height:74vh;border:1px solid var(--border);background:#fff}.vs-grid{border-collapse:collapse;font-size:12px;color:#1a2730}.vs-grid td,.vs-grid th{border:1px solid #d0d7db;padding:0}.vs-cell{display:block;padding:3px 7px;min-width:74px;min-height:22px;outline:none;white-space:nowrap}.vs-date{border:none;background:transparent;font:inherit;font-size:12px;padding:2px 4px;width:128px;color:inherit;color-scheme:light}.vs-hd{position:sticky;top:0;z-index:3;background:gray;color:#fff;font-weight:700;text-align:center}.vs-hd .vs-cell{min-width:74px}.vs-firstcol{position:sticky;left:0;z-index:2;background:#dbdbdb;font-weight:700}.vs-hd.vs-firstcol{z-index:4;background:#6f6f6f}.vs-cell.vs-marker{color:#8a949b;text-align:center}.vs-cell.vs-ok{color:#0f7a2e;font-weight:700;text-align:center}.vs-active{outline:2px solid var(--accent);outline-offset:-2px}.mes-legend{font-size:11px;color:var(--text-muted);line-height:1.7;margin:0 0 12px}.mes-legend b{color:var(--text-strong);font-weight:700}.mes-legend-sep{margin:0 8px;color:var(--border)}.mes-flag.ready{background:#196b2424;color:#15803d}.mes-backlog{border:1px solid var(--border);border-left:3px solid var(--text-faint);background:var(--surface);border-radius:var(--radius);margin-bottom:14px}.mes-backlog-hd{font-family:var(--font-disp);font-size:11px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);padding:8px 12px;border-bottom:1px solid var(--border-2)}.mes-backlog-body{display:flex;flex-wrap:wrap;gap:7px;padding:10px 12px;max-height:180px;overflow-y:auto}.mes-backlog-body .mes-chip{width:190px;flex:0 0 auto}.mes-wk-team{width:130px!important;font-size:9px!important;line-height:1.15}.svc-wrap{overflow:auto;max-height:76vh;border:1px solid var(--border);background:#fff}.svc-grid{border-collapse:collapse;font-size:12px;color:#1a2730;white-space:nowrap}.svc-grid th,.svc-grid td{border:1px solid #d0d7db;padding:0;background:#fff}.svc-grid th{position:sticky;top:0;z-index:3;background:#1c2831;color:#fff;font-weight:700;padding:6px 9px;text-align:left;white-space:nowrap}.svc-firstcol{position:sticky;left:0;z-index:2;background:#eef2f4!important;font-weight:600}.svc-grid th.svc-firstcol{z-index:4;background:#16202a!important;color:#fff}.svc-in{border:none;background:transparent;font:inherit;font-size:12px;padding:4px 8px;width:100%;min-width:96px;color:inherit;outline:none;color-scheme:light}.svc-in:focus{background:#1c93a41a;box-shadow:inset 0 0 0 1px var(--accent)}.svc-grid tbody tr:hover td{background:#1c93a40a}.svc-acc{display:flex;flex-direction:column;gap:8px}.svc-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.svc-card.open{border-color:var(--accent)}.svc-hd{display:flex;align-items:center;gap:10px;width:100%;text-align:left;background:none;border:none;cursor:pointer;padding:11px 14px;color:var(--text)}.svc-hd:hover{background:var(--panel-2, rgba(0,0,0,.02))}.svc-hd-caret{font-size:11px;color:var(--accent);transition:transform .15s;width:12px;flex:0 0 auto}.svc-card.open .svc-hd-caret{transform:rotate(90deg)}.svc-hd-name{font-family:var(--font-disp);font-weight:700;font-size:14px;color:var(--text-strong)}.svc-hd-count{font-size:10px;font-weight:700;color:#06222a;background:var(--accent);border-radius:999px;padding:1px 8px}.svc-hd-prev{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;margin-left:auto;max-width:45%}.svc-body{padding:4px 14px 14px;border-top:1px solid var(--border-2)}.svc-entry{padding:12px 0;border-bottom:1px dashed var(--border-2)}.svc-entry:last-of-type{border-bottom:none}.svc-entry-hd{display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.svc-entry-lbl{font-size:10px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--text-faint)}.svc-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:10px 14px}.svc-field{display:flex;flex-direction:column;gap:3px}.svc-field.chk{flex-direction:row;align-items:center;gap:8px}.svc-field .field-label{margin:0}.svc-tree{border-collapse:collapse;font-size:12px;color:#1a2730;width:100%}.svc-tree th,.svc-tree td{border:1px solid #cfd8dc;padding:0}.svc-tree th{position:sticky;top:0;z-index:3;background:#1c2831;color:#fff;font-weight:700;padding:6px 9px;text-align:left;white-space:nowrap}.svc-tree td{background:#fff}.svc-trow-group td{background:#d9d9d9!important;font-weight:700}.svc-trow-vessel td{background:#92d05052!important;font-weight:600}.svc-trow-task:hover td{background:#1c93a40d}.svc-prim{display:flex;align-items:center;gap:2px}.svc-toggle{width:16px;height:20px;flex:0 0 auto;border:none;background:none;cursor:pointer;color:var(--accent);font-size:10px;padding:0}.svc-toggle.empty{visibility:hidden}.svc-in,.svc-prim-in{border:none;background:transparent;font:inherit;font-size:12px;width:100%;min-width:80px;padding:4px 6px;outline:none;color:inherit;color-scheme:light}.svc-prim-in{min-width:220px;font-weight:inherit}.svc-in:focus,.svc-prim-in:focus{background:#1c93a41a;box-shadow:inset 0 0 0 1px var(--accent)}.svc-actcell{white-space:nowrap;text-align:center;padding:0 3px}.svc-act{border:none;background:none;cursor:pointer;padding:1px 5px;font-size:14px;line-height:1;color:var(--text-muted)}.svc-act:hover{color:var(--accent)}.svc-act.del:hover{color:var(--red)}.svc2-group{margin-bottom:14px}.svc2-ghd{display:flex;align-items:center;gap:9px;padding:9px 12px;background:var(--navy);color:#fff;border:none;width:100%;text-align:left;cursor:pointer;border-radius:var(--radius);font-family:var(--font-disp);font-weight:700;font-size:13px;letter-spacing:.04em}.svc2-ghd:hover{background:var(--navy-hi)}.svc2-chev{font-size:11px;flex:0 0 auto;width:12px}.svc2-gcount{margin-left:auto;font-size:11px;color:#ffffffb8;font-family:var(--font-body);font-weight:600}.svc2-gbd{display:flex;flex-direction:column;gap:7px;padding:8px 0 2px 8px}.svc2-card{border:1px solid var(--border);border-radius:var(--radius);background:var(--surface);overflow:hidden}.svc2-card.open{border-color:var(--accent);box-shadow:var(--shadow-sm)}.svc2-vhd{display:flex;align-items:center;gap:9px;padding:9px 12px;cursor:pointer}.svc2-vhd:hover{background:#1c93a40d}.svc2-vchev{font-size:11px;color:var(--accent);width:12px;flex:0 0 auto}.svc2-vname{font-weight:700;color:var(--text-strong);font-size:13.5px}.svc2-vsub{font-size:11px;color:var(--text-muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.svc2-badge{margin-left:auto;font-size:10px;font-weight:700;color:#06222a;background:var(--accent);border-radius:999px;padding:2px 10px;white-space:nowrap}.svc2-badge.zero{background:var(--silver);color:var(--text-muted)}.svc2-vbd{border-top:1px solid var(--border-2);padding:6px 12px 12px}.svc2-task{display:flex;align-items:center;gap:8px;padding:4px 0;border-bottom:1px solid var(--border-2)}.svc2-task:last-of-type{border-bottom:none}.svc2-tchev{width:14px;flex:0 0 auto;border:none;background:none;cursor:pointer;color:var(--accent);font-size:9px;padding:0}.svc2-tchev.empty{visibility:hidden}.svc2-tin{flex:1;min-width:0;border:1px solid transparent;background:transparent;font:inherit;font-size:13px;padding:5px 7px;border-radius:3px;outline:none;color:var(--text)}.svc2-tin:hover{border-color:var(--border-2)}.svc2-tin:focus{border-color:var(--accent);background:var(--surface-2)}.svc2-ctl{display:flex;align-items:center;gap:6px;flex:0 0 auto}.svc2-ctl .field{padding:3px 6px;font-size:11px;height:auto}.svc2-iact{border:none;background:none;cursor:pointer;color:var(--text-faint);font-size:13px;padding:2px 4px;line-height:1}.svc2-iact:hover{color:var(--accent)}.svc2-iact.del:hover{color:var(--red)}.svc2-iact.on{color:var(--accent)}.svc2-details{margin:2px 0 8px 26px;padding:9px 11px;background:var(--panel-2, rgba(0,0,0,.02));border:1px solid var(--border-2);border-radius:4px;display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:9px 13px}.svc2-field{display:flex;flex-direction:column;gap:3px}.svc2-field.chk{flex-direction:row;align-items:center;gap:7px}.svc2-add{border:1px dashed var(--border);background:transparent;color:var(--text-muted);border-radius:4px;padding:6px 11px;cursor:pointer;font-size:12px;font-weight:600;margin-top:8px}.svc2-add:hover{border-color:var(--accent);color:var(--accent)}.svc2-badge.done{background:var(--ok-fg);color:#fff}.pdi-fulltbl td{vertical-align:top}.pdi-fulltbl .pdi-name-col{white-space:normal;min-width:220px;max-width:440px}.pdi-fulltbl td .field{min-width:88px;padding:3px 6px;font-size:11.5px}.pdi-fulltbl .svc-sheetcell{align-items:center}.pdi-twist{border:1px solid var(--border);background:var(--surface);border-radius:3px;width:16px;height:16px;line-height:13px;text-align:center;font-size:9px;color:var(--accent);cursor:pointer;padding:0;margin-right:6px;vertical-align:middle;flex:0 0 auto}.pdi-twist:hover{background:var(--accent);color:#fff;border-color:var(--accent)}.pdi-twist-spacer{display:inline-block;width:16px;margin-right:6px}.pdi-fulltbl tr.pdi-branch>td{background:var(--accent-weak)}.collab-dock{display:flex;align-items:center;gap:8px}.collab-presence{display:flex;align-items:center}.collab-av-wrap{position:relative;margin-left:-6px}.collab-av-wrap:first-child{margin-left:0}.collab-av{border:2px solid var(--navy);border-radius:4px;padding:0;background:none;cursor:pointer;line-height:0;display:block;transition:transform .12s}.collab-av:hover{transform:translateY(-2px);z-index:2}.collab-more{font-size:11px;color:#ffffffb3;margin-left:4px}.collab-menu{position:absolute;top:36px;right:0;z-index:60;min-width:170px;background:var(--surface);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:5px}.collab-menu-hd{font-size:11px;font-weight:700;color:var(--text-strong);padding:5px 8px 6px;border-bottom:1px solid var(--border-2);margin-bottom:4px}.collab-menu button{display:flex;align-items:center;gap:8px;width:100%;text-align:left;border:none;background:none;font:inherit;font-size:12.5px;color:var(--text);padding:6px 8px;border-radius:4px;cursor:pointer}.collab-menu button svg{color:var(--text-muted);flex:0 0 auto}.collab-menu button:hover{background:var(--accent-weak);color:var(--accent-dim)}.collab-menu button:hover svg{color:var(--accent-dim)}.collab-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(255,255,255,.2);background:transparent;color:#fff;border-radius:var(--radius);padding:5px 8px;cursor:pointer;line-height:0}.collab-btn:hover{background:#ffffff1a}.collab-btn.on{background:var(--accent);border-color:var(--accent)}.collab-badge{position:absolute;top:-6px;right:-6px;min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:var(--silver-dk);color:#fff;font-size:10px;font-weight:800;line-height:16px;text-align:center}.collab-badge.unread{background:var(--red)}.chat-scrim{position:fixed;top:0;right:0;bottom:0;left:0;background:#08061e47;z-index:120}.chat-panel{position:fixed;top:0;right:0;bottom:0;width:min(380px,94vw);z-index:121;background:var(--surface);border-left:1px solid var(--border);box-shadow:var(--shadow-lg);display:flex;flex-direction:column;padding-top:env(safe-area-inset-top,0px)}.chat-hd{display:flex;align-items:center;gap:8px;padding:11px 12px;border-bottom:1px solid var(--border)}.chat-title{flex:1;font-size:14px;color:var(--text-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-icon{display:inline-flex;align-items:center;justify-content:center;border:none;background:none;color:var(--text-muted);cursor:pointer;padding:4px 6px;border-radius:4px}.chat-icon:hover{background:var(--accent-weak);color:var(--accent-dim)}.chat-list{flex:1;overflow-y:auto}.chat-empty{padding:24px 16px;text-align:center}.chat-row{display:flex;align-items:center;gap:10px;width:100%;text-align:left;border:none;background:none;padding:9px 12px;cursor:pointer;border-bottom:1px solid var(--border-2)}.chat-row:hover{background:var(--accent-weak)}.chat-group-av{width:34px;height:34px;border-radius:4px;background:var(--accent-weak);color:var(--accent-dim);display:flex;align-items:center;justify-content:center;flex:0 0 auto}.chat-row-main{flex:1;min-width:0;display:flex;flex-direction:column;gap:1px}.chat-row-top{display:flex;justify-content:space-between;gap:8px;font-size:13px;color:var(--text-strong)}.chat-row-time{font-size:10px;color:var(--text-faint);font-weight:600}.chat-row-sub{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-unread{flex:0 0 auto;min-width:18px;height:18px;padding:0 5px;border-radius:999px;background:var(--red);color:#fff;font-size:10px;font-weight:800;line-height:18px;text-align:center}.chat-msgs{flex:1;overflow-y:auto;padding:12px;display:flex;flex-direction:column;gap:5px}.chat-msg{display:flex;flex-direction:column;align-items:flex-start;max-width:82%}.chat-msg.mine{align-self:flex-end;align-items:flex-end}.chat-msg-name{font-size:10px;font-weight:700;color:var(--text-muted);margin:4px 0 1px 2px}.chat-bubble{background:var(--surface-sunken);color:var(--text);padding:6px 10px;border-radius:12px;font-size:13px;line-height:1.35;white-space:pre-wrap;word-break:break-word}.chat-msg.mine .chat-bubble{background:var(--accent);color:#fff}.chat-msg-time{font-size:9.5px;color:var(--text-faint);margin:1px 3px 0}.chat-composer{display:flex;gap:7px;align-items:flex-end;padding:9px 10px;border-top:1px solid var(--border)}.chat-composer textarea{flex:1;resize:none;max-height:110px;border:1px solid var(--border);border-radius:8px;padding:7px 10px;font:inherit;font-size:13px;background:var(--surface-2);color:var(--text)}.chat-composer textarea:focus{outline:none;border-color:var(--accent)}.chat-new{display:flex;flex-direction:column;gap:8px;padding:11px 12px;overflow:hidden}.chat-people{flex:1;overflow-y:auto;display:flex;flex-direction:column;gap:2px}.chat-person{display:flex;align-items:center;gap:9px;width:100%;text-align:left;border:1px solid transparent;background:none;padding:6px 8px;border-radius:6px;cursor:pointer;font-size:13px;color:var(--text)}.chat-person:hover{background:var(--accent-weak)}.chat-person.on{border-color:var(--accent);background:var(--accent-weak)}.chat-person-check{margin-left:auto;color:var(--accent-dim);font-weight:800}.chat-start{margin-top:2px}.nudge-toasts{position:fixed;right:16px;bottom:16px;z-index:200;display:flex;flex-direction:column;gap:8px;max-width:min(360px,92vw)}.nudge-toast{display:flex;align-items:center;gap:10px;background:var(--surface);border:1px solid var(--border);border-left:3px solid var(--accent);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);padding:9px 11px;animation:nudgeIn .2s ease-out}.nudge-toast.coop{border-left-color:var(--ok-fg)}.nudge-emoji{font-size:18px}.nudge-ic{display:inline-flex;align-items:center;color:var(--accent);flex:0 0 auto}.nudge-toast.coop .nudge-ic{color:var(--ok-fg)}.nudge-body{flex:1;min-width:0;font-size:13px;color:var(--text)}.nudge-body b{color:var(--text-strong)}.nudge-x{border:none;background:none;color:var(--text-faint);cursor:pointer;font-size:12px;padding:2px}.nudge-x:hover{color:var(--text)}@keyframes nudgeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}.coop-banner{position:fixed;top:calc(env(safe-area-inset-top,0px) + 10px);left:50%;transform:translate(-50%);z-index:160;display:flex;align-items:center;gap:8px;background:var(--navy);color:#fff;border:1px solid rgba(255,255,255,.15);border-radius:999px;padding:5px 6px 5px 13px;box-shadow:var(--shadow-md);font-size:12px;font-weight:600}.coop-banner svg{color:#9fd3ff}.coop-leave{border:none;background:#ffffff29;color:#fff;font:inherit;font-size:11px;font-weight:700;padding:3px 10px;border-radius:999px;cursor:pointer}.coop-leave:hover{background:#ffffff47}.coop-layer{position:fixed;top:0;right:0;bottom:0;left:0;z-index:150;pointer-events:none;overflow:hidden}.coop-cursor{position:absolute;transform:translate(-2px,-2px);transition:left .18s linear,top .18s linear;will-change:left,top}.coop-name{position:absolute;left:16px;top:12px;color:#fff;font-size:10px;font-weight:700;padding:1px 6px;border-radius:8px;white-space:nowrap;box-shadow:0 1px 3px #00000040}.svc2-tasks{margin:2px 0 6px}.svc2-ttable{width:100%;border-collapse:collapse;font-size:12.5px}.svc2-ttable thead th{position:sticky;top:0;z-index:1;background:var(--surface-2);text-align:left;font-size:10px;font-weight:800;letter-spacing:.03em;text-transform:uppercase;color:var(--text-faint);padding:5px 8px;border-bottom:1px solid var(--border);white-space:nowrap;min-width:104px}.svc2-ttable thead th.svc2-tname-th{min-width:240px}.svc2-ttable thead th.svc2-tact-th{min-width:0}.svc2-ttable td{padding:2px 8px;border-bottom:1px solid var(--border-2);vertical-align:middle}.svc2-ttable tbody tr:last-child td{border-bottom:none}.svc2-ttable tbody tr.svc2-trow:hover td{background:var(--accent-weak)}.svc2-tname-td{min-width:240px}.svc2-tname{display:flex;align-items:center;gap:8px}.svc2-tname .svc2-tin{flex:1;min-width:170px}.svc2-tcell{white-space:nowrap}.svc2-tcell .field{width:100%;min-width:96px;height:auto;padding:3px 6px;font-size:11.5px}.svc2-tact-td{text-align:right;white-space:nowrap}.svc2-trow-detail>td{padding:0 8px 8px;background:var(--surface-2)}.svc2-ttable thead th.svc2-th-pri{color:var(--accent-dim);background:var(--accent-weak);min-width:128px}.svc2-ttable td.svc2-tcell.pri{box-shadow:inset 1px 0 0 var(--accent-weak)}.seg{display:inline-flex;border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.seg-btn{border:none;background:var(--surface);color:var(--text-muted);font:inherit;font-size:12px;font-weight:700;padding:5px 12px;cursor:pointer}.seg-btn+.seg-btn{border-left:1px solid var(--border)}.seg-btn:hover{background:var(--accent-weak);color:var(--text)}.seg-btn.on{background:var(--navy);color:#fff}.svc-kpis{display:flex;align-items:center;flex-wrap:wrap;gap:8px 16px;margin:2px 0 10px}.svc-kpi{font-size:12px;color:var(--text-muted)}.svc-kpi b{color:var(--text-strong);font-size:15px;font-family:var(--font-disp);margin-right:3px}.svc-kpi-cur{padding:3px 10px;border-radius:999px;background:var(--accent-weak);color:var(--accent-dim);font-weight:600}.svc-kpi-cur b{color:var(--accent-dim);font-size:12px}.svc-filters{display:flex;flex-wrap:wrap;align-items:center;gap:7px 14px;margin-bottom:12px;padding:9px 11px;background:var(--panel-2, rgba(0,0,0,.02));border:1px solid var(--border-2);border-radius:var(--radius-lg)}.svc-fgroup{display:flex;align-items:center;flex-wrap:wrap;gap:5px}.svc-flabel{font-size:10px;font-weight:800;letter-spacing:.07em;text-transform:uppercase;color:var(--text-faint);margin-right:2px}.chip-cur{box-shadow:inset 0 0 0 1px var(--accent)}.svc-quick{border:1px dashed var(--accent);background:transparent;color:var(--accent);border-radius:999px;padding:2px 10px;font-size:11px;font-weight:700;cursor:pointer}.svc-quick:hover{background:var(--accent-weak)}.svcx-toggle{display:inline-flex;align-items:center;gap:6px;font-size:12px;font-weight:600;color:var(--text-muted);cursor:pointer;-webkit-user-select:none;user-select:none}.svcx-toggle input{cursor:pointer}.svc-season{display:inline-block;padding:1px 8px;font-size:10px;font-weight:800;letter-spacing:.02em;border-radius:999px;background:var(--surface-sunken);color:var(--text-muted);cursor:pointer;flex:0 0 auto}.svc-season:hover{box-shadow:inset 0 0 0 1px var(--accent);color:var(--text)}.svc-season.cur{background:var(--accent-weak);color:var(--accent-dim)}.svc-statustag{font-size:11px;font-weight:600;color:var(--text-muted);white-space:nowrap}.svc-meta{font-size:11px;color:var(--text-faint);white-space:nowrap}.svc-sheetcell{display:inline-flex;align-items:center;gap:6px}.svc-sheetname{border:1px solid transparent;background:transparent;font:inherit;font-size:13px;font-weight:600;padding:3px 6px;border-radius:3px;outline:none;color:var(--text-strong);min-width:160px;max-width:340px;width:100%}.svc-sheetname:hover{border-color:var(--border-2)}.svc-sheetname:focus{border-color:var(--accent);background:var(--surface-2)}.grp-chip-add{border:1px dashed var(--border);background:transparent;color:var(--text-muted);cursor:pointer;padding:1px 6px}.grp-chip-add:hover{border-color:var(--accent);color:var(--accent)}.svc-season+.svc-statustag{margin-left:2px}.grp-tbl td .field{min-width:90px}.svc2-gname-in{flex:1;min-width:0;border:none;background:transparent;color:#fff;font:inherit;font-family:var(--font-disp);font-weight:700;font-size:13px;letter-spacing:.04em;padding:2px 5px;outline:none}.svc2-gname-in::placeholder{color:#ffffff80}.svc2-gname-in:focus{background:#ffffff24;border-radius:3px}.svc2-vname-in{flex:0 1 auto;min-width:130px;border:1px solid transparent;background:transparent;font:inherit;font-weight:700;font-size:13.5px;color:var(--text-strong);padding:3px 6px;border-radius:3px;outline:none}.svc2-vname-in:hover{border-color:var(--border-2)}.svc2-vname-in:focus{border-color:var(--accent);background:var(--surface-2)}.proc-kpis{display:flex;gap:12px;flex-wrap:wrap;margin-bottom:14px}.proc-kpi{flex:1 1 150px;min-width:150px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);padding:12px 15px;box-shadow:var(--shadow-md)}.proc-kpi .n{font-family:var(--font-disp);font-weight:800;font-size:26px;line-height:1;color:var(--text-strong);font-variant-numeric:tabular-nums}.proc-kpi .l{font-size:10px;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted);margin-top:6px}.proc-kpi.accent{border-color:var(--accent)}.proc-kpi.accent .n{color:var(--accent-dim)}.proc-grid{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:16px;align-items:start}@media (max-width:1024px){.proc-grid{grid-template-columns:1fr}}.proc-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);overflow:hidden}.proc-card-hd{display:flex;align-items:center;gap:8px;padding:11px 15px;background:var(--topbar-bg);color:#eaf3f5;font-family:var(--font-disp);font-weight:800;font-size:11px;letter-spacing:.09em;text-transform:uppercase}.proc-card-hd .c{margin-left:auto;font-size:10px;opacity:.82;letter-spacing:.03em;font-weight:700}.proc-card-bd{max-height:72vh;overflow:auto}.proc-sec-group{position:relative}.proc-sec{position:sticky;top:0;z-index:2;background:linear-gradient(var(--accent-weak),var(--accent-weak)),var(--panel);color:var(--accent-dim);font-family:var(--font-disp);font-weight:800;font-size:9.5px;letter-spacing:.11em;text-transform:uppercase;padding:6px 15px;border-top:1px solid var(--border);box-shadow:0 1px 0 var(--border)}.proc-opt{display:grid;grid-template-columns:168px 120px 1fr;gap:12px;align-items:center;padding:8px 15px;border-top:1px solid var(--border)}.proc-opt:hover{background:var(--accent-weak)}.proc-opt .lbl{font-size:12px;font-weight:600;color:var(--text);line-height:1.25}.proc-meter{display:flex;align-items:center;gap:9px}.proc-bar{position:relative;flex:1;height:7px;border-radius:var(--radius-pill);background:var(--chip-bg);overflow:hidden}.proc-bar>i{position:absolute;inset:0 auto 0 0;height:100%;border-radius:var(--radius-pill);background:linear-gradient(90deg,var(--accent),var(--accent-dim))}.proc-n{font-family:var(--font-disp);font-weight:800;font-size:14px;color:var(--text-strong);font-variant-numeric:tabular-nums;min-width:18px;text-align:right}.proc-vals{display:flex;flex-wrap:wrap;gap:6px}.proc-chip{display:inline-flex;align-items:center;gap:7px;font-size:11px;padding:2px 5px 2px 9px;border-radius:var(--radius-pill);background:var(--chip-bg);border:1px solid var(--border);color:var(--text)}.proc-chip b{display:inline-flex;min-width:17px;height:16px;padding:0 4px;align-items:center;justify-content:center;border-radius:var(--radius-pill);background:var(--accent);color:#fff;font-size:10px;font-weight:800;font-variant-numeric:tabular-nums}.proc-chip.mark{color:var(--text-muted);background:transparent;border-style:dashed;padding:2px 9px}button.proc-chip{font-family:inherit;line-height:1.2;cursor:pointer;transition:border-color .12s,box-shadow .12s,background .12s}button.proc-chip:hover{border-color:var(--accent-dim)}button.proc-chip.on{border-color:var(--accent);background:var(--accent-weak);box-shadow:0 0 0 2px var(--accent-weak)}button.proc-chip.mark.on{background:var(--accent-weak)}.proc-opt-wrap{position:relative}.proc-drill{padding:2px 15px 12px;background:var(--accent-weak);border-top:1px dashed var(--border)}.proc-drill-hd{display:flex;align-items:center;gap:8px;font-family:var(--font-disp);font-weight:800;font-size:9.5px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent-dim);margin:8px 0}.proc-drill-hd .c{margin-left:auto;letter-spacing:.03em;color:var(--text-muted)}.proc-drill-list{display:flex;flex-wrap:wrap;gap:6px}.proc-drill-v{display:inline-flex;flex-direction:column;gap:1px;background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-sm);padding:5px 9px;font-size:11.5px;font-weight:600;color:var(--text);line-height:1.2}.proc-drill-v i{font-style:normal;font-size:10px;font-weight:500;color:var(--text-muted);font-variant-numeric:tabular-nums}.proc-req{padding:11px 15px;border-top:1px solid var(--border)}.proc-req:hover{background:var(--accent-weak)}.proc-req .v{font-weight:700;font-size:13px;color:var(--text-strong)}.proc-req .sub{font-size:10px;color:var(--text-muted);margin-top:1px}.proc-req ol{margin:7px 0 0;padding-left:20px;font-size:12px;color:var(--text)}.proc-req li{margin:3px 0;line-height:1.35}.proc-empty{padding:26px 16px;text-align:center;color:var(--text-muted);font-size:12px}.osheet-wrap{overflow:auto;max-height:72vh;border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:var(--panel)}.osheet{border-collapse:separate;border-spacing:0;font-size:11px;min-width:100%}.osheet th{position:sticky;top:0;z-index:2;background:var(--topbar-bg);color:#dfeef1;font-family:var(--font-disp);font-weight:700;font-size:9px;letter-spacing:.04em;text-transform:uppercase;padding:8px 9px;white-space:nowrap;text-align:left;border-bottom:2px solid var(--accent);border-right:1px solid rgba(255,255,255,.06)}.osheet th.stick{left:0;z-index:4;min-width:186px}.osheet td{padding:3px 9px;white-space:nowrap;border-bottom:1px solid var(--border);border-right:1px solid var(--border);color:var(--text);vertical-align:middle}.osheet tbody tr:nth-child(2n) td{background:var(--accent-weak)}.osheet tbody tr:hover td{background:#1c93a429}.osheet td.stick{position:sticky;left:0;z-index:1;background:var(--panel);min-width:186px;box-shadow:1px 0 0 var(--border)}.osheet tbody tr:nth-child(2n) td.stick,.osheet tbody tr:hover td.stick{background:var(--panel)}.osheet .os-vessel{display:flex;align-items:flex-start;gap:6px}.osheet .os-vessel .nm{font-weight:700;font-size:12px;color:var(--text-strong);line-height:1.15}.osheet .os-vessel .sub{font-size:10px;color:var(--text-muted)}.osheet .os-del{margin-left:auto;border:none;background:transparent;color:var(--text-muted);cursor:pointer;font-size:13px;line-height:1;padding:2px 4px;border-radius:var(--radius-sm)}.osheet .os-del:hover{background:var(--err-bg);color:var(--err-fg)}.osheet .cellbtn{display:inline-block;min-width:46px;min-height:16px;padding:1px 5px;border-radius:var(--radius-sm);cursor:text;color:var(--text)}.osheet .cellbtn:hover{background:var(--panel);box-shadow:inset 0 0 0 1px var(--accent)}.osheet .cellbtn.empty{color:transparent}.osheet .cellbtn.empty:hover:after{content:"edit";color:var(--text-muted);font-size:9px;opacity:.7}.osheet .field{font-size:11px}.awt-model{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);background:var(--panel);margin-bottom:16px;overflow:hidden}.awt-model-hd{display:flex;align-items:center;gap:10px;padding:10px 15px;background:var(--topbar-bg);color:#eaf3f5;font-family:var(--font-disp);font-weight:800;letter-spacing:.05em}.awt-model-hd .c{margin-left:auto;font-size:11px;opacity:.8;font-weight:700}.awt-slot-tag{font-size:10px;font-weight:600;letter-spacing:.03em;opacity:.8;padding:2px 8px;border:1px solid rgba(255,255,255,.25);border-radius:999px;text-transform:none}.awt-sec-hd{display:flex;align-items:center;gap:8px;padding:7px 15px;background:var(--accent-weak);border-top:1px solid var(--border)}.awt-sec-hd .nm{flex:1;font-family:var(--font-disp);font-weight:800;font-size:10px;letter-spacing:.09em;text-transform:uppercase;color:var(--accent-dim);border:1px solid transparent;background:transparent;padding:2px 6px;border-radius:var(--radius-sm)}.awt-sec-hd .nm:hover,.awt-sec-hd .nm:focus{border-color:var(--border);background:var(--panel)}.awt-task{display:grid;grid-template-columns:18px 1fr 96px 28px;gap:10px;align-items:center;padding:4px 15px;border-top:1px solid var(--border)}.awt-task:hover{background:var(--accent-weak)}.awt-task.dragging{opacity:.4}.awt-grip{cursor:grab;color:var(--text-faint);font-size:13px;line-height:1;text-align:center;-webkit-user-select:none;user-select:none}.awt-grip:active{cursor:grabbing}.awt-task input.nm{border:1px solid transparent;background:transparent;font-size:12px;color:var(--text);padding:3px 6px;border-radius:var(--radius-sm);width:100%}.awt-task input.nm:hover,.awt-task input.nm:focus{border-color:var(--border);background:var(--panel)}.awt-task input.wt{width:86px;text-align:right;font-variant-numeric:tabular-nums;font-size:12px}.awt-del{border:none;background:transparent;color:var(--text-muted);cursor:pointer;padding:2px 4px;border-radius:var(--radius-sm);font-size:13px;line-height:1}.awt-del:hover{background:var(--err-bg);color:var(--err-fg)}.awt-add{display:flex;gap:8px;align-items:center;flex-wrap:wrap;padding:7px 15px;border-top:1px dashed var(--border)}.awt-add .muted{font-size:11px}.awt-seed{display:flex;align-items:center;gap:14px;justify-content:space-between;flex-wrap:wrap;padding:12px 15px;border-top:1px solid var(--border);background:var(--accent-weak)}.awt-seed p{max-width:60ch}.awt-seed .btn{flex:none}.awt-diag{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);margin-bottom:16px;overflow:hidden}.awt-diag>summary{cursor:pointer;padding:9px 14px;font-weight:700;font-size:12px;letter-spacing:.02em;background:var(--topbar-bg);color:#eaf3f5}.awt-diag-body{padding:12px 14px}.awt-diag-counts{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:10px}.awt-chip{font-size:11px;padding:2px 8px;border:1px solid var(--border);border-radius:999px;background:var(--accent-weak);color:var(--text)}.awt-diag-tbl{width:100%;border-collapse:collapse;font-size:12px}.awt-diag-tbl th,.awt-diag-tbl td{text-align:left;padding:3px 8px;border-bottom:1px solid var(--border);font-variant-numeric:tabular-nums}.awt-diag-tbl th{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.awt-diag-tbl tr.is-model td{background:var(--accent-weak);font-weight:700}.awt-diag-tbl tr.is-boat td{color:var(--text-muted)}.ot-toolbar{display:flex;align-items:flex-end;gap:14px;flex-wrap:wrap;padding:12px 14px;margin-bottom:16px;border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);box-shadow:var(--shadow-md)}.ot-toolbar-sp{flex:1}.ot-field{display:flex;flex-direction:column;gap:3px;font-size:11px;font-weight:700;letter-spacing:.03em;color:var(--text-muted);text-transform:uppercase}.ot-field .field{min-width:140px}.ot-count{font-size:12px;color:var(--text-muted);font-variant-numeric:tabular-nums;align-self:center}.ot-manager{border:1px solid var(--border);border-radius:var(--radius-lg);background:var(--panel);padding:14px;margin-bottom:20px}.ot-manager-hd{display:flex;align-items:center;gap:8px;margin-bottom:12px;flex-wrap:wrap}.ot-badge{display:inline-flex;align-items:center;justify-content:center;min-width:22px;height:20px;padding:0 6px;border-radius:999px;background:var(--accent-weak);color:var(--accent-dim);font-size:11px;font-weight:700}.ot-add{display:flex;gap:8px;margin-bottom:10px}.ot-add .field{max-width:340px}.ot-toolrow{display:flex;align-items:center;gap:8px;margin-bottom:10px}.ot-search{max-width:260px}.ot-err{color:var(--err-fg);background:var(--err-bg);border-radius:var(--radius-sm);padding:6px 10px;font-size:12px;margin:0 0 10px}.ot-list{list-style:none;margin:0;padding:0;max-height:420px;overflow:auto;border:1px solid var(--border);border-radius:var(--radius-sm)}.ot-row{display:flex;align-items:center;gap:10px;padding:6px 12px;border-bottom:1px solid var(--border);font-size:13px}.ot-row:last-child{border-bottom:none}.ot-row:hover{background:var(--accent-weak)}.ot-check{display:flex;align-items:center}.ot-idx{min-width:26px;text-align:right;font-variant-numeric:tabular-nums;color:var(--text-muted);font-size:12px}.ot-name{flex:1}.ot-preview-hd{font-size:12px;font-weight:700;letter-spacing:.03em;color:var(--text-muted);text-transform:uppercase;margin:6px 0 12px}.ot-imp-list{display:flex;flex-wrap:wrap;gap:6px;max-height:300px;overflow:auto;margin:6px 0 10px}.ot-chip{font-size:11px;padding:2px 8px;border-radius:999px;border:1px solid var(--border)}.ot-chip.is-new{background:var(--ok-bg, var(--accent-weak));color:var(--ok-fg, var(--accent-dim));border-color:transparent}.ot-chip.is-dup{color:var(--text-muted);text-decoration:line-through;opacity:.7}.ot-print-area{display:flex;flex-direction:column;gap:24px;align-items:center;--ot-ink:#12132e;--ot-line:#c9cbdb;--ot-soft:#f3f3f8}.ot-card{width:100%;max-width:760px;background:#fff;color:#15131f;border:1px solid #e2e3ee;border-radius:10px;box-shadow:var(--shadow-md);overflow:hidden;padding:22px 24px 20px;font-family:Inter,Arial,sans-serif;-webkit-print-color-adjust:exact;print-color-adjust:exact}.ot-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding-bottom:12px;margin-bottom:14px;border-bottom:2px solid var(--ot-ink)}.ot-brand{display:flex;align-items:center;gap:12px}.ot-wake{width:48px;height:24px;color:var(--ot-ink);flex:none}.ot-wake path{fill:none;stroke:currentColor;stroke-width:3.4;stroke-linecap:round}.ot-brand-txt{display:flex;flex-direction:column}.ot-brand-name{font-family:"Rajdhani",var(--font-disp);font-weight:700;font-size:31px;line-height:.86;letter-spacing:.05em;color:var(--ot-ink);transform:skew(-7deg);transform-origin:left bottom}.ot-brand-sub{margin-top:6px;font-family:"Rajdhani",var(--font-disp);font-size:9px;font-weight:600;letter-spacing:.42em;text-transform:uppercase;color:#8a8aa0}.ot-doc{text-align:right;display:flex;flex-direction:column}.ot-doc-title{font-size:12px;font-weight:800;letter-spacing:.2em;color:var(--ot-ink)}.ot-doc-sub{margin-top:3px;font-size:10px;letter-spacing:.06em;color:#8a8aa0;font-style:italic}.ot-meta{display:flex;gap:12px;margin-bottom:14px}.ot-meta-field{display:flex;flex-direction:column;gap:3px;padding:8px 12px;background:var(--ot-soft);border:1px solid #e7e7f0;border-radius:7px}.ot-meta-grow{flex:1}.ot-meta-label{font-size:8.5px;letter-spacing:.14em;text-transform:uppercase;color:#9092a6;font-weight:700}.ot-meta-value{font-size:14px;font-weight:700;color:var(--ot-ink)}.ot-meta-no{align-items:center;justify-content:center}.ot-meta-badge{display:inline-flex;align-items:center;justify-content:center;min-width:30px;height:26px;padding:0 8px;border-radius:999px;background:var(--ot-ink);color:#fff;font-size:14px;font-weight:800}.ot-grid{width:100%;border-collapse:collapse;table-layout:fixed;font-size:11px;color:#15131f}.ot-grid th,.ot-grid td{border:1px solid var(--ot-line);padding:3px 7px;height:23px;overflow:hidden}.ot-grid .ot-c{text-align:center;font-variant-numeric:tabular-nums}.ot-grid .ot-day{text-align:left;color:#4a4a5e}.ot-grid thead th{background:var(--ot-ink);color:#fff;font-weight:700;text-align:center;font-size:9.5px;letter-spacing:.05em;height:26px;border-color:var(--ot-ink)}.ot-grid thead th.ot-sm{font-size:8px}.ot-grid tbody tr:nth-child(2n) td{background:#fafafc}.ot-grid tbody tr.ot-we td{background:#eef0f8;color:#3a3a52}.ot-grid tbody tr.ot-we td.ot-day{font-weight:600}.ot-grid tfoot .ot-total td{background:var(--ot-soft);font-weight:800;height:28px;color:var(--ot-ink);border-top:2px solid var(--ot-ink);letter-spacing:.06em}.ot-foot{display:flex;gap:26px;margin-top:20px}.ot-sign{flex:1;display:flex;flex-direction:column;align-items:center;gap:5px}.ot-sign-line{width:100%;border-bottom:1px solid #9092a6;height:26px}.ot-sign-cap{font-size:9px;letter-spacing:.08em;text-transform:uppercase;color:#8a8aa0}@media print{.no-print{display:none!important}body *{visibility:hidden!important}.ot-print-area,.ot-print-area *{visibility:visible!important}.ot-print-area{position:absolute;left:0;top:0;width:100%;gap:0}.ot-card{max-width:none;width:100%;border:none;border-radius:0;box-shadow:none;padding:0;page-break-after:always}.ot-card:last-child{page-break-after:auto}}@page{size:A4 portrait;margin:13mm}.grp-tbl{width:max-content;min-width:100%}.grp-tbl th,.grp-tbl td{white-space:nowrap}.grp-tbl td{vertical-align:middle}.grp-tbl .grp-name-col{white-space:normal;min-width:280px;max-width:520px}.grp-name-inner{display:flex;align-items:center;gap:6px}.grp-name-boat{font-weight:700;color:var(--text-strong)}.grp-name-group{font-weight:600}.grp-twist{flex:0 0 auto;width:16px;height:16px;line-height:14px;text-align:center;font-size:13px;font-weight:700;border:1px solid var(--border);border-radius:3px;background:var(--surface);color:var(--text);cursor:pointer;padding:0}.grp-twist:hover{background:var(--accent-weak);border-color:var(--accent)}.grp-twist-spacer{flex:0 0 auto;width:16px}.grp-tbl tr.grp-row-top td{border-top:1px solid var(--border)}.grp-c{text-align:center}.grp-dot{display:inline-block;width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 1px #0000001f inset}.grp-check{font-weight:700;color:var(--ok-fg)}.grp-chips{display:inline-flex;flex-wrap:wrap;gap:4px}.grp-chip{display:inline-block;padding:1px 7px;font-size:10px;font-weight:600;border-radius:999px;background:var(--accent-weak);color:var(--text);border:1px solid var(--border)}.grp-colorcell{display:inline-flex;align-items:center;gap:6px}.grp-swatch{width:12px;height:12px;border-radius:3px;box-shadow:0 0 0 1px #0000002e inset}.grp-twist{-webkit-user-select:none;user-select:none;cursor:pointer}.grp-tbl tbody tr.grp-row-parent{cursor:pointer}.grp-tbl tbody tr.grp-row-parent:hover .grp-twist{background:var(--accent);border-color:var(--accent);color:#fff}.grp-tbl tbody tr:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.grp-count{margin-left:8px;font-size:10px;font-weight:600;opacity:.5}.grp-rollup{margin-left:8px;font-size:10px;font-weight:700;padding:1px 6px;border-radius:999px;background:var(--warn-bg);color:var(--warn-fg);border:1px solid var(--border);white-space:nowrap}.grp-rollup.done{background:var(--ok-bg);color:var(--ok-fg)}.grp-editable{cursor:text;border-radius:3px;padding:1px 3px;margin:-1px -3px;display:inline-block;min-width:14px}.grp-editable:hover{background:var(--accent-weak);box-shadow:inset 0 0 0 1px var(--border)}.grp-name-boat.grp-editable,.grp-name-group.grp-editable{display:inline}.grp-empty{display:inline-block;min-width:36px;min-height:14px}.grp-edit{width:100%;min-width:90px;padding:2px 5px;font:inherit;font-size:11.5px;border:1px solid var(--accent);border-radius:3px;background:var(--surface);color:var(--text)}.grp-cb{cursor:pointer}.grp-tags{display:inline-flex;flex-wrap:wrap;gap:4px;align-items:center}.grp-chip-edit{display:inline-flex;align-items:center;gap:3px}.grp-chip-x{border:none;background:none;color:inherit;opacity:.55;cursor:pointer;font-size:12px;line-height:1;padding:0}.grp-chip-x:hover{opacity:1;color:var(--err-fg)}.grp-tag-add{width:18px;height:18px;border:1px dashed var(--border);border-radius:999px;background:none;color:var(--muted);cursor:pointer;font-size:12px;line-height:1;padding:0}.grp-tag-add:hover{border-color:var(--accent);color:var(--accent)}.grp-tag-input{min-width:110px;padding:1px 5px;font:inherit;font-size:11px;border:1px solid var(--accent);border-radius:3px;background:var(--surface);color:var(--text)}.grp-actions-col{width:1%}.grp-actions{white-space:nowrap;text-align:right}.grp-rowbtn{border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:3px;width:20px;height:20px;line-height:1;font-size:12px;cursor:pointer;padding:0;margin-left:3px}.grp-rowbtn:hover{background:var(--accent-weak);border-color:var(--accent)}.grp-rowbtn-del:hover{background:var(--err-bg);border-color:var(--err-bd);color:var(--err-fg)}*{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}body{background:var(--bg);letter-spacing:-.006em;text-rendering:optimizeLegibility}.content{scroll-behavior:smooth}::selection{background:var(--accent-weak)}.cursor-halo{position:fixed;top:0;right:0;bottom:0;left:0;z-index:3;pointer-events:none;background:radial-gradient(460px circle at var(--hx, -400px) var(--hy, -400px),var(--halo),transparent 62%);opacity:0;transition:opacity .5s var(--ease-out)}.cursor-halo.on{opacity:1}@media (prefers-reduced-motion: reduce){.cursor-halo{display:none}}.presence-bar{display:inline-flex;align-items:center;gap:4px;margin-right:4px}.presence-chip{position:relative;display:inline-flex}.presence-av{display:inline-flex;border-radius:var(--radius-sm);border:1.5px solid rgba(255,255,255,.22);overflow:hidden}.presence-more{font-size:12px;font-weight:600;color:#ffffffb3;margin-left:2px}.presence-pop{position:absolute;top:calc(100% + 8px);left:50%;background:var(--glass-dark-solid);color:#fff;border:1px solid rgba(255,255,255,.12);border-radius:var(--radius-sm);padding:4px 9px;font-size:11px;white-space:nowrap;box-shadow:var(--shadow-md);opacity:0;transform:translate(-50%,-5px);pointer-events:none;z-index:55;transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-spring)}.presence-chip.revealed .presence-pop{opacity:1;transform:translate(-50%)}.presence-dept{color:#ffffff9e;font-weight:400}@media (prefers-reduced-motion: reduce){.presence-pop{transition-duration:.01ms}}:focus{outline:none}:where(a,button,input,select,textarea,[tabindex],.nav-item,.cfg-nav-item):focus-visible{outline:none;box-shadow:var(--ring);border-radius:var(--radius-sm)}.topbar{background:var(--topbar-bg);border-bottom:1px solid rgba(255,255,255,.06);box-shadow:inset 0 1px 0 var(--glass-hi),var(--shadow-sm)}.topbar-brand .mark{filter:none}.topbar-brand .name{font-family:var(--font-disp);letter-spacing:.02em;font-weight:600}.topbar .avatar,.app .mark svg{transition:transform var(--dur) var(--ease-spring)}.nav-menu,.bell-menu{-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-sat));box-shadow:var(--shadow-lg);animation:appleMenuIn var(--dur) var(--ease-out)}.bell-menu{background:var(--glass-light);border:1px solid var(--hairline);border-radius:var(--radius-sm)}.nav-menu{background:#121a21db;border:1px solid rgba(255,255,255,.08);border-radius:0}.nav-item,.cfg-nav-item,.roles-list-item{transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out)}.nav-item.active,.cfg-nav-item.active,.roles-list-item.active{box-shadow:var(--shadow-sm)}.bell-item{transition:background var(--dur-fast) var(--ease-out)}@keyframes appleMenuIn{0%{opacity:0;transform:translateY(-6px) scale(.985)}to{opacity:1;transform:none}}.btn{border-radius:var(--radius-sm);transition:transform var(--dur-fast) var(--ease-spring),background var(--dur-fast) var(--ease-out),border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out)}.btn:hover{border-color:var(--border);background:var(--bg2);box-shadow:var(--shadow-sm)}.btn:active{transform:scale(.96)}.btn-primary:hover{background:var(--navy-hi);border-color:var(--navy-hi);box-shadow:var(--shadow-sm)}.btn-accent:hover{background:var(--accent-dim);border-color:var(--accent-dim);color:#fff;box-shadow:var(--shadow-sm)}.btn-ghost:hover{background:#0000000d;box-shadow:none}.btn-danger:hover{background:var(--red);border-color:var(--red)}.field{background:var(--surface);border-radius:var(--radius-sm);transition:border-color var(--dur-fast) var(--ease-out),box-shadow var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out)}.field:hover{border-color:#0000002e}.field:focus{background:var(--surface)}.pill{border-radius:var(--radius-pill);padding:3px 9px;font-weight:700;letter-spacing:.02em}input[type=checkbox],input[type=radio]{accent-color:var(--accent);cursor:pointer}.avatar{border-radius:50%!important}.page-panel,.roles-detail,.cfg-summary,.perm-module,.cfg-cat,.embed,.tile{border-color:var(--hairline)}.tile{border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out)}.hub-card{border-radius:var(--radius-lg);border-color:var(--hairline);box-shadow:var(--shadow-sm);transition:transform var(--dur) var(--ease-out),box-shadow var(--dur) var(--ease-out),border-color var(--dur) var(--ease-out)}.hub-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-md);border-color:var(--border)}.tbl-wrap{border-radius:var(--radius);border:1px solid var(--hairline);box-shadow:var(--shadow-sm);overflow-x:auto;overflow-y:hidden}.tbl tbody tr{transition:background var(--dur-fast) var(--ease-out)}.tbl tbody tr:hover{background:var(--accent-weak)}.modal-bg{background:#12181e5c;-webkit-backdrop-filter:blur(10px) saturate(1.3);backdrop-filter:blur(10px) saturate(1.3);animation:appleFade var(--dur) var(--ease-out)}.modal{border:1px solid var(--hairline);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);animation:appleSheetIn var(--dur-slow) var(--ease-spring)}.modal-hd,.modal-ft{border-color:var(--hairline)}.modal-hd h3{letter-spacing:.01em;font-weight:600}@keyframes appleFade{0%{opacity:0}to{opacity:1}}@keyframes appleSheetIn{0%{opacity:0;transform:translateY(10px) scale(.985)}to{opacity:1;transform:none}}.spinner{border-top-color:var(--accent)}.cfg-gallery{perspective:1400px;margin-bottom:18px}.cfg-gallery-stage{position:relative;border-radius:var(--radius-lg);overflow:hidden;background:radial-gradient(120% 80% at 50% 0%,#fff,#eef1f4 55%,#e4e8ec);box-shadow:var(--shadow-lg),inset 0 1px #ffffffb3;transform-style:preserve-3d;transition:transform var(--dur-slow) var(--ease-out)}.cfg-gallery-main{height:440px;border:none;border-radius:0;background:transparent;transform:translateZ(40px) scale(1.02);transition:transform var(--dur-slow) var(--ease-out),opacity var(--dur-slow) var(--ease-out);animation:appleHeroReveal .7s var(--ease-out) both}@keyframes appleHeroReveal{0%{opacity:0;transform:translateZ(40px) scale(1.06)}to{opacity:1;transform:translateZ(40px) scale(1.02)}}.cfg-gallery-stage:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(38% 55% at var(--mx, 50%) var(--my, 22%),rgba(255,255,255,.55),rgba(255,255,255,0) 70%);mix-blend-mode:soft-light;opacity:.9;pointer-events:none;transition:opacity var(--dur) var(--ease-out)}.cfg-gallery-stage{animation:appleFloat 7s ease-in-out infinite}.cfg-gallery-stage.is-live{animation:none;transition:transform .12s var(--ease-out)}@keyframes appleFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-6px)}}.cfg-gallery-arrow{top:50%;border-radius:var(--radius-sm);background:var(--glass-dark);-webkit-backdrop-filter:blur(14px) saturate(1.6);backdrop-filter:blur(14px) saturate(1.6);border:1px solid rgba(255,255,255,.14);box-shadow:var(--shadow-md);transition:transform var(--dur-fast) var(--ease-spring),background var(--dur-fast) var(--ease-out)}.cfg-gallery-arrow:hover{background:#14232beb;transform:translateY(-50%) scale(1.08)}.cfg-gallery-arrow:active{transform:translateY(-50%) scale(.94)}.cfg-gallery-count{background:var(--glass-dark);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);border-radius:var(--radius-pill)}.cfg-gallery-thumb{border-radius:var(--radius-sm);transition:opacity var(--dur) var(--ease-out),transform var(--dur) var(--ease-spring),border-color var(--dur) var(--ease-out)}.cfg-gallery-thumb:hover{transform:translateY(-2px)}.cfg-gallery-thumb.active{transform:translateY(-2px);box-shadow:var(--shadow-sm)}.cfg-opt-row.sel{background:var(--accent-weak)}.cfg-nav-item.active{box-shadow:var(--shadow-sm)}.bar{background:var(--surface-sunken)}.btn-ghost:hover{background:var(--control-hover)}.field:hover{border-color:color-mix(in srgb,var(--text) 22%,transparent)}.embed-frame{background:var(--surface)}.cfg-gallery-main,.cfg-gallery-thumb{background:var(--surface-sunken)}.mes-report-scroll,.mes-report-table{background:var(--surface)}option{color:var(--text);background:var(--surface)}:root[data-theme=dark] .cfg-gallery-stage{background:radial-gradient(120% 80% at 50% 0%,#1e262c,#141a1f 55%,#0e1216);box-shadow:var(--shadow-lg),inset 0 1px #ffffff0d}:root[data-theme=dark] .mes-report-table td,:root[data-theme=dark] .mes-report-table th{color:var(--text)}:root[data-theme=dark] .vs-wrap,:root[data-theme=dark] .svc-wrap{background:var(--surface)}:root[data-theme=dark] .vs-grid,:root[data-theme=dark] .svc-grid,:root[data-theme=dark] .svc-tree{color:var(--text)}:root[data-theme=dark] .vs-grid td,:root[data-theme=dark] .vs-grid th,:root[data-theme=dark] .svc-grid td,:root[data-theme=dark] .svc-grid th,:root[data-theme=dark] .svc-tree td,:root[data-theme=dark] .svc-tree th{border-color:var(--border-2)}:root[data-theme=dark] .svc-grid td,:root[data-theme=dark] .svc-tree td{background:var(--surface)}:root[data-theme=dark] .vs-hd{background:#2a343b;color:#eef2f4}:root[data-theme=dark] .vs-firstcol{background:#202930}:root[data-theme=dark] .vs-hd.vs-firstcol{background:#161d23}:root[data-theme=dark] .svc-firstcol{background:#202930!important}:root[data-theme=dark] .svc-trow-group td{background:#232c33!important}:root[data-theme=dark] .svc-trow-vessel td{background:#92d05024!important}:root[data-theme=dark] .vs-cell.vs-ok{color:#57d489}:root[data-theme=dark] .vs-date,:root[data-theme=dark] .svc-in,:root[data-theme=dark] .svc-prim-in{color-scheme:dark}:root[data-theme=dark] .wb-p100{color:#57d489}:root[data-theme=dark] .wb-plow{color:#ff7168}.settings-wrap{max-width:720px;display:flex;flex-direction:column;gap:14px}.settings-card{background:var(--surface);border:1px solid var(--hairline);border-radius:var(--radius);box-shadow:var(--shadow-sm);padding:14px 18px}.settings-card h3{margin:4px 0 6px;font-family:var(--font-disp);font-size:14px;font-weight:600;color:var(--text-strong)}.settings-row{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 0;border-top:1px solid var(--border-2);flex-wrap:wrap}.settings-card h3+.settings-row{border-top:none}.settings-cell{min-width:0}.settings-label{font-weight:600;font-size:13px;color:var(--text)}.settings-hint{font-size:12px;margin-top:3px;max-width:48ch}.settings-row .field{min-width:220px}.seg{display:inline-flex;background:var(--surface-sunken);border:1px solid var(--border);border-radius:var(--radius);padding:2px;gap:2px}.seg-btn{border:none;background:transparent;color:var(--text-muted);font:600 12px var(--font-body);padding:6px 15px;border-radius:max(1px,calc(var(--radius) - 1px));cursor:pointer;transition:background var(--dur-fast) var(--ease-out),color var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.seg-btn:hover{color:var(--text)}.seg-btn:active{transform:scale(.96)}.seg-btn.on{background:var(--surface);color:var(--text-strong);box-shadow:var(--shadow-sm)}.theme-choices{display:flex;flex-direction:column;gap:8px;margin-top:14px}.theme-choice{display:flex;align-items:center;gap:14px;width:100%;text-align:left;padding:12px 14px;background:var(--surface);color:var(--text);border:1.5px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:border-color var(--dur-fast) var(--ease-out),background var(--dur-fast) var(--ease-out),transform var(--dur-fast) var(--ease-spring)}.theme-choice:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.theme-choice:active{transform:scale(.99)}.theme-choice.sel{border-color:var(--accent);background:var(--accent-weak)}.theme-swatch{flex:0 0 auto;width:48px;height:34px;border-radius:var(--radius-sm);border:1px solid var(--border);box-shadow:var(--shadow-sm)}.theme-swatch.light{background:linear-gradient(135deg,#fff 0,#fff 50%,#e7e9ec 50%,#e7e9ec)}.theme-swatch.dark{background:linear-gradient(135deg,#1a2128 0,#1a2128 50%,#0d1114 50%,#0d1114)}.theme-swatch.auto{background:linear-gradient(135deg,#fff 0,#fff 50%,#0d1114 50%,#0d1114)}.theme-choice-body{display:flex;flex-direction:column;gap:2px;min-width:0}.theme-choice-title{font-weight:600;font-size:13px;display:flex;align-items:center}.theme-choice-desc{font-size:12px}.logo-choices{display:flex;gap:8px;flex-wrap:wrap}.logo-choice{display:flex;flex-direction:column;align-items:center;gap:6px;width:78px;padding:10px 6px;background:var(--surface);color:var(--text-muted);border:1.5px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease,color .12s ease}.logo-choice{width:88px}.logo-choice img{width:46px;height:33px;object-fit:contain}.logo-choice span{font-size:11px;font-weight:600}.logo-choice:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.logo-choice:active{transform:scale(.97)}.logo-choice.sel{border-color:var(--accent);background:var(--accent-weak);color:var(--text-strong)}.pal-choices{display:flex;gap:8px;flex-wrap:wrap}.pal-choice{display:flex;flex-direction:column;align-items:center;gap:7px;width:82px;padding:10px 6px;background:var(--surface);color:var(--text-muted);border:1.5px solid var(--border);border-radius:var(--radius);cursor:pointer;transition:transform .12s ease,border-color .12s ease,background .12s ease,color .12s ease}.pal-choice span:last-child{font-size:11px;font-weight:600}.pal-choice:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--border))}.pal-choice:active{transform:scale(.97)}.pal-choice.sel{border-color:var(--accent);background:var(--accent-weak);color:var(--text-strong)}.pal-sw{display:grid;place-items:center;width:40px;height:28px;border-radius:6px;box-shadow:inset 0 0 0 1px #ffffff14}.pal-dot{width:12px;height:12px;border-radius:50%;box-shadow:0 0 0 2px #ffffff38}@media (max-width: 640px){.topbar{gap:6px;padding:0 8px}.topbar-brand .sub,.nav-trigger-label{display:none}.nav-trigger{min-width:40px;padding:0 10px}.presence-bar{display:none!important}.topbar-logout{display:none}.user-btn{padding:4px}.user-btn>div{display:none}.topbar-actions{gap:6px}.content{padding:12px 12px calc(14px + env(safe-area-inset-bottom,0px))}.nav-menu{left:8px;right:8px;min-width:0;width:auto;max-height:calc(100vh - var(--topbar-h) - 16px)}.nav-cols{column-count:1}.page-head{flex-wrap:wrap;gap:8px;align-items:stretch}.page-head .spacer{display:none}.page-head .field{flex:1 1 160px;min-width:0}.page-title{flex:1 0 100%}.modal{width:96vw}.tbl th,.tbl td{white-space:nowrap}.cfg-layout{grid-template-columns:1fr}.cfg-nav{flex-direction:row;overflow-x:auto;gap:6px;-webkit-overflow-scrolling:touch}.cfg-nav-item{white-space:nowrap}.cfg-gallery-main{height:240px}.cfg-gallery-stage{animation:none}.settings-wrap{max-width:none}.settings-row{align-items:stretch}.settings-row .field,.seg{width:100%}.seg-btn{flex:1;padding:8px}.roles-layout,.hub-grid,.tile-grid{grid-template-columns:1fr}}@media (prefers-reduced-transparency: reduce){.cfg-gallery-arrow,.cfg-gallery-count{background:var(--glass-dark-solid);-webkit-backdrop-filter:none;backdrop-filter:none}.bell-menu{background:var(--glass-light-solid);-webkit-backdrop-filter:none;backdrop-filter:none}.nav-menu{background:#16202a;-webkit-backdrop-filter:none;backdrop-filter:none}.modal-bg{background:#12181eb8;-webkit-backdrop-filter:none;backdrop-filter:none}}@media (prefers-reduced-motion: reduce){*,.modal,.modal-bg,.nav-menu,.bell-menu,.cfg-gallery-main,.cfg-gallery-stage{animation:none!important;transition-duration:.01ms!important}.content{scroll-behavior:auto}.cfg-gallery-main{transform:translateZ(0);scale:1}.cfg-gallery-stage{transform:none}}
