@import "https://fonts.googleapis.com/css2?family=Inter:wght@400;500;600;700&display=swap";*{box-sizing:border-box}body{min-width:320px;color:var(--ink);background:var(--page);margin:0;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;font-size:14px}button,input,select{font:inherit}button{color:inherit}button:focus-visible,input:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #1976d240}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.app-shell{grid-template-columns:250px minmax(0,1fr);min-height:100vh;display:grid}.sidebar{color:#dfeafd;background:linear-gradient(165deg,#082342,#0d335b);flex-direction:column;height:100vh;padding:22px 14px;display:flex;position:sticky;top:0}.sidebar-brand{color:#fff;padding:5px 12px 28px}.sidebar-brand>span{letter-spacing:.3px;font-size:22px;font-weight:900;display:block}.sidebar-brand small{opacity:.66;margin-top:4px;font-size:11px;display:block}.sidebar nav{gap:5px;display:grid}.nav-item{color:#dfeafd;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:9px;align-items:center;gap:11px;width:100%;min-height:45px;padding:0 12px;font-size:13px;font-weight:680;display:flex}.nav-item.active{color:#fff;background:#1a70bc;box-shadow:inset 3px 0 #8bd6ff}.nav-label{color:#8fa9c4;letter-spacing:.08em;text-transform:uppercase;margin:25px 12px 5px;font-size:10px;font-weight:800}.nav-item.disabled{opacity:.38;cursor:not-allowed;gap:9px}.nav-item.disabled small{margin-left:auto;font-size:9px}.nav-dot{background:#9eb6cd;border-radius:50%;width:8px;height:8px}.sidebar-foot{border-top:1px solid #ffffff21;margin-top:auto;padding:17px 12px 5px}.sidebar-foot span,.sidebar-foot small{display:block}.sidebar-foot span{font-size:12px;font-weight:700}.sidebar-foot small{color:#91aac4;margin-top:3px;font-size:10px}.main-area{min-width:0}.topbar{z-index:10;border-bottom:1px solid var(--line);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffffed;justify-content:space-between;align-items:center;min-height:68px;padding:0 28px;display:flex;position:sticky;top:0}.topbar>div{align-items:center;gap:12px;display:flex}.topbar-plant{color:#38516c;align-items:center;gap:8px;font-size:12px;font-weight:800;display:inline-flex}.top-actions{gap:9px;display:flex}.mobile-menu{background:0 0;border:0;display:none}.profile-button,.secondary-button,.primary-button{cursor:pointer;border-radius:8px;justify-content:center;align-items:center;gap:8px;min-height:38px;padding:0 13px;font-size:12px;font-weight:760;display:inline-flex}.profile-button,.secondary-button{color:#2a4865;background:#fff;border:1px solid #cfdbe7}.primary-button{color:#fff;background:linear-gradient(#2789df,#116cbe);border:1px solid #1269ba;box-shadow:0 3px 8px #1a6ab82e}.primary-button:disabled,.secondary-button:disabled{opacity:.5;cursor:not-allowed}.install-button{display:inline-flex}.save-warning{color:#9a2936;background:var(--red-soft);border:1px solid #f4c7cd;border-radius:9px;align-items:center;gap:9px;margin:17px 28px 0;padding:11px 14px;font-size:12px;display:flex}.save-warning button{color:#9a2936;cursor:pointer;background:#fff;border:0;border-radius:6px;margin-left:auto;padding:6px 9px;font-weight:800}.toast{z-index:200;color:#fff;background:#12385e;border-radius:10px;align-items:center;gap:8px;padding:12px 16px;font-size:13px;font-weight:700;display:flex;position:fixed;bottom:22px;left:50%;transform:translate(-50%);box-shadow:0 10px 28px #0b254866}.workspace{max-width:1680px;margin:0 auto;padding:28px}.page-heading{justify-content:space-between;align-items:flex-end;gap:20px;margin-bottom:20px;display:flex}.eyebrow{color:#2c7cc6;letter-spacing:.1em;text-transform:uppercase;font-size:10px;font-weight:900;display:block}.page-heading h1{letter-spacing:-.6px;margin:5px 0 4px;font-size:28px}.page-heading p{color:var(--muted);margin:0;font-size:13px}.heading-actions{flex-wrap:wrap;justify-content:flex-end;gap:8px;display:flex}.week-toolbar{align-items:center;gap:8px;margin-bottom:15px;display:flex}.week-toolbar label{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;min-height:38px;padding:0 11px;font-size:12px;font-weight:750;display:flex}.week-toolbar input{color:#0000;cursor:pointer;background:0 0;border:0;width:122px}.week-toolbar label span{pointer-events:none;margin-left:-118px}.week-toolbar .icon-button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:8px;width:38px;height:38px}.formula-note{color:#557087;margin-left:8px;font-size:11px;font-weight:700}.import-summary,.empty-callout,.furniture-note{border-radius:10px;align-items:center;gap:10px;margin-bottom:17px;padding:13px 15px;font-size:12px;display:flex}.import-summary{color:#166f43;background:var(--green-soft);border:1px solid #bee9d0}.empty-callout{color:#587088;background:#f9fcff;border:1px dashed #adc2d5}.furniture-note{color:#48647c;background:#edf6ff;border:1px solid #d9e7f2}.furniture-note strong{color:var(--ink)}.calendar-triple{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:18px;display:grid}.calendar-card,.plan-card,.attendance-card,.capacity-card,.mini-form,.staff-calendar-overview,.vacation-card{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);border-radius:12px}.calendar-card{overflow:hidden}.calendar-card header{border-bottom:1px solid var(--line);align-items:flex-start;gap:10px;padding:15px 16px 12px;display:flex}.calendar-card header svg{color:#2b7bc5;margin-top:2px}.calendar-card h3,.calendar-card p{margin:0}.calendar-card p{color:var(--muted);margin-top:3px;font-size:10px}.calendar-days{grid-template-columns:repeat(5,minmax(0,1fr));min-height:94px;display:grid}.calendar-days>*,.calendar-days button{text-align:center;background:#fff;border:0;border-right:1px solid #edf1f5;flex-direction:column;justify-content:center;align-items:center;gap:4px;min-width:0;padding:9px 3px;display:flex}.calendar-days>:last-child{border-right:0}.calendar-days span{color:#617488;text-transform:capitalize;font-size:9px;font-weight:800}.calendar-days input{text-align:center;background:0 0;border:0;border-bottom:1px solid #b9c8d6;width:38px;font-size:17px;font-weight:900}.calendar-days small{color:#8797a8;font-size:8px}.calendar-days .today{background:#eaf5ff}.count-days strong{color:#285572;font-size:23px}.totals-days button{cursor:pointer}.totals-days button:hover{background:#f5faff}.totals-days strong{font-size:16px}.totals-days i{color:#8b99a8;font-style:normal}.totals-days b{font-weight:900}.totals-days .late b{color:var(--red)}.totals-days .ok b{color:var(--green)}.plan-card{overflow:hidden}.section-title{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:16px;padding:19px 20px;display:flex}.section-title h2{margin:4px 0 0;font-size:18px}.hint{color:var(--muted);font-size:11px}.schedule-scroll{overflow-x:auto}.schedule-grid{grid-template-columns:150px repeat(5,minmax(165px,1fr));min-width:980px;display:grid}.schedule-corner,.schedule-head{border-bottom:1px solid var(--line);color:#728397;letter-spacing:.04em;text-transform:uppercase;background:#f7f9fc;align-items:center;min-height:42px;padding:0 13px;font-size:10px;font-weight:900;display:flex}.schedule-head{justify-content:center}.schedule-head.today{color:#146dba;background:#eaf5ff}.schedule-row{display:contents}.line-name{border-bottom:1px solid var(--line);background:#fbfcfe;flex-direction:column;justify-content:center;gap:4px;min-height:122px;padding:12px 13px;display:flex}.line-name strong{font-size:13px}.line-name small{color:var(--muted);font-size:9px}.schedule-cell{border:0;border-right:1px solid var(--line);border-bottom:1px solid var(--line);text-align:left;cursor:pointer;background:#fff;flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:4px;min-height:122px;padding:10px 11px;display:flex}.schedule-cell.selected{background:#edf7ff;box-shadow:inset 0 0 0 2px #237aca}.schedule-cell.ok{box-shadow:inset 3px 0 var(--green)}.schedule-cell.late{box-shadow:inset 3px 0 var(--red)}.cell-total{font-size:15px;font-weight:900;display:block}.cell-total i{color:#8796a4;font-style:normal}.schedule-cell.ok .cell-total b{color:var(--green)}.schedule-cell.late .cell-total b{color:var(--red)}.schedule-cell small{color:#8495a7;font-size:9px}.schedule-cell em{color:#4e6680;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:9px;font-style:normal;display:block;overflow:hidden}.modal-backdrop{z-index:100;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#05172b85;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.modal{background:#fff;border-radius:14px;width:min(760px,100%);max-height:calc(100vh - 40px);overflow:auto;box-shadow:0 28px 76px #05172b59}.modal-head{z-index:1;border-bottom:1px solid var(--line);background:#fff;justify-content:space-between;align-items:center;padding:17px 20px;display:flex;position:sticky;top:0}.modal-head h2{margin:0;font-size:17px}.icon-button{cursor:pointer;background:0 0;border:0;border-radius:7px;place-items:center;width:36px;height:36px;display:grid}.icon-button:hover{background:#eef4f8}.modal-form{gap:15px;padding:20px;display:grid}.modal-form>label,.mini-form label{gap:6px;display:grid}.modal-form label>span,.variants legend{color:#50677f;font-size:10px;font-weight:850}.modal-form input,.modal-form select,.mini-form input,.mini-form select,.vacation-card input,.vacation-card select{background:#fff;border:1px solid #cdd9e5;border-radius:7px;min-height:40px;padding:0 10px}.modal-form footer{justify-content:flex-end;gap:9px;margin-top:4px;display:flex}.variants{border:1px solid var(--line);border-radius:9px;grid-template-columns:repeat(4,1fr);gap:8px;margin:0;padding:13px;display:grid}.variants legend{padding:0 4px}.variants label{gap:5px;display:grid}.variants label span{font-size:9px;font-weight:800}.variants input{width:100%;min-height:36px}.variants strong{color:#225779;grid-column:1/-1;font-size:11px}.install-options{gap:12px;padding:20px;display:grid}.install-options section{border:1px solid var(--line);border-radius:9px;padding:15px}.install-options strong,.install-options p,.install-options small{display:block}.install-options strong{font-size:13px}.install-options p{color:#536a81;margin:6px 0;font-size:12px;line-height:1.5}.install-options small{color:#748699;font-size:10px;line-height:1.45}.order-manager{padding:18px}.order-manager>p{color:var(--muted);margin:0 0 14px;font-size:11px}.order-line{border:1px solid var(--line);border-radius:9px;margin-bottom:8px;overflow:hidden}.order-line-head{cursor:pointer;text-align:left;background:#f8fafc;border:0;grid-template-columns:1fr auto auto;align-items:center;gap:10px;width:100%;min-height:46px;padding:0 13px;display:grid}.order-line-head strong{font-size:13px}.order-line-head span{color:var(--muted);font-size:10px}.rotated{transform:rotate(180deg)}.order-item{color:#54708a;cursor:grab;background:#fff;border-top:1px solid #e8eef4;grid-template-columns:26px 1fr auto;align-items:center;gap:8px;min-height:54px;padding:7px;display:grid}.order-item:first-child{border-top:0}.order-item>div strong,.order-item>div small{display:block}.order-item>div strong{color:var(--ink);font-size:11px}.order-item>div small{color:var(--muted);margin-top:3px;font-size:9px}.order-actions{gap:4px;display:flex}.order-actions button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:5px;width:27px;height:27px}.order-actions button:disabled{opacity:.3}.empty-row{color:var(--muted);text-align:center;padding:18px;font-size:11px;display:block}.day-details{gap:1px;padding:17px;display:grid}.day-details section{border-bottom:1px solid #e7eef4;grid-template-columns:130px 1fr;gap:5px;padding:12px 4px;display:grid}.day-details section:last-child{border-bottom:0}.day-details strong,.day-details span{font-size:12px}.day-details i{color:#81909f;font-style:normal}.day-details b.success{color:var(--green)}.day-details b.danger{color:var(--red)}.day-details small{color:var(--muted);grid-column:2;font-size:9px;line-height:1.45}.staff-calendar-overview{justify-content:space-between;align-items:center;gap:16px;margin-bottom:16px;padding:17px 19px;display:flex}.staff-calendar-overview h2,.staff-calendar-overview p{margin:0}.staff-calendar-overview p{color:var(--muted);margin-top:4px;font-size:11px}.date-picker-row{gap:6px;display:flex}.date-picker-row button{border:1px solid var(--line);cursor:pointer;background:#fff;border-radius:7px;gap:3px;min-width:75px;padding:8px;display:grid}.date-picker-row button.selected{background:#eaf5ff;border-color:#2c82cc}.date-picker-row button.today strong{color:#1473c1}.date-picker-row strong{text-transform:capitalize;font-size:10px}.date-picker-row span{color:var(--muted);font-size:8px}.staff-layout{grid-template-columns:minmax(0,1fr) 260px;gap:16px;display:grid}.attendance-table{overflow:auto}.attendance-head,.attendance-row{grid-template-columns:minmax(180px,1fr) 105px 85px 68px 115px;align-items:center;gap:10px;min-width:620px;padding:9px 16px;display:grid}.attendance-head{color:#718397;text-transform:uppercase;background:#f8fafc;min-height:38px;font-size:9px;font-weight:850}.attendance-row{border-top:1px solid #e7eef4;min-height:64px}.attendance-row.holiday{background:#fff9ea}.employee-name{text-align:left;cursor:pointer;background:0 0;border:0;align-items:center;gap:9px;display:flex}.employee-name span strong,.employee-name span small{display:block}.employee-name strong{font-size:12px}.employee-name small{color:#6f8497;margin-top:3px;font-size:9px}.attendance-row select,.attendance-row>input,.percent-input input{background:#fff;border:1px solid #ccd8e3;border-radius:6px;width:100%;min-width:0;height:35px;padding:0 7px;font-size:11px}.checkbox-cell{align-items:center;gap:7px;font-size:12px;display:flex}.checkbox-cell input{accent-color:#1477c7;width:20px;height:20px}.percent-input{grid-template-columns:1fr auto;align-items:center;gap:5px;display:grid}.percent-input span{color:var(--muted);font-size:10px}.staff-side{align-content:start;gap:14px;display:grid}.capacity-card h2,.mini-form h2{margin:0 0 12px;font-size:15px}.capacity-card>div{border-top:1px solid #e7eef4;justify-content:space-between;gap:8px;padding:10px 0;display:flex}.capacity-card strong{font-size:11px}.capacity-card span{color:#2c7dba;font-size:10px;font-weight:800}.capacity-card small{color:var(--muted);margin-top:8px;font-size:9px;line-height:1.45;display:block}.mini-form{gap:9px;display:grid}.vacation-card{justify-content:space-between;align-items:center;gap:18px;margin-top:16px;padding:18px;display:flex}.vacation-card h2,.vacation-card p{margin:0}.vacation-card h2{margin-top:4px;font-size:16px}.vacation-card p{color:var(--muted);margin-top:4px;font-size:11px}.vacation-card form{gap:8px;display:flex}.employee-calendar-head{color:var(--muted);justify-content:space-between;align-items:center;gap:10px;padding:15px 18px;font-size:10px;display:flex}.employee-calendar-head label{align-items:center;gap:7px;font-weight:800;display:flex}.employee-calendar-head input{border:1px solid var(--line);border-radius:6px;padding:5px}.month-grid{grid-template-columns:repeat(7,1fr);gap:5px;padding:0 18px 18px;display:grid}.month-grid>strong{color:#75879a;text-align:center;padding:5px 2px;font-size:9px}.month-grid>div{border-radius:7px;align-content:space-between;min-height:59px;padding:7px;font-size:11px;display:grid}.month-grid>div span{font-weight:850}.month-grid>div b{text-align:right;font-size:10px}.furniture-lines{gap:11px;display:grid}.furniture-lines details{border:1px solid var(--line);box-shadow:var(--shadow);background:#fff;border-radius:11px;overflow:hidden}.furniture-lines summary{cursor:pointer;justify-content:space-between;align-items:center;min-height:62px;padding:0 18px;list-style:none;display:flex}.furniture-lines summary::-webkit-details-marker{display:none}.furniture-lines summary span strong,.furniture-lines summary span small{display:block}.furniture-lines summary strong{font-size:14px}.furniture-lines summary small{color:var(--muted);margin-top:4px;font-size:10px}.furniture-lines details[open] summary{border-bottom:1px solid var(--line)}.furniture-lines details[open] summary svg{transform:rotate(180deg)}.furniture-list{padding:6px 15px 14px}.furniture-row{border-bottom:1px solid #e7eef4;grid-template-columns:58px minmax(0,1fr) 150px;align-items:center;gap:12px;padding:10px 3px;display:grid}.furniture-row>div strong,.furniture-row>div small{display:block}.furniture-row>div strong{font-size:12px}.furniture-row>div small{color:var(--muted);margin-top:4px;font-size:9px}.product-image{color:#5a7891;text-align:center;cursor:pointer;background:#f4f8fb;border:1px dashed #9eb5c8;border-radius:7px;place-items:center;gap:3px;width:52px;height:42px;font-size:8px;display:grid;position:relative;overflow:hidden}.product-image img{object-fit:cover;width:100%;height:100%}.product-image input{opacity:0;cursor:pointer;position:absolute;inset:0}.norm-editor{gap:4px;display:grid}.norm-editor span{color:var(--muted);font-size:9px;font-weight:800}.norm-editor input{border:1px solid #cbd8e4;border-radius:6px;height:36px;padding:0 8px}.add-model-button{color:#1e73bc;cursor:pointer;background:#eaf5ff;border:0;border-radius:7px;align-items:center;gap:7px;margin-top:12px;padding:8px 10px;font-size:11px;font-weight:800;display:inline-flex}.new-model-form{background:#f7fbff;border-radius:8px;grid-template-columns:minmax(0,1fr) 110px auto auto;gap:8px;margin-top:12px;padding:10px;display:grid}.new-model-form input{border:1px solid #cbd8e4;border-radius:6px;min-width:0;height:36px;padding:0 8px}.admin-tabs{gap:7px;margin-bottom:16px;display:flex}.admin-tabs button,.agency-picker button{border:1px solid var(--line);color:#526a82;cursor:pointer;background:#fff;border-radius:8px;padding:9px 13px;font-size:11px;font-weight:800}.admin-tabs button.active,.agency-picker button.active{color:#fff;background:#1b78c6;border-color:#1c78c6}.notice{border-radius:9px;margin-bottom:14px;padding:11px 14px;font-size:12px;font-weight:700}.notice.success{color:#126e42;background:var(--green-soft);border:1px solid #bce8ce}.notice.warning{color:#a52c38;background:var(--red-soft);border:1px solid #f1c9cf}.admin-layout{grid-template-columns:minmax(300px,.86fr) minmax(380px,1.14fr);gap:16px;display:grid}.admin-card .section-title{margin:-18px -18px 16px;padding:0 0 14px}.admin-card label{color:#536a81;gap:6px;margin-top:11px;font-size:10px;font-weight:850;display:grid}.admin-card input,.admin-card select,.inline-form select{min-height:39px;color:var(--ink);background:#fff;border:1px solid #cbd8e4;border-radius:7px;padding:0 9px;font-size:12px}.form-grid{grid-template-columns:1fr 1fr;gap:10px;display:grid}.admin-card>.primary-button{margin-top:16px}.staff-admin-list{max-height:510px;overflow:auto}.staff-admin-row{text-align:left;cursor:pointer;background:#fff;border:0;border-top:1px solid #e7eef4;grid-template-columns:36px 1fr auto;align-items:center;gap:9px;width:100%;padding:10px 2px;display:grid}.staff-admin-row:hover{background:#f6fbff}.staff-admin-row:first-child{border-top:0}.avatar{color:#1a6dae;background:#e7f3fd;border-radius:50%;place-items:center;width:31px;height:31px;font-size:10px;font-weight:900;display:grid}.staff-admin-row strong,.staff-admin-row small{display:block}.staff-admin-row strong{font-size:12px}.staff-admin-row small{color:var(--muted);margin-top:3px;font-size:9px}.agency-picker{border-top:1px solid #e7eef4;flex-wrap:wrap;gap:6px;margin-top:19px;padding-top:14px;display:flex}.inline-form{grid-template-columns:minmax(0,1fr) auto;gap:8px;margin:17px 0 9px;display:grid}.inline-form .secondary-button{min-height:39px}.login-screen{background:#f5f8fc;grid-template-columns:minmax(380px,42%) 1fr;min-height:100vh;display:grid}.login-panel{width:min(410px,100% - 48px);margin:auto}.login-brand{align-items:center;gap:16px;margin-bottom:37px;display:flex}.brand-mark{color:#102c4d;letter-spacing:-.7px;font-size:25px;font-weight:950}.brand-mark span{color:#1c83d1}.login-brand img{object-fit:contain;background:#0c2b4e;border-radius:7px;width:113px;height:54px;padding:5px}.login-copy h1{color:#15304e;margin:0;font-size:28px}.login-copy p{color:var(--muted);margin:8px 0 24px;font-size:13px;line-height:1.5}.login-panel form{gap:14px;display:grid}.login-panel label>span{color:#4a6178;margin-bottom:6px;font-size:10px;font-weight:850;display:block}.login-panel label>div{color:#7290a9;background:#fff;border:1px solid #cddae6;border-radius:8px;align-items:center;gap:9px;height:45px;padding:0 12px;display:flex}.login-panel input,.login-panel select{width:100%;min-width:0;color:var(--ink);background:0 0;border:0;outline:0;font-size:12px}.login-button{width:100%;height:46px;margin-top:4px}.login-error{color:#a12634;background:var(--red-soft);border:1px solid #f3cbd0;border-radius:7px;align-items:center;gap:7px;padding:9px;font-size:10px;display:flex}.tablet-link{color:#1e75bd;cursor:pointer;background:0 0;border:0;align-items:center;gap:7px;margin:18px auto 0;font-size:11px;font-weight:800;display:flex}.login-visual{color:#fff;background-position:50%;background-size:cover;border-radius:19px;align-content:end;margin:20px;padding:54px;display:grid;overflow:hidden}.login-visual div{max-width:480px}.login-visual svg{color:#85ceff}.login-visual h2{letter-spacing:-1.2px;margin:19px 0 12px;font-size:40px;line-height:1.05}.login-visual p{color:#deedfa;max-width:380px;margin:0;font-size:13px;line-height:1.55}@media (width<=1180px){.app-shell{grid-template-columns:72px minmax(0,1fr)}.sidebar{padding:18px 9px}.sidebar-brand{text-align:center;padding:5px 5px 24px}.sidebar-brand>span{font-size:0}.sidebar-brand>span:after{content:"O•P";font-size:16px}.sidebar-brand small,.nav-item:not(.disabled){font-size:0}.nav-item{justify-content:center;padding:0}.nav-label,.nav-item.disabled small,.sidebar-foot{display:none}.staff-layout{grid-template-columns:minmax(0,1fr) 230px}.calendar-triple{grid-template-columns:1fr}.calendar-days{min-height:80px}.calendar-card header{padding:12px 14px}.furniture-row{grid-template-columns:52px minmax(0,1fr) 130px}}@media (width<=760px){.app-shell{display:block}.sidebar{display:none}.topbar{min-height:59px;padding:0 14px}.mobile-menu{margin-right:3px;display:grid}.topbar-plant{font-size:10px}.profile-button{width:36px;padding:0;font-size:0}.profile-button svg{margin:0}.install-button{width:36px;padding:0;font-size:0}.install-button svg{margin:0}.workspace{padding:18px 13px}.page-heading{display:block}.page-heading h1{font-size:25px}.heading-actions{justify-content:flex-start;margin-top:14px}.heading-actions .secondary-button,.heading-actions .primary-button{flex:1;min-width:120px}.week-toolbar{flex-wrap:wrap}.formula-note{width:100%;margin:3px 0 0}.calendar-triple{gap:10px}.calendar-days>*,.calendar-days button{min-height:72px}.calendar-days small{font-size:7px}.calendar-days input{font-size:14px}.section-title{flex-direction:column;align-items:flex-start;padding:16px}.section-title .primary-button{width:100%}.staff-calendar-overview{display:grid}.date-picker-row{padding-bottom:3px;overflow:auto}.date-picker-row button{min-width:82px}.staff-layout{grid-template-columns:1fr}.staff-side{grid-template-columns:1fr 1fr}.vacation-card{display:grid}.vacation-card form{grid-template-columns:1fr 1fr;display:grid}.vacation-card form button{grid-column:1/-1}.admin-layout,.form-grid{grid-template-columns:1fr}.admin-card{padding:16px}.admin-card .section-title{margin:-16px -16px 14px}.modal-backdrop{align-items:end;padding:0}.modal{border-radius:14px 14px 0 0;max-height:94vh}.modal-form footer{background:#fff;padding-top:8px;position:sticky;bottom:0}.variants{grid-template-columns:1fr 1fr}.employee-calendar-head{flex-direction:column;align-items:flex-start}.furniture-row{grid-template-columns:50px minmax(0,1fr)}.norm-editor{grid-column:2}.new-model-form{grid-template-columns:1fr 1fr}.new-model-form input:first-child{grid-column:1/-1}.login-screen{display:block}.login-panel{padding:60px 0}.login-visual{display:none}.save-warning{margin:11px 13px 0}.day-details section{grid-template-columns:1fr}.day-details small{grid-column:auto}.attendance-head,.attendance-row{padding-inline:12px}}@media (width<=470px){.staff-side,.vacation-card form{grid-template-columns:1fr}.calendar-days span{font-size:8px}.calendar-days strong{font-size:18px}.page-heading p{font-size:12px}.heading-actions .secondary-button,.heading-actions .primary-button{padding:0 8px;font-size:10px}}:root{--navy:#081d38;--navy-2:#0b284b;--blue:#0c5bd8;--blue-soft:#eaf2ff;--ink:#10213c;--muted:#66758b;--line:#dce4ee;--surface:#fff;--page:#f5f7fa;--green:#149447;--green-soft:#ebf8f0;--red:#e13646;--red-soft:#fff0f2;--amber:#d68810;--shadow:none}body{background:var(--page);color:var(--ink);font-family:Inter,ui-sans-serif,system-ui,sans-serif}.app-shell{background:#f5f7fa;grid-template-columns:190px minmax(0,1fr)}.sidebar{background:var(--navy);padding:0 8px 14px;box-shadow:1px 0 #173656}.sidebar-brand{border-bottom:1px solid #ffffff14;justify-content:center;align-items:center;gap:6px;min-height:116px;padding:0;display:flex}.sidebar-brand>span{letter-spacing:-.8px;font-size:20px}.sidebar-brand>span span{color:#b8171a}.sidebar-brand small{color:#bbcadb;margin:0;font-size:9px}.sidebar-brand{flex-direction:column;gap:7px;min-height:164px;padding:10px 6px}.sidebar-brand>span{background:url(../optiprod-logo.png) 50%/contain no-repeat;order:2;width:176px;height:57px;font-size:0}.sidebar-brand>span span{display:none}.sidebar-brand small{background:url(../gabi-logo-premium-full-safe.png) 50%/contain no-repeat;order:1;width:112px;height:31px;font-size:0}.sidebar nav{gap:4px;padding-top:12px}.nav-item{color:#d8e4ef;border-radius:8px;min-height:42px;padding:0 11px;font-size:12px;font-weight:600}.nav-item:hover{background:#ffffff12}.nav-item.active{background:var(--blue);box-shadow:inset 3px 0 #55a2ff}.nav-item.disabled{opacity:.44}.nav-label{color:#8fa3bb;margin:22px 11px 5px;font-size:9px}.sidebar-foot{padding:14px 11px 4px;font-size:11px}.sidebar-foot small{font-size:9px}.topbar{border-bottom-color:var(--line);background:#fff;min-height:72px;padding:0 24px}.topbar-plant{color:#0000;background:url(../gabi-logo-premium-full-safe.png) 0/contain no-repeat;width:150px;height:38px;font-size:0}.topbar-plant svg{display:none}.login-brand{background:#0a2748;border-radius:12px;flex-direction:column;justify-content:center;width:100%;min-height:210px;margin-bottom:28px;padding:18px}.login-brand .brand-mark{background:url(../optiprod-logo.png) 50%/contain no-repeat;width:min(350px,100%);height:98px;font-size:0}.login-brand .brand-mark span{display:none}.login-brand img{content:url(../gabi-logo-premium-full-safe.png);background:0 0;border-radius:0;width:142px;height:42px;margin-top:8px;padding:0}.profile-button,.secondary-button,.primary-button{border-radius:7px;min-height:40px;font-size:11px;font-weight:700}.primary-button{background:#0c5bd8;border-color:#0b56cc;box-shadow:0 4px 10px #0c5bd829}.primary-button:hover{background:#084dbb}.secondary-button,.profile-button{border-color:var(--line)}.workspace{max-width:none;padding:18px 20px 24px}.page-heading{margin:2px 0 14px}.page-heading h1{color:#12233e;letter-spacing:-.5px;font-size:23px}.page-heading p{margin-top:5px;font-size:11px}.eyebrow{color:var(--blue);font-size:9px}.heading-actions{gap:7px}.week-toolbar{justify-content:flex-end;margin-bottom:14px}.week-toolbar .formula-note{display:none}.week-toolbar label,.week-toolbar .icon-button{border-color:var(--line);border-radius:7px;min-height:40px}.week-toolbar label{width:202px;position:relative}.week-toolbar label input{z-index:2;opacity:0;cursor:pointer;position:absolute;inset:0;width:100%!important}.week-toolbar label span{color:#18314d;white-space:nowrap;padding-left:2px;margin-left:0!important}.formula-note{color:#66758b;font-size:10px}.import-summary,.empty-callout,.furniture-note{border-radius:9px;min-height:57px;margin-bottom:12px;font-size:10px}.calendar-triple{gap:12px;margin-bottom:12px}.calendar-card,.plan-card,.attendance-card,.capacity-card,.mini-form,.staff-calendar-overview,.vacation-card,.admin-card,.furniture-lines details{border-color:var(--line);box-shadow:none;border-radius:10px}.calendar-card header{padding:14px 16px 11px}.calendar-card h3{font-size:12px}.calendar-card p{font-size:9px}.calendar-days{min-height:82px}.calendar-days>*,.calendar-days button{min-height:82px;padding:7px 3px}.calendar-days strong{font-size:16px}.calendar-days input{font-size:15px}.calendar-days .today,.schedule-head.today{background:#f1f7ff}.calendar-days .today input{color:var(--blue)}.calendar-days .holiday-day{cursor:pointer;position:relative}.calendar-card:has(.holiday-popover){z-index:8;overflow:visible}.holiday-popover{z-index:20;width:max-content;max-width:230px;color:var(--ink);text-align:left;background:#fff;border:1px solid #cbd8e4;border-radius:8px;gap:5px;padding:10px 12px;display:grid;position:absolute;top:calc(100% + 8px);left:50%;transform:translate(-50%);box-shadow:0 12px 28px #182e462e}.holiday-popover:before{content:"";background:#fff;border-top:1px solid #cbd8e4;border-left:1px solid #cbd8e4;width:9px;height:9px;position:absolute;top:-5px;left:50%;transform:translate(-50%)rotate(45deg)}.holiday-popover b,.holiday-popover span{font-size:10px;line-height:1.25;display:block;position:relative}.holiday-popover b{color:#1d3b56;margin-bottom:2px}.holiday-popover span{color:#5b7083}.plan-card{border-radius:10px}.section-title{padding:16px 18px}.section-title h2{font-size:16px}.schedule-grid{background:#f5f7fa;grid-template-columns:150px repeat(5,minmax(165px,1fr));row-gap:8px;min-width:975px}.schedule-row{grid-column:1/-1;grid-template-columns:150px repeat(5,minmax(165px,1fr));display:grid}.schedule-row.muted{filter:grayscale();opacity:.32;transition:filter .18s,opacity .18s}.schedule-corner,.schedule-head{background:#f8fafc;min-height:45px;font-size:10px}.schedule-cell,.line-name{min-height:112px}.line-name{background:#fff;padding:10px 11px}.schedule-cell{outline:none;padding:8px 9px;position:relative}.schedule-cell:hover{background:#f7faff}.schedule-cell.selected{box-shadow:inset 0 0 0 1px var(--blue);background:#edf4ff}.cell-total{font-size:14px}.schedule-cell small,.line-name small{font-size:9px}.schedule-cell.today{background-color:#f5f9ff}.schedule-entry-list{gap:4px;width:100%;margin-top:2px;display:grid}.schedule-entry{grid-template-columns:24px minmax(0,1fr) auto;align-items:center;gap:5px;min-width:0;display:grid}.schedule-entry img{object-fit:cover;background:#eff3f6;border-radius:4px;width:23px;height:21px}.schedule-entry>.schedule-entry-name{color:#385670;text-overflow:ellipsis;white-space:nowrap;font-size:11px;font-weight:400;line-height:1.16;overflow:hidden}.schedule-entry-counts{text-align:center;grid-template-columns:repeat(2,auto);gap:6px;min-width:59px;display:grid}.schedule-entry-counts>span{color:#6c8193;justify-items:center;gap:1px;display:grid}.schedule-entry-counts small{color:#6c8193;font-size:8px;line-height:1}.schedule-entry-counts b{color:#2d628d;font-size:12px;font-weight:700;line-height:1}.schedule-entry-counts>span:last-child b{color:var(--blue)}.schedule-result-add{color:#fff;background:var(--blue);cursor:pointer;border:0;border-radius:6px;place-items:center;width:27px;height:27px;font-size:20px;line-height:1;display:grid;position:absolute;top:8px;right:8px;box-shadow:0 3px 8px #0c5bd840}.schedule-result-add:hover{background:#084dbb}.selected-line-timeline{background:#f5f7fa;grid-column:1/-1;padding:0 8px 8px}.selected-line-timeline .inline-production-timeline{margin-top:0}.inline-production-timeline{background:#fff;border:1px solid #cfdbe6;border-radius:8px;grid-column:1/-1;margin-top:8px;overflow:hidden}.inline-production-timeline>header{background:#f8fafc;border-bottom:1px solid #e0e8ef;justify-content:space-between;align-items:center;gap:14px;padding:11px 14px;display:flex}.inline-production-timeline>header strong,.inline-production-timeline>header small{display:block}.inline-production-timeline>header strong{color:var(--ink);font-size:12px}.inline-production-timeline>header small,.inline-production-timeline>header>span{color:var(--muted);margin-top:3px;font-size:9px}.timeline-head-actions{align-items:center;gap:9px;display:flex}.timeline-head-actions>span{color:var(--muted);white-space:nowrap;margin:0;font-size:9px}.inline-production-timeline>header .timeline-close{color:#31516d;cursor:pointer;background:#fff;border:1px solid #ccd8e3;border-radius:6px;flex:none;place-items:center;width:28px;height:28px;margin-left:4px;display:grid}.inline-production-timeline>header .timeline-close:hover{color:#b41f31;background:#fff5f6;border-color:#e5b1b9}.inline-time-axis{color:#75879a;height:28px;margin:0 14px;font-size:9px;position:relative}.inline-time-axis span{position:absolute;top:8px;transform:translate(-50%)}.inline-time-axis span:first-child{transform:none}.inline-time-axis span:last-child{transform:translate(-100%)}.inline-time-track{--timeline-rows:1;height:calc(43px + var(--timeline-rows) * 39px);background:repeating-linear-gradient(90deg,#fff 0 calc(11.111% - 1px),#e3e9ef calc(11.111% - 1px) 11.111%);border:1px solid #cbd8e2;border-radius:5px;margin:0 14px 15px;position:relative;overflow:hidden}.inline-time-track.draggable{cursor:grab;touch-action:pan-y;-webkit-user-select:none;user-select:none}.inline-time-track.draggable:active{cursor:grabbing}.inline-time-block{top:calc(19px + var(--timeline-lane,0) * 36px);z-index:2;color:#263c50;background:#e7ebee;border:1px solid #aebbc7;border-radius:4px;min-width:38px;height:31px;padding:4px 7px;position:absolute;overflow:hidden}.inline-time-block:nth-of-type(5n+1){background:#e5f0ff;border-color:#8eb3df}.inline-time-block:nth-of-type(5n+2){background:#fff2d6;border-color:#d7b66a}.inline-time-block:nth-of-type(5n+3){background:#e2f5e8;border-color:#8bc59e}.inline-time-block:nth-of-type(5n+4){background:#f0e7fa;border-color:#b39ad7}.inline-time-block:nth-of-type(5n){background:#fdebf1;border-color:#d698aa}.inline-time-block.tone-0{background:#e5f0ff;border-color:#8eb3df}.inline-time-block.tone-1{background:#fff2d6;border-color:#d7b66a}.inline-time-block.tone-2{background:#e2f5e8;border-color:#8bc59e}.inline-time-block.tone-3{background:#f0e7fa;border-color:#b39ad7}.inline-time-block.tone-4{background:#fdebf1;border-color:#d698aa}.inline-time-block.partial{background-image:repeating-linear-gradient(-45deg,#ffffff61 0 6px,#0000 6px 12px)}.inline-time-block strong,.inline-time-block small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inline-time-block strong{font-size:10px;font-weight:600}.inline-time-block small{color:#627688;margin-top:3px;font-size:8px}.inline-idle-block{z-index:1;color:#657786;background:#f1f3f5;border:1px dashed #aebbc7;border-radius:4px;min-width:54px;padding:7px 8px;position:absolute;top:19px;bottom:12px;overflow:hidden}.inline-idle-block strong,.inline-idle-block small{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.inline-idle-block strong{font-size:10px;font-weight:600}.inline-idle-block small{color:#778796;margin-top:3px;font-size:8px}.inline-break{z-index:3;background:#ffffffdb;border-left:1px dashed #8899a9;border-right:1px dashed #8899a9;position:absolute;top:0;bottom:0}.inline-break span{color:#687b8d;text-align:center;white-space:nowrap;min-width:96px;font-size:8px;position:absolute;top:2px;left:50%;transform:translate(-50%)}.inline-now{z-index:5;background:#df3544;width:2px;position:absolute;top:-1px;bottom:-1px}.inline-now b{color:#fff;white-space:nowrap;background:#df3544;border-radius:4px;padding:2px 4px;font-size:9px;position:absolute;top:2px;left:50%;transform:translate(-50%)}.smooth-timeline-viewport{overscroll-behavior:contain;touch-action:none;-webkit-user-select:none;user-select:none;cursor:grab;overflow:hidden}.smooth-timeline-viewport:active{cursor:grabbing}.smooth-timeline-strip{will-change:transform;width:300%;display:flex}.smooth-timeline-lane{flex:0 0 33.3333%;min-width:0}.smooth-timeline-lane .inline-time-axis{margin:0 14px}.smooth-timeline-lane .smooth-time-track{margin:0 14px 15px}.smooth-time-track .inline-idle-block{top:calc(19px + var(--timeline-lane,0) * 36px);height:31px;padding:4px 7px;bottom:auto}.smooth-timeline-date-label{color:#31516d;letter-spacing:.02em;text-align:center;text-transform:capitalize;border-top:1px solid #e0e8ef;padding:8px 14px 10px;font-size:12px;font-weight:700}:is(.modal:has(.day-timeline),.modal:has(.plan-day-timeline)){width:min(1320px,100vw - 36px)}.plan-day-timeline{gap:13px;padding:18px;display:grid}.plan-day-timeline .inline-production-timeline{margin-top:0}.day-timeline{gap:14px;padding:19px 20px 22px;display:grid}.day-timeline>p{color:var(--muted);margin:0;font-size:11px}.timeline-line{border:1px solid var(--line);background:#fff;border-radius:9px;overflow:hidden}.timeline-line>header{background:#f8fafc;justify-content:space-between;align-items:center;gap:16px;padding:10px 13px;display:flex}.timeline-line>header strong{font-size:13px}.timeline-line>header span{color:var(--muted);font-size:10px}.timeline-axis{color:#7a8b9c;justify-content:space-between;padding:8px 13px 3px;font-size:9px;display:flex}.timeline-track{background:repeating-linear-gradient(90deg,#f7fafc 0 calc(25% - 1px),#dbe5ed calc(25% - 1px) 25%);border:1px solid #cbd9e5;border-radius:7px;min-height:89px;margin:0 13px 13px;display:flex;overflow:hidden}.timeline-track article{background:#dceefbeb;border-right:2px solid #fff;grid-template-columns:44px minmax(76px,1fr);align-items:center;gap:7px;min-width:105px;padding:8px;display:grid}.timeline-track article:nth-child(2n){background:#e5f6ecf0}.timeline-track article:nth-child(3n){background:#fff3daf0}.timeline-track article img{object-fit:cover;background:#fff;border-radius:5px;width:42px;height:40px}.timeline-track article strong,.timeline-track article small{display:block}.timeline-track article strong{color:var(--ink);text-overflow:ellipsis;white-space:nowrap;font-size:11px;overflow:hidden}.timeline-track article small{color:#587086;margin-top:4px;font-size:9px;line-height:1.25}.staff-calendar-overview{padding:16px 18px}.staff-calendar-overview h2{font-size:15px}.date-picker-row button{border-radius:7px;min-width:76px}.attendance-head,.attendance-row{min-height:58px}:is(.attendance-row.planned,.attendance-row:not(.holiday):has(.checkbox-cell input:not(:checked))){background:#f1f3f5}.attendance-row:not(.holiday):has(.checkbox-cell input:not(:checked))>input{color:#536170;background:#e6e9ed}.attendance-row:not(.holiday):has(.checkbox-cell input:not(:checked)) .percent-input input{color:#536170;background:#e6e9ed}.attendance-row:not(.holiday):has(.checkbox-cell input:not(:checked)) .employee-name small{color:#697786}.capacity-card,.mini-form{padding:15px}.vacation-card{padding:16px 18px}.month-grid .planned{color:#526273;background:#eceff2}.month-grid .planned b{color:#526273}.month-grid .present{color:#08733c;background:#e6f6ed}.month-grid .absent{color:#b62030;background:#ffeaed}.month-grid .holiday{color:#9b6210;background:#fff5d7}.furniture-lines{gap:9px}.furniture-lines summary{min-height:55px;padding:0 16px}.furniture-row{padding:9px 3px}.product-image{border-radius:6px}.admin-tabs{margin-bottom:12px}.admin-tabs button,.agency-picker button{border-radius:7px;font-size:10px}.admin-card{padding:16px}.admin-card .section-title{margin:-16px -16px 14px}.staff-admin-row{min-height:52px}.modal-backdrop{background:#07172b8c}.modal{border-radius:13px;width:min(660px,100%);box-shadow:0 28px 80px #00000047}.modal-head{padding:18px 20px}.modal-head h2{font-size:17px}.modal-head-actions{align-items:center;gap:8px;display:flex}.calendar-holiday-button{text-transform:uppercase;min-height:34px}.calendar-holiday-button.active{color:#fff;background:#0c5bd8;border-color:#0c5bd8}.month-grid .holiday-selectable{cursor:pointer;outline-offset:-2px;background:#e7f1ff;outline:2px solid #68a5ef}.month-grid .holiday-selectable:hover{background:#d8eaff}.vacation-card{display:none}.modal-form{padding:18px 20px}.result-entry-form{gap:16px}.result-table-wrap{border:1px solid var(--line);border-radius:8px;overflow-x:auto}.result-table{border-collapse:collapse;width:100%;min-width:520px}.result-table th,.result-table td{text-align:left;border-bottom:1px solid #e4ebf1;padding:10px 12px;font-size:11px}.result-table th{color:#60758a;text-transform:uppercase;background:#f8fafc;font-size:9px}.result-table tr:last-child td{border-bottom:0}.result-table td:nth-child(2),.result-table td:nth-child(3){color:#60758a;font-size:10px}.result-table input{border:1px solid #cbd8e4;border-radius:6px;width:90px;min-height:34px;padding:0 8px}.result-extra{border:1px dashed #aabccc;border-radius:8px;padding:12px}.result-extra header{color:#235d95;align-items:flex-start;gap:8px;margin-bottom:11px;display:flex}.result-extra header strong,.result-extra header small{display:block}.result-extra header strong{font-size:11px}.result-extra header small{color:var(--muted);margin-top:3px;font-size:9px}.result-extra-fields{grid-template-columns:130px minmax(0,1fr) 120px;gap:8px;display:grid}.result-extra-fields select,.result-extra-fields input{background:#fff;border:1px solid #cbd8e4;border-radius:6px;min-width:0;min-height:36px;padding:0 8px;font-size:11px}.add-plan-form{gap:16px}.add-plan-layout{grid-template-columns:220px minmax(0,1fr);align-items:start;gap:18px;display:grid}.add-plan-image{background:#f7f9fb;border-radius:9px;place-items:center;min-height:156px;display:grid;overflow:hidden}.add-plan-image img{object-fit:contain;width:100%;max-height:184px}.add-plan-fields{gap:13px;display:grid}.add-plan-fields label{gap:7px;display:grid}.add-plan-fields label>span,.add-plan-form .variants legend{color:#50677f;font-size:10px;font-weight:850}.add-plan-fields select{width:100%;min-height:40px;color:var(--ink);background:#fff;border:1px solid #cbd8e4;border-radius:7px;padding:0 10px}.add-plan-layout .variants,.add-plan-select-model{grid-column:1/-1}.add-plan-select-model{color:#677d91;text-align:center;border:1px dashed #a6b8c9;border-radius:8px;padding:18px;font-size:11px}.employee-calendar-head{padding:14px 18px}.month-grid{padding:0 18px 18px}.employee-calendar-summary{border-top:1px solid var(--line);background:var(--line);grid-template-columns:repeat(3,minmax(0,1fr));gap:1px;display:grid}.employee-calendar-summary>div{background:#fff;gap:5px;min-height:68px;padding:13px 17px;display:grid}.employee-calendar-summary span{color:var(--muted);font-size:9px;font-weight:750}.employee-calendar-summary strong{color:var(--ink);font-size:17px}.staff-accordion-layout{grid-template-columns:minmax(0,1fr) 260px;gap:16px;display:grid}.attendance-accordion-card{overflow:hidden}.attendance-groups{gap:8px;padding:11px;display:grid}.line-attendance-group{border:1px solid var(--line);background:#fff;border-radius:9px;overflow:hidden}.line-attendance-toggle{width:100%;min-height:58px;color:var(--ink);text-align:left;cursor:pointer;background:#f8fafc;border:0;grid-template-columns:minmax(150px,1fr) auto 22px;align-items:center;gap:12px;padding:9px 14px;display:grid}.line-attendance-toggle>span:first-child strong,.line-attendance-toggle>span:first-child small,.line-attendance-status b,.line-attendance-status small{display:block}.line-attendance-toggle>span:first-child strong{font-size:13px}.line-attendance-toggle>span:first-child small{color:var(--muted);margin-top:3px;font-size:9px}.line-attendance-status{text-align:right;border-radius:6px;min-width:150px;padding:6px 9px}.line-attendance-status b{font-size:10px}.line-attendance-status small{margin-top:3px;font-size:9px}.line-attendance-status.checked{color:#08733c;background:#e8f7ee}.line-attendance-status.pending{color:#657586;background:#edf0f3}.line-attendance-body{overflow:auto}.line-attendance-head,.line-attendance-row{grid-template-columns:minmax(200px,1fr) 88px 72px 120px;align-items:center;gap:10px;min-width:510px;padding:8px 14px;display:grid}.line-attendance-head{color:#718397;text-transform:uppercase;background:#fbfcfe;min-height:36px;font-size:9px;font-weight:850}.line-attendance-row{border-top:1px solid #e7eef4;min-height:62px}.line-attendance-row.planned{background:#f1f3f5}.line-attendance-row.planned>input,.line-attendance-row.planned .percent-input input{color:#536170;background:#e6e9ed}.line-attendance-row.absent{background:#fff0f2}.line-attendance-row.absent>input,.line-attendance-row.absent .percent-input input{color:#b62030;background:#ffe5e9}.line-attendance-row.holiday{background:#fff9ea}.line-attendance-row>input,.line-attendance-row .percent-input input{background:#fff;border:1px solid #ccd8e3;border-radius:6px;width:100%;min-width:0;height:35px;padding:0 7px;font-size:11px}.order-list{padding:8px}.order-week-group{border:1px solid #e5ebf1;border-radius:8px;margin:0 0 9px;overflow:hidden}.order-week-group:last-child{margin-bottom:0}.order-week-group.has-week{border-color:#a9dcbf}.order-week-label{color:#08733c;background:#e8f7ee;padding:5px 10px;font-size:10px;font-weight:850}.order-slot{position:relative}.order-drop-marker{z-index:3;background:#e13646;border-radius:3px;height:3px;position:absolute;top:-2px;left:7px;right:7px;box-shadow:0 0 0 1px #e1364614}.order-item{border-top:1px solid #e8eef4;grid-template-columns:25px 43px minmax(0,1fr) auto}.order-model-avatar{object-fit:cover;background:#f3f6f8;border-radius:5px;width:40px;height:36px}.order-copy{min-width:0}.order-copy strong,.order-copy small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.order-item.moving{animation:.34s ease-out order-row-move}@keyframes order-row-move{0%{background:#edf5ff;transform:translateY(9px)}to{background:#fff;transform:translateY(0)}}.product-image-upload{border-style:solid;width:70px;height:50px}.product-image-upload .product-image-hint{color:#fff;opacity:0;background:#051628bd;border-radius:4px;align-items:center;gap:2px;padding:2px 4px;font-size:8px;transition:opacity .16s;display:inline-flex;position:absolute;bottom:3px;right:3px}.product-image-upload:hover .product-image-hint{opacity:1}.furniture-row{grid-template-columns:75px minmax(200px,1fr) 154px}.norm-editor{min-width:0}.norm-editor input{box-sizing:border-box;width:100%}@media (width<=1180px){.app-shell{grid-template-columns:68px minmax(0,1fr)}.sidebar{padding-inline:8px}}@media (width<=760px){.topbar{min-height:62px;padding-inline:14px}.workspace{padding:16px 12px 22px}.calendar-triple{gap:10px}.week-toolbar{justify-content:flex-start}.week-toolbar label{width:min(202px,100vw - 116px)}.add-plan-layout{grid-template-columns:1fr}.add-plan-image{min-height:130px}.modal{border-radius:13px 13px 0 0}.staff-accordion-layout,.employee-calendar-summary{grid-template-columns:1fr}.line-attendance-toggle{grid-template-columns:minmax(130px,1fr) auto 20px}.furniture-row{grid-template-columns:70px minmax(0,1fr)}.norm-editor{grid-column:2}.result-extra-fields{grid-template-columns:1fr}:is(.modal:has(.day-timeline),.modal:has(.plan-day-timeline)){width:100%}.plan-day-timeline{padding:12px}.day-timeline{padding:15px 13px 18px}.timeline-line>header{flex-direction:column;align-items:flex-start;gap:4px}.timeline-track{overflow-x:auto}.inline-production-timeline>header{flex-direction:column;align-items:flex-start}}
