:root{color-scheme:light;--ink:#172033;--muted:#6c7587;--paper:#f4f6f8;--surface:#fff;--line:#e2e6eb;--navy:#111a2c;--navy-soft:#1b2942;--teal:#12aa8d;--teal-soft:#dff7f1;--blue:#4d72ee;--amber:#e49a30;--amber-soft:#fff1dc;--red:#d86262;--shadow:0 12px 32px rgba(23,32,51,.08);font-family:Inter,"Segoe UI",Arial,sans-serif;color:var(--ink)}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--paper)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}[hidden]{display:none!important}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible{outline:3px solid rgba(18,170,141,.32);outline-offset:2px}.login-screen{position:relative;display:grid;min-height:100vh;place-items:center;padding:24px;background:radial-gradient(circle at top right,#dff7f1,transparent 36%),var(--paper)}.login-back{position:absolute;top:23px;left:26px;color:#526173;font-size:.81rem}.login-card{width:min(450px,100%);padding:35px;border:1px solid var(--line);border-radius:20px;background:#fff;box-shadow:0 24px 60px rgba(23,32,51,.14)}.login-brand,.brand{display:flex;align-items:center;gap:12px}.login-brand{margin-bottom:29px}.brand-mark{display:grid;width:42px;height:42px;place-items:center;border-radius:12px 12px 12px 4px;background:var(--teal);color:#fff;font-size:1.4rem;font-weight:800;box-shadow:0 7px 16px rgba(18,170,141,.25)}.login-brand strong,.login-brand small,.brand strong,.brand small{display:block}.login-brand strong,.brand strong{font-size:.95rem}.login-brand small,.brand small{margin-top:3px;color:var(--muted);font-size:.63rem;letter-spacing:.06em;text-transform:uppercase}.eyebrow{color:#778294;font-size:.61rem;font-weight:800;letter-spacing:.08em}.login-card h1{margin:9px 0 5px;font-size:2rem}.login-card>p{margin:0 0 17px;color:var(--muted);font-size:.8rem}.login-disclaimer{display:grid;gap:5px;padding:11px;border:1px solid #bfe9dd;border-radius:8px;background:#f0fbf7}.login-disclaimer strong{color:#147f6a;font-size:.65rem}.login-disclaimer span{color:#4d6e64;font-size:.69rem;line-height:1.5}.profile-choices{display:grid;gap:8px;margin:16px 0}.profile-choice{display:grid;grid-template-columns:31px 1fr 16px;align-items:center;gap:10px;padding:10px;border:1px solid var(--line);border-radius:8px;background:white;text-align:left;cursor:pointer}.profile-choice.is-selected{border-color:#7ed1bf;background:#f3fcf9}.profile-choice>span{display:grid;width:30px;height:30px;place-items:center;border-radius:7px;background:var(--teal-soft);color:var(--teal);font-size:1rem}.profile-choice>div{display:grid;gap:3px}.profile-choice strong{font-size:.75rem}.profile-choice small{color:var(--muted);font-size:.65rem}.profile-choice>i{visibility:hidden;color:var(--teal);font-style:normal}.profile-choice.is-selected>i{visibility:visible}.login-button{display:flex!important;width:100%;justify-content:space-between}.login-footer{margin-top:12px;color:var(--muted);text-align:center;font-size:.66rem}.app-shell{display:grid;min-height:100vh;grid-template-columns:248px minmax(0,1fr)}.sidebar{position:sticky;z-index:4;top:0;display:flex;height:100vh;flex-direction:column;padding:28px 20px 18px;background:var(--navy);color:#fff}.brand{padding:0 5px 30px}.brand small{color:#93a1b8}.main-nav{display:grid;gap:6px}.nav-link{display:flex;align-items:center;gap:11px;padding:11px 12px;border:0;border-radius:9px;background:transparent;color:#aeb8c9;text-align:left;font-size:.83rem;font-weight:600;cursor:pointer}.nav-link span{width:20px;text-align:center;font-size:1rem}.nav-link:hover,.nav-link.active{background:var(--navy-soft);color:#fff}.sidebar-disclaimer{display:flex;align-items:center;gap:8px;margin:17px 7px;color:#a1b1be;font-size:.68rem}.sidebar-disclaimer i,.updated-badge i{width:7px;height:7px;border-radius:50%;background:var(--teal)}.user-panel{display:grid;grid-template-columns:35px 1fr 26px;align-items:center;gap:8px;margin-top:auto;padding:12px 9px;border-top:1px solid rgba(255,255,255,.12)}.avatar{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#253750;color:#d9f6ef;font-size:.67rem;font-weight:800}.user-panel strong,.user-panel small{display:block}.user-panel strong{font-size:.7rem}.user-panel small{margin-top:3px;color:#9ca9bb;font-size:.62rem}.logout-button{width:27px;height:27px;border:0;border-radius:5px;background:#223047;color:#e7eef6;cursor:pointer}.sidebar-back{margin-top:7px;color:#a7b6c9;text-align:center;font-size:.69rem}.content{min-width:0;padding:29px clamp(20px,4vw,56px) 55px}.mobile-bar{display:none}.fictional-banner{margin-bottom:21px;padding:10px 13px;border:1px solid #c7e7df;border-radius:8px;background:#effaf6;color:#276c5e;font-size:.73rem}.page{display:none}.page.active{display:block}.page-heading,.heading-actions,.panel-heading,.section-heading{display:flex;align-items:center;justify-content:space-between;gap:13px}.page-heading{margin-bottom:23px}.page-heading h1{margin:7px 0 5px;font-size:1.85rem;letter-spacing:-.04em}.page-heading p{margin:0;color:var(--muted);font-size:.77rem}.heading-actions{flex-wrap:wrap}.updated-badge{display:flex;align-items:center;gap:7px;padding:8px 10px;border-radius:6px;background:#e8f6f2;color:#25806b;font-size:.67rem}.primary-button,.secondary-button{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:38px;padding:9px 12px;border:1px solid transparent;border-radius:8px;font-size:.72rem;font-weight:750;cursor:pointer}.primary-button{background:var(--teal);color:#fff}.primary-button:hover{background:#08967a}.secondary-button{border-color:#dce2e8;background:#fff;color:#415067}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:13px}.metric-card{display:grid;grid-template-columns:36px 1fr;align-items:start;gap:10px;padding:16px;border:1px solid var(--line);border-radius:12px;background:white;box-shadow:0 5px 18px rgba(23,32,51,.04)}.metric-icon{display:grid;width:33px;height:33px;place-items:center;border-radius:8px;background:#f0f3f6;color:#536277}.metric-card.metric-primary .metric-icon{background:var(--teal-soft);color:var(--teal)}.metric-card.metric-warning .metric-icon{background:var(--amber-soft);color:var(--amber)}.metric-card small,.metric-card strong,.metric-card>div>span{display:block}.metric-card small{color:var(--muted);font-size:.68rem}.metric-card strong{margin:5px 0;font-size:1.5rem}.metric-card>div>span{color:var(--muted);font-size:.61rem}.overview-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:15px;margin-top:18px}.overview-panel,.timeline-panel,.history-panel,.management-panel,.machine-resource,.employee-card,.schedule-machine,.task-card{border:1px solid var(--line);border-radius:13px;background:white;box-shadow:0 5px 20px rgba(23,32,51,.035)}.overview-panel{min-height:190px;padding:19px}.panel-heading h2,.section-heading h2{margin:5px 0 0;font-size:1.02rem}.panel-chip{padding:6px 8px;border-radius:5px;background:#f2f4f7;color:#5d697b;font-size:.64rem}.progress-overview{display:flex;align-items:center;gap:22px;margin-top:17px}.donut{display:grid;width:92px;height:92px;place-items:center;border-radius:50%;background:conic-gradient(var(--teal) calc(var(--progress,0)*1%),#e8edf1 0)}.donut>span{display:grid;width:72px;height:72px;place-items:center;border-radius:50%;background:#fff;text-align:center}.donut strong{align-self:end;font-size:1.15rem}.donut small{align-self:start;color:var(--muted);font-size:.59rem}.progress-copy>strong,.progress-copy>span{display:block}.progress-copy>strong{font-size:.83rem}.progress-copy>span{margin-top:5px;color:var(--muted);font-size:.69rem}.legend{display:flex;align-items:center;gap:6px;margin-top:11px;color:var(--muted);font-size:.6rem}.legend i{width:8px;height:8px;border-radius:50%}.legend i.done{background:var(--teal)}.legend i.pending{background:#d9e0e7}.forecast-symbol{color:var(--teal);font-size:1.3rem}.forecast-date,.forecast-time{display:block}.forecast-date{margin-top:23px;font-size:1.3rem}.forecast-time{margin-top:5px;color:var(--teal);font-size:1rem}.forecast-panel>p{color:var(--muted);font-size:.68rem}.folder-section{margin-top:28px}.section-heading{margin-bottom:15px}.search-box{display:flex;align-items:center;gap:8px;padding:0 10px;border:1px solid var(--line);border-radius:7px;background:white;color:#66758b}.search-box input{width:180px;padding:9px 0;border:0;outline:0;background:transparent;font-size:.72rem}.folder-grid,.resource-grid,.employee-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:15px}.folder-card{position:relative;min-width:0;padding:17px;border:1px solid var(--line);border-radius:12px;background:white;text-align:left;cursor:pointer}.folder-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:18px}.folder-icon{color:var(--teal);font-size:1.2rem}.status-pill{padding:5px 7px;border-radius:5px;font-size:.61rem;font-weight:700}.status-active{background:#e4f4ef;color:#147c66}.status-planned{background:#fff2df;color:#936119}.status-done{background:#e7eefb;color:#3855a5}.folder-body>small{color:var(--muted);font-size:.66rem}.folder-body h3{margin:5px 0 12px;font-size:.93rem}.folder-progress{height:5px;border-radius:5px;background:#e9edf1}.folder-progress>span{display:block;height:100%;border-radius:5px;background:var(--teal)}.folder-progress-label{display:flex;justify-content:space-between;margin-top:6px;color:var(--muted);font-size:.59rem}.folder-body dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:15px 0 12px}.folder-body dt{color:var(--muted);font-size:.58rem}.folder-body dd{margin:4px 0 0;font-size:.64rem;font-weight:700}.folder-card>footer{display:flex;justify-content:space-between;padding-top:10px;border-top:1px solid var(--line);color:var(--muted);font-size:.6rem}.folder-card>footer b{color:var(--teal)}.text-back{margin-bottom:15px;padding:0;border:0;background:transparent;color:#577086;cursor:pointer;font-size:.74rem}.machine-summary{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.machine-summary>article{padding:14px;border:1px solid var(--line);border-radius:10px;background:#fff}.machine-summary small,.machine-summary strong,.machine-summary span{display:block}.machine-summary small{color:var(--muted);font-size:.64rem}.machine-summary strong{margin:6px 0;font-size:1.1rem}.machine-summary span{color:var(--muted);font-size:.61rem}.automation-note{display:grid;gap:5px;margin:17px 0;padding:12px 15px;border:1px solid #bce8dc;border-radius:8px;background:#edf9f5}.automation-note strong{color:#16735f;font-size:.74rem}.automation-note span{color:#4b7368;font-size:.7rem}.timeline-panel{padding:18px}.completed-panel{margin-top:15px}.drag-note{display:block;margin-top:5px;color:var(--muted);font-size:.64rem}.operation-list{margin-top:15px}.operation-row{display:grid;grid-template-columns:32px minmax(145px,1fr) 80px 80px 60px 65px;align-items:center;gap:9px;padding:13px 4px;border-top:1px solid #edf0f3}.operation-row.is-dragging{opacity:.45;background:#eaf8f4}.sequence{display:grid;width:27px;height:27px;place-items:center;border:1px solid #d9e0e5;border-radius:7px;color:var(--teal);font-size:.76rem}.operation-main>strong,.operation-main>span,.operation-date>small,.operation-date>strong,.operation-duration>small,.operation-duration>strong{display:block}.operation-main>strong{font-size:.75rem}.operation-main>span{margin-top:4px;color:var(--muted);font-size:.63rem}.operation-date>small,.operation-duration>small{color:#84909f;font-size:.57rem}.operation-date>strong,.operation-duration>strong{margin-top:4px;font-size:.63rem}.row-actions{display:flex;gap:3px}.move-button{width:28px;height:27px;border:1px solid #dbe3e8;border-radius:5px;background:#fff;color:var(--teal);cursor:pointer}.move-button:disabled{opacity:.3}.schedule-board{display:grid;gap:13px}.schedule-machine{padding:17px}.schedule-machine-header{display:flex;justify-content:space-between;gap:10px;margin-bottom:12px}.schedule-machine-header>strong{font-size:.85rem}.schedule-machine-header>span{color:var(--muted);font-size:.69rem}.schedule-track{display:flex;gap:5px;overflow-x:auto}.schedule-block{flex:1;min-width:120px;padding:10px;border-left:3px solid var(--teal);border-radius:4px;background:#eff8f5}.schedule-block>strong,.schedule-block>span{display:block}.schedule-block>strong{font-size:.68rem}.schedule-block>span{margin-top:5px;color:#537269;font-size:.62rem}.machine-resource,.employee-card{padding:17px}.machine-resource>span,.employee-card>span{color:var(--muted);font-size:.66rem}.machine-resource>h2,.employee-card>h2{margin:7px 0 12px;font-size:.91rem}.resource-meta{display:grid;gap:8px;margin-top:12px;color:#526273;font-size:.7rem}.resource-meta strong{color:var(--ink)}.qualification-tags{display:flex;flex-wrap:wrap;gap:6px;margin-top:12px}.qualification-tags>span{padding:5px 7px;border-radius:5px;background:#edf7f4;color:#257763;font-size:.61rem}.resource-action{width:100%;margin-top:15px}.history-panel{padding:17px}.history-list{display:grid;gap:13px}.history-entry{display:grid;grid-template-columns:13px 1fr;gap:10px;padding-bottom:12px;border-bottom:1px solid #edf0f3}.history-entry>i{width:9px;height:9px;margin-top:4px;border-radius:50%;background:var(--teal)}.history-entry>div>strong,.history-entry>div>span,.history-entry>div>small{display:block}.history-entry strong{font-size:.75rem}.history-entry span{margin-top:4px;color:var(--muted);font-size:.68rem}.history-entry small{margin-top:5px;color:#8995a4;font-size:.61rem}.management-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}.management-panel{padding:18px}.management-panel h2{margin:5px 0 12px;font-size:.91rem}.management-list{display:grid}.management-item{display:flex;justify-content:space-between;gap:10px;padding:10px 0;border-top:1px solid #edf0f3}.management-item>div>strong,.management-item>div>small{display:block}.management-item strong{font-size:.69rem}.management-item small{margin-top:4px;color:var(--muted);font-size:.61rem}.management-item>span{color:var(--teal);font-size:.63rem}.task-machine-filter{display:flex;align-items:end;gap:10px;max-width:760px;margin-bottom:15px;padding:12px;border:1px solid var(--line);border-radius:9px;background:white}.task-machine-filter label{display:grid;flex:1;gap:5px;color:var(--muted);font-size:.68rem}.task-machine-filter select{min-height:38px;padding:7px;border:1px solid var(--line);border-radius:6px;background:white}.mobile-task-list{display:grid;max-width:780px;gap:13px}.task-card{padding:19px}.task-card h2{margin:11px 0 5px;font-size:1rem}.task-card>p{margin:0;color:var(--muted);font-size:.74rem}.task-card dl{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:14px 0}.task-card dl>div{padding:10px;border-radius:7px;background:#f6f8fa}.task-card dt{color:var(--muted);font-size:.61rem}.task-card dd{margin:4px 0 0;font-size:.73rem;font-weight:700}.task-buttons{display:flex;gap:8px}.portal-dialog{width:min(480px,calc(100% - 24px));padding:21px;border:0;border-radius:14px;background:white;box-shadow:0 24px 60px rgba(23,32,51,.22)}.portal-dialog::backdrop{background:rgba(17,26,44,.45)}.dialog-header{display:flex;justify-content:space-between;gap:10px;margin-bottom:17px}.dialog-header h2{margin:6px 0 0;font-size:1.1rem}.dialog-close{width:30px;height:30px;border:0;border-radius:6px;background:#f0f3f6;color:#566577;font-size:1.2rem;cursor:pointer}.portal-dialog form,.portal-dialog>label{display:grid;gap:10px}.portal-dialog form>label,.portal-dialog>label{display:grid;gap:5px;color:#4f5c70;font-size:.72rem}.portal-dialog select{width:100%;padding:9px;border:1px solid #dce2e8;border-radius:6px;background:white;color:var(--ink);font-size:.75rem}.dialog-note{padding:10px;border-radius:7px;background:#eef8f4;color:#376d5f;font-size:.7rem;line-height:1.5}.portal-dialog footer{display:flex;justify-content:flex-end;gap:8px;margin-top:8px}.completion-copy{margin-bottom:13px;color:#536477;font-size:.77rem}.toast-region{position:fixed;z-index:20;right:17px;bottom:17px;display:grid;gap:7px;pointer-events:none}.toast{padding:11px 14px;border:1px solid #bbe4d7;border-radius:7px;background:#f0faf6;color:#226c58;box-shadow:0 8px 24px rgba(23,32,51,.12);font-size:.73rem}.toast.warning{border-color:#ead7ae;background:#fff8e7;color:#805f21}

@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,1fr)}.folder-grid,.resource-grid,.employee-grid{grid-template-columns:repeat(2,1fr)}.heading-actions{justify-content:flex-end}.operation-row{grid-template-columns:30px minmax(120px,1fr) 68px 68px 53px 60px;gap:6px}}@media(max-width:900px){.overview-grid{grid-template-columns:1fr}.management-grid{grid-template-columns:1fr}.machine-summary{grid-template-columns:1fr 1fr}.page-heading{align-items:flex-start}.updated-badge{display:none}}@media(max-width:740px){.app-shell{display:block}.sidebar{position:fixed;top:0;bottom:0;left:0;width:258px;transform:translateX(-100%);transition:transform .2s}.sidebar.is-open{transform:translateX(0);box-shadow:0 0 0 100vmax rgba(17,26,44,.34)}.content{padding:15px 13px 38px}.mobile-bar{display:flex;align-items:center;gap:10px;margin-bottom:13px}.menu-toggle{width:35px;height:35px;border:1px solid var(--line);border-radius:6px;background:#fff;color:var(--ink)}.mobile-bar>span{color:#667488;font-size:.68rem;font-weight:700}.fictional-banner{margin-bottom:17px;font-size:.69rem;line-height:1.5}.page-heading h1{font-size:1.5rem}.page-heading p{font-size:.72rem}.heading-actions>.secondary-button{display:none}.heading-actions>.primary-button{padding:8px;font-size:.64rem}.metric-grid{gap:9px}.metric-card{grid-template-columns:29px 1fr;gap:7px;padding:12px}.metric-icon{width:28px;height:28px}.metric-card strong{font-size:1.2rem}.metric-card>div>span{font-size:.56rem}.folder-grid,.resource-grid,.employee-grid{grid-template-columns:1fr}.section-heading{align-items:flex-start;flex-wrap:wrap}.search-box{width:100%}.search-box input{width:100%}.machine-summary{gap:8px}.timeline-panel{padding:13px}.operation-row{grid-template-columns:29px 1fr 63px;gap:7px}.operation-main{grid-column:2}.operation-date:nth-of-type(2){grid-column:1/3}.operation-duration{grid-column:3}.row-actions{grid-column:3;grid-row:1;justify-content:flex-end}.progress-overview{gap:15px}.task-card{padding:15px}.task-buttons{flex-wrap:wrap}.task-buttons>.primary-button,.task-buttons>.secondary-button{flex:1}.login-screen{padding:18px}.login-card{padding:27px 20px}.login-back{top:11px;left:12px;font-size:.7rem}.portal-dialog{padding:16px}}@media(max-width:380px){.page-heading{gap:7px}.heading-actions>.primary-button{font-size:.59rem}.metric-card small{font-size:.62rem}.task-card dl{gap:7px}.profile-choice small{font-size:.6rem}}
