:root{--bg:#0b1524;--panel:#122236;--raised:#16273c;--bar:#0f1c2d;--border:#25374e;--border-hi:#33475f;--text:#e8eef4;--muted:#93a4b7;--dim:#61748c;--brand:#f50233;--brand-tx:#ff7d92;--brand-dim:#f5023329;--go:#5aa9ff;--ok:#46c05c;--warn:#f5b13a;--late:#f50233;--run:var(--go);--idle:#61748c;--late-fill:#e00230;--ok-tx:#86efac;--go-tx:#93c5fd;--pb:#a970ff;--dt-fill:#1a2b40;--dt-hatch-maintenance:#f0bf2a;--dt-hatch-break:#2f6fe0;--dt-hatch-weekend:#ff7a18;--dt-hatch-other:#c58af9;--font-display:"Saira Condensed", "Saira", system-ui, sans-serif;--font-ui:"Saira", system-ui, sans-serif;--font-body:"Inter", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Consolas, monospace;--row-h:48px;--block-h:34px;--radius-ctl:6px;--radius-panel:12px;--pad-bar:7px 14px;--pad-toolbar-y:6px;--pad-btn:5px 8px;--fs-btn:11.5px}.floor-light{--bg:#7191b9;--panel:#849ec0;--raised:#7c98bd;--bar:#849ec0;--border:#557cb0;--border-hi:#476d9f;--text:#0d1520;--muted:#1e232b;--dim:#20272f;--go:#1f6fe0;--ok:#1f9d3d;--warn:#c9780a;--idle:#9aa7b4;--brand-tx:#550113;--dt-fill:#486ea1;--dt-hatch-maintenance:#ffd452;--dt-hatch-break:#0b2a5c;--dt-hatch-weekend:#ff8a2b;--dt-hatch-other:#d9a6ff}:where(button,a,input,select,textarea,[tabindex]):focus-visible{outline:2px solid var(--go);outline-offset:2px;border-radius:3px}.andon{--lamp-size:10px;--lamp-color:var(--idle);width:var(--lamp-size);height:var(--lamp-size);background:var(--lamp-color);box-shadow:0 0 calc(var(--lamp-size) * .75) var(--lamp-color);border-radius:50%;flex-shrink:0;display:inline-block;position:relative}.andon:after{content:"";inset:calc(var(--lamp-size) * -.3);border:1px solid var(--lamp-color);opacity:.45;border-radius:50%;position:absolute}.andon--onTrack{--lamp-color:var(--ok)}.andon--running{--lamp-color:var(--run)}.andon--atRisk{--lamp-color:var(--warn)}.andon--late{--lamp-color:var(--late)}.andon--done{--lamp-color:var(--ok)}.andon--idle{--lamp-color:var(--idle)}@keyframes andon-pulse{0%,to{opacity:1}50%{opacity:.45}}.andon--late{animation:1.2s ease-in-out infinite andon-pulse}@media (prefers-reduced-motion:reduce){.andon--late{animation:none}}.andon-chip{font-family:var(--font-ui);color:var(--muted);white-space:nowrap;align-items:center;gap:6px;font-size:11.5px;display:inline-flex}.andon-chip__count{font-family:var(--font-mono);color:var(--text);font-weight:600}body{margin:0}button{transition:filter .12s}button:hover{filter:brightness(.85)}button:active{filter:brightness(.6)}button:disabled{filter:none}@keyframes live-pulse{0%,to{opacity:1}50%{opacity:.35}}.live-dot{animation:1.6s ease-in-out infinite live-pulse}@media (prefers-reduced-motion:reduce){.live-dot{animation:none}}p{margin:0}.rct-header-root{z-index:100;position:sticky;top:0;background:var(--bar)!important;border-bottom:1px solid var(--border)!important}.rct-calendar-header{border:none!important;overflow:hidden!important}.rct-dateHeader,.rct-dateHeader-primary{box-sizing:border-box;font-family:var(--font-mono);letter-spacing:.02em;white-space:nowrap!important;text-overflow:ellipsis!important;background:var(--bar)!important;border-left:1px solid var(--border)!important;color:var(--muted)!important;border-bottom:none!important;padding:0 4px!important;font-size:11px!important;line-height:1.1!important;overflow:hidden!important}.rct-dateHeader>div,.rct-dateHeader-primary>div,.rct-dateHeader>span,.rct-dateHeader-primary>span{max-width:100%;white-space:nowrap!important;text-overflow:ellipsis!important;overflow:hidden!important}.rct-dateHeader-primary{font-family:var(--font-display);text-transform:uppercase;letter-spacing:.04em;font-weight:700;color:var(--text)!important}.rct-horizontal-lines .rct-hl-even{background:var(--panel)!important;border-bottom:1px solid var(--border)!important}.rct-horizontal-lines .rct-hl-odd{background:var(--raised)!important;border-bottom:1px solid var(--border)!important}.rct-vertical-lines .rct-vl{border-left:1px solid var(--border)!important}.rct-vertical-lines .rct-vl.rct-day-6,.rct-vertical-lines .rct-vl.rct-day-0{background:#0000001f!important}.rct-sidebar,.rct-sidebar-row{font-family:var(--font-display);background:var(--panel)!important;border-bottom:1px solid var(--border)!important;color:var(--text)!important}.rct-sidebar{border-right:1px solid var(--border)!important}input[type=date],input[type=time],input[type=datetime-local],input[type=month],input[type=week]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;filter:invert(35%)sepia(8%)saturate(420%)hue-rotate(178deg)}input[type=time]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;filter:invert(35%)sepia(8%)saturate(420%)hue-rotate(178deg)}input[type=datetime-local]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;filter:invert(35%)sepia(8%)saturate(420%)hue-rotate(178deg)}input[type=month]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;filter:invert(35%)sepia(8%)saturate(420%)hue-rotate(178deg)}input[type=week]::-webkit-calendar-picker-indicator{cursor:pointer;opacity:1;filter:invert(35%)sepia(8%)saturate(420%)hue-rotate(178deg)}.react-datepicker-wrapper,.react-datepicker__input-container{width:100%;display:block}.react-datepicker-popper{z-index:11000!important}.react-datepicker{border:1px solid var(--border-hi);background:var(--panel);color:var(--text);border-radius:12px;font-family:inherit;font-size:13px;overflow:hidden;box-shadow:0 1px 2px #0f172a0f,0 8px 16px #0f172a1f,0 24px 48px #0f172a38}.react-datepicker__triangle{display:none}.react-datepicker__header{background:var(--raised);border-bottom:1px solid var(--border);padding-top:12px;padding-bottom:8px}.react-datepicker__current-month,.react-datepicker-time__header,.react-datepicker-year-header{color:var(--text);letter-spacing:.02em;margin-bottom:6px;font-size:13px;font-weight:700}.react-datepicker__day-name{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;width:1.95rem;margin:.1rem;font-size:11px;font-weight:600}.react-datepicker__navigation{top:12px}.react-datepicker__navigation-icon:before{border-color:var(--muted);border-width:2px 2px 0 0}.react-datepicker__navigation:hover .react-datepicker__navigation-icon:before{border-color:var(--text)}.react-datepicker__month-container{padding:2px 4px 6px}.react-datepicker__month{margin:.25rem}.react-datepicker__day-names{margin-bottom:0;padding:2px 0 0}.react-datepicker__week{white-space:nowrap}.react-datepicker__day{color:var(--text);border-radius:7px;width:1.95rem;height:1.95rem;margin:.1rem;font-weight:500;line-height:1.95rem;transition:background .12s,color .12s}.react-datepicker__day:hover{background:var(--border);color:var(--text)}.react-datepicker__day--outside-month{color:var(--border-hi)}.react-datepicker__day--today{color:var(--go);background:var(--raised);box-shadow:inset 0 0 0 1.5px var(--go);font-weight:700}.react-datepicker__day--keyboard-selected,.react-datepicker__day--selected,.react-datepicker__day--in-selecting-range,.react-datepicker__day--in-range{background:var(--go);color:#fff;font-weight:700;box-shadow:0 2px 6px #1e3a5f59}.react-datepicker__day--selected:hover,.react-datepicker__day--keyboard-selected:hover{background:var(--go);color:#fff;filter:brightness(.85)}.react-datepicker__day--disabled{color:var(--border-hi);cursor:not-allowed}.rcdp-shell{flex-direction:column;display:flex!important}.rcdp-shell-body{align-items:stretch;display:flex}.rcdp-cal-pane{flex:none;position:relative}.rcdp-shell-footer{background:var(--raised);border-top:1px solid var(--border);justify-content:flex-end;align-items:center;gap:8px;padding:8px 10px;display:flex}.rcdp-ok-btn{background:var(--go);color:#fff;cursor:pointer;border:none;border-radius:6px;padding:6px 18px;font-family:inherit;font-size:12px;font-weight:600;transition:background .1s}.rcdp-time-cols{border-left:1px solid var(--border);background:var(--raised);display:flex}.rcdp-time-col-wrap{flex-direction:column;min-width:0;min-height:0;display:flex}.rcdp-time-col-wrap+.rcdp-time-col-wrap{border-left:1px solid var(--border)}.rcdp-time-col-header{background:var(--raised);color:var(--muted);text-transform:uppercase;letter-spacing:.04em;text-align:center;border-bottom:1px solid var(--border);padding:14px 0 8px;font-size:11px;font-weight:600}.rcdp-time-col{scrollbar-width:none;-ms-overflow-style:none;flex:1 1 0;width:50px;min-height:0;padding:4px 0;overflow-y:auto}.rcdp-time-col::-webkit-scrollbar{display:none}.rcdp-time-col-mer{padding:6px 0;overflow-y:visible}.rcdp-time-cell{width:100%;color:var(--text);text-align:center;cursor:pointer;background:0 0;border:none;padding:6px 4px;font-family:inherit;font-size:13px;transition:background .1s,color .1s;display:block}.rcdp-time-cell:hover{background:var(--border)}.rcdp-time-cell.is-selected{background:var(--go);color:#fff;font-weight:700}.rcdp-time-cell:focus{outline:none}.rcdp-time-col-mer .rcdp-time-cell{padding:10px 4px}.react-calendar-timeline *{box-sizing:border-box}.react-calendar-timeline .rct-outer{white-space:nowrap;display:block;overflow:hidden}.react-calendar-timeline .rct-scroll{white-space:normal;vertical-align:top;-ms-touch-action:none;touch-action:none;display:inline-block;overflow:scroll hidden}.react-calendar-timeline .rct-item:hover{z-index:88}.react-calendar-timeline .rct-item .rct-item-content{border-radius:2px;height:100%;padding:0 6px;display:inline-block;position:sticky;left:0;overflow:hidden}.react-calendar-timeline .rct-sidebar{white-space:normal;vertical-align:top;box-sizing:border-box;border-right:1px solid #bbb;display:inline-block;position:relative;overflow:hidden}.react-calendar-timeline .rct-sidebar.rct-sidebar-right{border-left:1px solid #bbb;border-right:0}.react-calendar-timeline .rct-sidebar .rct-sidebar-row{white-space:nowrap;text-overflow:ellipsis;box-sizing:border-box;border-bottom:1px solid #bbb;margin:0;padding:0 4px;overflow:hidden}.react-calendar-timeline .rct-sidebar .rct-sidebar-row.rct-sidebar-row-odd{background:#0000000d}.react-calendar-timeline .rct-sidebar .rct-sidebar-row.rct-sidebar-row-even{background:0 0}.react-calendar-timeline .rct-vertical-lines .rct-vl{z-index:30;border-left:1px solid #bbb;position:absolute}.react-calendar-timeline .rct-vertical-lines .rct-vl.rct-vl-first{border-left-width:2px}.react-calendar-timeline .rct-vertical-lines .rct-vl.rct-day-6,.react-calendar-timeline .rct-vertical-lines .rct-vl.rct-day-0{background:#faf6e180}.react-calendar-timeline .rct-horizontal-lines{-webkit-user-select:none;user-select:none;-moz-user-select:-moz-none}.react-calendar-timeline .rct-horizontal-lines .rct-hl-even,.react-calendar-timeline .rct-horizontal-lines .rct-hl-odd{box-sizing:border-box;z-index:40;border-bottom:1px solid #bbb}.react-calendar-timeline .rct-horizontal-lines .rct-hl-odd{background:#0000000d}.react-calendar-timeline .rct-horizontal-lines .rct-hl-even{background:0 0}.react-calendar-timeline .rct-cursor-line{z-index:51;background:#2196f3;width:2px;position:absolute}.react-calendar-timeline .rct-dateHeader{cursor:pointer;background-color:#f0f0f0;border-bottom:1px solid #bbb;border-left:2px solid #bbb;justify-content:center;align-items:center;height:100%;font-size:14px;display:flex}.react-calendar-timeline .rct-dateHeader-primary{background-color:initial;color:#fff;border-left:1px solid #bbb;border-right:1px solid #bbb}.react-calendar-timeline .rct-header-root{background:#c52020;border-bottom:1px solid #bbb}.react-calendar-timeline .rct-calendar-header{border:1px solid #bbb}.brand-logo{flex-shrink:0;align-items:center;display:inline-flex}.brand-logo img{max-width:100%;display:block}.brand-logo--dark img{mix-blend-mode:lighten}.brand-logo--light{background:#0b1524;border-radius:8px;padding:6px 10px}.auth-root{min-height:100vh;font-family:var(--font-body);color:var(--text)}.auth-shell{background:radial-gradient(ellipse at 50% 0%, var(--brand-dim), transparent 60%), var(--bg);justify-content:center;align-items:center;min-height:100vh;padding:2.5rem 1.5rem;display:flex}.auth-card{background:var(--panel);border:1px solid var(--border);border-radius:var(--radius-panel);width:100%;max-width:440px;padding:2.75rem 2rem 2rem;position:relative;overflow:hidden;box-shadow:0 30px 80px #00000080}.auth-card:before{content:"";background:var(--brand);height:4px;position:absolute;top:0;left:0;right:0}.auth-card .brand{align-items:center;margin-bottom:1.75rem;display:flex}.auth-card h1{font-family:var(--font-display);letter-spacing:-.01em;color:var(--text);margin:0 0 .4rem;font-size:1.5rem;font-weight:700}.auth-card .subtitle{color:var(--muted);margin:0 0 1.25rem;font-size:.92rem;line-height:1.5}.field{margin-bottom:1rem}.field label{letter-spacing:.08em;text-transform:uppercase;color:var(--muted);margin-bottom:.4rem;font-size:.75rem;font-weight:600;display:block}.field input,.field select{background:var(--raised);border:1px solid var(--border-hi);border-radius:var(--radius-ctl);width:100%;color:var(--text);padding:.7rem .85rem;font-family:inherit;font-size:.95rem;transition:border-color .12s,box-shadow .12s}.field input::placeholder{color:var(--muted)}.field input:focus,.field select:focus{border-color:var(--go);outline:none;box-shadow:0 0 0 3px #5aa9ff40}.field code{background:var(--raised);border:1px solid var(--border);font-family:var(--font-mono);color:var(--text);border-radius:4px;padding:.1rem .4rem;font-size:.85rem}.auth-card .btn{width:100%;font-family:var(--font-ui);border-radius:var(--radius-ctl);border:1px solid var(--border-hi);background:var(--raised);color:var(--text);cursor:pointer;justify-content:center;align-items:center;gap:.5rem;margin-top:.25rem;padding:.75rem 1.2rem;font-size:.92rem;font-weight:600;transition:filter .12s,border-color .12s;display:inline-flex}.auth-card .btn:disabled{opacity:.6;cursor:not-allowed}.auth-card .btn:hover:not(:disabled){filter:brightness(1.08)}.auth-card .btn:active:not(:disabled){filter:brightness(.92)}.auth-card .btn-primary{background:var(--go);color:#0b1524;border-color:#0000}.auth-card input[autocomplete=one-time-code],.auth-card input[inputmode=numeric]{font-family:var(--font-mono);letter-spacing:.4em;text-align:center;padding-right:calc(10px - .4em);font-size:1.15rem}.auth-message{background:var(--brand-dim);border:1px solid var(--brand);border-radius:var(--radius-ctl);color:var(--text);margin-top:.85rem;padding:.7rem .85rem;font-size:.88rem;line-height:1.4;display:none}.auth-message.visible{display:block}.auth-meta{color:var(--muted);justify-content:space-between;margin-top:1rem;font-size:.86rem;display:flex}.auth-meta a{color:var(--go)}.auth-meta a:hover{text-decoration:underline}.auth-back{color:var(--muted);align-items:center;gap:.3rem;margin-top:1.25rem;font-size:.84rem;display:inline-flex}.auth-back:hover{color:var(--go)}
