:root{--vai-ink: #192d38;--vai-ink-2: #2e4450;--vai-steel: #5d707c;--vai-pale-steel: #bedae5;--vai-pale-steel-tint: #ebf4f8;--vai-white: #ffffff;--vai-indigo: #3f32f1;--vai-indigo-dark: #3228c1;--vai-indigo-tint: #e8e6fe;--vai-magenta: #c300ff;--vai-magenta-tint: #f8e5ff;--vai-green: #05e560;--vai-green-dark: #037e35;--vai-green-tint: #dcfce7;--vai-amber: #d97706;--vai-amber-tint: #fef3c7;--vai-lime: #b9ff00;--font-sans: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, sans-serif;--font-mono: "JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace}*{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--font-sans);background-color:#f4f8fa;color:var(--vai-ink);line-height:1.45;font-size:13.5px;-webkit-font-smoothing:antialiased}.masthead{background:var(--vai-ink);color:var(--vai-white);padding:12px 24px;display:flex;align-items:center;justify-content:space-between;border-bottom:3px solid var(--vai-indigo);position:sticky;top:0;z-index:100}.brand-group{display:flex;align-items:center;gap:14px}.brand-badge{background:var(--vai-lime);color:var(--vai-ink);font-family:var(--font-mono);font-weight:800;font-size:12px;padding:4px 8px;border-radius:3px;letter-spacing:.04em}.brand-title{font-size:15px;font-weight:700;letter-spacing:-.01em}.brand-sub{font-size:11.5px;color:var(--vai-pale-steel);font-family:var(--font-mono)}.kpi-strip{display:flex;align-items:center;gap:18px}.kpi-pill{background:var(--vai-ink-2);border:1px solid #3c5665;padding:6px 12px;border-radius:4px;text-align:right}.kpi-pill .lbl{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--vai-pale-steel);display:block}.kpi-pill .val{font-family:var(--font-mono);font-size:14px;font-weight:700;color:var(--vai-white)}.kpi-pill.highlight{background:var(--vai-indigo);border-color:#6358f5}.kpi-pill.highlight .val{color:var(--vai-lime)}.nav-tabs{background:var(--vai-white);border-bottom:1px solid var(--vai-pale-steel);padding:0 24px;display:flex;gap:6px;overflow-x:auto}.nav-tab{background:transparent;border:none;border-bottom:3px solid transparent;padding:12px 16px;font-family:var(--font-sans);font-size:13px;font-weight:600;color:var(--vai-steel);cursor:pointer;display:flex;align-items:center;gap:8px;white-space:nowrap;transition:all .15s ease}.nav-tab:hover{color:var(--vai-ink);background:var(--vai-pale-steel-tint)}.nav-tab.active{color:var(--vai-indigo-dark);border-bottom-color:var(--vai-indigo);background:var(--vai-indigo-tint)}.tab-num{font-family:var(--font-mono);font-size:11px;background:var(--vai-ink);color:var(--vai-white);padding:1px 6px;border-radius:3px}.nav-tab.active .tab-num{background:var(--vai-indigo)}.config-ribbon{background:var(--vai-pale-steel-tint);border-bottom:1px solid var(--vai-pale-steel);padding:10px 24px;display:grid;grid-template-columns:repeat(auto-fit,minmax(175px,1fr));gap:12px;align-items:end}.ctrl-field{display:flex;flex-direction:column;gap:4px}.ctrl-field label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--vai-ink-2)}.ctrl-field select,.ctrl-field input{font-family:var(--font-sans);font-size:12.5px;font-weight:600;padding:6px 8px;border:1px solid var(--vai-steel);border-radius:4px;background:var(--vai-white);color:var(--vai-ink)}.dim-inputs{display:flex;gap:4px;align-items:center}.dim-inputs input{width:64px;font-family:var(--font-mono);text-align:center}.workspace{padding:20px 24px 48px;max-width:1680px;margin:0 auto}.section-header{display:flex;justify-content:space-between;align-items:flex-end;margin-bottom:16px;padding-bottom:10px;border-bottom:2px solid var(--vai-ink)}.section-header h2{font-size:18px;font-weight:800;color:var(--vai-ink)}.section-header p{font-size:12.5px;color:var(--vai-steel);margin-top:2px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}@media(max-width:1100px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.card{background:var(--vai-white);border:1px solid var(--vai-pale-steel);border-radius:6px;padding:16px;box-shadow:0 2px 6px #192d380a}.card-title{font-size:13.5px;font-weight:700;color:var(--vai-ink);margin-bottom:10px;display:flex;justify-content:space-between;align-items:center;padding-bottom:8px;border-bottom:1px solid var(--vai-pale-steel-tint)}.table-wrap{overflow-x:auto;border:1px solid var(--vai-pale-steel);border-radius:6px;background:var(--vai-white)}table.data-table{width:100%;border-collapse:collapse;font-size:12px}table.data-table th{background:var(--vai-ink);color:var(--vai-white);font-weight:600;text-align:left;padding:8px 10px;font-size:11px;text-transform:uppercase;letter-spacing:.04em;white-space:nowrap}table.data-table th.num,table.data-table td.num{text-align:right;font-family:var(--font-mono)}table.data-table td{padding:7px 10px;border-bottom:1px solid #e3eef3;vertical-align:middle}table.data-table tr:hover td{background:#f2f8fb}table.data-table tr.stage-row td{background:var(--vai-pale-steel-tint);font-weight:700;color:var(--vai-ink);border-top:2px solid var(--vai-steel);border-bottom:1px solid var(--vai-steel);padding:9px 10px}table.data-table tr.critical-row td:first-child{border-left:4px solid var(--vai-magenta)}table.data-table tr.total-row td{background:var(--vai-ink);color:var(--vai-white);font-weight:700;font-family:var(--font-mono);padding:10px}.badge{display:inline-block;padding:2px 6px;font-size:10.5px;font-weight:700;font-family:var(--font-mono);border-radius:3px;white-space:nowrap}.badge-crit{background:var(--vai-magenta-tint);color:#8f00bb;border:1px solid var(--vai-magenta)}.badge-qc{background:var(--vai-indigo-tint);color:var(--vai-indigo-dark);border:1px solid var(--vai-indigo)}.badge-ok{background:var(--vai-green-tint);color:var(--vai-green-dark);border:1px solid var(--vai-green-dark)}.badge-warn{background:var(--vai-amber-tint);color:var(--vai-amber);border:1px solid var(--vai-amber)}.gantt-cell{min-width:240px;position:relative;height:22px;background:repeating-linear-gradient(to right,#f7fbfd,#f7fbfd 19px,#e1eef4 20px);border-radius:3px}.gantt-bar{position:absolute;top:3px;height:16px;border-radius:3px;font-size:9.5px;font-family:var(--font-mono);color:#fff;display:flex;align-items:center;padding:0 4px;white-space:nowrap;overflow:hidden;box-shadow:0 1px 2px #0003}.mono{font-family:var(--font-mono)}
