:root{--navy-900: #071d42;--navy-800: #0b2a5b;--navy-700: #123a78;--blue-600: #1557c0;--blue-500: #1d5fd0;--blue-100: #dde9fb;--blue-50: #eef4fd;--bg: #f2f5fa;--surface: #ffffff;--surface-2: #f7f9fc;--border: #d5dce8;--border-strong: #b6c1d4;--text: #14213a;--text-2: #44506a;--muted: #66728a;--primary: var(--blue-500);--primary-hover: var(--blue-600);--focus: #f59e0b;--danger: #b42318;--danger-bg: #fdecea;--warn: #9a5b00;--warn-bg: #fff4dc;--ok: #17703a;--ok-bg: #e4f5ea;--info-bg: var(--blue-50);--series-1: #1d5fd0;--series-2: #c96a00;--shadow: 0 1px 2px rgba(11, 42, 91, .06), 0 2px 8px rgba(11, 42, 91, .05);--radius: 6px;--sidebar-w: 268px;--topbar-h: 56px;color-scheme:light}[data-theme=dark]{--bg: #0c1626;--surface: #152238;--surface-2: #1a2a44;--border: #2a3b59;--border-strong: #3a4d70;--text: #e8edf6;--text-2: #c0cadb;--muted: #93a0b8;--primary: #3f7fe6;--primary-hover: #5a93ee;--blue-100: #1f3a66;--blue-50: #19294a;--danger: #ff8f84;--danger-bg: #43201f;--warn: #f3c267;--warn-bg: #3c2f12;--ok: #73d39a;--ok-bg: #173524;--info-bg: #19294a;--series-1: #4a8cf0;--series-2: #c97c14;--shadow: 0 1px 2px rgba(0, 0, 0, .4);color-scheme:dark}*{box-sizing:border-box}html,body,#root{height:100%}body{margin:0;font-family:Segoe UI,system-ui,-apple-system,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.45;color:var(--text);background:var(--bg);-webkit-font-smoothing:antialiased}body.modal-open{overflow:hidden}h1,h2,h3{margin:0;font-weight:600;letter-spacing:-.005em}h1{font-size:21px}h2{font-size:15px}h3{font-size:13.5px}p{margin:0 0 8px}a{color:var(--primary);text-decoration:none}a:hover{text-decoration:underline}code,.mono{font-family:Consolas,Cascadia Mono,Courier New,monospace;font-size:12.5px}.muted{color:var(--muted)}.nowrap{white-space:nowrap}.num{text-align:right;font-variant-numeric:tabular-nums}.sr-only{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}:focus-visible{outline:3px solid var(--focus);outline-offset:2px;border-radius:3px}.shell{display:grid;grid-template-columns:var(--sidebar-w) 1fr;min-height:100%}.sidebar{background:linear-gradient(180deg,var(--navy-800) 0%,var(--navy-900) 100%);color:#dbe5f5;display:flex;flex-direction:column;position:sticky;top:0;height:100vh;overflow-y:auto;z-index:30}.brand{padding:16px 18px 14px;border-bottom:1px solid rgba(255,255,255,.1)}.brand img{display:block;max-width:168px;max-height:44px;width:auto;height:auto}.brand-name{margin-top:12px;font-size:19px;font-weight:600;color:#fff;letter-spacing:.01em}.brand-sub{font-size:11px;color:#a9bbd8;margin-top:1px}.nav{padding:8px 10px 16px;flex:1}.nav-group{margin:14px 10px 6px;font-size:10.5px;font-weight:600;letter-spacing:.09em;text-transform:uppercase;color:#8fa5c9}.nav a{display:flex;align-items:center;gap:10px;padding:7px 10px;border-radius:5px;color:#d3def1;font-size:13.5px;border-left:3px solid transparent}.nav a:hover{background:#ffffff12;text-decoration:none;color:#fff}.nav a.active{background:#488cf038;color:#fff;border-left-color:#6aa5ff;font-weight:600}.nav-num{width:20px;font-size:11px;color:#8fa5c9;text-align:right;font-variant-numeric:tabular-nums;flex:none}.nav a.active .nav-num{color:#cfe0ff}.sidebar-foot{padding:12px 18px 16px;font-size:11px;color:#8fa5c9;border-top:1px solid rgba(255,255,255,.1)}.main{min-width:0;display:flex;flex-direction:column}.topbar{height:var(--topbar-h);background:var(--surface);border-bottom:1px solid var(--border);display:flex;align-items:center;gap:14px;padding:0 20px;position:sticky;top:0;z-index:20}.topbar-company{font-weight:600;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.topbar-tag{color:var(--muted);font-size:12px;white-space:nowrap}.topbar-spacer{flex:1}.topbar-user{text-align:right;line-height:1.2}.topbar-user b{display:block;font-size:13px;font-weight:600}.topbar-user span{font-size:11.5px;color:var(--muted)}.live{display:inline-flex;align-items:center;gap:6px;font-size:12px;color:var(--text-2);padding:3px 9px;border:1px solid var(--border);border-radius:999px;white-space:nowrap}.live-dot{width:8px;height:8px;border-radius:50%;background:#9aa5b8}.live-live .live-dot{background:#1e9e54;box-shadow:0 0 0 3px #1e9e542e}.live-connecting .live-dot{background:#e0a100}.menu-btn{display:none}.content{padding:20px 24px 40px;max-width:1560px;width:100%}.scrim{display:none}.page-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.page-sub{color:var(--muted);margin:3px 0 0;font-size:13px;max-width:90ch}.page-actions{display:flex;gap:8px;flex-wrap:wrap;align-items:center}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);margin-bottom:16px;min-width:0}.card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px 16px;border-bottom:1px solid var(--border)}.card-actions{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.card-body{padding:14px 16px}.card-flush{padding:0}.grid{display:grid;gap:16px}.grid>.card{margin-bottom:0}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid{margin-bottom:16px}.card-head .tabs{margin-bottom:0;border-bottom:0}.stack>*+*{margin-top:12px}.row{display:flex;gap:8px;align-items:center;flex-wrap:wrap}.row-end{justify-content:flex-end}.spread{display:flex;gap:12px;align-items:center;justify-content:space-between;flex-wrap:wrap}.kpis{display:grid;grid-template-columns:repeat(auto-fill,minmax(164px,1fr));gap:12px;margin-bottom:16px}.kpi{display:flex;flex-direction:column;gap:2px;background:var(--surface);border:1px solid var(--border);border-top:3px solid var(--navy-700);border-radius:var(--radius);padding:11px 14px 10px;box-shadow:var(--shadow);color:var(--text);min-width:0}.kpi-link:hover{text-decoration:none;border-color:var(--primary);border-top-color:var(--primary)}.kpi-label{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.kpi-value{font-size:27px;font-weight:600;line-height:1.15;font-variant-numeric:tabular-nums}.kpi-sub{font-size:11.5px;color:var(--muted)}.kpi-link .kpi-sub{color:var(--primary)}.kpi-danger{border-top-color:#c9372c}.kpi-danger .kpi-value{color:var(--danger)}.kpi-warn{border-top-color:#d99200}.kpi-ok{border-top-color:#1e9e54}.kpi-info{border-top-color:var(--primary)}.table-wrap{overflow-x:auto}.table{width:100%;border-collapse:collapse;font-size:13px}.table th{text-align:left;font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--text-2);background:var(--surface-2);padding:8px 12px;border-bottom:1px solid var(--border-strong);white-space:nowrap;position:sticky;top:0}.table td{padding:7px 12px;border-bottom:1px solid var(--border);vertical-align:top}.table tbody tr:hover{background:var(--blue-50)}.table tbody tr:last-child td{border-bottom:0}.table th.num,.table td.num{text-align:right}.table .actions{text-align:right;white-space:nowrap}.table .actions .btn+.btn{margin-left:6px}.cell-main{font-weight:600;color:var(--text)}a.cell-main:hover{color:var(--primary)}.cell-sub{font-size:12px;color:var(--muted);margin-top:1px}.row-off td{color:var(--muted)}.pager{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 16px;border-top:1px solid var(--border);font-size:13px;color:var(--text-2);flex-wrap:wrap}.chips{display:inline-flex;gap:5px;flex-wrap:wrap;align-items:center}.chip{display:inline-flex;align-items:center;padding:3px 10px;border-radius:999px;font-size:12px;font-weight:600;line-height:1.35;white-space:nowrap;border:1px solid transparent}.chip-slate{background:#e7ebf2;color:#2f3b52;border-color:#cfd6e2}.chip-sky{background:#dff1fb;color:#0b5578;border-color:#b9e0f3}.chip-blue{background:#dbe8fd;color:#123f95;border-color:#b8d0f8}.chip-amber{background:#fff1cf;color:#7a4a00;border-color:#f3d58c}.chip-red{background:#fde3e0;color:#97180f;border-color:#f4b9b3}.chip-violet{background:#ece5fb;color:#4b2a99;border-color:#d3c5f3}.chip-orange{background:#ffe6d2;color:#8a3a00;border-color:#f6c49b}.chip-green{background:#dcf3e4;color:#115c30;border-color:#b3e0c3}.chip-grey{background:#eceef1;color:#5a6475;border-color:#d6dae1;text-decoration:line-through;text-decoration-color:#5a647573}.chip-overdue{background:#c62a1f;color:#fff;border-color:#a31e15;text-transform:uppercase;letter-spacing:.04em;font-size:11px}.chip-outline{background:transparent;border-color:var(--border-strong);color:var(--text-2);font-weight:600}.prio-critical{border-color:#c62a1f;color:var(--danger)}.prio-high{border-color:#d97a14;color:var(--warn)}[data-theme=dark] .chip-slate{background:#2a3956;color:#d5deee;border-color:#3b4c6e}[data-theme=dark] .chip-sky{background:#123f55;color:#bfe6f8;border-color:#1c5a78}[data-theme=dark] .chip-blue{background:#1b3d7c;color:#d3e2ff;border-color:#2b55a3}[data-theme=dark] .chip-amber{background:#4a3a10;color:#ffe19a;border-color:#6a5318}[data-theme=dark] .chip-red{background:#5a1f1b;color:#ffcdc7;border-color:#7c2a24}[data-theme=dark] .chip-violet{background:#3a2a6b;color:#ddd0ff;border-color:#503c90}[data-theme=dark] .chip-orange{background:#57300f;color:#ffd4b0;border-color:#764116}[data-theme=dark] .chip-green{background:#164529;color:#bff0d0;border-color:#1f5f39}[data-theme=dark] .chip-grey{background:#2b3445;color:#a4aebf;border-color:#3a4558}.progress{display:inline-flex;align-items:center;gap:8px;min-width:110px}.progress-bar{flex:1;height:6px;background:var(--blue-100);border-radius:3px;overflow:hidden;min-width:60px}.progress-bar>span{display:block;height:100%;background:var(--primary);border-radius:3px}.progress-num{font-size:12px;color:var(--text-2);font-variant-numeric:tabular-nums;width:34px;text-align:right}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;font:inherit;font-size:13px;font-weight:600;padding:7px 14px;border-radius:5px;border:1px solid var(--border-strong);background:var(--surface);color:var(--text);cursor:pointer;white-space:nowrap}.btn:hover:not(:disabled){background:var(--surface-2);border-color:var(--primary)}.btn:disabled{opacity:.55;cursor:not-allowed}.btn-primary{background:var(--primary);border-color:var(--primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--primary-hover);border-color:var(--primary-hover)}.btn-danger{background:var(--surface);border-color:#c9372c;color:var(--danger)}.btn-danger:hover:not(:disabled){background:var(--danger-bg);border-color:#c9372c}.btn-ghost{border-color:transparent;background:transparent;color:var(--primary)}.btn-sm{padding:4px 10px;font-size:12px}a.btn:hover{text-decoration:none}.icon-btn{border:0;background:transparent;color:var(--muted);font-size:20px;line-height:1;width:30px;height:30px;border-radius:5px;cursor:pointer}.icon-btn:hover{background:var(--surface-2);color:var(--text)}.link-btn{border:0;background:none;padding:0;font:inherit;font-size:12.5px;color:var(--primary);cursor:pointer}.link-btn:hover{text-decoration:underline}input,select,textarea{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border-strong);border-radius:5px;padding:7px 10px;width:100%;min-width:0}input[type=checkbox],input[type=radio]{width:16px;height:16px;padding:0;flex:none;accent-color:var(--primary)}input:focus,select:focus,textarea:focus{border-color:var(--primary)}input:disabled,select:disabled,textarea:disabled{background:var(--surface-2);color:var(--muted)}textarea{resize:vertical;min-height:64px}.form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px 16px}.form-grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.field{display:flex;flex-direction:column;gap:4px;min-width:0;border:0;padding:0;margin:0}.field-wide{grid-column:1 / -1}.field-label{font-size:12.5px;font-weight:600;color:var(--text-2);padding:0}.field-hint{font-size:12px;color:var(--muted)}.req{color:var(--danger)}.check{display:inline-flex;align-items:flex-start;gap:8px;font-size:13px;cursor:pointer;padding:2px 0}.check input{margin-top:2px}.checks{display:flex;flex-wrap:wrap;gap:4px 16px}.multipick-list{border:1px solid var(--border-strong);border-radius:5px;padding:6px 10px;max-height:168px;overflow-y:auto;display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:0 12px;background:var(--surface)}.filters{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:10px 12px;align-items:end}.filters .field-label{font-size:11.5px}.inline-form{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.inline-form .field{flex:1 1 160px}.state{display:flex;align-items:center;justify-content:center;gap:10px;padding:28px 16px;color:var(--muted);font-size:13.5px;text-align:center}.state-empty{background:var(--surface-2);border-radius:var(--radius)}.card-flush .state-empty{border-radius:0 0 var(--radius) var(--radius)}.spinner{width:20px;height:20px;border:2.5px solid var(--blue-100);border-top-color:var(--primary);border-radius:50%;animation:spin .8s linear infinite;flex:none}.spinner-sm{width:13px;height:13px;border-width:2px}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){.spinner{animation-duration:2.5s}}.alert{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:9px 12px;border-radius:5px;font-size:13px;border:1px solid var(--border);background:var(--info-bg);color:var(--text);margin-bottom:12px}.alert:last-child{margin-bottom:0}.alert-error{background:var(--danger-bg);border-color:#e6a39c;color:var(--danger)}.alert-warn{background:var(--warn-bg);border-color:#e9cc85;color:var(--warn)}.alert-ok{background:var(--ok-bg);border-color:#a9d9ba;color:var(--ok)}[data-theme=dark] .alert-error{border-color:#7c2a24}[data-theme=dark] .alert-warn{border-color:#6a5318}[data-theme=dark] .alert-ok{border-color:#1f5f39}.note-list{margin:0;padding-left:18px;color:var(--text-2);font-size:12.5px}.note-list li+li{margin-top:3px}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border-strong);margin-bottom:16px;overflow-x:auto}.tab{border:0;background:none;font:inherit;font-size:13.5px;font-weight:600;color:var(--text-2);padding:9px 14px;border-bottom:3px solid transparent;margin-bottom:-1px;cursor:pointer;white-space:nowrap}.tab:hover{color:var(--text)}.tab-active{color:var(--primary);border-bottom-color:var(--primary)}.tab-count{margin-left:6px;font-size:11.5px;background:var(--blue-100);color:var(--text);padding:1px 7px;border-radius:999px}.facts{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px 18px;margin:0}.facts dt{font-size:11.5px;font-weight:600;text-transform:uppercase;letter-spacing:.04em;color:var(--muted)}.facts dd{margin:1px 0 0;font-size:13.5px;overflow-wrap:anywhere}.prewrap{white-space:pre-wrap;overflow-wrap:anywhere}pre.json{margin:0;padding:10px 12px;background:var(--surface-2);border:1px solid var(--border);border-radius:5px;font-size:12px;overflow-x:auto;max-height:320px;white-space:pre-wrap;overflow-wrap:anywhere}.modal-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;background:#07142c8c;display:flex;align-items:flex-start;justify-content:center;padding:5vh 16px;z-index:100;overflow-y:auto}.modal{background:var(--surface);border-radius:8px;box-shadow:0 18px 50px #00000059;width:100%;max-width:620px;border:1px solid var(--border)}.modal-wide{max-width:900px}.modal-head{display:flex;align-items:center;justify-content:space-between;padding:12px 16px;border-bottom:1px solid var(--border)}.modal-head h2{font-size:16px}.modal-body{padding:16px}.modal-foot{display:flex;justify-content:flex-end;gap:8px;padding:12px 16px;border-top:1px solid var(--border);background:var(--surface-2);border-radius:0 0 8px 8px}.confirm-text{margin-bottom:12px;font-size:14px}.toasts{position:fixed;right:18px;bottom:18px;display:flex;flex-direction:column;gap:8px;z-index:200;max-width:min(440px,calc(100vw - 36px))}.toast{display:flex;align-items:flex-start;gap:10px;justify-content:space-between;padding:10px 10px 10px 14px;border-radius:6px;background:var(--navy-800);color:#fff;box-shadow:0 6px 22px #0000004d;font-size:13px;border-left:4px solid #37b36b}.toast-error{border-left-color:#ef5a4c}.toast-warn{border-left-color:#f0b429}.toast .icon-btn{color:#c4d2ea;width:22px;height:22px;font-size:17px}.auth{min-height:100%;display:grid;grid-template-columns:minmax(320px,5fr) 6fr}.auth-side{background:linear-gradient(160deg,var(--navy-800) 0%,var(--navy-900) 70%);color:#dbe5f5;padding:48px 44px;display:flex;flex-direction:column;justify-content:space-between}.auth-side img{max-width:230px;height:auto;display:block}.auth-side h1{font-size:34px;color:#fff;margin-top:36px;font-weight:600}.auth-tagline{font-size:16px;color:#b9cbe8;margin-top:8px;letter-spacing:.02em}.auth-foot{font-size:12px;color:#8fa5c9}.auth-main{display:flex;align-items:center;justify-content:center;padding:32px 20px}.auth-card{width:100%;max-width:420px}.auth-card h2{font-size:20px;margin-bottom:4px}.auth-card .page-sub{margin-bottom:18px}.auth-card form{display:flex;flex-direction:column;gap:14px}.steps{display:flex;gap:6px;margin-bottom:20px;padding:0;list-style:none}.steps li{flex:1;font-size:11.5px;font-weight:600;color:var(--muted);border-top:3px solid var(--border-strong);padding-top:6px}.steps li.done{border-top-color:#1e9e54;color:var(--text-2)}.steps li.current{border-top-color:var(--primary);color:var(--primary)}.code-input{font-size:22px;letter-spacing:.35em;text-align:center;font-family:Consolas,Cascadia Mono,monospace;padding:10px}.qr{display:flex;gap:16px;align-items:center;flex-wrap:wrap}.qr img{width:176px;height:176px;border:1px solid var(--border);border-radius:6px;background:#fff;padding:6px}.secret{font-family:Consolas,Cascadia Mono,monospace;font-size:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:8px 10px;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all}.codes{display:grid;grid-template-columns:1fr 1fr;gap:6px 14px;font-family:Consolas,Cascadia Mono,monospace;font-size:14px;background:var(--surface-2);border:1px solid var(--border);border-radius:5px;padding:12px 14px}.center-page{min-height:100%;display:flex;align-items:center;justify-content:center;padding:24px}.center-card{max-width:520px;width:100%;text-align:center}.center-card .card-body{padding:28px}.center-card h1{margin-bottom:8px}.chart{margin:0}.chart-top{display:flex;justify-content:space-between;align-items:center;gap:12px;margin-bottom:4px}.legend{display:flex;gap:14px;list-style:none;margin:0;padding:0;font-size:12.5px;color:var(--text-2)}.legend li,.split-legend span,.chart-tip span{display:inline-flex;align-items:center;gap:6px}.swatch{width:10px;height:10px;border-radius:2px;display:inline-block;flex:none}.series-1{fill:var(--series-1);background:var(--series-1)}.series-2{fill:var(--series-2);background:var(--series-2)}.chart-plot{position:relative}.chart-plot svg{width:100%;height:auto;display:block;max-height:260px}.chart-plot .grid{stroke:var(--border);stroke-width:1}.chart-plot .axis{stroke:var(--border-strong);stroke-width:1}.chart-plot .tick{font-size:10.5px;fill:var(--muted)}.chart-plot .hit{fill:transparent}.chart-plot .hit-on{fill:var(--blue-50)}.chart-plot g:focus{outline:none}.chart-plot g:focus-visible .hit{fill:var(--blue-50);stroke:var(--focus);stroke-width:2}.chart-tip{position:absolute;top:4px;transform:translate(-50%);background:var(--navy-800);color:#fff;font-size:12px;padding:7px 10px;border-radius:5px;display:flex;flex-direction:column;gap:2px;pointer-events:none;white-space:nowrap;box-shadow:0 4px 14px #0000004d;z-index:2}.hbars{display:flex;flex-direction:column;gap:9px}.hbar-row{display:grid;grid-template-columns:96px 1fr 40px;gap:10px;align-items:center;font-size:12.5px}.hbar-label{color:var(--text-2)}.hbar-track{height:14px;background:var(--surface-2);border-radius:0 4px 4px 0;border-left:1px solid var(--border-strong)}.hbar-fill{display:block;height:100%;background:var(--series-1);border-radius:0 4px 4px 0;min-width:0}.hbar-value{font-weight:600;font-variant-numeric:tabular-nums;text-align:right}.split-bar{display:flex;gap:2px;height:16px;border-radius:4px;overflow:hidden}.split-a{background:#1e9e54}.split-b{background:#c9372c}.split-legend{display:flex;gap:18px;margin-top:8px;font-size:12.5px;color:var(--text-2);flex-wrap:wrap}.big-figure{font-size:30px;font-weight:600;line-height:1.1;font-variant-numeric:tabular-nums}.detail{display:grid;grid-template-columns:minmax(0,2fr) minmax(300px,1fr);gap:16px;align-items:start}.detail>div>.card:last-child{margin-bottom:0}.checklist{list-style:none;padding:0;margin:0}.checklist li{display:flex;align-items:flex-start;gap:10px;padding:6px 0;border-bottom:1px solid var(--border)}.checklist li:last-child{border-bottom:0}.checklist .done-text{text-decoration:line-through;color:var(--muted)}.checklist .grow,.grow{flex:1;min-width:0}.timeline{list-style:none;margin:0;padding:0 0 0 6px}.timeline li{position:relative;padding:0 0 14px 20px;border-left:2px solid var(--border)}.timeline li:last-child{border-left-color:transparent;padding-bottom:0}.timeline li:before{content:"";position:absolute;left:-6px;top:3px;width:10px;height:10px;border-radius:50%;background:var(--surface);border:2px solid var(--primary)}.timeline-head{font-size:13px}.timeline-meta{font-size:12px;color:var(--muted)}.timeline-data{font-size:12.5px;color:var(--text-2);margin-top:2px;overflow-wrap:anywhere}.comment{border:1px solid var(--border);border-radius:6px;padding:10px 12px;background:var(--surface)}.comment+.comment{margin-top:10px}.comment-INSTRUCTION{border-left:4px solid var(--primary)}.comment-INTERNAL_NOTE{border-left:4px solid #d99200;background:var(--warn-bg)}.comment-head{display:flex;gap:8px;align-items:center;flex-wrap:wrap;font-size:12.5px;margin-bottom:4px}.comment-reply{margin-left:22px}.plan{border:1px solid var(--border);border-radius:6px;padding:12px 14px}.plan+.plan{margin-top:12px}.plan ol{margin:6px 0;padding-left:20px}.matrix th.role-col{text-align:center;white-space:normal;min-width:96px;text-transform:none;font-size:12px;letter-spacing:0}.matrix td.role-col{text-align:center}.matrix td:first-child{min-width:260px}.level-row{display:grid;grid-template-columns:60px 150px 1fr auto;gap:10px;align-items:center;padding:6px 0;border-bottom:1px solid var(--border)}.split-2{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}@media(max-width:1180px){.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.detail{grid-template-columns:minmax(0,1fr)}}@media(max-width:1023px){.shell{grid-template-columns:1fr}.sidebar{position:fixed;left:0;top:0;bottom:0;width:var(--sidebar-w);transform:translate(-100%);transition:transform .18s ease;box-shadow:4px 0 24px #0000004d}.shell.nav-open .sidebar{transform:none}.shell.nav-open .scrim{display:block;position:fixed;top:0;right:0;bottom:0;left:0;background:#07142c80;z-index:25;border:0;width:100%}.menu-btn{display:inline-flex}.topbar-tag{display:none}.content{padding:16px 14px 32px}.grid-2,.grid-3,.split-2{grid-template-columns:minmax(0,1fr)}.auth{grid-template-columns:1fr}.auth-side{padding:24px}.auth-side h1{font-size:24px;margin-top:16px}.auth-foot{display:none}}@media(max-width:640px){.form-grid,.form-grid-3{grid-template-columns:minmax(0,1fr)}.topbar-user span,.live-text{display:none}.level-row{grid-template-columns:1fr 1fr}}@media print{.sidebar,.topbar,.page-actions,.toasts{display:none!important}.shell{display:block}.card{box-shadow:none;break-inside:avoid}}
