@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-g30qAdWV.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-400-normal-Dsrv2Tcn.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-cyrillic-400-normal-DZqxrq2p.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-400-normal-BTotfTJu.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-greek-400-normal-_efipK4i.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-400-normal-D9ESIMu3.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-vietnamese-400-normal-DG4YqDda.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-400-normal-fK1oJ5dG.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-ext-400-normal-C5H60-Va.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-400-normal-RBey6euL.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-sans-latin-400-normal-CDDApCn2.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-400-normal-CYLoc0-x.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-Cs5J6C77.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-500-normal-DB5PtV2g.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-cyrillic-500-normal-CocWQlwt.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-500-normal-ByOcLdNv.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-greek-500-normal-JMMifIXV.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-500-normal-CuWXN6rf.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-vietnamese-500-normal-e4dixQRQ.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-500-normal-BEb3_waV.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-ext-500-normal-DakdToA3.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-500-normal-D0aIdm-b.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/ibm-plex-sans-latin-500-normal-6ng42L7E.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-500-normal-BgVn5rGT.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-DUMzJB7m.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-ext-600-normal-Bz0x94Yp.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-cyrillic-600-normal-71GNu3SW.woff2) format("woff2"),url(/assets/ibm-plex-sans-cyrillic-600-normal-BGq0mW3O.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-greek-600-normal-DzTrcv_p.woff2) format("woff2"),url(/assets/ibm-plex-sans-greek-600-normal-D-CqTdkO.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-vietnamese-600-normal-DpPYBSTl.woff2) format("woff2"),url(/assets/ibm-plex-sans-vietnamese-600-normal-DgdngZtN.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-ext-600-normal-DOrvGEcy.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-ext-600-normal-DIrixKbi.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:IBM Plex Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/ibm-plex-sans-latin-600-normal-CuJfVYMP.woff2) format("woff2"),url(/assets/ibm-plex-sans-latin-600-normal-Cu4Hd6ag.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-xuaO2J-f.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-ext-400-normal-DMdlQ8Kv.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-cyrillic-400-normal-BSMlKf0J.woff2) format("woff2"),url(/assets/ibm-plex-mono-cyrillic-400-normal-CEL4l2ZJ.woff) format("woff");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-vietnamese-400-normal-BulugwFq.woff2) format("woff2"),url(/assets/ibm-plex-mono-vietnamese-400-normal-DDuiU_S-.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-ext-400-normal-BmRBH3aV.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-ext-400-normal-D3D2R8hC.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:IBM Plex Mono;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/ibm-plex-mono-latin-400-normal-DMJ8VG8y.woff2) format("woff2"),url(/assets/ibm-plex-mono-latin-400-normal-CvHOgSBP.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{--canvas: #f2f3f5;--surface: #ffffff;--surface-2: #fafbfc;--line: #e2e5e9;--line-strong: #cdd2d9;--ink: #1c2024;--ink-2: #5a6270;--ink-3: #868e9c;--accent: #3f4652;--accent-deep: #262b33;--accent-wash: #eceef1;--air: #2563a8;--air-bg: #e4edf7;--hotel: #6f4f92;--hotel-bg: #eee9f4;--rail: #2d7d5a;--rail-bg: #e3f0ea;--car: #a86a24;--car-bg: #f6ecdf;--event-band: #dfe3e8;--ok: #1f6b45;--warn: #9a6209;--alert: #a52d2d;--sans: "IBM Plex Sans", ui-sans-serif, system-ui, sans-serif;--mono: "IBM Plex Mono", ui-monospace, monospace;--r: 6px;--shell-nav: 210px}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;background:var(--canvas);color:var(--ink);font-family:var(--sans);font-size:14px;line-height:1.5;-webkit-font-smoothing:antialiased}body{font-variant-numeric:tabular-nums}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.011em}h1{font-size:20px}h2{font-size:16px}h3{font-size:14px}a{color:inherit}.locator{font-family:var(--mono);font-size:12px;letter-spacing:.02em}.login{min-height:100%;display:grid;grid-template-columns:minmax(0,460px) 1fr}@media (max-width: 860px){.login{grid-template-columns:1fr}.login-aside{display:none}}.login-panel{background:var(--surface);padding:56px 56px 40px;display:flex;flex-direction:column;justify-content:center;border-right:1px solid var(--line)}.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:40px}.login-brand img{height:30px;width:auto}.login-brand-fallback{width:34px;height:34px;border-radius:var(--r);display:grid;place-items:center;color:#fff;font-weight:600;font-size:15px}.login-brand-name{font-size:15px;font-weight:600}.login h1{margin-bottom:6px}.login-sub{margin:0 0 32px;color:var(--ink-2);max-width:42ch}.field{display:flex;flex-direction:column;gap:6px;margin-bottom:18px}.field label{font-size:13px;font-weight:500;color:var(--ink-2)}.field input{padding:10px 12px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface);font-family:inherit;font-size:14px;color:var(--ink)}.field input:focus{outline:2px solid var(--accent);outline-offset:-1px;border-color:var(--accent)}.field input.code{font-family:var(--mono);font-size:22px;letter-spacing:.5em;text-align:center;padding-left:.5em}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;padding:10px 18px;border:1px solid var(--line-strong);border-radius:var(--r);background:var(--surface);color:var(--ink);font:inherit;font-weight:500;cursor:pointer}.btn:hover:not(:disabled){background:var(--surface-2)}.btn:disabled{opacity:.5;cursor:not-allowed}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.btn-primary{width:100%;border-color:var(--brand, var(--accent));background:var(--brand, var(--accent));color:#fff}.btn-primary:hover:not(:disabled){filter:brightness(.92);background:var(--brand, var(--accent))}.btn-quiet{border-color:transparent;background:none;color:var(--ink-2);padding:6px 10px}.login-alert{margin:0 0 18px;padding:10px 12px;border-radius:var(--r);background:#fbeceb;color:#7d2020;font-size:13px}.login-foot{margin-top:28px;font-size:12px;color:var(--ink-3)}.login-aside{background:var(--accent-deep);color:#fff;padding:56px;display:flex;align-items:flex-end}.login-aside p{max-width:34ch;margin:0;color:#aeb5c1;font-size:13px}.shell{display:grid;grid-template-columns:var(--shell-nav) 1fr;height:100%}.nav{background:var(--surface);border-right:1px solid var(--line);display:flex;flex-direction:column;padding:16px 12px;gap:2px}.nav-brand{display:flex;align-items:center;gap:9px;padding:4px 8px 18px;font-weight:600}.nav-brand .mark{width:24px;height:24px;border-radius:5px;background:var(--accent-deep);display:grid;place-items:center;color:#fff;font-size:12px;font-weight:600}.nav a{display:flex;align-items:center;justify-content:space-between;padding:7px 10px;border-radius:var(--r);color:var(--ink-2);text-decoration:none}.nav a:hover{background:var(--accent-wash);color:var(--ink)}.nav a.active{background:var(--accent-wash);color:var(--ink);font-weight:500}.nav-count{font-size:12px;color:var(--ink-3);background:var(--canvas);border-radius:10px;padding:1px 7px}.nav-spacer{flex:1}.nav-account{border-top:1px solid var(--line);padding:12px 10px 4px;font-size:13px}.nav-account .who{font-weight:500}.nav-account .org{color:var(--ink-3);font-size:12px}.main{overflow:auto;display:flex;flex-direction:column}.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:16px 24px;border-bottom:1px solid var(--line);background:var(--surface)}.topbar-actions{display:flex;align-items:center;gap:8px}.range{display:flex;align-items:center;gap:2px;border:1px solid var(--line-strong);border-radius:var(--r);overflow:hidden}.range button{border:0;background:var(--surface);color:var(--ink-2);font:inherit;padding:7px 11px;cursor:pointer}.range button+button{border-left:1px solid var(--line)}.range button:hover{background:var(--surface-2);color:var(--ink)}.content{padding:20px 24px 40px}.timeline{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);overflow:hidden}.tl-head{display:grid;grid-template-columns:190px 1fr;border-bottom:1px solid var(--line);background:var(--surface-2)}.tl-head-label{padding:10px 14px;font-size:13px;font-weight:500;color:var(--ink-2);border-right:1px solid var(--line)}.tl-days{display:flex;position:relative}.tl-day{flex:1;padding:10px;font-size:13px;border-left:1px solid var(--line);color:var(--ink-2)}.tl-day:first-child{border-left:0}.tl-day .dow{color:var(--ink-3);font-size:12px}.tl-day.today{background:#fff;box-shadow:inset 0 -2px 0 var(--accent)}.tl-day.today .dow{color:var(--accent)}.tl-row{display:grid;grid-template-columns:190px 1fr;border-top:1px solid var(--line)}.tl-row:first-of-type{border-top:0}.tl-person{padding:12px 14px;border-right:1px solid var(--line)}.tl-person .name{font-weight:500}.tl-person .meta{font-size:12px;color:var(--ink-3)}.tl-track{position:relative;min-height:58px;background-image:repeating-linear-gradient(to right,var(--line) 0 1px,transparent 1px var(--daywidth, 20%))}.tl-seg{position:absolute;top:10px;height:22px;display:flex;align-items:center;gap:6px;padding:0 8px;border-radius:4px;border-left:3px solid;font-size:12px;white-space:nowrap;overflow:hidden;cursor:pointer}.tl-seg.air{background:var(--air-bg);border-color:var(--air);color:#17416e}.tl-seg.hotel{background:var(--hotel-bg);border-color:var(--hotel);color:#4a3363}.tl-seg.rail{background:var(--rail-bg);border-color:var(--rail);color:#1d5540}.tl-seg.car{background:var(--car-bg);border-color:var(--car);color:#71481a}.tl-seg:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.tl-band{position:absolute;bottom:8px;height:14px;border-radius:3px;background:var(--event-band);display:flex;align-items:center;padding:0 8px;font-size:11px;color:var(--ink-2);white-space:nowrap;overflow:hidden}.tl-empty{padding:40px 20px;text-align:center;color:var(--ink-3)}.tl-legend{display:flex;align-items:center;gap:14px;padding:10px 14px;border-top:1px solid var(--line);background:var(--surface-2);font-size:12px;color:var(--ink-2)}.tl-legend span{display:inline-flex;align-items:center;gap:6px}.tl-legend i{width:9px;height:9px;border-radius:2px;display:inline-block}.detail{position:fixed;right:20px;bottom:20px;width:320px;background:var(--surface);border:1px solid var(--line-strong);border-radius:var(--r);box-shadow:0 8px 28px #14181e24;overflow:hidden}.detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid var(--line)}.detail-body{padding:12px 14px;display:grid;gap:9px}.detail-row{display:grid;grid-template-columns:92px 1fr;gap:10px;font-size:13px}.detail-row dt{color:var(--ink-3)}.detail-row dd{margin:0}.muted{color:var(--ink-2)}.pill{display:inline-block;padding:2px 8px;border-radius:10px;font-size:12px;background:var(--canvas);color:var(--ink-2)}.pill.ok{background:#e4f1ea;color:var(--ok)}.pill.warn{background:#fbf0dc;color:var(--warn)}.pill.alert{background:#fbe9e9;color:var(--alert)}@media (prefers-reduced-motion: reduce){*{animation:none!important;transition:none!important}}
