:root{color:#182235;background:#edf1f6;font:16px/1.5 Inter,ui-sans-serif,system-ui,sans-serif}*{box-sizing:border-box}body{min-height:100svh;margin:0}#app{min-height:100svh}button,select{font:inherit}.cockpit{max-width:1280px;margin:0 auto;padding:2rem 1.25rem 3rem}.cockpit__header{justify-content:space-between;align-items:end;gap:1rem;margin-bottom:1.25rem;display:flex}.cockpit__header h1{letter-spacing:-.04em;margin:0;font-size:clamp(1.75rem,4vw,2.5rem)}.eyebrow{color:#496079;letter-spacing:.12em;text-transform:uppercase;margin:0 0 .3rem;font-size:.8rem;font-weight:700}.version-banner,.status,.empty-state,.error{border-radius:.75rem;padding:.85rem 1rem}.version-banner{color:#153c78;background:#e0ebff;margin:1rem 0}.status{color:#0b5a3b;background:#dff7ec;margin:1rem 0}.empty-state{color:#496079;background:#fff;border:1px dashed #a9b8ca}.error{color:#8a2620;background:#fee6e5;margin:1rem 0}.rule-switcher{background:#fff;border-radius:.9rem;flex-wrap:wrap;align-items:center;gap:.75rem;padding:1rem;display:flex;box-shadow:0 8px 26px #18223514}.rule-switcher label{font-weight:700}.rule-switcher select,.rule-switcher button{border-radius:.5rem;min-height:2.5rem;padding:0 .75rem}.rule-switcher select{background:#fff;border:1px solid #a9b8ca}.rule-switcher button{color:#fff;cursor:pointer;background:#1263d6;border:0;font-weight:700}.rule-switcher button:disabled{cursor:wait;opacity:.6}.gantt{background:#fff;border-radius:.9rem;margin-top:1.25rem;overflow-x:auto;box-shadow:0 8px 26px #18223514}.gantt svg{width:100%;min-width:760px;display:block}.gantt__heading{margin:0;padding:1rem 1rem 0;font-size:1.1rem}.gantt__work-centre{fill:#f3f6fa}.gantt__machine{fill:#fff;stroke:#d9e1ea}.gantt__label{fill:#26364b;font-size:13px;font-weight:650}.gantt__axis{fill:#5c6d80;font-size:12px}.gantt__bar-label{fill:#fff;pointer-events:none;font-size:11px;font-weight:700}.warnings{background:#fff;border-radius:.9rem;margin-top:1.25rem;padding:1rem;box-shadow:0 8px 26px #18223514}.warnings h2{margin:0 0 .75rem;font-size:1.1rem}.warnings ul{gap:.75rem;margin:0;padding:0;list-style:none;display:grid}.warning{background:#fff9ed;border-left:4px solid #d87b19;padding:.75rem 0 .75rem .85rem}.warning p{margin:0 0 .3rem}.warning dl{grid-template-columns:max-content 1fr;gap:.2rem .65rem;margin:0;font-size:.9rem;display:grid}.warning dt{color:#5c6d80}.warning dd{margin:0}@media (width<=620px){.cockpit{padding:1.25rem .75rem 2rem}.cockpit__header{flex-direction:column;align-items:start}}
