.login-api-notice{width:100%;margin:0 0 1rem;padding:.75rem 1rem;border:1px solid rgba(220,165,70,.75);background:#73552359;color:#fad791;font-size:.85rem;line-height:1.45}.login-main{align-items:center;justify-content:center;padding:1.5rem}.login-shell{width:min(34rem,100%);padding:2rem 1.5rem;border:1px solid var(--color-deep-gray);background:#181c22b8;display:flex;flex-direction:column;align-items:center;gap:1rem}.login-brand{display:flex;flex-direction:column;align-items:center;gap:.5rem}.login-brand .sparkmate-logo{height:24px;width:auto}.login-btn{min-width:16rem;min-height:2.5rem;font-size:.82rem;letter-spacing:.08em;text-transform:uppercase}@media (max-width: 720px){.login-main{padding:1rem}.login-btn{min-width:0;width:100%}.login-shell{padding:1.5rem 1rem}}.sidebar{--sidebar-inset: 14px;flex-shrink:0;width:260px;min-width:260px;height:100%;min-height:0;display:flex;flex-direction:column;overflow-x:hidden;overflow-y:auto;background:var(--color-sidebar);border-right:1px solid var(--color-deep-gray);box-sizing:border-box}.sidebar-brand{padding:1.25rem var(--sidebar-inset) 1.5rem;border-bottom:1px solid var(--color-deep-gray)}.sidebar-brand-top{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.sidebar-brand .sparkmate-logo{display:block;height:22px;width:auto;max-width:100%;object-fit:contain;object-position:left center}.sidebar-close-btn{display:none;align-items:center;justify-content:center;flex-shrink:0;width:2rem;height:2rem;padding:0;border:1px solid var(--color-deep-gray);background:transparent;color:var(--color-gray);cursor:pointer}.sidebar-close-btn svg{width:1.1rem;height:1.1rem}.sidebar-close-btn:hover{color:var(--color-yellow);border-color:#f1fe0673}.sidebar-presence{margin-top:.85rem;margin-left:calc(-1 * var(--sidebar-inset));margin-right:calc(-1 * var(--sidebar-inset));padding-top:.85rem;padding-left:var(--sidebar-inset);padding-right:var(--sidebar-inset);border-top:1px solid var(--color-deep-gray)}.sidebar-presence-count{margin:0 0 .5rem;font-size:.65rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--color-dark-gray)}.sidebar-presence-stack{display:flex;flex-direction:row;flex-wrap:wrap;align-items:center;gap:.35rem}.sidebar-presence-slot{position:relative;display:inline-flex;margin-left:0;flex-shrink:0;border-radius:0}.sidebar-presence-slot.is-self .user-avatar{box-shadow:0 0 0 2px var(--color-yellow)}.sidebar-presence-overflow{margin-left:.35rem;padding:.15rem .45rem;font-size:.65rem;font-weight:700;letter-spacing:.04em;color:var(--color-gray);border:1px solid var(--color-deep-gray);background:#23272de6}.sidebar-reactor-status{display:grid;gap:0rem;margin-top:1.5rem;margin-left:calc(-1 * var(--sidebar-inset));margin-right:calc(-1 * var(--sidebar-inset));padding-top:1.5rem;padding-left:var(--sidebar-inset);padding-right:var(--sidebar-inset);border-top:1px solid var(--color-deep-gray)}.sidebar-reactor-line{display:flex;align-items:center;gap:.45rem;min-width:0;font-size:.72rem;line-height:1.35}.sidebar-reactor-line--link{width:100%;margin:0;padding:.2rem 0;border:none;background:transparent;text-align:left;cursor:pointer;border-radius:4px;color:var(--color-dark-gray);font-family:inherit;text-decoration:none;transition:color .15s ease}.sidebar-reactor-line--link:hover{color:var(--color-gray)}.sidebar-reactor-line--link:focus-visible{outline:2px solid var(--color-yellow);outline-offset:1px}.sidebar-reactor-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:1.65rem;padding:.12rem .35rem;font-size:.62rem;font-weight:800;letter-spacing:.06em;text-transform:uppercase}.sidebar-reactor-badge--r1{color:var(--color-black);background:var(--color-yellow)}.sidebar-reactor-badge--r2{color:#2d1808;background:#ff9e2e}.sidebar-reactor-status-dot{flex-shrink:0;width:.45rem;height:.45rem;border-radius:50%;background:var(--color-deep-gray)}.sidebar-reactor-status-dot--ongoing{background:#dca546}.sidebar-reactor-detail{color:inherit;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-reactor-code{font-weight:700;color:inherit;letter-spacing:.03em}.sidebar-post-treatment-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:999px;background:#5a2d82d9;border:1px solid rgba(165,105,220,.75);color:#dcb9ff;font-size:.62rem;font-weight:700;line-height:1}.sidebar-maintenance-late-badge{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:999px;background:#dc3232;border:1px solid rgba(255,130,130,.75);color:#ffebeb;font-size:.62rem;font-weight:700;line-height:1}.sidebar-nav{flex:1;padding:.75rem var(--sidebar-inset);display:flex;flex-direction:column;gap:2px}.sidebar-nav-group,.sidebar-nav-children{display:flex;flex-direction:column;gap:2px}.sidebar-nav-cta{display:flex;align-items:center;gap:.65rem;width:100%;margin:0 0 .65rem;padding:.72rem .85rem;border:none;border-radius:0;background:var(--color-yellow);color:var(--color-black);font-family:inherit;font-size:.68rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;text-align:left;cursor:pointer;box-sizing:border-box}.sidebar-nav-cta:hover{filter:brightness(1.05)}.sidebar-nav-cta.is-active{box-shadow:inset 0 0 0 2px var(--color-black)}.sidebar-nav-cta .sidebar-icon{width:20px;height:20px;flex-shrink:0;color:var(--color-black);opacity:1}.sidebar-nav-cta-label{flex:1;line-height:1.35}.sidebar-nav-cta-arrow{margin-left:auto;font-size:.88rem;line-height:1;font-weight:700}.sidebar-nav-bottom-links{margin-top:auto;display:flex;flex-direction:column;gap:.45rem;padding-top:.7rem}.sidebar-nav-cta--secondary{background:#5d616659;color:var(--color-gray)}.sidebar-nav-cta--secondary .sidebar-icon{color:var(--color-gray)}.sidebar-nav-cta--secondary:hover{filter:brightness(1.08)}.sidebar-link{position:relative;display:flex;align-items:center;gap:.75rem;width:100%;margin:0;padding:.65rem .75rem .65rem 12px;border:none;border-radius:0;background:transparent;color:var(--color-dark-gray);font-family:inherit;font-size:.7rem;font-weight:500;letter-spacing:.1em;text-transform:uppercase;text-align:left;cursor:pointer;text-decoration:none}.sidebar-link:hover{color:var(--color-gray)}.sidebar-link.is-active{color:var(--color-white);font-weight:700}.sidebar-link-rail{position:absolute;left:0;top:0;bottom:0;width:3px;background:transparent;border-radius:0}.sidebar-link.is-active .sidebar-link-rail{background:var(--color-yellow)}.sidebar-icon{width:20px;height:20px;flex-shrink:0;opacity:.85}.sidebar-link.is-active .sidebar-icon{color:var(--color-white);opacity:1}.sidebar-link-label{flex:1;line-height:1.35}.sidebar-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.25rem;height:1.25rem;padding:0 .3rem;border-radius:999px;color:#fff;font-size:.6rem;font-weight:700;letter-spacing:0;text-transform:none;line-height:1;flex-shrink:0}.sidebar-badge--late{background:#dc3232;border:1px solid rgba(255,130,130,.75);color:#ffebeb}.sidebar-badge--post-treatment{background:#5a2d82f2;border:1px solid rgba(165,105,220,.75);color:#dcb9ff}.sidebar-footer{padding:1rem var(--sidebar-inset) 1.25rem;border-top:1px solid var(--color-deep-gray)}.sidebar-user{display:flex;align-items:center;gap:.75rem;margin-bottom:1rem}.sidebar-user .user-avatar{flex-shrink:0}.sidebar-user-text{min-width:0}.sidebar-user-name{font-size:.8125rem;font-weight:600;color:var(--color-white);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-email{font-size:.7rem;color:var(--color-dark-gray);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-signout{display:inline-flex;align-items:center;gap:.5rem;padding:0;border:none;background:none;color:var(--color-dark-gray);font-family:inherit;font-size:.7rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.sidebar-signout:hover{color:var(--color-gray)}.sidebar-icon-sm{width:16px;height:16px}@media (max-width: 960px){.sidebar{position:fixed;left:0;top:0;bottom:0;z-index:220;width:min(260px,88vw);min-width:0;transform:translate(-105%);transition:transform .2s ease;border-right:1px solid var(--color-deep-gray);box-shadow:none}.sidebar.is-open{transform:translate(0)}.sidebar-close-btn{display:inline-flex}}.content-section.schedule-shell{max-width:none;flex:1;min-height:0;display:flex;flex-direction:column;margin:0;padding:0}.schedule-toolbar{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:center;gap:.65rem 1rem;padding:.45rem .65rem;margin:0;border-bottom:1px solid var(--color-deep-gray);background:#1a1e24fa}.schedule-toolbar h2{margin:0;margin-right:.25rem;font-size:.65rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-gray);opacity:.85}.schedule-toolbar .btn-secondary{padding:.35rem .6rem;font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase}.schedule-week-nav{display:inline-flex;align-items:center;gap:.5rem}.schedule-week-label{font-size:.8rem;color:var(--color-gray);min-width:12rem;text-align:center}.schedule-projects-panel{margin-bottom:1.5rem;padding:1rem 1.25rem;border:1px solid var(--color-deep-gray);background:#23272d80}.schedule-projects-panel h3{margin:0 0 .75rem;font-size:.75rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-dark-gray)}.schedule-projects-form{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center;margin-bottom:1rem}.schedule-projects-form input,.schedule-projects-form .lead-picker{min-width:12rem;flex:1}.schedule-project-list{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:.5rem}.schedule-project-row{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem 1rem;font-size:.85rem;padding:.5rem 0;border-bottom:1px solid var(--color-deep-gray)}.schedule-project-row:last-child{border-bottom:none}.schedule-project-name{font-weight:600;color:var(--color-white);min-width:8rem}.schedule-project-deadline{font-size:.78rem;color:var(--color-dark-gray)}.schedule-cell--lead{display:flex;flex-direction:column;align-items:stretch;gap:.4rem;overflow:visible}.lead-picker{position:relative;width:100%}.lead-picker-trigger{display:flex;align-items:center;gap:.45rem;width:100%;min-height:2.25rem;padding:.35rem .45rem;border:1px solid var(--color-deep-gray);background:#23272df2;color:var(--color-gray);font-family:inherit;font-size:.78rem;text-align:left;cursor:pointer}.lead-picker-trigger:hover{border-color:var(--color-dark-gray)}.lead-picker-trigger:focus-visible{outline:1px solid var(--color-yellow);outline-offset:1px}.lead-picker-name{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.lead-picker-placeholder{flex:1;color:var(--color-dark-gray);font-size:.75rem}.lead-picker-chevron{width:18px;height:18px;flex-shrink:0;opacity:.7;color:var(--color-dark-gray)}.lead-picker-menu{position:absolute;left:0;right:0;top:calc(100% + 4px);margin:0;padding:.25rem 0;list-style:none;max-height:14rem;overflow-y:auto;border:1px solid var(--color-deep-gray);background:var(--color-sidebar);box-shadow:0 8px 24px #00000073;z-index:30}.lead-picker-option{display:flex;align-items:center;gap:.45rem;width:100%;padding:.4rem .6rem;border:none;background:transparent;color:var(--color-gray);font-family:inherit;font-size:.78rem;text-align:left;cursor:pointer}.lead-picker-option:hover{background:#5d616659}.lead-picker-option-label{flex:1;min-width:0}.status-select{width:100%;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.42rem .45rem;border-width:2px;border-style:solid;border-radius:0;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease}.status-select--production{color:var(--day-status-production-fg);background:var(--day-status-production-bg);border-color:var(--day-status-production-border)}.status-select--production:focus-visible{outline:2px solid var(--day-status-production-focus-ring);outline-offset:1px}.status-select--standby{color:var(--day-status-standby-fg);background:var(--day-status-standby-bg);border-color:var(--day-status-standby-border)}.status-select--standby:focus-visible{outline:2px solid var(--day-status-standby-focus-ring);outline-offset:1px}.status-select--aborted{color:var(--day-status-aborted-fg);background:var(--day-status-aborted-bg);border-color:var(--day-status-aborted-border)}.status-select--aborted:focus-visible{outline:2px solid var(--day-status-aborted-focus-ring);outline-offset:1px}.schedule-grid-wrap{flex:1;min-height:0;min-width:0;overflow:auto;-webkit-overflow-scrolling:touch;border:none;background:#1e222966}.schedule-grid-inner{position:relative;display:block;box-sizing:border-box;width:100%;min-width:min-content}.schedule-column-overlays{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.schedule-column-overlays--behind{z-index:0}.schedule-column-overlays--front{z-index:2}.schedule-past-column-bg{position:absolute;top:0;bottom:0;background:#303337eb}.schedule-today-column-highlight{position:absolute;top:0;bottom:0;box-sizing:border-box;border:2px solid var(--color-yellow)}.schedule-grid{position:relative;z-index:1;display:grid;--schedule-day-col-min: 12.5rem;grid-template-columns:11rem repeat(7,minmax(var(--schedule-day-col-min),1fr));width:100%;min-width:calc(11rem + 7 * var(--schedule-day-col-min))}.schedule-corner{position:sticky;left:0;z-index:3;background:var(--color-main);border-right:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray)}.schedule-day-head{padding:.3rem .5rem;text-align:center;border-bottom:1px solid var(--color-deep-gray);border-right:1px solid var(--color-deep-gray);background:#5d616633}.schedule-day-head:last-child{border-right:none}.schedule-day-name{display:inline-flex;align-items:center;gap:.35rem;font-size:.63rem;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--color-yellow)}.schedule-day-date{display:block;margin-top:.1rem;font-size:.72rem;color:var(--color-gray)}.schedule-day-head--today{background:#f1fe0629}.schedule-day-today-badge{display:inline-flex;align-items:center;justify-content:center;padding:.05rem .25rem;border:1px solid rgba(241,254,6,.7);background:#f1fe0624;color:var(--color-yellow);font-size:.5rem;font-weight:800;letter-spacing:.08em;line-height:1}.schedule-label{position:sticky;left:0;z-index:10;padding:.5rem .65rem;font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);border-right:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray);background:var(--color-main);align-self:stretch;display:flex;align-items:flex-start}.schedule-cell{padding:.45rem .5rem;border-right:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray);vertical-align:top;min-height:2.75rem}.schedule-cell--task-drop-target{background:#f1fe061a;box-shadow:inset 0 0 0 1px #f1fe0659}.schedule-cell--week-span{grid-column:span 7}.schedule-cell--week-span .task-list{display:grid;grid-template-columns:repeat(7,minmax(8.6rem,1fr));gap:.35rem;align-items:start}.schedule-cell--week-span .task-chip{width:100%;min-height:2.35rem}.schedule-cell--week-span .task-chip--editing{grid-column:span 2}.schedule-cell--week-span .task-add-bar--inline{display:flex;justify-content:flex-start;align-items:flex-start}.schedule-cell:last-child{border-right:none}.night-shift-row{margin-top:.35rem;display:flex;align-items:center;gap:.35rem;flex-wrap:wrap}.night-shift-label{font-size:.62rem;color:var(--color-dark-gray);letter-spacing:.02em}.night-shift-people{position:relative;display:inline-flex;align-items:center;gap:.25rem}.night-shift-person-btn{padding:0;margin:0;border:none;background:transparent;cursor:default;line-height:0}.night-shift-add-btn{width:20px;height:20px;padding:0;border:1px solid var(--color-deep-gray);background:#23272dd9;color:var(--color-yellow);font-size:.85rem;line-height:1;cursor:pointer}.night-shift-add-btn:hover{border-color:var(--color-yellow)}.night-shift-menu{position:absolute;right:0;top:calc(100% + 4px);margin:0;padding:.25rem 0;list-style:none;min-width:11rem;max-height:13rem;overflow-y:auto;border:1px solid var(--color-deep-gray);background:var(--color-sidebar);box-shadow:0 8px 24px #00000073;z-index:120}.night-shift-menu-option{display:flex;align-items:center;gap:.45rem;width:100%;padding:.35rem .55rem;border:none;background:transparent;color:var(--color-gray);text-align:left;font-size:.75rem;cursor:pointer}.night-shift-menu-option:hover{background:#41454cb8}.schedule-placeholder{font-size:.75rem;color:var(--color-dark-gray);font-style:italic}.maintenance-indicator{display:inline-flex;align-items:center;gap:.4rem;min-height:1.8rem;padding:.08rem 0;border:none;background:transparent;text-align:left;cursor:pointer}.maintenance-indicator:hover .maintenance-indicator-text{text-decoration:underline;text-underline-offset:2px}.maintenance-indicator-dot{width:.52rem;height:.52rem;border-radius:999px;flex-shrink:0;background:var(--color-dark-gray)}.maintenance-indicator-text{font-size:var(--schedule-inline-font-size);line-height:1.25;color:var(--color-dark-gray)}.maintenance-indicator--ok .maintenance-indicator-dot{background:#82dca0}.maintenance-indicator--pending .maintenance-indicator-dot,.maintenance-indicator--skipped .maintenance-indicator-dot{background:#ffc670}.maintenance-indicator--none .maintenance-indicator-dot{background:#6e7279}.maintenance-indicator--ok .maintenance-indicator-text{color:#a5e8b6}.maintenance-indicator--pending .maintenance-indicator-text,.maintenance-indicator--skipped .maintenance-indicator-text{color:#ffdda3}.maintenance-indicator--none .maintenance-indicator-text{color:#91969e}.maintenance-indicator:focus-visible{outline:1px solid var(--color-yellow);outline-offset:1px}.post-treatment-indicator{display:inline-flex;align-items:center;gap:.4rem;min-height:1.8rem;padding:.08rem 0;border:none;background:transparent;text-align:left;cursor:pointer}.post-treatment-indicator:hover .post-treatment-indicator-text{text-decoration:underline;text-underline-offset:2px}.post-treatment-indicator-dot{width:.52rem;height:.52rem;border-radius:999px;flex-shrink:0;background:var(--color-dark-gray)}.post-treatment-indicator-text{font-size:var(--schedule-inline-font-size);line-height:1.25;color:var(--color-dark-gray)}.post-treatment-indicator--pending .post-treatment-indicator-dot{background:#ffc670}.post-treatment-indicator--none .post-treatment-indicator-dot{background:#6e7279}.post-treatment-indicator--pending .post-treatment-indicator-text{color:#ffdda3}.post-treatment-indicator--none .post-treatment-indicator-text{color:#91969e}.post-treatment-indicator:focus-visible{outline:1px solid var(--color-yellow);outline-offset:1px}.schedule-notes-row-wrap{display:contents}.schedule-cell--notes{position:relative;display:flex;flex-direction:column;padding:0;min-height:2.75rem;vertical-align:top;align-self:stretch}.schedule-notes-display{flex:1 1 auto;min-height:2.75rem;min-width:0;width:100%;padding:.35rem .45rem;font-size:var(--schedule-inline-font-size);line-height:1.35;white-space:pre-wrap;word-break:break-word;overflow:visible;display:block;cursor:default;outline:none;box-sizing:border-box;color:var(--color-gray);background:#1e22298c;border:none}.schedule-notes-display.is-empty{color:var(--color-dark-gray)}.schedule-notes-display.is-selected{background:#5d616652}.schedule-notes-display:focus-visible{outline:none;background:#5d61665c}.schedule-field-text{font-family:inherit;font-size:var(--schedule-inline-font-size);line-height:1.35;padding:.32rem .42rem;margin:0;border:none;border-radius:0;background:#282c34fa;color:var(--color-gray);outline:none;box-sizing:border-box}.schedule-field-text:focus,.schedule-field-text:focus-visible{outline:none;border:none;box-shadow:none}.schedule-field-text::placeholder{color:var(--color-dark-gray)}textarea.schedule-field-text{resize:none;overflow:hidden;display:block;vertical-align:top;min-height:2.75rem}.schedule-notes-input{flex:1 1 auto;position:relative;width:100%;z-index:5}.lead-badge{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;font-size:.75rem;font-weight:600;color:var(--color-gray);border:1px solid var(--color-deep-gray);background:#23272dcc}.lead-badge .user-avatar{flex-shrink:0}.lead-select{width:100%;font-size:.8rem;padding:.35rem .5rem}.task-block{display:flex;flex-direction:column;gap:.35rem}.task-form{display:flex;flex-direction:column;gap:.35rem;padding-top:.15rem}.task-form-row{display:flex;gap:.35rem;flex-wrap:wrap}.task-form-row .schedule-field-text{flex:1;min-width:5rem;width:100%;max-width:100%}.task-form-row select{flex:1;width:100%;min-width:0;font-size:.75rem;padding:.35rem .45rem;max-width:100%}.task-form-row--submit{justify-content:flex-start}.task-form-row--submit .primary{padding:.4rem .85rem;font-size:.72rem}.task-form-row--blocker{align-items:center}.task-blocker-label{display:inline-flex;align-items:center;gap:.4rem;font-size:.72rem;color:var(--color-gray);cursor:pointer;-webkit-user-select:none;user-select:none}.task-blocker-check{width:.85rem;height:.85rem;margin:0;accent-color:var(--color-yellow);cursor:pointer;flex-shrink:0}.task-blocker-info{margin:0;padding:.1rem .25rem;border:none;border-radius:50%;background:#5d616659;color:var(--color-dark-gray);font-size:.62rem;font-weight:700;font-style:italic;line-height:1;cursor:help}.task-blocker-info:hover,.task-blocker-info:focus-visible{color:var(--color-gray);background:#5d61668c;outline:1px solid var(--color-deep-gray);outline-offset:1px}.task-form-row button{padding:.35rem .6rem;font-size:.7rem}.task-form-row .task-blocker-info{padding:.1rem .3rem;font-size:.62rem}.task-add-bar{display:flex;justify-content:flex-start}.task-add-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--color-deep-gray);background:#23272de6;color:var(--color-yellow);cursor:pointer}.task-add-btn:hover{border-color:var(--color-yellow);background:#f1fe0614}.task-add-icon{width:14px;height:14px;display:block}.task-list{display:flex;flex-direction:column;gap:.35rem}.task-chip{position:relative;display:flex;align-items:flex-start;gap:.45rem;padding:.35rem .45rem;font-size:var(--schedule-inline-font-size);line-height:1.35;border:1px solid var(--color-deep-gray);background:#23272da6;color:var(--color-gray)}.task-chip:focus-within{z-index:70}.task-block .task-chip{padding-right:.45rem}.task-block .task-chip.task-chip--with-owner-slot:not(.task-chip--editing){padding-right:3.4rem}.task-block .task-chip.task-chip--editing{padding-right:.45rem}.task-chip.is-blocker{border-color:#dc6464e6;background:#6e2d3252;color:var(--color-gray)}.task-chip.is-done{border-color:#50c8788c;background:#285a3740;color:#beebc8}.task-chip--skipped{border-color:#dc6464a6;background:#5a282d47}.task-check{position:relative;display:inline-flex;flex-shrink:0;margin:.1rem 0 0;cursor:pointer}.task-check--static{cursor:default}.task-chip--linked{cursor:pointer}.task-chip--draggable:not(.task-chip--linked){cursor:grab}.task-chip--selected{border-color:#f1fe06d9;background:#f1fe061f;box-shadow:inset 0 0 0 1px #f1fe0640}.task-chip--selected:focus-visible{outline:1px solid var(--color-yellow);outline-offset:2px}.task-chip--post-future{cursor:default;opacity:.62}.task-chip--post-future .task-check{cursor:default}.task-chip--linked .task-chip-title:after{content:"  →";opacity:0;transition:opacity .12s ease}.task-chip--linked:hover .task-chip-title:after,.task-chip--linked:focus-visible .task-chip-title:after{opacity:.85}.task-check-input{position:absolute;opacity:0;width:1px;height:1px;margin:0;clip:rect(0 0 0 0);clip-path:inset(50%)}.task-check-input:focus-visible+.task-check-box{outline:1px solid var(--color-yellow);outline-offset:2px}.task-check-box{display:flex;align-items:center;justify-content:center;width:1.125rem;height:1.125rem;border:2px solid var(--color-deep-gray);background:var(--color-black);color:#82e6a5;transition:border-color .15s ease,background .15s ease,box-shadow .15s ease}.task-chip.is-done .task-check-box{border-color:#64c882e6;background:#2d6e4680;box-shadow:0 0 0 1px #50c87840}.task-check-mark{width:11px;height:11px;display:block}.task-check-box--skipped{border-color:#dc6464d9;background:#7d323a73;color:#ffafaf;font-size:.78rem;font-weight:800;line-height:1}.task-chip-text{flex:1;min-width:0;word-break:break-word;display:flex;flex-direction:column;gap:.22rem}.weekly-task-badge{display:inline-flex;align-items:center;justify-content:center;width:fit-content;max-width:100%;padding:.06rem .32rem;border:1px solid transparent;font-size:.52rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;line-height:1.2}.weekly-task-badge--maintenance{color:#a0cdff;background:#23508259;border-color:#a0cdff73}.weekly-task-badge--quality{color:#aaf0c8;background:#235f4659;border-color:#78dcaa73}.weekly-task-badge--postTreatment{color:#dcb9ff;background:#5a2d8259;border-color:#a569dc80}.task-chip-title{display:block;font-size:var(--schedule-inline-font-size);line-height:1.35;white-space:normal;overflow-wrap:anywhere}.task-chip-text--editable{cursor:text}.task-chip-text--editable:hover .task-chip-title{text-decoration:underline;text-decoration-color:var(--color-deep-gray);text-underline-offset:2px}.task-chip-text--editable:focus{outline:none}.task-chip-text--editable:focus-visible{outline:1px solid var(--color-yellow);outline-offset:2px}.task-chip--reorder-before:before,.task-chip--reorder-after:after{content:"";position:absolute;left:.35rem;right:.35rem;height:2px;background:var(--color-yellow);box-shadow:0 0 0 1px #f1fe0640;pointer-events:none}.task-chip--reorder-before:before{top:-2px}.task-chip--reorder-after:after{bottom:-2px}.task-chip--editing{flex-direction:column;align-items:stretch;gap:.4rem}.task-chip--editing .task-check{align-self:flex-start}.task-chip-edit{display:flex;flex-direction:row;flex-wrap:nowrap;align-items:flex-start;gap:.45rem;width:100%;min-width:0;box-sizing:border-box;padding-right:2.9rem}.task-chip-title-input{flex:1 1 auto;min-width:0;width:100%;max-width:100%}.task-chip-delete{position:absolute;right:.45rem;top:2.05rem;bottom:auto;flex-shrink:0;display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--color-deep-gray);border-radius:0;background:#302022bf;color:#dc8c8c;cursor:pointer}.task-chip-delete:hover{border-color:#c85555d9;color:#ffc3be;background:#48262ad9}.task-chip-delete:focus-visible{outline:1px solid var(--color-yellow);outline-offset:1px}.task-chip-delete-icon{width:14px;height:14px;display:block}.task-owner-slot{position:absolute;top:.3rem;right:.45rem;z-index:12;line-height:0}.task-owner-slot.is-open{z-index:80}.task-owner-slot-trigger{margin:0;padding:0;border:none;background:transparent;font-family:inherit;cursor:pointer;display:inline-flex;line-height:0}.task-owner-slot-trigger:focus-visible{outline:1px solid var(--color-yellow);outline-offset:2px}.task-owner-slot-trigger .user-avatar{border-radius:0}.task-owner-slot-stack{position:relative;display:inline-flex}.task-owner-slot-avatar{width:26px;height:26px}.task-owner-slot-count{position:absolute;right:-7px;bottom:-6px;min-width:13px;height:13px;padding:0 2px;border:1px solid var(--color-deep-gray);background:#1a1e24f5;color:var(--color-gray);font-size:.52rem;font-weight:700;line-height:11px;text-align:center}.task-owner-slot-option-avatar{width:22px;height:22px}.task-owner-slot-placeholder{display:block;width:26px;height:26px;box-sizing:border-box;background:#484c52f2;border:1px solid var(--color-deep-gray)}.task-owner-slot-menu{position:absolute;right:0;top:calc(100% + 4px);margin:0;padding:.25rem 0;list-style:none;min-width:11.5rem;max-height:13rem;overflow-y:auto;border:1px solid var(--color-deep-gray);background:var(--color-sidebar);box-shadow:0 8px 24px #00000073;z-index:120}.task-owner-slot-option{display:flex;align-items:center;gap:.45rem;width:100%;padding:.4rem .6rem;border:none;background:transparent;color:var(--color-gray);font-family:inherit;font-size:.78rem;text-align:left;cursor:pointer}.task-owner-slot-check{width:.75rem;flex:0 0 .75rem;display:inline-flex;justify-content:center;color:#a0e6b4;font-size:.68rem;font-weight:700}.task-owner-slot-option:hover{background:#5d616659}.task-owner-slot-option-label{flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-project-block .schedule-label{padding-top:.65rem}.schedule-project-block--clickable{cursor:pointer}.schedule-project-block--clickable:hover{background:#5d616624}.schedule-project-block--clickable:focus-visible{outline:1px solid var(--color-yellow);outline-offset:-1px}.proj-head{font-size:.72rem;font-weight:700;color:var(--color-white);letter-spacing:.04em}.proj-owner{margin-top:.2rem;font-size:.65rem;color:var(--color-dark-gray)}.proj-deadline{margin-top:.18rem;font-size:.65rem;color:var(--color-dark-gray)}.proj-deadline--warn{color:#f5b051}.proj-deadline--urgent{color:#ee6d6d}.schedule-projects-toggle-row{grid-column:1 / -1;min-height:3.1rem;padding:0;border-bottom:1px solid var(--color-deep-gray)}.schedule-projects-toggle-btn{width:100%;min-height:3.1rem;padding:.5rem .6rem;border:none;background:#23272db3;color:var(--color-gray);display:inline-flex;align-items:center;gap:.45rem;font-size:.74rem;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.schedule-projects-toggle-btn:hover{background:#2d323acc}.schedule-projects-toggle-title{font-weight:700}.schedule-projects-toggle-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.45rem;height:1.25rem;padding:0 .35rem;border:1px solid var(--color-deep-gray);background:#5d616647;color:var(--color-white);font-size:.7rem;font-weight:700}.schedule-projects-toggle-chevron{margin-left:auto;font-size:.9rem}.schedule-projects-toggle-btn--cell{justify-content:center;color:var(--color-dark-gray);font-size:.68rem;font-weight:600}.schedule-view-toggle .segmented-item{border:none;background:transparent;cursor:pointer}.schedule-grid--master{grid-template-columns:11rem repeat(var(--master-day-count, 31),minmax(2.15rem,1fr));min-width:calc(11rem + var(--master-day-count, 31) * 2.15rem)}.schedule-corner--week-row{border-bottom:1px solid var(--color-deep-gray)}.master-week-header{padding:.18rem .1rem;text-align:center;font-size:.52rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);background:#5d61661f;border-right:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray)}.schedule-day-head--master{padding:.18rem .05rem}.schedule-day-head--master .schedule-day-name{font-size:.5rem;letter-spacing:.06em}.schedule-day-head--master .schedule-day-date{margin-top:.05rem;font-size:.65rem}.schedule-day-head--out-of-month{opacity:.35}.schedule-day-head--past{background:var(--color-main);opacity:.45}.schedule-cell--master-compact{padding:0;min-height:1.4rem;text-align:center;display:flex;flex-direction:column;align-items:stretch}.master-maint-btn{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05rem;width:100%;height:100%;min-height:1.4rem;padding:.1rem .05rem;border:none;background:transparent;cursor:pointer;font-size:.55rem;font-weight:700;font-family:inherit;letter-spacing:.02em}.master-maint-sub{opacity:.7}.master-maint-btn--ok{color:#a5e8b6}.master-maint-btn--pending,.master-maint-btn--skipped{color:#ffdda3}.master-maint-btn--none{color:var(--color-dark-gray)}.master-post-btn{display:flex;align-items:center;justify-content:center;width:100%;height:100%;min-height:1.4rem;padding:.1rem .05rem;border:none;background:transparent;cursor:pointer;font-size:.62rem;font-weight:700;font-family:inherit;color:#cde4ff}.master-maint-btn:hover,.master-post-btn:hover{background:#5d61662e}.master-maint-btn:focus-visible,.master-post-btn:focus-visible{outline:1px solid var(--color-yellow);outline-offset:-1px}.master-status-dot{width:.58rem;height:.58rem;border-radius:999px;display:inline-block;margin:auto;box-shadow:0 0 0 1px #0003}.master-status-dot--production{background:#4cb96e}.master-status-dot--standby{background:#e8c662}.master-status-dot--aborted{background:#e1735f}.schedule-cell--experiments{padding:0;min-height:1.4rem;display:flex;flex-direction:column}.schedule-experiment-bar{width:100%;padding:.2rem .45rem;font-size:.6rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block;flex-shrink:0;box-sizing:border-box;border:1px solid var(--exp-bar-border);border-left:none;border-right:none;text-align:left;cursor:pointer;font-family:inherit;min-height:1.4rem;line-height:1rem}.schedule-exp-inline-label{display:inline-flex;align-items:baseline;gap:.28rem;max-width:100%}.schedule-exp-code{font-weight:700}.schedule-exp-metrics{font-weight:500;text-transform:none;letter-spacing:.01em;opacity:.8}.schedule-exp-metrics-actual{font-weight:700;opacity:1}.schedule-exp-metrics-target{font-weight:500;opacity:.72}.schedule-experiment-bar--master{overflow:visible;position:relative;padding:0}.master-exp-label{position:absolute;left:.35rem;top:0;bottom:0;display:flex;align-items:center;white-space:nowrap;z-index:4;pointer-events:none;font-size:.6rem;font-weight:700;letter-spacing:.07em;text-transform:uppercase;line-height:1}.schedule-experiment-bar:hover{filter:brightness(1.15)}.schedule-experiment-bar:focus-visible{outline:1px solid var(--color-yellow);outline-offset:-1px}.schedule-experiment-bar+.schedule-experiment-bar{border-top:none}.schedule-experiment-bar--first{border-left:1px solid var(--exp-bar-border)}.schedule-experiment-bar--last{border-right:1px solid var(--exp-bar-border)}.schedule-experiment-bar--ongoing{--exp-bar-border: rgba(220, 165, 70, .6);background:#644819b3;color:#fad791}.schedule-experiment-bar--completed{--exp-bar-border: rgba(95, 195, 125, .6);background:#205837b3;color:#b9ebc3}.schedule-experiment-bar--posttreatment{--exp-bar-border: rgba(165, 105, 220, .6);background:#4b236eb3;color:#dcb9ff}.schedule-experiment-bar--planned{--exp-bar-border: rgba(160, 160, 170, .6);background:#464650b3;color:#d2d2d7}.schedule-experiment-bar--hovered{filter:brightness(1.3);z-index:5}.schedule-experiment-bar--dimmed{opacity:.3}.schedule-label--section-header{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);padding:.5rem .65rem;border-top:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray);border-right:1px solid var(--color-deep-gray);background:var(--color-main);position:sticky;left:0;z-index:10;align-self:stretch;display:flex;align-items:center}.schedule-label--section-header-cell{border-top:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray)}.schedule-label--project{font-size:.65rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);padding:.3rem 1.6rem .3rem .65rem;position:sticky;left:0;z-index:10;background:var(--color-main);display:block;min-height:1.4rem}.schedule-project-label-name{line-height:1.3;white-space:normal;word-break:break-word}.schedule-project-label-avatar{position:absolute;top:.3rem;right:.3rem;opacity:.85;flex-shrink:0}.schedule-project-bar{position:relative;width:100%;min-height:1.4rem;background:#64a0dc40;border-top:1px solid rgba(120,180,255,.5);border-bottom:1px solid rgba(120,180,255,.5);overflow:visible}.schedule-project-bar--first{border-left:1px solid rgba(120,180,255,.5);border-top-left-radius:2px;border-bottom-left-radius:2px}.schedule-project-bar--last{border-right:1px solid rgba(120,180,255,.5);border-top-right-radius:2px;border-bottom-right-radius:2px}.schedule-project-bar .master-exp-label{color:#a0d2ff;font-size:.58rem;font-weight:600}.schedule-cell--experiments.is-empty{background:transparent}.schedule-error{flex-shrink:0;margin:.5rem .65rem 0;padding:.65rem .75rem;border:1px solid rgba(200,80,80,.5);color:#ffb4aa;font-size:.85rem}.schedule-muted{flex-shrink:0;margin:0;padding:.65rem .75rem;font-size:.8rem;color:var(--color-dark-gray)}@media (max-width: 960px){.schedule-toolbar{gap:.5rem .65rem;padding:.5rem .65rem}.schedule-week-label{min-width:0;text-align:left}.schedule-projects-form input{min-width:0;width:100%}.schedule-projects-form{flex-direction:column;align-items:stretch}}@media (max-width: 720px){.schedule-toolbar h2{width:100%}}.content-section.projects-page,.projects-page{max-width:none;width:100%}.projects-toolbar{display:flex;justify-content:flex-end;margin-bottom:.75rem}.projects-error{padding:.65rem .85rem;margin-bottom:.8rem;border:1px solid rgba(220,100,100,.6);background:#6e2d3240;color:#ffc8c3;font-size:.85rem}.projects-create-form{display:grid;grid-template-columns:minmax(24rem,2.2fr) minmax(14rem,1.2fr) minmax(11rem,1fr) auto;gap:.5rem;align-items:center;margin-bottom:.8rem;padding:.65rem;border:1px solid var(--color-deep-gray);background:#1e222999}.projects-create-name-input{font-size:1.04rem;font-weight:600}.projects-table-wrap{width:100%;overflow:visible;border:1px solid var(--color-deep-gray);background:#181c2280}.projects-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.82rem}.projects-table th,.projects-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--color-deep-gray);vertical-align:middle;overflow:visible}.projects-table th{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);background:#23272df2}.projects-table tbody tr:last-child td{border-bottom:none}.projects-col-name{width:38%}.projects-col-owner{width:26%;position:relative;z-index:1}.projects-page .lead-picker{position:relative;z-index:1}.projects-page .lead-picker.is-open{z-index:60}.projects-owner-picker-menu{right:auto;z-index:9999}.projects-col-deadline{width:16%}.projects-col-archive{width:8%}.projects-archive-btn{min-width:5.5rem}.projects-empty{text-align:center;padding:1rem .75rem}.projects-title-button{margin:0;padding:0;border:none;background:transparent;color:var(--color-white);font-size:.92rem;font-weight:600;text-align:left;cursor:text;width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.projects-title-button:hover{text-decoration:underline;text-decoration-color:var(--color-deep-gray);text-underline-offset:2px}.projects-title-input,.projects-deadline-input{width:100%}.projects-deadline-button{margin:0;padding:0;border:none;background:transparent;color:var(--color-gray);font-size:.82rem;text-align:left;cursor:text}.projects-deadline-display{display:grid;gap:.18rem}.projects-deadline-button:hover{text-decoration:underline;text-decoration-color:var(--color-deep-gray);text-underline-offset:2px}@media (max-width: 960px){.projects-create-form{grid-template-columns:1fr}.projects-table-wrap{overflow-x:auto}.projects-table{min-width:40rem}}.admin-page{max-width:none;width:100%}.admin-tabs{display:flex;gap:0;margin:0;border-bottom:1px solid var(--color-deep-gray)}.admin-tab{margin:0;padding:.55rem 1rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-dark-gray);font-family:inherit;font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.admin-tab:hover{color:var(--color-gray)}.admin-tab.is-active{color:var(--color-yellow);border-bottom-color:var(--color-yellow)}.admin-panel{margin-top:1.25rem}.admin-toolbar{display:flex;justify-content:flex-end;margin-bottom:.5rem}.admin-sync-btn{flex-shrink:0}.admin-sync-msg{margin:0 0 .75rem;font-size:.8rem;color:var(--color-gray)}.admin-error{padding:.65rem .85rem;margin-bottom:1rem;border:1px solid rgba(220,100,100,.6);background:#6e2d3240;color:#ffc8c3;font-size:.85rem}.admin-table-wrap{overflow-x:auto;border:1px solid var(--color-deep-gray);background:#1e22298c}.admin-table{width:100%;border-collapse:collapse;font-size:.85rem}.admin-table th,.admin-table td{padding:.65rem .85rem;text-align:left;border-bottom:1px solid var(--color-deep-gray)}.admin-table th{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);background:#23272de6}.admin-table tbody tr:last-child td{border-bottom:none}.admin-table-empty{text-align:center;padding:1.5rem 1rem}.admin-table-col-photo{width:3.25rem}.admin-table-photo-cell{width:3.25rem;vertical-align:middle}.admin-user-name{color:var(--color-gray);font-weight:600}.admin-table-date{color:var(--color-dark-gray);font-size:.8rem;white-space:nowrap}@media (max-width: 720px){.admin-toolbar{flex-wrap:wrap;gap:.5rem}.admin-table{min-width:36rem}}.notice-bubble{margin:0;padding:.65rem .85rem;border:1px solid transparent;font-size:.85rem;line-height:1.45}.notice-bubble a{color:inherit;font-weight:600;text-decoration:underline;text-underline-offset:.12em}.notice-bubble a:hover{filter:brightness(1.12)}.notice-bubble--info{border-color:#5aa0e6b8;background:#284b7861;color:#afd7ff}.notice-bubble--warning{border-color:#dca546bf;background:#73552359;color:#fad791}.notice-bubble--danger{border-color:#d75f5fb3;background:#6e2d3247;color:#ffbcb6}.content-section.maintenance-page,.maintenance-page{max-width:none;width:100%}.maintenance-tabs{display:flex;gap:0;margin:0 0 1rem;border-bottom:1px solid var(--color-deep-gray)}.maintenance-tab{margin:0;padding:.55rem 1rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-dark-gray);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.maintenance-tab:hover{color:var(--color-gray)}.maintenance-tab.is-active{color:var(--color-yellow);border-bottom-color:var(--color-yellow)}.maintenance-panel{margin-top:1rem}.maintenance-error{padding:.65rem .85rem;margin-bottom:.8rem;border:1px solid rgba(220,100,100,.6);background:#6e2d3240;color:#ffc8c3;font-size:.85rem}.maintenance-toolbar{display:flex;justify-content:flex-end;margin-bottom:.75rem}.maintenance-create-equipment{display:grid;grid-template-columns:minmax(24rem,2.4fr) auto;gap:.5rem;align-items:center;margin-bottom:.8rem;padding:.65rem;border:1px solid var(--color-deep-gray);background:#1e222999}.maintenance-create-equipment-input{font-size:1.04rem;font-weight:600}.maintenance-table-wrap{width:100%;overflow:visible;border:1px solid var(--color-deep-gray);background:#181c2280}.maintenance-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.82rem}.maintenance-table th,.maintenance-table td{padding:.55rem .65rem;text-align:left;border-bottom:1px solid var(--color-deep-gray);vertical-align:middle}.maintenance-table th{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);background:#23272df2}.maintenance-table tbody tr:last-child td{border-bottom:none}.maintenance-routine-toolbar{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem 1.25rem;margin-bottom:.85rem;padding:.65rem .75rem;border:1px solid var(--color-deep-gray);background:#1e222999}.maintenance-routine-toolbar-notice{margin-bottom:.85rem;box-sizing:border-box}.maintenance-routine-toolbar-date{display:inline-flex;align-items:center;gap:.35rem}.maintenance-date-nav-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--color-deep-gray);background:#23272de6;color:var(--color-yellow);font-size:1.1rem;line-height:1;cursor:pointer}.maintenance-date-nav-btn:hover{border-color:var(--color-yellow)}.maintenance-routine-date-label{position:relative;display:inline-flex;align-items:center;min-width:12rem;cursor:pointer}.maintenance-routine-date-text{font-size:.88rem;font-weight:600;color:var(--color-white);letter-spacing:.02em}.maintenance-routine-date-input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.maintenance-routine-toolbar-assignee{display:inline-flex;align-items:center;gap:.45rem}.maintenance-routine-toolbar-label{font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray)}.maintenance-routine-assignee-select{min-width:10rem;min-height:2rem;padding:.3rem .45rem;border:1px solid var(--color-deep-gray);background:#1e2229bf;color:var(--color-gray);font:inherit;font-size:.82rem}.maintenance-routine-schedule-btn{margin-left:auto}.maintenance-col-check{width:2.4rem;text-align:center}.maintenance-col-check input[type=checkbox]{width:.95rem;height:.95rem;accent-color:var(--color-yellow);cursor:pointer}.maintenance-status-dot{display:inline-block;width:.72rem;height:.72rem;border-radius:999px;flex-shrink:0}.maintenance-status-dot--ok{background:#52c41a;box-shadow:0 0 0 1px #52c41a59}.maintenance-status-dot--approaching{background:#faad14;box-shadow:0 0 0 1px #faad1459}.maintenance-status-dot--overdue{background:#ff4d4f;box-shadow:0 0 0 1px #ff4d4f59}.maintenance-status-dot--planned{background:#5aa5ff;box-shadow:0 0 0 1px #5aa5ff73}.maintenance-col-equipment-name{font-weight:600;color:var(--color-white)}.maintenance-recap-routine-name{font-weight:600;color:var(--color-gray)}.maintenance-recap-routine-instructions{margin-top:.15rem;font-size:.72rem;line-height:1.35}.maintenance-recap-due{display:block;font-weight:600;color:var(--color-gray)}.maintenance-date-overdue{display:block;margin-top:.2rem;color:#ff5a5a;font-size:.78rem;font-weight:700;line-height:1.3}.maintenance-date-approaching{display:block;margin-top:.2rem;color:#faad14;font-size:.78rem;font-weight:700;line-height:1.3}.maintenance-date-planned{display:block;margin-top:.2rem;color:#5aa5ff;font-size:.78rem;font-weight:700;line-height:1.3}.maintenance-recap-row--overdue td{background:#ff4d4f0f}.maintenance-recap-row--approaching td{background:#faad140d}.maintenance-recap-row--planned td{background:#5aa5ff14}.maintenance-recap-table th:nth-child(2),.maintenance-recap-table td:nth-child(2){width:2.75rem}.maintenance-recap-table th:nth-child(3),.maintenance-recap-table td:nth-child(3){width:10%}.maintenance-recap-table th:nth-child(4),.maintenance-recap-table td:nth-child(4){width:48%}.maintenance-recap-table th:nth-child(5),.maintenance-recap-table td:nth-child(5){width:8%}.maintenance-recap-table th:nth-child(6),.maintenance-recap-table td:nth-child(6){width:4.5rem;text-align:center}.maintenance-recap-table th:nth-child(7),.maintenance-recap-table td:nth-child(7){width:9.5rem}.maintenance-recap-table th:nth-child(8),.maintenance-recap-table td:nth-child(8){width:7rem}.maintenance-recap-table td:nth-child(4){word-break:break-word}.maintenance-routine-table tbody tr.maintenance-row-overdue td{background:#5d616624;border-top:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray)}.maintenance-routine-table tbody tr.maintenance-row-overdue td:first-child{border-left:1px solid var(--color-deep-gray)}.maintenance-routine-table tbody tr.maintenance-row-overdue td:last-child{border-right:1px solid var(--color-deep-gray)}.maintenance-empty{text-align:center;padding:1rem .75rem}.maintenance-instructions{color:var(--color-gray)}.maintenance-activity-field{width:100%;box-sizing:border-box;min-height:2rem;padding:.3rem .42rem;border:1px solid var(--color-deep-gray);background:#1e2229bf;color:var(--color-gray);font:inherit}.maintenance-activity-field:focus,.maintenance-activity-field:focus-visible{outline:1px solid var(--color-yellow);outline-offset:1px}.maintenance-activity-instructions{min-height:3.5rem;resize:vertical}.maintenance-frequency-field{display:grid;gap:.35rem}.maintenance-activity-custom-days{max-width:7rem}.maintenance-routine-list{display:grid;gap:.4rem;margin-bottom:.5rem}.maintenance-routine-item{display:grid;gap:.1rem}.maintenance-routine-item-btn{width:100%;margin:0;padding:.35rem .45rem;border:1px solid var(--color-deep-gray);background:#23272da6;text-align:left;cursor:pointer}.maintenance-routine-item-btn:hover{background:#23272dc7}.maintenance-add-btn{display:inline-flex;align-items:center;justify-content:center;width:1.75rem;height:1.75rem;padding:0;border:1px solid var(--color-deep-gray);background:#23272de6;color:var(--color-yellow);cursor:pointer}.maintenance-add-btn:hover{border-color:var(--color-yellow);background:#f1fe0614}.maintenance-add-icon{width:14px;height:14px;display:block}.maintenance-routine-name{color:var(--color-white);font-weight:600}.maintenance-routine-meta{color:var(--color-dark-gray);font-size:.72rem;letter-spacing:.03em}.maintenance-routine-create{display:grid;grid-template-columns:1fr;gap:.42rem;align-items:stretch;width:100%;max-width:44rem}.maintenance-routine-create>*{width:100%}.maintenance-routine-fields{display:grid;grid-template-columns:1fr;gap:.42rem}.maintenance-routine-input{width:100%;box-sizing:border-box;font-size:.78rem;min-height:2rem;padding:.3rem .42rem}.maintenance-routine-inline-row{display:grid;grid-template-columns:1fr;gap:.42rem}.maintenance-routine-custom-days{max-width:8.5rem}.maintenance-routine-instructions{width:100%;min-height:5.4rem;resize:vertical;overflow:auto;box-sizing:border-box;font-size:.78rem}.maintenance-routine-anytime-check{display:inline-flex;align-items:center;gap:.45rem;margin-top:.35rem;font-size:.78rem;color:var(--color-gray);cursor:pointer}.maintenance-routine-anytime-check input[type=checkbox]{width:.95rem;height:.95rem;margin:0;accent-color:var(--color-yellow);cursor:pointer}.maintenance-routine-actions{display:flex;align-items:center;gap:.42rem;flex-wrap:wrap}.maintenance-routine-actions>button:not(.maintenance-icon-delete-btn){width:fit-content}.maintenance-icon-delete-btn{width:1.75rem;height:1.75rem;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;border:1px solid var(--color-deep-gray);border-radius:0;background:#302022bf;color:#dc8c8c;cursor:pointer}.maintenance-icon-delete-icon{width:14px;height:14px;display:block;flex-shrink:0}.maintenance-icon-delete-icon path{fill:currentColor}.maintenance-icon-delete-btn:hover:not(:disabled){border-color:#c85555d9;color:#ffc3be;background:#48262ad9}.maintenance-icon-delete-btn:disabled{opacity:.5;cursor:default}.maintenance-icon-delete-btn:focus-visible{outline:1px solid var(--color-yellow);outline-offset:1px}@media (max-width: 979px){.maintenance-create-equipment{grid-template-columns:1fr}.maintenance-table-wrap{overflow-x:auto}.maintenance-table{min-width:42rem}.maintenance-routine-toolbar{align-items:stretch}.maintenance-routine-toolbar-date,.maintenance-routine-toolbar-assignee{width:100%}}@media (min-width: 980px){.maintenance-routine-inline-row{grid-template-columns:minmax(10rem,1fr) minmax(10rem,1fr) minmax(10rem,.9fr);align-items:center}.maintenance-routine-inline-row.maintenance-routine-inline-row--with-custom{grid-template-columns:minmax(10rem,1fr) minmax(10rem,1fr) minmax(10rem,.9fr) minmax(7.5rem,.7fr)}}.maintenance-date-cell{display:grid;gap:.22rem}.maintenance-date-label{color:var(--color-gray);font-weight:400}.maintenance-date-badge{display:inline-flex;width:fit-content;padding:.06rem .4rem;border:1px solid var(--color-deep-gray);background:#5d616647;color:var(--color-gray);font-size:.66rem;letter-spacing:.06em;text-transform:uppercase}.maintenance-col-equipment{width:24%;font-weight:600;color:var(--color-white)}.maintenance-config-table th:first-child,.maintenance-config-table td:first-child{width:24%}.maintenance-config-table th:last-child,.maintenance-config-table td:last-child{width:76%}.maintenance-config-table .maintenance-routine-list,.maintenance-config-table .maintenance-routine-create{max-width:100%}.maintenance-routine-table th:nth-child(1),.maintenance-routine-table td:nth-child(1){width:16%}.maintenance-routine-table th:nth-child(2),.maintenance-routine-table td:nth-child(2){width:18%}.maintenance-routine-table th:nth-child(3),.maintenance-routine-table td:nth-child(3){width:22%}.maintenance-routine-table th:nth-child(4),.maintenance-routine-table td:nth-child(4){width:15%}.maintenance-routine-table th:nth-child(5),.maintenance-routine-table td:nth-child(5){width:14%}.maintenance-routine-table th:nth-child(6),.maintenance-routine-table td:nth-child(6){width:15%}.production-tracker-page{max-width:none;width:100%}.production-tracker-tabs{display:flex;gap:0;margin:0 0 1rem;border-bottom:1px solid var(--color-deep-gray)}.production-tracker-tab{margin:0;padding:.55rem 1rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-dark-gray);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.production-tracker-tab:hover{color:var(--color-gray)}.production-tracker-tab.is-active{color:var(--color-yellow);border-bottom-color:var(--color-yellow)}.production-tracker-panel{margin-top:.25rem}.experiment-fe-graph{position:relative;width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.1);background:#2d323a66;padding:.85rem 1rem .75rem}.experiment-fe-graph-heading{font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray)}.experiment-fe-graph-sub{margin:.35rem 0 .75rem;font-size:.78rem}.experiment-fe-graph-scroll{position:relative;overflow-x:auto;width:100%;max-width:100%}.experiment-fe-graph-svg{display:block;width:100%;height:auto}.experiment-fe-graph-grid{stroke:#ffffff14;stroke-width:1}.experiment-fe-graph-axis,.experiment-fe-graph-xlabel{fill:var(--color-dark-gray);font-size:10px;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace}.experiment-fe-graph-xlabel.is-empty{opacity:.45}.experiment-fe-graph-axis-unit{fill:var(--color-dark-gray);font-size:10px;letter-spacing:.08em;text-transform:uppercase}.experiment-fe-graph-point{cursor:pointer;stroke:#00000059;stroke-width:1}.experiment-fe-graph-legend{display:flex;flex-wrap:wrap;gap:.85rem;list-style:none;margin:.65rem 0 0;padding:0;font-size:.72rem;color:var(--color-dark-gray)}.experiment-fe-graph-legend li{display:inline-flex;align-items:center;gap:.35rem}.experiment-fe-graph-swatch{width:.65rem;height:.65rem;border-radius:1px;border:1px solid rgba(255,255,255,.2)}.experiment-analysis{display:grid;grid-template-columns:minmax(16rem,20rem) minmax(0,1fr);gap:1rem;align-items:start;min-height:28rem}.experiment-analysis-side{border:1px solid rgba(255,255,255,.1);background:#1e22298c;max-height:min(70vh,40rem);display:flex;flex-direction:column}.experiment-analysis-side-heading{padding:.65rem .75rem;font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);border-bottom:1px solid rgba(255,255,255,.08)}.experiment-analysis-list{list-style:none;margin:0;padding:.35rem 0;overflow-y:auto}.experiment-analysis-empty{padding:.75rem;color:var(--color-dark-gray);font-size:.78rem}.experiment-analysis-item{display:flex;align-items:center;gap:.45rem;padding:.4rem .75rem;cursor:pointer;font-size:.82rem}.experiment-analysis-item:hover{background:#ffffff0a}.experiment-analysis-item.is-selected{background:#ffffff0f}.experiment-analysis-item input{margin:0}.experiment-analysis-swatch{width:.55rem;height:.55rem;border-radius:1px;border:1px solid rgba(255,255,255,.2);flex:0 0 auto}.experiment-analysis-code{flex:1 1 auto;min-width:0;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.78rem}.experiment-analysis-fe{display:inline-flex;align-items:center;gap:.28rem;flex:0 0 auto;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.68rem;font-variant-numeric:tabular-nums;color:var(--color-dark-gray);min-width:2.4rem;justify-content:flex-end}.experiment-analysis-badge{flex:0 0 auto;font-size:.58rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.12rem .3rem;border:1px solid rgba(255,255,255,.12);color:var(--color-dark-gray)}.experiment-analysis-badge.is-three-r{color:var(--color-yellow);border-color:#d6a84673;background:#d6a8461f}.experiment-analysis-badge--r1{color:var(--color-black);background:var(--color-yellow);border-color:var(--color-yellow)}.experiment-analysis-badge--r2{color:#2d1808;background:#ff9e2e;border-color:#e6821c}.experiment-analysis-charts{display:flex;flex-direction:column;gap:.85rem}.experiment-analysis-main{min-width:0}.experiment-analysis-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.55rem;margin-bottom:.75rem}.experiment-analysis-toolbar-left{display:flex;flex-wrap:wrap;align-items:center;gap:.55rem;min-width:0}.experiment-analysis-play{-webkit-appearance:none;-moz-appearance:none;appearance:none;display:inline-flex;align-items:center;gap:.4rem;margin-left:auto;border:1px solid transparent;background:var(--color-yellow);color:#12161c;font:inherit;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.4rem .85rem;cursor:pointer}.experiment-analysis-play:hover:not(:disabled){filter:brightness(1.06)}.experiment-analysis-play.is-playing{background:var(--color-yellow);color:#12161c}.experiment-analysis-play:disabled{opacity:.45;cursor:not-allowed}.experiment-analysis-play-icon{display:inline-block;flex:0 0 auto}.experiment-analysis-play-icon--play{width:0;height:0;border-style:solid;border-width:.35rem 0 .35rem .58rem;border-color:transparent transparent transparent currentColor}.experiment-analysis-play-icon--stop{width:.55rem;height:.55rem;background:currentColor}.experiment-analysis-play-label{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.78rem;letter-spacing:.02em;color:var(--color-yellow)}.experiment-analysis-std{display:block;margin-top:.05rem;font-size:.55rem;font-weight:600;letter-spacing:.02em;color:#ffffff8c;font-variant-numeric:tabular-nums}.experiment-analysis-error-bar{position:absolute;left:50%;width:0;transform:translate(-50%);border-left:1.5px solid rgba(255,255,255,.75);z-index:2;pointer-events:none}.experiment-analysis-error-bar:before,.experiment-analysis-error-bar:after{content:"";position:absolute;left:50%;width:.55rem;height:0;border-top:1.5px solid rgba(255,255,255,.75);transform:translate(-50%)}.experiment-analysis-error-bar:before{top:0}.experiment-analysis-error-bar:after{bottom:0}.experiment-analysis-chart{min-height:22rem}.experiment-analysis-current-chart{min-height:auto}.experiment-analysis-current-scroll{position:relative;overflow-x:auto;width:100%;max-width:100%}.experiment-analysis-current-svg{display:block;width:100%;height:auto}.experiment-analysis-current-grid{stroke:#ffffff14;stroke-width:1}.experiment-analysis-current-axis,.experiment-analysis-current-xlabel{fill:var(--color-dark-gray);font-size:10px}.experiment-analysis-current-xlabel.is-empty{fill:#a0a8b473}.experiment-analysis-current-axis-unit{fill:var(--color-dark-gray);font-size:10px;letter-spacing:.04em}.experiment-analysis-current-point{cursor:pointer}.experiment-analysis-current-mean{stroke:#e8ba308c;stroke-width:1.5;stroke-dasharray:5 4}.experiment-analysis .production-tracker-deposit-chart-xlabel{flex-direction:column;gap:0;height:auto;min-height:1.35rem;padding-top:.15rem;align-items:center;justify-content:flex-start}.experiment-analysis-chart .production-tracker-deposit-chart-body{min-height:16rem}.experiment-analysis-chart .production-tracker-deposit-chart-plot{min-height:14rem}.experiment-analysis-chart-bars{gap:.35rem!important}.experiment-analysis-chart-bars.is-average-mode{gap:.55rem!important;padding-inline:.5rem}.experiment-analysis-chart-bars.is-average-mode.is-rectifier-mode{padding-inline:2rem}.experiment-analysis-cluster{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:stretch}.experiment-analysis-cluster-bars{flex:1 1 auto;display:flex;align-items:stretch;gap:.12rem;min-height:0;padding-bottom:0}.experiment-analysis-bar-col{flex:1 1 0;min-width:0;display:flex;flex-direction:column}.experiment-analysis-legend{display:flex;flex-wrap:wrap;gap:.65rem 1rem;list-style:none;margin:.65rem 0 0;padding:0;font-size:.72rem}.experiment-analysis-legend li{display:inline-flex;align-items:center;gap:.35rem}@media (max-width: 900px){.experiment-analysis{grid-template-columns:1fr}.experiment-analysis-side{max-height:14rem}}.production-tracker-toolbar{display:flex;justify-content:space-between;align-items:center;gap:.65rem;margin-bottom:.75rem}.production-tracker-last-update{margin:0;font-size:.66rem;letter-spacing:.03em}.production-tracker-create{display:grid;grid-template-columns:repeat(3,minmax(12rem,1fr));gap:.55rem;padding:.7rem;margin-bottom:.75rem;border:1px solid var(--color-deep-gray);background:#1e222999}.production-tracker-create label{display:grid;gap:.2rem;font-size:.72rem}.production-tracker-create-actions{grid-column:1 / -1}.production-tracker-table-wrap{border:1px solid var(--color-deep-gray);background:#181c2280;overflow-x:auto}.production-tracker-table-notice{margin:0 0 .65rem;max-width:52rem}.tracker-code-button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:none;background:transparent;color:inherit;font:inherit;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.85rem;font-weight:600;padding:.1rem .2rem;margin:-.1rem -.2rem;cursor:pointer;text-align:left}.tracker-code-button:hover{text-decoration:underline;text-underline-offset:.12em}.production-tracker-code-input{width:4.5rem;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-weight:600}.production-tracker-table{width:100%;border-collapse:collapse;font-size:.8rem}.production-tracker-table th,.production-tracker-table td{padding:.5rem .6rem;border-bottom:1px solid var(--color-deep-gray);text-align:left;white-space:nowrap}.production-tracker-table th{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);background:#23272df2}.production-tracker-empty{text-align:center;padding:1rem .75rem}.production-tracker-experiment-row{background:#23272d59}.production-tracker-experiment-row--planned{background:#5f5f6c2e}.production-tracker-experiment-row--ongoing{background:#785a2833}.production-tracker-experiment-row--harvested{background:#34784c33}.production-tracker-experiment-row--post-treatment{background:#5c348433}.production-tracker-experiment-row--skipped{background:#46464b33;opacity:.72}.production-tracker-experiment-row--skipped .production-tracker-status-select,.production-tracker-experiment-row--skipped .production-tracker-reactor-select,.production-tracker-experiment-row--skipped .tracker-code-button,.production-tracker-experiment-row--skipped .tracker-date-button{opacity:1}.production-tracker-nested-row>td{padding:.75rem .85rem 1rem;background:#1e22298c}.production-tracker-nested{display:flex;flex-direction:column;gap:.85rem;--rectifier-1: rgba(214, 168, 70, .9);--rectifier-2: rgba(90, 160, 220, .9);--rectifier-3: rgba(130, 180, 120, .9);--rectifier-1-soft: rgba(214, 168, 70, .18);--rectifier-2-soft: rgba(90, 160, 220, .18);--rectifier-3-soft: rgba(130, 180, 120, .18)}.production-tracker-rectifiers{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.65rem}.production-tracker-rectifier{border:1px solid rgba(255,255,255,.1);background:#2d323a8c;padding:.7rem .85rem;border-top:3px solid rgba(255,255,255,.2)}.production-tracker-rectifier--total{border-color:#ffffff2e;border-top-color:#ffffff59;background:#464e5a8c}.production-tracker-rectifier--r1{border-top-color:var(--rectifier-1);background:linear-gradient(180deg,var(--rectifier-1-soft),rgba(45,50,58,.55) 42%)}.production-tracker-rectifier--r2{border-top-color:var(--rectifier-2);background:linear-gradient(180deg,var(--rectifier-2-soft),rgba(45,50,58,.55) 42%)}.production-tracker-rectifier--r3{border-top-color:var(--rectifier-3);background:linear-gradient(180deg,var(--rectifier-3-soft),rgba(45,50,58,.55) 42%)}.production-tracker-rectifier-title{display:flex;align-items:baseline;justify-content:space-between;gap:.5rem;font-size:.72rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-dark-gray);margin-bottom:.55rem}.production-tracker-rectifier-range{font-size:.68rem;letter-spacing:.04em;text-transform:none;font-weight:500;opacity:.85}.production-tracker-rectifier-metrics{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .65rem}.production-tracker-rectifier-label{font-size:.66rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-dark-gray);margin-bottom:.2rem}.production-tracker-rectifier-value{display:flex;flex-wrap:wrap;align-items:baseline;gap:.3rem;font-size:1.05rem;font-weight:650;font-variant-numeric:tabular-nums}.production-tracker-rectifier-unit{font-size:.68rem;font-weight:500;letter-spacing:.02em;color:var(--color-dark-gray)}.production-tracker-cathode-table-wrap{overflow-x:auto}.production-tracker-cathode-table{width:100%;border-collapse:collapse}.production-tracker-cathode-table th,.production-tracker-cathode-table td{border-top:1px solid rgba(255,255,255,.06);padding:.4rem .45rem;text-align:left;vertical-align:middle;font-size:.78rem;white-space:nowrap}.production-tracker-cathode-head th{font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-dark-gray);background:#23272db3}.production-tracker-cathode-row{background:#1e222973}.production-tracker-cathode-head th:nth-child(-n+4),.production-tracker-cathode-row td:nth-child(-n+4){background:#73552329}.production-tracker-cathode-col{width:6.25rem;max-width:6.25rem}.production-tracker-cathode-col--r1{background:var(--rectifier-1-soft)!important;box-shadow:inset 3px 0 0 var(--rectifier-1)}.production-tracker-cathode-col--r2{background:var(--rectifier-2-soft)!important;box-shadow:inset 3px 0 0 var(--rectifier-2)}.production-tracker-cathode-col--r3{background:var(--rectifier-3-soft)!important;box-shadow:inset 3px 0 0 var(--rectifier-3)}@media (max-width: 1100px){.production-tracker-rectifiers{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width: 700px){.production-tracker-rectifiers{grid-template-columns:1fr}}.production-tracker-electrolyte-id{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.78rem;letter-spacing:.02em;white-space:nowrap}.production-tracker-eff-col{width:4.75rem;max-width:4.75rem}.production-tracker-efficiency-cell{display:inline-flex;align-items:center;gap:.4rem}.production-tracker-efficiency-indicator{width:.5rem;height:.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.28);box-shadow:0 0 0 1px #0003 inset}.production-tracker-weight-col{width:6.3rem;max-width:6.3rem}.production-tracker-deposit-chart{border:1px solid rgba(255,255,255,.1);background:#2d323a66;padding:.7rem .85rem .55rem}.production-tracker-deposit-chart-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.production-tracker-deposit-chart-heading{font-size:.64rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-dark-gray)}.production-tracker-deposit-chart-toggle{display:inline-flex;border:1px solid rgba(255,255,255,.12);background:#12161c8c;border-radius:2px;overflow:hidden}.production-tracker-deposit-chart-toggle button{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:0;background:transparent;color:var(--color-dark-gray);font:inherit;font-size:.68rem;letter-spacing:.04em;text-transform:uppercase;padding:.28rem .55rem;cursor:pointer}.production-tracker-deposit-chart-toggle button.is-active{background:#ffffff1a;color:inherit}.production-tracker-deposit-chart-toggle button:hover:not(.is-active){background:#ffffff0d}.production-tracker-deposit-chart-body{display:grid;grid-template-columns:2.6rem minmax(0,1fr);gap:.35rem;min-height:10.5rem}.production-tracker-deposit-chart-yaxis{display:flex;flex-direction:column;justify-content:space-between;align-items:flex-end;padding:.15rem 0 1.35rem;font-size:.62rem;font-variant-numeric:tabular-nums;color:var(--color-dark-gray)}.production-tracker-deposit-chart-plot{position:relative;min-height:9rem}.production-tracker-deposit-chart-grid{position:absolute;top:0;right:0;bottom:1.35rem;left:0;display:flex;flex-direction:column;justify-content:space-between;pointer-events:none}.production-tracker-deposit-chart-gridline{border-top:1px dashed rgba(255,255,255,.1)}.production-tracker-deposit-chart-ref-layer{position:absolute;top:0;right:0;bottom:1.35rem;left:0;pointer-events:none;z-index:1}.production-tracker-deposit-chart-baseline{position:absolute;left:0;right:0;border-top:1.5px dotted rgba(255,255,255,.55)}.production-tracker-deposit-chart-baseline-label{position:absolute;right:.15rem;bottom:.15rem;font-size:.58rem;letter-spacing:.04em;text-transform:uppercase;color:#ffffffb8;background:#12161cb8;padding:.05rem .25rem}.production-tracker-deposit-chart-bars{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:stretch;gap:.2rem;padding-bottom:1.35rem}.production-tracker-deposit-chart-bars.is-rectifier-mode{gap:.75rem;padding-inline:1.5rem}.production-tracker-deposit-chart-col{flex:1 1 0;min-width:0;display:flex;flex-direction:column;align-items:center}.production-tracker-deposit-chart-bar-track{position:relative;flex:1 1 auto;width:100%;display:flex;align-items:flex-end;justify-content:center}.production-tracker-deposit-chart-bar-stack{position:relative;width:70%;max-width:1.6rem;display:flex;flex-direction:column;justify-content:flex-end;min-height:0}.production-tracker-deposit-chart-bars.is-rectifier-mode .production-tracker-deposit-chart-bar-stack{width:55%;max-width:4.5rem}.production-tracker-deposit-chart-bar{width:100%;flex:1 1 auto;min-height:0;border-radius:2px 2px 0 0;background:#b4bed2bf;transition:height .2s ease}.production-tracker-deposit-chart-bars.is-rectifier-mode .production-tracker-deposit-chart-bar{width:100%;max-width:none}.production-tracker-deposit-chart-bar--r1{background:var(--rectifier-1)}.production-tracker-deposit-chart-bar--r2{background:var(--rectifier-2)}.production-tracker-deposit-chart-bar--r3{background:var(--rectifier-3)}.production-tracker-deposit-chart-bar.is-empty{opacity:.25}.production-tracker-deposit-chart-xlabel{height:1.35rem;display:flex;align-items:center;justify-content:center;font-size:.64rem;font-variant-numeric:tabular-nums;color:var(--color-dark-gray)}.production-tracker-deposit-chart-footer{display:flex;justify-content:space-between;margin-top:.25rem;font-size:.62rem;letter-spacing:.04em;text-transform:uppercase;color:var(--color-dark-gray)}.production-tracker-experiment-notes-label{display:block;width:100%}.production-tracker-experiment-notes-heading{display:block;margin-bottom:.35rem;font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray)}.production-tracker-experiment-notes-input{display:block;width:100%;box-sizing:border-box;min-height:4.5rem;padding:.45rem .55rem;border:1px solid var(--color-deep-gray);border-radius:2px;background:#12161cd9;color:inherit;font:inherit;font-size:.8rem;line-height:1.35;resize:vertical}.production-tracker-experiment-notes-input:focus-visible{outline:2px solid var(--color-accent, #6b9fff);outline-offset:1px}.production-tracker-action-row td{background:#1e2229cc;text-align:left}.production-tracker-action-buttons{display:flex;align-items:center;justify-content:flex-start;gap:.55rem}.production-tracker-print-labels-btn{min-height:1.75rem;padding:0 .65rem;border:1px solid rgba(120,170,220,.55);border-radius:0;background:#28466e73;color:#b4d7ff;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;cursor:pointer}.production-tracker-print-labels-btn:hover{background:#3255828c}.production-tracker-label-modal{width:min(38rem,calc(100vw - 2rem))}.production-tracker-label-modal-summary{display:flex;flex-wrap:wrap;gap:.65rem 1rem;margin-bottom:.65rem;font-size:.75rem;color:var(--color-gray)}.production-tracker-label-modal-custom-breakdown{margin:0 0 .85rem;font-size:.72rem;line-height:1.45;color:var(--color-gray)}.production-tracker-label-modal-custom-breakdown strong{font-weight:700;color:inherit}.production-tracker-label-modal-count{display:grid;gap:.35rem;margin-bottom:.85rem;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-gray)}.production-tracker-label-modal-count input{width:5rem;min-height:2rem;padding:.35rem .5rem;border:1px solid var(--color-deep-gray);background:#23272dd9;color:inherit}.production-tracker-label-modal-hint{font-size:.65rem;text-transform:none;letter-spacing:normal;color:var(--color-dark-gray)}.production-tracker-label-preview{margin-bottom:.85rem;padding:.65rem .75rem;border:1px solid var(--color-deep-gray);background:#12161cd9}.production-tracker-label-preview-heading{margin:0 0 .45rem;font-size:.62rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-dark-gray)}.production-tracker-label-preview-text{margin:0;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.82rem;line-height:1.45;white-space:pre-wrap}.production-tracker-label-preview-barcode{margin:.55rem 0 0;font-size:.68rem;color:var(--color-dark-gray)}.production-tracker-label-modal-printer{margin:0 0 .5rem;font-size:.68rem}.production-tracker-toggle{min-width:1.4rem;height:1.4rem;padding:0;line-height:1;border:1px solid var(--color-deep-gray);background:#23272deb}.production-tracker-cell-input{width:100%;min-width:6.5rem;font-size:.78rem;padding:.2rem .4rem}.production-tracker-cell-input--compact{min-width:5.8rem}.production-tracker-cell-saving{margin-top:.15rem;font-size:.62rem;color:var(--color-dark-gray)}.production-tracker-ah-cell{display:grid;gap:.15rem}.production-tracker-ah-avg{font-size:.62rem;color:var(--color-dark-gray);letter-spacing:.02em}.tracker-date-display{display:grid;gap:.18rem}.tracker-date-button{margin:0;padding:0;border:none;background:transparent;color:var(--color-gray);font-size:.82rem;text-align:left;cursor:text}.tracker-date-button:hover{text-decoration:underline;text-decoration-color:var(--color-deep-gray);text-underline-offset:2px}.production-tracker-reactor-select{font-size:.78rem;font-weight:700;padding:.2rem .35rem;border:1px solid transparent;border-radius:0;cursor:pointer;min-width:3.5rem;transition:color .15s ease,background .15s ease,border-color .15s ease}.production-tracker-reactor-select--r1{color:var(--color-black);background:var(--color-yellow);border-color:var(--color-yellow)}.production-tracker-reactor-select--r2{color:#2d1808;background:#ff9e2e;border-color:#e6821c}.production-tracker-reactor-select--r1:focus-visible{outline:2px solid rgba(241,254,6,.55);outline-offset:1px}.production-tracker-reactor-select--r2:focus-visible{outline:2px solid rgba(255,158,46,.55);outline-offset:1px}.production-tracker-reactor-select:focus-visible{outline-offset:1px}.production-tracker-status-select{width:100%;min-width:9rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.42rem .45rem;border-width:2px;border-style:solid;border-radius:0;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease}.production-tracker-status-select.experiment-status--ongoing:focus-visible{outline:2px solid rgba(235,175,80,.5);outline-offset:1px}.production-tracker-status-select.experiment-status--planned:focus-visible{outline:2px solid rgba(160,160,170,.5);outline-offset:1px}.production-tracker-status-select.experiment-status--harvested:focus-visible{outline:2px solid rgba(130,220,155,.55);outline-offset:1px}.production-tracker-status-select.experiment-status--post-treatment:focus-visible{outline:2px solid rgba(165,105,220,.55);outline-offset:1px}.production-tracker-status-select.experiment-status--skipped:focus-visible{outline:2px solid rgba(130,130,138,.55);outline-offset:1px}.production-tracker-delete-btn{width:1.75rem;height:1.75rem;margin-left:auto;display:inline-flex;align-items:center;justify-content:center;padding:0;line-height:0;border:1px solid var(--color-deep-gray);border-radius:0;background:#302022bf;color:#dc8c8c;cursor:pointer}.production-tracker-delete-icon{width:14px;height:14px;display:block;flex-shrink:0}.production-tracker-delete-icon path{fill:currentColor}.production-tracker-delete-btn:hover:not(:disabled){border-color:#c85555d9;color:#ffc3be;background:#48262ad9}.production-tracker-delete-btn:disabled{opacity:.5;cursor:default}.production-tracker-delete-btn:focus-visible{outline:1px solid var(--color-yellow);outline-offset:1px}.tracker-date-badge{display:block;margin-top:.18rem;font-size:.6rem;font-weight:600;letter-spacing:.04em;text-transform:uppercase}.tracker-date-badge--future{color:var(--color-dark-gray)}.tracker-date-badge--past{color:#dc8c8c}.tracker-date-badge--neutral{color:var(--color-dark-gray)}@media (max-width: 900px){.production-tracker-create{grid-template-columns:1fr}.production-tracker-toolbar{flex-wrap:wrap;align-items:flex-start}}.chart-tooltip-card{position:absolute;top:1.85rem;z-index:2;min-width:8.5rem;max-width:14rem;padding:.4rem .55rem;border:1px solid rgba(255,255,255,.16);border-radius:2px;background:#12161cf5;box-shadow:0 6px 18px #00000059;pointer-events:none}.chart-tooltip-card--above{top:auto;bottom:calc(100% + .3rem);left:50%;right:auto;transform:translate(-50%);min-width:0;white-space:nowrap}.chart-tooltip-card-title{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.72rem;font-weight:600;color:var(--color-gray)}.chart-tooltip-card-subtitle{margin-top:.12rem;font-size:.68rem;color:var(--color-dark-gray)}.chart-tooltip-card-value{margin-top:.28rem;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.78rem;font-weight:700;color:var(--color-gray)}.energy-page{max-width:none;width:100%}.energy-report-tabs{display:flex;gap:0;margin:0 0 .75rem;border-bottom:1px solid var(--color-deep-gray)}.energy-report-tab{margin:0;padding:.55rem 1rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-dark-gray);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.energy-report-tab:hover{color:var(--color-gray)}.energy-report-tab.is-active{color:var(--color-yellow);border-bottom-color:var(--color-yellow)}.energy-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.75rem}.energy-toolbar-cluster{display:flex;flex-wrap:wrap;align-items:center;gap:.75rem}.energy-epu-toggle{display:inline-flex;align-items:center;gap:.45rem;font-size:.72rem;color:var(--color-gray);white-space:nowrap}.energy-epu-toggle input[type=checkbox]{width:.9rem;height:.9rem;margin:0}.energy-view-toggle .segmented-item,.energy-layout-toggle .segmented-item{border:none;background:transparent;cursor:pointer}.energy-issues-badge{display:inline-flex;align-items:center;justify-content:center;min-width:1.1rem;height:1.1rem;margin-left:.35rem;padding:0 .3rem;border-radius:999px;background:#d65b6638;color:#ffbebe;font-size:.64rem;line-height:1}.energy-nav{display:inline-flex;align-items:center;gap:.55rem;flex-wrap:wrap}.energy-period-label{min-width:12rem;text-align:center;font-size:.72rem;letter-spacing:.06em;color:var(--color-gray)}.energy-last-update{margin:0 0 .5rem;font-size:.66rem;letter-spacing:.03em}.energy-table-wrap{border:1px solid var(--color-deep-gray);background:#181c2280;overflow-x:auto}.energy-table{width:100%;border-collapse:collapse;font-size:.8rem}.energy-table th,.energy-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--color-deep-gray)}.energy-table th{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);background:#23272df2}.energy-table thead{position:sticky;top:0;z-index:6}.energy-table tbody tr:last-child td{border-bottom:none}.energy-table--wide{min-width:max-content;font-size:.68rem}.energy-table--wide th.energy-sub-h{font-size:.55rem;letter-spacing:.04em;white-space:normal;word-break:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:4.75rem;min-width:2.75rem;width:4.75rem;line-height:1.2;vertical-align:bottom;padding:.4rem .35rem;font-weight:700;text-align:center}.energy-table--wide th.energy-sub-h .energy-col-unit{display:inline-block;margin-top:.12em;font-size:.85em;font-weight:600;letter-spacing:.05em;color:var(--color-gray);text-transform:none}.energy-table--wide th.energy-sub-h .energy-col-unit--bright{color:#ffffffeb}.energy-table--wide th.energy-group-h{text-align:center;font-size:.62rem;white-space:normal;word-break:break-word;line-height:1.15;padding:.35rem .3rem;vertical-align:middle}.energy-table--wide th.energy-group-sep{border-left:1px solid var(--color-deep-gray);padding-left:.65rem;padding-right:.45rem}.energy-table--wide th.energy-group-h.energy-group-h--reactor1,.energy-table--wide th.energy-sub-h.energy-col-reactor1,.energy-table--wide td.energy-num.energy-col-reactor1{background:#34507433}.energy-table--wide th.energy-group-h.energy-group-h--reactor2,.energy-table--wide th.energy-sub-h.energy-col-reactor2,.energy-table--wide td.energy-num.energy-col-reactor2{background:#42604833}.energy-table--wide th.energy-sub-h.energy-col-dc-total,.energy-table--wide td.energy-num.energy-col-dc-total{background:#82693a33}.energy-table--wide td.energy-num{text-align:center}.energy-table--wide th.energy-sub-h.energy-col-group-start,.energy-table--wide td.energy-num.energy-col-group-start{border-left:1px solid var(--color-deep-gray);padding-left:.55rem;padding-right:.45rem}.energy-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.energy-kpi-col{min-width:7.2rem}.energy-table th.energy-kpi-group-start,.energy-table td.energy-kpi-group-start{border-left:1px solid rgba(145,155,168,.42)}.energy-kpi-projected-cell{display:flex;width:100%;justify-content:flex-end;align-items:center;gap:.4rem}.energy-kpi-indicator{width:.5rem;height:.5rem;border-radius:999px;border:1px solid rgba(255,255,255,.28);box-shadow:0 0 0 1px #0003 inset}.energy-best-badge{display:inline-flex;align-items:center;gap:.2rem;padding:.08rem .35rem;border-radius:999px;border:1px solid rgba(245,158,11,.55);background:#f59e0b26;color:#fbbf24;font-size:.62rem;font-weight:700;letter-spacing:.02em;line-height:1.2;white-space:nowrap}.energy-sticky-day,.energy-sticky-r1,.energy-sticky-r2{position:sticky;z-index:7;background:#1c2026fa;box-shadow:4px 0 8px #0003}.energy-table tbody td.energy-sticky-day,.energy-table tbody td.energy-sticky-r1,.energy-table tbody td.energy-sticky-r2{border-bottom:1px solid var(--color-deep-gray)}.energy-table tbody tr:last-child td.energy-sticky-day,.energy-table tbody tr:last-child td.energy-sticky-r1,.energy-table tbody tr:last-child td.energy-sticky-r2{border-bottom:none}.energy-sticky-day{left:0;min-width:9rem}.energy-sticky-r1{left:9rem;min-width:3.2rem;width:3.2rem;max-width:3.2rem}.energy-sticky-r2{left:12.2rem;min-width:3.2rem;width:3.2rem;max-width:3.2rem}.energy-table th.energy-sticky-r1,.energy-table th.energy-sticky-r2,.energy-table td.energy-sticky-r1,.energy-table td.energy-sticky-r2{padding-left:.35rem;padding-right:.35rem;text-align:center}.energy-table tbody tr.energy-row--today td,.energy-table tbody tr.energy-row--today td.energy-num,.energy-table tbody tr.energy-row--today td.energy-col-reactor1,.energy-table tbody tr.energy-row--today td.energy-col-reactor2,.energy-table tbody tr.energy-row--today td.energy-col-dc-total,.energy-table tbody tr.energy-row--today td.energy-col-group-start,.energy-table tbody tr.energy-row--today td.energy-kpi-col,.energy-table tbody tr.energy-row--today td.energy-kpi-group-start,.energy-table tbody tr.energy-row--today td.energy-sticky-day,.energy-table tbody tr.energy-row--today td.energy-sticky-r1,.energy-table tbody tr.energy-row--today td.energy-sticky-r2{background:#f1fe0614!important}.energy-experiment-list{white-space:normal}.energy-experiment-code{font-weight:600}.energy-experiment-code--ongoing{color:#fad791}.energy-experiment-code--planned{color:#d2d2d7}.energy-experiment-code--harvested{color:#beebc8}.energy-experiment-code--post-treatment{color:#dcb9ff}.energy-load-error{color:#f87171;font-size:.85rem;margin-bottom:.5rem}.energy-loading{margin-bottom:.5rem}.energy-graph-wrap{padding:.65rem}.energy-graph-toolbar{display:grid;gap:.45rem;margin-bottom:.5rem}.energy-graph-toolbar-group{display:flex;flex-wrap:wrap;align-items:center;gap:.5rem}.energy-graph-toolbar-label{font-size:.62rem;color:var(--color-dark-gray);letter-spacing:.03em}.energy-graph-line-toggles{display:flex;flex-wrap:wrap;gap:.45rem .8rem}.energy-graph-line-toggle{display:inline-flex;align-items:center;gap:.3rem;font-size:.61rem;color:var(--color-gray)}.energy-graph-line-toggle input[type=checkbox]{width:.85rem;height:.85rem;margin:0}.energy-graph-line-toggle--meta{padding-right:.35rem;margin-right:.25rem;border-right:1px solid var(--color-deep-gray)}.energy-graph-legend{display:flex;flex-wrap:wrap;gap:.8rem;margin-bottom:.45rem;font-size:.6rem;color:var(--color-gray)}.energy-legend-item{display:inline-flex;align-items:center;gap:.35rem}.energy-legend-dot{width:.55rem;height:.55rem;border-radius:999px}.energy-legend-dot--real{background:#5fa8ff}.energy-legend-dot--proj{background:#f59e0b}.energy-legend-dot--opt{background:#22c55e}.energy-graph{width:100%;min-height:18rem;display:block;background:#181c2273;border:1px solid var(--color-deep-gray)}.energy-graph-axis{font-size:8px;fill:#9aa3b2}.energy-graph-axis-unit{font-size:8.5px;fill:#9aa3b2}.energy-graph-point{cursor:pointer;stroke:#0f141acc;stroke-width:1px}.energy-graph-tooltip rect{fill:#14181eeb;stroke:#919ba88c;stroke-width:1}.energy-graph-tooltip text{fill:#dbe3ef;font-size:7.5px;font-weight:600;letter-spacing:.02em}.energy-table--issues td:nth-child(7){max-width:28rem;white-space:normal}.energy-issue-severity{display:inline-flex;align-items:center;justify-content:center;min-width:3.5rem;padding:.08rem .4rem;border:1px solid var(--color-deep-gray);text-transform:uppercase;font-size:.62rem;letter-spacing:.06em}.energy-issue-severity--high{background:#821c2459;border-color:#d65b66b8;color:#ffbcbc}.energy-issue-severity--severe{background:#a816228c;border-color:#ff5c6cf2;color:#ffe4e8}.energy-issue-severity--medium{background:#654e1c4d;border-color:#c5a5599e;color:#ffe3ac}.energy-table--summary{font-size:.72rem;table-layout:auto}.energy-table--summary th.energy-summary-h{text-transform:uppercase;letter-spacing:.04em;font-size:.55rem;font-weight:700;line-height:1.2;white-space:normal;word-break:break-word;-webkit-hyphens:auto;hyphens:auto;max-width:5.75rem;min-width:3.25rem;vertical-align:bottom;text-align:center;padding:.4rem .35rem}.energy-table--summary th.energy-summary-h .energy-summary-unit{display:inline-block;margin-top:.12em;font-size:.85em;font-weight:600;letter-spacing:.05em;color:var(--color-gray);text-transform:none}.energy-table--summary td.energy-num{text-align:center}.energy-table--summary th.energy-col-group-start,.energy-table--summary td.energy-col-group-start{border-left:1px solid var(--color-deep-gray);padding-left:.55rem;padding-right:.45rem}@media (max-width: 960px){.energy-toolbar{align-items:stretch}.energy-toolbar-cluster{width:100%}.energy-report-tabs{overflow-x:auto;-webkit-overflow-scrolling:touch}.energy-report-tab{flex-shrink:0;padding:.55rem .75rem}}@media (max-width: 720px){.energy-epu-toggle{white-space:normal}}.night-shifts-legend{display:flex;align-items:center;flex-wrap:wrap;gap:1rem;padding:.4rem .65rem;color:var(--color-gray);font-size:.7rem;border-bottom:1px solid var(--color-deep-gray);background:#1a1e24fa}.night-shifts-legend span{display:inline-flex;align-items:center;gap:.35rem}.night-shifts-dot{width:.65rem;height:.65rem;border-radius:999px;display:inline-block}.night-shifts-dot--red{background:#c24141}.night-shifts-dot--yellow{background:#d5ac24}.night-shifts-dot--green{background:#1e8f47}.night-shifts-grid{grid-template-columns:11rem 4.8rem repeat(var(--master-day-count, 31),minmax(2.15rem,1fr));min-width:calc(15.8rem + var(--master-day-count, 31) * 2.15rem)}.night-shifts-total-head-cell{border-right:1px solid var(--color-deep-gray)}.night-shifts-total-head,.night-shifts-total-cell{display:flex;align-items:center;justify-content:center;border-right:1px solid var(--color-deep-gray);border-bottom:1px solid var(--color-deep-gray);font-size:.64rem;color:var(--color-gray)}.night-shifts-total-head{font-weight:700;letter-spacing:.01em;background:#181c22eb;color:var(--color-yellow);font-size:.6rem;text-align:center;line-height:1.05;white-space:normal;padding:0 .2rem}.night-shifts-total-cell--member{color:#e1ecf5;font-size:.6rem;letter-spacing:.01em;white-space:nowrap}.night-shifts-total-main{font-size:.66rem;font-weight:500;color:#e1ecf5}.schedule-label--night-member{font-size:.72rem;letter-spacing:.02em;text-transform:none;color:var(--color-gray);align-items:center;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.night-shifts-state-btn{position:relative;width:100%;height:100%;min-height:1.4rem;border:none;margin:0;padding:0;cursor:pointer}.night-shifts-state-btn:hover{filter:brightness(1.1)}.night-shifts-state-btn:disabled{cursor:default;opacity:.7}.night-shifts-state-btn:disabled:hover{filter:none}.night-shifts-state-btn:focus-visible{outline:1px solid var(--color-yellow);outline-offset:-1px}.night-shifts-state-btn--red{background:#c24141b8}.night-shifts-state-btn--yellow{background:#d5ac24c7}.night-shifts-state-btn--green{background:#1e8f47c7}.night-shifts-state-btn--consecutive-warning{box-shadow:inset 0 0 0 1px #cd3434d1}.night-shifts-consecutive-warning-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.82rem;line-height:1;font-weight:800;color:#6e1212e6;text-shadow:0 0 1px rgba(255,228,228,.65);pointer-events:none}.night-shifts-state-btn--confirmed-marked{box-shadow:inset 0 0 0 1px #a0f5b7d1}.night-shifts-confirmed-mark{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;font-size:.78rem;line-height:1;font-weight:800;color:#e0fcebeb;text-shadow:0 0 1px rgba(16,48,28,.75);pointer-events:none}.night-shifts-night-status-cell{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.18rem;padding-bottom:.08rem}.night-shifts-night-count{font-size:.58rem;line-height:1;font-weight:700;color:var(--color-gray)}.night-shifts-night-count--ok{color:#8ce2a7}.night-shifts-night-count--warn{color:#ffd696}@media (max-width: 720px){.night-shifts-legend{gap:.65rem .85rem;padding:.45rem .65rem}}.electrolyte-page{--electrolyte-naoh: hsl(200 72% 55%);--electrolyte-hematite: hsl(15 75% 55%);--electrolyte-fe: hsl(48 90% 52%);max-width:none;width:100%}.electrolyte-columns{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;align-items:start}.electrolyte-column{display:grid;gap:.85rem;min-width:0;padding:.85rem;border:1px solid var(--color-deep-gray);background:#181c228c}.electrolyte-column-header{display:flex;align-items:center;gap:.55rem}.electrolyte-reactor-badge{display:inline-flex;align-items:center;justify-content:center;min-width:2.2rem;padding:.18rem .45rem;font-size:.72rem;font-weight:800;letter-spacing:.08em;text-transform:uppercase}.electrolyte-reactor-badge--r1{color:var(--color-black);background:var(--color-yellow)}.electrolyte-reactor-badge--r2{color:#2d1808;background:#ff9e2e}.electrolyte-column-title{margin:0;font-size:.82rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--color-white)}.electrolyte-experiment-link{color:inherit;text-decoration:none}.electrolyte-experiment-link:hover{color:var(--color-yellow);text-decoration:underline}.electrolyte-lab-link{color:inherit;text-decoration:underline;text-underline-offset:.15em}.electrolyte-lab-link:hover{color:var(--color-yellow)}.electrolyte-actions{display:flex;flex-wrap:wrap;gap:.5rem}.electrolyte-actions button{min-height:2rem;padding:.35rem .75rem;font:inherit;font-size:.68rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;cursor:pointer}.electrolyte-actions button:not(.primary){border:1px solid var(--color-deep-gray);background:#23272de6;color:var(--color-gray)}.electrolyte-actions button:not(.primary):not(.electrolyte-btn-dump):hover:not(:disabled){color:var(--color-white);border-color:var(--color-yellow)}.electrolyte-actions .electrolyte-btn-dump{border:1px solid rgb(180,72,72);background:#782a308c;color:#ffc4be}.electrolyte-actions .electrolyte-btn-dump:hover:not(:disabled){color:var(--color-white);background:#96343abf;border-color:#dc5f5f}.electrolyte-actions button:disabled{opacity:.45;cursor:default}.electrolyte-kpi-row{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.55rem}.electrolyte-kpi{display:flex;flex-direction:column;gap:.25rem;padding:.45rem .55rem;border:1px solid var(--color-deep-gray);background:#23272dd9;min-height:5.1rem}.electrolyte-kpi-label{font-size:.58rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray)}.electrolyte-kpi-value{font-size:1.05rem;font-weight:700;color:var(--color-white);line-height:1.2}.electrolyte-kpi-value--id{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.92rem;letter-spacing:.03em}.electrolyte-kpi-value--naoh{color:var(--electrolyte-naoh)}.electrolyte-kpi-value--hematite{color:var(--electrolyte-hematite)}.electrolyte-td-naoh:not(.electrolyte-qc-omitted){color:var(--electrolyte-naoh)}.electrolyte-td-hematite:not(.electrolyte-qc-omitted){color:var(--electrolyte-hematite)}.electrolyte-kpi-delta{font-size:.62rem;font-weight:600;line-height:1.25}.electrolyte-kpi-delta--warn{color:#ff9e2e}.electrolyte-kpi-delta--alert{color:#eb786e}.electrolyte-kpi-hint{font-size:.62rem;color:var(--color-dark-gray)}.electrolyte-table-block{display:grid;gap:.4rem;min-width:0}.electrolyte-qc-graph{position:relative;margin-top:.55rem;width:100%;box-sizing:border-box;border:1px solid rgba(255,255,255,.1);background:#1e222973;padding:.65rem .75rem .55rem}.electrolyte-qc-graph-heading{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);margin-bottom:.45rem}.electrolyte-qc-graph-empty{margin:.35rem 0 .55rem;font-size:.78rem}.electrolyte-qc-graph-scroll{position:relative;overflow-x:auto;width:100%;max-width:100%}.electrolyte-qc-graph-svg{display:block;width:100%;height:auto}.electrolyte-qc-graph-grid{stroke:#ffffff14;stroke-width:1}.electrolyte-qc-graph-axis,.electrolyte-qc-graph-xlabel{fill:var(--color-dark-gray);font-size:9px;font-family:ui-monospace,Menlo,Monaco,Consolas,monospace}.electrolyte-qc-graph-axis-unit{fill:var(--color-dark-gray);font-size:9px;letter-spacing:.08em;text-transform:uppercase}.electrolyte-qc-graph-point{cursor:pointer;stroke:#0000004d;stroke-width:1}.electrolyte-qc-graph-legend{display:flex;flex-wrap:wrap;gap:.7rem;list-style:none;margin:.45rem 0 0;padding:0;font-size:.68rem;color:var(--color-dark-gray)}.electrolyte-qc-graph-legend li{display:inline-flex;align-items:center;gap:.3rem}.electrolyte-qc-graph-swatch{width:.55rem;height:.55rem;border-radius:1px;border:1px solid rgba(255,255,255,.2)}.electrolyte-qc-graph-swatch--dashed{box-shadow:inset 0 0 0 1px #00000040}.electrolyte-table-title{margin:0;font-size:.62rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray)}.electrolyte-table-wrap{overflow-x:auto;border:1px solid var(--color-deep-gray);background:#181c2280}.electrolyte-table{width:100%;border-collapse:collapse;font-size:.8rem}.electrolyte-table th,.electrolyte-table td{padding:.5rem .6rem;text-align:left;border-bottom:1px solid var(--color-deep-gray);vertical-align:middle}.electrolyte-table th{font-size:.6rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);background:#23272df2}.electrolyte-table tbody tr:last-child td{border-bottom:none}.electrolyte-table th.electrolyte-th-num{text-align:right}.electrolyte-table td.electrolyte-td-num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.electrolyte-qc-omitted{color:var(--color-dark-gray);font-style:italic;font-weight:500}.electrolyte-table td.electrolyte-td-id{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.78rem;letter-spacing:.02em}.electrolyte-history-row--active{background:#785a2833}.electrolyte-empty{text-align:center;padding:.75rem;color:var(--color-dark-gray)}.electrolyte-note{margin:0;font-size:.72rem;color:var(--color-dark-gray)}.electrolyte-modal-form label{display:grid;gap:.35rem;margin-bottom:.75rem;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-gray)}.electrolyte-modal-form input{width:100%;min-height:2.1rem;border:1px solid var(--color-deep-gray);background:#23272dd9;color:var(--color-white);padding:.35rem .5rem;font:inherit;font-size:.82rem;text-transform:none;letter-spacing:normal}.electrolyte-modal-form input.electrolyte-modal-id-input{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;letter-spacing:.03em}@media (max-width: 1100px){.electrolyte-columns{grid-template-columns:1fr}}.multi-search-select{position:relative;width:100%}.multi-search-select.is-disabled{opacity:.55;pointer-events:none}.multi-search-select-control{display:flex;flex-wrap:wrap;align-items:center;gap:.25rem;min-height:2rem;padding:.2rem .35rem;border:1px solid var(--color-deep-gray);background:#181c22e6;cursor:text}.multi-search-select.is-open .multi-search-select-control{border-color:#f1fe068c}.multi-search-select-chip{display:inline-flex;align-items:center;gap:.15rem;max-width:100%;padding:.1rem .28rem .1rem .35rem;border:1px solid rgba(255,255,255,.14);background:#2d343ef2;font-size:.72rem;line-height:1.2}.multi-search-select-chip-label{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.multi-search-select-chip-remove{display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;padding:0;border:none;background:transparent;color:var(--color-dark-gray);font-size:.85rem;line-height:1;cursor:pointer}.multi-search-select-chip-remove:hover{color:var(--color-gray)}.multi-search-select-input{flex:1 1 6rem;min-width:5rem;min-height:1.5rem;margin:0;padding:.15rem .2rem;border:none;background:transparent;color:var(--color-gray);font-size:.82rem;outline:none}.multi-search-select-menu{position:absolute;z-index:20;top:calc(100% + 2px);left:0;right:0;margin:0;padding:.2rem 0;max-height:14rem;overflow:auto;list-style:none;border:1px solid var(--color-deep-gray);background:#161a20fa;box-shadow:0 8px 20px #00000059}.multi-search-select-empty{padding:.45rem .65rem;font-size:.78rem;color:var(--color-dark-gray)}.multi-search-select-option{display:flex;flex-direction:column;align-items:flex-start;gap:.1rem;width:100%;padding:.35rem .65rem;border:none;background:transparent;color:var(--color-gray);text-align:left;font-size:.82rem;cursor:pointer}.multi-search-select-option:hover,.multi-search-select-option.is-active{background:#f1fe061a}.multi-search-select-option-meta{font-size:.68rem;color:var(--color-dark-gray)}.experiment-status{display:inline-block;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.32rem .45rem;border-width:2px;border-style:solid;border-radius:0;line-height:1.2}.experiment-status--ongoing{color:#fad791;background:#73552373;border-color:#dca546d1}.experiment-status--planned{color:#d2d2d7;background:#5a5a6459;border-color:#a0a0aab3}.experiment-status--harvested{color:#beebc8;background:#2a69446b;border-color:#5fc37dcc}.experiment-status--post-treatment{color:#dcb9ff;background:#5a2d8261;border-color:#a569dcbf}.experiment-status--skipped{color:#afafb4;background:#41414873;border-color:#82828abf}.content-section.finished-goods-page,.finished-goods-page{max-width:none;width:100%}.finished-goods-tabs{display:flex;gap:0;margin:0 0 1rem;border-bottom:1px solid var(--color-deep-gray)}.finished-goods-tab{margin:0;padding:.55rem 1rem;border:none;border-bottom:2px solid transparent;background:transparent;color:var(--color-dark-gray);font-size:.72rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;cursor:pointer}.finished-goods-tab:hover{color:var(--color-gray)}.finished-goods-tab.is-active{color:var(--color-yellow);border-bottom-color:var(--color-yellow)}.finished-goods-error{padding:.65rem .85rem;margin-bottom:.8rem;border:1px solid rgba(220,100,100,.6);background:#6e2d3240;color:#ffc8c3;font-size:.85rem}.finished-goods-panel{display:flex;flex-direction:column;gap:1rem}.finished-goods-heading{margin:0 0 .55rem;font-size:.64rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray)}.finished-goods-subheading{margin:.85rem 0 .35rem;font-size:.72rem;font-weight:600;color:var(--color-dark-gray)}.finished-goods-card{padding:.75rem .85rem;border:1px solid var(--color-deep-gray);background:#1e22298c}.finished-goods-form-row{display:flex;flex-wrap:wrap;gap:.65rem .85rem;align-items:flex-end}.finished-goods-form-row label{display:flex;flex-direction:column;gap:.25rem;font-size:.68rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--color-dark-gray)}.finished-goods-form-row input,.finished-goods-form-row select{min-height:2rem;min-width:8rem;padding:.3rem .45rem;border:1px solid var(--color-deep-gray);background:#181c22e6;color:var(--color-gray);font-size:.85rem;text-transform:none;letter-spacing:normal;font-weight:400}.finished-goods-table-wrap{overflow-x:auto;border:1px solid var(--color-deep-gray);background:#181c2273}.finished-goods-table{width:100%;border-collapse:collapse;font-size:.82rem}.finished-goods-table th,.finished-goods-table td{padding:.45rem .65rem;border-bottom:1px solid rgba(255,255,255,.06);text-align:left;vertical-align:top}.finished-goods-table th{font-size:.62rem;letter-spacing:.08em;text-transform:uppercase;color:var(--color-dark-gray);font-weight:700}.finished-goods-table tbody tr{cursor:default}.finished-goods-split .finished-goods-table tbody tr{cursor:pointer}.finished-goods-split{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(16rem,.9fr);gap:.85rem}@media (max-width: 960px){.finished-goods-split{grid-template-columns:1fr}}.mono{font-family:ui-monospace,Menlo,Monaco,Consolas,monospace;font-size:.78rem}.fg-badge{display:inline-block;padding:.1rem .35rem;border:1px solid rgba(255,255,255,.14);font-size:.68rem;text-transform:uppercase;letter-spacing:.06em}.fg-badge--available{color:#afd7ff;border-color:#5aa0e680}.fg-badge--reserved{color:#fad791;border-color:#dca5468c}.fg-badge--shipped{color:var(--color-dark-gray)}.finished-goods-po-badges{display:flex;flex-wrap:wrap;gap:.3rem;max-width:26rem}.fg-po-badge-row{display:inline-flex;align-items:center;gap:.28rem}.fg-po-status-icon{display:inline-flex;flex-shrink:0;width:.95rem;height:.95rem}.fg-po-status-icon svg{width:100%;height:100%;display:block}.fg-po-status-icon--open{color:#afafb9}.fg-po-status-icon--pending-quotation{color:#5096ff}.fg-po-status-icon--in-progress{color:#fac86e}.fg-po-status-icon--completed{color:#82d291}.fg-po-status-icon--canceled{color:#e66e6e}.fg-po-badge{display:inline-flex;align-items:baseline;gap:.35rem;padding:.15rem .4rem;border:1px solid rgba(150,150,160,.45);border-radius:3px;background:#5a5a6438;color:#d2d2d7;font-size:.72rem;font-weight:600;line-height:1.25;white-space:nowrap}.fg-po-badge-meta{font-weight:500;opacity:.8}.fg-po-badge-kg{font-weight:500;opacity:.85}.finished-goods-status-select{min-width:8.5rem;font-size:.72rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;padding:.32rem .45rem;border-width:2px;border-style:solid;border-radius:0;cursor:pointer;transition:color .15s ease,background .15s ease,border-color .15s ease}.finished-goods-status-select:disabled{opacity:.7;cursor:default}.finished-goods-status-select.experiment-status--planned:focus-visible{outline:2px solid rgba(160,160,170,.5);outline-offset:1px}.experiment-status--pending-quotation,.finished-goods-status-select.experiment-status--pending-quotation{color:#78afff;background:#3769be38;border-color:#5a96f0a6}.finished-goods-status-select.experiment-status--pending-quotation:focus-visible{outline:2px solid rgba(90,150,240,.55);outline-offset:1px}.finished-goods-status-select.experiment-status--ongoing:focus-visible{outline:2px solid rgba(235,175,80,.5);outline-offset:1px}.finished-goods-status-select.experiment-status--harvested:focus-visible{outline:2px solid rgba(130,220,155,.55);outline-offset:1px}.finished-goods-status-select.experiment-status--skipped:focus-visible{outline:2px solid rgba(130,130,138,.55);outline-offset:1px}.experiment-status--canceled,.finished-goods-status-select.experiment-status--canceled{color:#ffb4af;background:#82282d66;border-color:#dc5f5fcc}.finished-goods-status-select.experiment-status--canceled:focus-visible{outline:2px solid rgba(220,100,100,.55);outline-offset:1px}.finished-goods-cell-input{width:100%;min-width:8rem;max-width:18rem;margin:0;padding:.25rem .35rem;border:1px solid transparent;background:transparent;color:var(--color-gray);font:inherit;font-size:.82rem}.finished-goods-cell-input:hover{border-color:#ffffff1f}.finished-goods-cell-input:focus{outline:none;border-color:#f1fe0673;background:#181c22e6}.finished-goods-notes-cell{max-width:16rem;vertical-align:top}.finished-goods-notes-display{display:block;width:100%;margin:0;padding:.15rem 0;border:none;background:transparent;color:inherit;font:inherit;font-size:.82rem;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;cursor:text;line-height:1.35}.finished-goods-notes-display:hover{color:var(--color-gray)}.finished-goods-cell-input--notes{max-width:none;min-height:2.5rem;resize:vertical;text-transform:none;letter-spacing:normal;font-weight:400;white-space:pre-wrap}.finished-goods-shipment-refs{display:flex;flex-direction:column;gap:.35rem}.finished-goods-shipment-ref{display:flex;flex-wrap:wrap;align-items:center;gap:.4rem}.finished-goods-actions{display:flex;flex-wrap:wrap;gap:.45rem;margin:.55rem 0}.finished-goods-pin-list{margin:0;padding-left:1.1rem;font-size:.82rem}.finished-goods-pin-picker{display:flex;flex-wrap:wrap;gap:.35rem}.finished-goods-mini{padding:.25rem .45rem;font-size:.72rem}.finished-goods-check-grid{display:flex;flex-direction:column;gap:.25rem;max-height:14rem;overflow:auto}.finished-goods-check{display:inline-flex;align-items:center;gap:.4rem;font-size:.82rem;color:var(--color-gray);text-transform:none;letter-spacing:normal;font-weight:400}.finished-goods-linkish{margin-top:.55rem;padding:0;border:none;background:transparent;color:var(--color-dark-gray);font-size:.75rem;text-decoration:underline;text-underline-offset:.12em;cursor:pointer}.finished-goods-form-row label.finished-goods-grow{flex:1 1 14rem;min-width:12rem}.finished-goods-po-grid{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.75rem}.finished-goods-po-chip{display:flex;flex-direction:column;align-items:flex-start;gap:.15rem;min-width:10rem;padding:.45rem .6rem;border:1px solid var(--color-deep-gray);background:#181c22bf;color:var(--color-gray);text-align:left;cursor:pointer}.finished-goods-po-chip:hover{border-color:#f1fe0673}.finished-goods-po-chip.is-selected{border-color:var(--color-yellow);background:#f1fe061a}.finished-goods-po-chip-meta{font-size:.72rem;color:var(--color-dark-gray)}.finished-goods-kg-summary{display:flex;flex-direction:column;gap:.35rem;margin:.35rem 0 .75rem;padding:.55rem .65rem;border:1px solid rgba(90,160,230,.35);background:#284b7838;font-size:.85rem}.finished-goods-kg-label{display:inline-block;min-width:9.5rem;margin-right:.35rem;font-size:.68rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-dark-gray)}.finished-goods-share-preview{margin-top:.2rem;font-size:.78rem}.finished-goods-history-toggle{display:inline-flex;align-items:center;gap:.4rem;margin:0 0 .55rem;font-size:.72rem;font-weight:500;letter-spacing:normal;text-transform:none;color:var(--color-gray);cursor:pointer}.finished-goods-history-toggle input{margin:0}.finished-goods-form-grid--pair{align-items:start}.finished-goods-form-grid--pair>label,.finished-goods-form-grid--pair>.finished-goods-field{min-width:0}.finished-goods-notes{margin:.35rem 0 0;font-size:.82rem;color:var(--color-gray)}.finished-goods-toolbar{display:flex;justify-content:flex-end;gap:.5rem}.finished-goods-toolbar--buckets{justify-content:space-between;align-items:flex-end;flex-wrap:wrap;gap:.65rem 1rem;margin-bottom:.65rem}.finished-goods-toolbar-actions{display:flex;flex-wrap:wrap;gap:.5rem;align-items:center}.finished-goods-bucket-filters{flex:1 1 16rem;max-width:28rem}.finished-goods-field--filter{margin:0}.finished-goods-toolbar--orders{margin-top:.15rem}.finished-goods-col-check{width:2rem;text-align:center;vertical-align:middle}.finished-goods-table tbody tr.is-selected{background:#f1fe0614}.finished-goods-card--compact{padding:.65rem .75rem}.finished-goods-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.55rem .75rem;margin-bottom:.55rem;align-items:start}.finished-goods-form-grid label,.finished-goods-field{display:flex;flex-direction:column;gap:.22rem;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-dark-gray)}.finished-goods-field-label{display:block}.finished-goods-form-grid input,.finished-goods-form-grid select{min-height:2rem;padding:.25rem .4rem;border:1px solid var(--color-deep-gray);background:#181c22e6;color:var(--color-gray);font-size:.82rem;text-transform:none;letter-spacing:normal;font-weight:400}.finished-goods-span-2{grid-column:1 / -1}.finished-goods-kg-summary--compact{flex-direction:row;flex-wrap:wrap;align-items:baseline;gap:.75rem 1.25rem;margin:0 0 .55rem;padding:.4rem .55rem;font-size:.78rem}@media (max-width: 720px){.finished-goods-form-grid{grid-template-columns:1fr}}.finished-goods-shipment-cards{display:flex;flex-direction:column;gap:1rem}.finished-goods-col-toggle{width:2rem}.finished-goods-toggle{min-width:1.4rem;height:1.4rem;padding:0;line-height:1;border:1px solid var(--color-deep-gray);background:#23272deb;color:var(--color-gray);cursor:pointer}.finished-goods-shipment-row.is-expanded{background:#f1fe060a}.finished-goods-shipment-id-cell{display:inline-flex;align-items:center;gap:.35rem}.finished-goods-po-status-strip{display:inline-flex;flex-wrap:wrap;align-items:center;gap:.55rem}.finished-goods-po-cell{display:flex;flex-direction:column;align-items:flex-start;gap:.2rem}.finished-goods-po-flags{display:flex;flex-direction:column;gap:.05rem}.finished-goods-po-flag{font-size:.68rem;letter-spacing:.02em;color:var(--color-dark-gray);line-height:1.25}.finished-goods-po-flag--pending-quotation{color:#6ea5ff}.finished-goods-po-flag--ongoing{color:#e6b964}.finished-goods-po-flag--pending-shipment{color:#fac86e}.finished-goods-po-status-count{display:inline-flex;align-items:center;gap:.2rem;font-size:.78rem;font-variant-numeric:tabular-nums;color:var(--color-gray)}.finished-goods-row-input{min-height:1.85rem;max-width:100%;padding:.2rem .35rem;border:1px solid var(--color-deep-gray);background:#181c22e6;color:var(--color-gray);font-size:.78rem}.finished-goods-nested-row>td{padding:.75rem .85rem 1rem;background:#1e22298c;border-bottom:1px solid var(--color-deep-gray)}.finished-goods-shipment-card{border:1px solid var(--color-deep-gray);background:#1e22298c}.finished-goods-shipment-header{display:flex;flex-wrap:wrap;align-items:flex-end;gap:.55rem .85rem;padding:.65rem .75rem;border-bottom:1px solid var(--color-deep-gray);background:#161a20a6}.finished-goods-shipment-header-id{display:inline-flex;align-items:center;gap:.35rem;margin-right:.35rem;font-weight:700}.finished-goods-shipment-field{display:flex;flex-direction:column;gap:.2rem;font-size:.62rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--color-dark-gray)}.finished-goods-shipment-field input,.finished-goods-shipment-field select{min-height:2rem;min-width:8rem;padding:.25rem .4rem;border:1px solid var(--color-deep-gray);background:#181c22e6;color:var(--color-gray);font-size:.82rem;text-transform:none;letter-spacing:normal;font-weight:400}.finished-goods-shipment-field--notes{flex:1 1 12rem}.finished-goods-shipment-field--notes input{min-width:100%}.finished-goods-shipment-body{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:.75rem 1rem;padding:.55rem .75rem .85rem}.finished-goods-shipment-notes{grid-column:1 / -1}.finished-goods-field--notes{display:grid;gap:.3rem;margin:0}.finished-goods-shipment-notes-input{width:100%;min-height:3.2rem;resize:vertical;padding:.4rem .5rem;border:1px solid var(--color-deep-gray);background:#181c22e6;color:var(--color-gray);font:inherit;font-size:.8rem;line-height:1.35;white-space:pre-wrap}.finished-goods-shipment-notes-input:focus{outline:1px solid rgba(241,254,6,.35);outline-offset:0}.finished-goods-shipment-notes-display{display:block;width:100%;margin:0;padding:.4rem .5rem;border:1px solid transparent;background:transparent;color:var(--color-gray);font:inherit;font-size:.8rem;line-height:1.4;text-align:left;white-space:pre-wrap;overflow-wrap:anywhere;word-break:break-word;cursor:text}.finished-goods-shipment-notes-display:hover:not(:disabled){border-color:var(--color-deep-gray);background:#181c2273}.finished-goods-shipment-notes-display:disabled{opacity:.7;cursor:default}.finished-goods-shipment-col{min-width:0}.finished-goods-shipment-col .finished-goods-subheading{margin-top:.15rem}.finished-goods-table--compact th,.finished-goods-table--compact td{padding:.35rem .45rem;font-size:.78rem}.finished-goods-table--compact .finished-goods-status-select{min-width:7.5rem;font-size:.65rem;padding:.22rem .3rem}.finished-goods-add-row{width:100%;margin:0;padding:.4rem .5rem;border:1px dashed rgba(150,150,160,.4);background:transparent;color:var(--color-dark-gray);font-size:.78rem;text-align:left;cursor:pointer}.finished-goods-add-row:hover{border-color:#f1fe0673;color:var(--color-gray)}.finished-goods-attach-row>td{padding:.35rem .45rem;background:#181c2259}.finished-goods-attach-row .multi-search-select-control{min-height:1.85rem}.finished-goods-bucket-row-actions{display:flex;align-items:center;justify-content:flex-end;gap:.3rem}.finished-goods-icon-btn{display:inline-flex;align-items:center;justify-content:center;width:1.85rem;height:1.85rem;padding:0;border:1px solid var(--color-deep-gray);background:transparent;color:var(--color-dark-gray);cursor:pointer}.finished-goods-icon-btn svg{width:.9rem;height:.9rem}.finished-goods-icon-btn:hover:not(:disabled){color:var(--color-gray);border-color:#9696a0b3}.finished-goods-icon-btn:disabled{opacity:.45;cursor:default}.finished-goods-icon-btn--danger:hover:not(:disabled){color:#ffaaa5;border-color:#dc5f5fb3}.finished-goods-bucket-picker-modal{width:min(64rem,calc(100vw - 2rem));max-height:calc(100vh - 2.5rem);display:flex;flex-direction:column}.finished-goods-bucket-picker-modal .finished-goods-toolbar--buckets{margin-bottom:.55rem}.finished-goods-bucket-picker-count{font-size:.78rem;color:var(--color-dark-gray);align-self:flex-end;padding-bottom:.15rem}.finished-goods-bucket-picker-table{flex:1 1 auto;min-height:12rem;max-height:min(28rem,calc(100vh - 16rem));overflow:auto;margin-bottom:.25rem}.finished-goods-draft-row td{vertical-align:top;background:#f1fe060a}.finished-goods-draft-row input,.finished-goods-draft-row select{width:100%;min-height:1.85rem;padding:.2rem .35rem;border:1px solid var(--color-deep-gray);background:#181c22e6;color:var(--color-gray);font-size:.78rem}.finished-goods-draft-spec{margin-top:.25rem}.finished-goods-draft-all{display:flex;align-items:center;gap:.35rem;margin-bottom:.25rem;font-size:.75rem;color:var(--color-gray);cursor:pointer;-webkit-user-select:none;user-select:none}.finished-goods-draft-all input{width:auto;min-height:0;padding:0}.finished-goods-draft-all-hint{display:block;font-size:.72rem;line-height:1.85rem}.finished-goods-draft-actions{display:flex;flex-wrap:wrap;gap:.3rem}.finished-goods-mini--danger{color:#ffaaa5;border-color:#dc5f5f8c}.finished-goods-mini--danger:hover{border-color:#dc5f5fd9;color:#ffc8c3}@media (max-width: 960px){.finished-goods-shipment-body{grid-template-columns:1fr}.finished-goods-toolbar,.finished-goods-toolbar--orders,.finished-goods-toolbar--buckets{justify-content:stretch}.finished-goods-toolbar-actions{width:100%}.finished-goods-bucket-filters{max-width:none;flex:1 1 100%}}.app-frame{display:flex;height:100%;min-height:0;overflow:hidden;background:var(--color-main)}.main-area{flex:1;min-width:0;min-height:0;display:flex;flex-direction:column;overflow:hidden}.gate-check-main{align-items:center;justify-content:center}.main-header{flex-shrink:0;display:flex;justify-content:space-between;align-items:flex-start;gap:1.5rem;padding:1.75rem 2rem 1.25rem;border-bottom:1px solid var(--color-deep-gray)}.main-header-leading{display:flex;flex-direction:row;align-items:flex-end;gap:.65rem;min-width:0;flex:1;flex-wrap:wrap}.main-header-titles{min-width:0}.main-header-kpi{position:relative;display:flex;flex-direction:column;justify-content:flex-start;text-align:left;padding:.4rem .65rem;border:1px solid var(--color-deep-gray);background:#23272dd9;min-width:8rem;max-width:11.5rem;min-height:5rem;flex-shrink:0}.main-header-kpi--with-settings{padding-right:2.15rem}.main-header-kpi--with-info{padding-right:2rem}.main-header-kpi-settings-btn{position:absolute;top:.35rem;right:.4rem;display:inline-flex;align-items:center;justify-content:center;width:1.3rem;height:1.3rem;border:1px solid transparent;background:transparent;color:var(--color-gray);cursor:pointer}.main-header-kpi-settings-btn:hover,.main-header-kpi-settings-btn:focus-visible{color:var(--color-yellow);border-color:var(--color-deep-gray);outline:none}.main-header-kpi-settings-btn svg{width:.95rem;height:.95rem}.main-header-kpi-settings-glyph{display:inline-block;font-size:.95rem;line-height:1;font-weight:700}.main-header-kpi-info{position:absolute;top:.35rem;right:.4rem;display:inline-flex;align-items:center;justify-content:center;width:1rem;height:1rem;border:1px solid var(--color-deep-gray);border-radius:999px;background:#23272df2;color:var(--color-dark-gray);font-size:.62rem;font-weight:700;line-height:1;cursor:help;-webkit-user-select:none;user-select:none}.main-header-kpi-info:hover{color:var(--color-yellow);border-color:#f1fe0673}.main-header-kpi-label{font-size:.58rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--color-yellow);white-space:normal;overflow-wrap:anywhere;line-height:1.25}.main-header-kpi-value{margin-top:.25rem;font-size:1.35rem;font-weight:700;letter-spacing:.04em;color:var(--color-white);line-height:1.1}.main-header-kpi-delta{margin-top:.3rem;font-size:.65rem;font-weight:600;letter-spacing:.06em;color:var(--color-dark-gray);white-space:normal;overflow-wrap:anywhere;line-height:1.25}.main-header-kpi-delta--up{color:#82dca0}.main-header-kpi-delta--down{color:#eb8c82}.main-header-kpi-delta--flat{color:var(--color-dark-gray)}.page-title{margin:0;font-size:clamp(1.5rem,2.5vw,2rem);font-weight:600;letter-spacing:-.025em;text-transform:uppercase;color:var(--color-white)}.page-subtitle{margin:.5rem 0 0;max-width:42rem;font-size:1.25rem;font-weight:500;letter-spacing:.05em;line-height:1.45;text-transform:uppercase;color:var(--color-yellow)}.main-header-meta{display:flex;flex-direction:column;align-items:flex-end;gap:.75rem;flex-shrink:0}.docref{font-size:.65rem;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray)}.segmented{display:inline-flex;border:1px solid var(--color-deep-gray)}.segmented-item{padding:.35rem .65rem;font-size:.65rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--color-dark-gray);border-right:1px solid var(--color-deep-gray);background:transparent}.segmented-item:last-child{border-right:none}.segmented-item.is-on{background:#5d616659;color:var(--color-gray)}.main-body{flex:1;min-height:0;padding:1.5rem 2rem 2rem;overflow:auto}.main-body--schedule{padding:0;display:flex;flex-direction:column;overflow:hidden}.content-section{max-width:none;width:100%}.section-kicker{margin:0 0 .75rem;font-size:1rem;font-weight:700;letter-spacing:.02em;text-transform:uppercase;color:var(--color-white);padding-bottom:.5rem;border-bottom:1px solid var(--color-deep-gray)}.section-lead{margin:0 0 1rem;font-size:.9rem;line-height:1.5;color:var(--color-gray)}.section-lead strong{color:var(--color-white);font-weight:600}.presence-list{list-style:none;margin:0;padding:0}.presence-list li{display:flex;justify-content:space-between;gap:1rem;padding:.65rem 0;border-bottom:1px solid var(--color-deep-gray);font-size:.9rem}.presence-list li.self .name{color:var(--color-yellow)}.presence-list .section{color:var(--color-dark-gray);font-size:.75rem;text-transform:uppercase;letter-spacing:.06em}.muted{color:var(--color-dark-gray)}.user-avatar{display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;overflow:hidden;border:1px solid var(--color-deep-gray);background:var(--color-deep-gray);box-sizing:border-box}.user-avatar-img{width:100%;height:100%;object-fit:cover;display:block}.user-avatar-fallback{font-size:.95rem;font-weight:700;color:var(--color-white)}.user-avatar-sm .user-avatar-fallback{font-size:.5rem}.login-sidebar-min{--sidebar-inset: 14px;flex-shrink:0;width:260px;min-width:260px;height:100%;min-height:0;overflow-x:hidden;overflow-y:auto;background:var(--color-sidebar);border-right:1px solid var(--color-deep-gray);box-sizing:border-box}.login-sidebar-min .sidebar-brand{padding:1.25rem var(--sidebar-inset) 1.5rem;border-bottom:1px solid var(--color-deep-gray)}.login-sidebar-min .sparkmate-logo{display:block;height:22px;width:auto;max-width:100%;object-fit:contain;object-position:left center}.modal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;background:#0000007a}.modal-card{width:min(34rem,calc(100vw - 2rem));border:1px solid var(--color-deep-gray);background:var(--color-main);padding:1rem}.modal-title{margin:0 0 .85rem;font-size:.98rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-white)}.modal-form-grid{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.modal-form-grid label{display:grid;gap:.35rem;font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-gray)}.modal-form-grid input{width:100%;min-height:2.1rem;border:1px solid var(--color-deep-gray);background:#23272dd9;color:var(--color-white);padding:.35rem .5rem}.modal-actions{margin-top:.9rem;display:flex;justify-content:flex-end;gap:.6rem}.modal-actions button{min-height:2rem;min-width:5.25rem;border:1px solid var(--color-deep-gray);background:transparent;color:var(--color-gray);text-transform:uppercase;font-size:.68rem;letter-spacing:.08em;cursor:pointer}.barcode-scan-modal{width:min(28rem,calc(100vw - 2rem))}.barcode-scan-modal-hint{margin:.55rem 0 0;font-size:.8rem;color:var(--color-gray)}.barcode-scan-modal-error{margin:.55rem 0 0;font-size:.8rem;color:#ffaaa5}.barcode-scan-modal-fields{display:grid;gap:.65rem}.barcode-scan-modal-row{display:grid;grid-template-columns:8.5rem minmax(0,1fr);gap:.65rem;align-items:center}.barcode-scan-modal-row--input{margin:0}.barcode-scan-modal-label{font-size:.72rem;letter-spacing:.05em;text-transform:uppercase;color:var(--color-gray)}.barcode-scan-modal-value{color:var(--color-white);font-size:.92rem;word-break:break-all}.barcode-scan-modal-row--input input{width:100%;min-height:2.1rem;border:1px solid var(--color-deep-gray);background:#23272dd9;color:var(--color-white);padding:.35rem .5rem;font-size:1rem}.barcode-scan-modal-check{display:flex;align-items:center;gap:.45rem;margin:.15rem 0 0;font-size:.85rem;color:var(--color-gray);cursor:pointer;-webkit-user-select:none;user-select:none}.barcode-scan-modal-code{margin:0;padding:.75rem .85rem;border:1px solid var(--color-deep-gray);background:#00000047;color:var(--color-white);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:1.05rem;letter-spacing:.04em;word-break:break-all;white-space:pre-wrap}.btn-toolbar{min-height:1.65rem;padding:.28rem .68rem;font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.btn-secondary{min-height:1.65rem;padding:.28rem .68rem;border:1px solid var(--color-deep-gray);background:#5d616638;color:var(--color-gray);font-size:.72rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase}.btn-secondary:hover{background:#5d616659}.sidebar-menu-btn{display:none;align-items:center;justify-content:center;flex-shrink:0;width:2.25rem;height:2.25rem;margin-top:.15rem;padding:0;border:1px solid var(--color-deep-gray);background:#23272dd9;color:var(--color-gray);cursor:pointer}.sidebar-menu-btn svg{width:1.15rem;height:1.15rem}.sidebar-menu-btn:hover{color:var(--color-yellow);border-color:#f1fe0673}.sidebar-backdrop{display:none;position:fixed;top:0;right:0;bottom:0;left:0;z-index:210;margin:0;padding:0;border:none;border-radius:0;background:#0000007a;cursor:pointer}@media (max-width: 960px){.sidebar-menu-btn{display:inline-flex}.app-frame.is-sidebar-open .sidebar-backdrop{display:block}.login-sidebar-min{display:none}.main-header{flex-wrap:wrap;align-items:flex-start;gap:.85rem 1rem;padding:1rem 1rem .85rem}.main-header-leading{align-items:flex-start;gap:.55rem;width:100%}.main-header-titles{flex:1;min-width:0}.page-subtitle{font-size:.85rem;max-width:none}.main-header-kpi{min-width:calc(50% - .35rem);max-width:none;flex:1 1 calc(50% - .35rem);min-height:4.25rem}.main-header-meta{flex-direction:row;align-items:center;justify-content:space-between;width:100%}.main-body{padding:1rem 1rem 1.5rem}.modal-form-grid{grid-template-columns:1fr}.barcode-scan-modal-row{grid-template-columns:1fr;gap:.35rem;align-items:stretch}.modal-actions{flex-wrap:wrap}.modal-actions button{flex:1 1 auto}}@media (max-width: 720px){.main-header{padding:.85rem .75rem .75rem}.page-title{font-size:1.25rem}.page-subtitle{margin-top:.35rem;font-size:.72rem;letter-spacing:.04em}.main-header-kpi{min-width:100%;flex:1 1 100%;min-height:0;padding:.45rem .6rem}.main-header-kpi-value{font-size:1.15rem}.docref{display:none}.main-header-meta{justify-content:flex-end}.main-body{padding:.75rem .75rem 1.25rem}.login-btn{min-width:0;width:100%}.login-shell{padding:1.5rem 1rem}}:root{--color-black: #23272d;--color-sidebar: #1e2229;--color-main: #23272d;--color-yellow: #f1fe06;--color-deep-gray: #5d6166;--color-dark-gray: #8b8f94;--color-gray: #e8e9eb;--color-white: #ffffff;--font: "DM Sans", system-ui, sans-serif;--bp-nav: 960px;--bp-compact: 720px;--day-status-production-fg: rgb(190, 235, 200);--day-status-production-bg: rgba(42, 105, 68, .42);--day-status-production-border: rgba(95, 195, 125, .8);--day-status-production-focus-ring: rgba(130, 220, 155, .55);--day-status-standby-fg: rgb(250, 215, 145);--day-status-standby-bg: rgba(115, 85, 35, .45);--day-status-standby-border: rgba(220, 165, 70, .82);--day-status-standby-focus-ring: rgba(235, 175, 80, .5);--day-status-aborted-fg: rgb(255, 188, 182);--day-status-aborted-bg: rgba(115, 42, 48, .48);--day-status-aborted-border: rgba(215, 95, 95, .88);--day-status-aborted-focus-ring: rgba(230, 120, 115, .55);--schedule-inline-font-size: .72rem}*,*:before,*:after{box-sizing:border-box}html,body,#root{margin:0;height:100%;min-height:100%;font-family:var(--font);background:var(--color-main);color:var(--color-gray)}body{line-height:1.4}button{font-family:inherit;border-radius:0;border:1px solid var(--color-deep-gray);background:transparent;color:var(--color-gray);padding:.5rem 1rem;cursor:pointer}button:focus-visible{outline:1px solid var(--color-yellow);outline-offset:2px}button.primary{background:var(--color-yellow);color:var(--color-black);border-color:var(--color-yellow);font-weight:700}button.primary:hover:not(:disabled){color:var(--color-black);background:var(--color-yellow);border-color:var(--color-yellow);filter:brightness(.92)}button.primary:active:not(:disabled){filter:brightness(.88)}button.primary:disabled{opacity:.45;cursor:not-allowed}input,select{font-family:inherit;border-radius:0;border:1px solid var(--color-deep-gray);background:var(--color-black);color:var(--color-gray);padding:.5rem .75rem}input:focus-visible,select:focus-visible{outline:1px solid var(--color-yellow);outline-offset:0}.app-release-badge{display:inline-block;margin-top:.65rem;padding:.25rem .5rem;max-width:100%;font-size:.58rem;font-weight:600;letter-spacing:.1em;line-height:1.2;text-transform:uppercase;color:var(--color-black);border:1px solid var(--color-yellow);background:var(--color-yellow)}
