:root{--sidebar-width:255px}*{box-sizing:border-box}body,html{max-width:100%;overflow-x:hidden}body{min-height:100vh;background:var(--bs-tertiary-bg)}.modal{position:fixed;inset:0;z-index:1060;display:none;width:100%;height:100%;overflow-x:hidden;overflow-y:auto;outline:0}.modal-dialog{position:relative;width:calc(100% - 1.5rem);margin:1.75rem auto;max-width:500px;pointer-events:none}.modal-dialog-centered{min-height:calc(100% - 3.5rem);display:flex;align-items:center}.modal-lg{max-width:800px}.modal-xl{max-width:1400px}.machine-history-dialog{width:calc(100% - 3rem)}.machine-history-dialog .modal-content{max-height:calc(100dvh - 3rem)}.machine-history-dialog .modal-body{padding:1.25rem}.modal-content{position:relative;display:flex;flex-direction:column;width:100%;max-height:calc(100dvh - 1.5rem);pointer-events:auto;background:var(--bs-body-bg,#fff);color:var(--bs-body-color,#212529);border:1px solid var(--bs-border-color,#dee2e6);border-radius:.5rem;box-shadow:0 .5rem 1rem rgba(0,0,0,.15)}.modal-footer,.modal-header{display:flex;align-items:center;gap:.5rem;padding:1rem}.modal-header{justify-content:space-between;border-bottom:1px solid var(--bs-border-color,#dee2e6)}.modal-footer{justify-content:flex-end;border-top:1px solid var(--bs-border-color,#dee2e6)}.modal-body{position:relative;flex:1 1 auto;padding:1rem;overflow:auto}#faultModal form{display:flex;flex-direction:column;min-height:0;max-height:inherit}#faultModal .modal-content{min-height:0}#faultModal .modal-body{min-height:0;overflow-y:auto;overscroll-behavior:contain}#faultModal .modal-footer,#faultModal .modal-header{position:sticky;z-index:2;background:var(--bs-body-bg)}#faultModal .modal-header{top:0}#faultModal .modal-footer{bottom:0}.modal:not(.show){display:none!important}.modal-backdrop-fallback{position:fixed;inset:0;z-index:1040;background:rgba(0,0,0,.5)}.modal-backdrop{z-index:1050}.modal.show{display:block;z-index:1060}.modal-open{overflow:hidden}.app-shell{min-height:100vh;display:grid;grid-template-columns:var(--sidebar-width) 1fr}.sidebar{min-height:100vh;background:var(--bs-body-bg);border-right:1px solid var(--bs-border-color);display:flex;flex-direction:column;position:sticky;top:0}.brand{display:flex;gap:.75rem;align-items:center}.brand-mark{width:44px;height:44px;border-radius:12px;display:grid;place-items:center;background:var(--bs-primary);color:#fff;font-weight:800}.sidebar .nav-link{--nav-rgb:var(--bs-secondary-rgb);--nav-accent:var(--bs-secondary);color:var(--bs-body-color);padding:.75rem .9rem;border-radius:.7rem;display:flex;align-items:center;gap:.65rem;min-height:46px;background:rgba(var(--nav-rgb),.05);border:1px solid transparent;transition:background-color .15s,border-color .15s,color .15s}.sidebar .nav-link:hover{background:rgba(var(--nav-rgb),.13);border-color:rgba(var(--nav-rgb),.2)}.sidebar .nav-link.active{color:#fff;background:var(--nav-accent);border-color:var(--nav-accent);box-shadow:0 .35rem .9rem rgba(var(--nav-rgb),.22)}.sidebar .nav-link[data-page=dashboard]{--nav-rgb:var(--bs-info-rgb);--nav-accent:var(--bs-info)}.sidebar .nav-link[data-page=machines]{--nav-rgb:var(--bs-success-rgb);--nav-accent:var(--bs-success)}.sidebar .nav-link[data-page=storingen]{--nav-rgb:var(--bs-danger-rgb);--nav-accent:var(--bs-danger)}.sidebar .nav-link[data-page=meldingen]{--nav-rgb:var(--bs-warning-rgb);--nav-accent:var(--bs-warning)}.sidebar .nav-link[data-page=werkorders]{--nav-rgb:var(--bs-primary-rgb);--nav-accent:var(--bs-primary)}.sidebar .nav-link[data-page=onderhoud]{--nav-rgb:32,201,151;--nav-accent:#20c997}.sidebar .nav-link[data-page=wisselstukken]{--nav-rgb:13,110,253;--nav-accent:#0d6efd}.sidebar .nav-link[data-page=bestellingen]{--nav-rgb:253,126,20;--nav-accent:#fd7e14}.sidebar .nav-link[data-page=aanwezigheid]{--nav-rgb:111,66,193;--nav-accent:#6f42c1}.sidebar .nav-link[data-page=rapporten]{--nav-rgb:13,202,240;--nav-accent:#0dcaf0}.sidebar .nav-link[data-page=gebruikers]{--nav-rgb:108,117,125;--nav-accent:#6c757d}.sidebar .nav-link[data-page=instellingen]{--nav-rgb:73,80,87;--nav-accent:#495057}.sidebar .nav-link[data-page=bestellingen].active,.sidebar .nav-link[data-page=meldingen].active{color:#111}.nav-icon-wrap{position:relative;display:inline-grid;place-items:center;width:1.6rem;min-width:1.6rem}.nav-icon{width:1.35rem;min-width:1.35rem;text-align:center;font-size:1.15rem;line-height:1}.nav-count-badge{position:absolute;right:-.42rem;top:-.42rem;min-width:1.15rem;height:1.15rem;padding:0 .28rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--bs-danger);color:#fff;font-size:.68rem;font-weight:800;line-height:1;box-shadow:0 0 0 2px var(--bs-body-bg)}.nav-link.active .nav-count-badge{box-shadow:0 0 0 2px var(--bs-primary)}.content,.main-area,.nav-label{min-width:0}.table-responsive{max-width:100%;overflow-x:auto;-webkit-overflow-scrolling:touch}.table{min-width:max-content}.topbar{background:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color);position:sticky;top:0;z-index:10}.metric-card,.panel{background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:1rem;box-shadow:0 .25rem 1rem rgba(0,0,0,.04)}.panel{padding:1.1rem}.panel-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-bottom:1rem}.dashboard-panel .panel-header,.dashboard-panel.dashboard-panel-collapsed{display:none}.dashboard-panel-actions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.dashboard-panel-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem}.dashboard-header-bar{display:flex;align-items:flex-start;flex-direction:column;gap:.75rem}.dashboard-header-actions{display:flex;align-items:center;justify-content:flex-start;gap:.5rem;flex-wrap:wrap}.dashboard-header-actions .btn{display:inline-flex;align-items:center;justify-content:center;min-height:38px;gap:.4rem;font-weight:700}.dashboard-header-actions .btn i{font-size:1rem}.icon-action-button{width:34px;min-width:34px;height:34px;padding:0;display:inline-flex;align-items:center;justify-content:center}.dashboard-panel-body{margin-top:0}.metric-card{padding:1rem;height:100%}.metric-card-button{position:relative;width:100%;min-height:128px;text-align:left;color:inherit;cursor:pointer;transition:transform .12s,border-color .12s,box-shadow .12s;overflow:hidden}.metric-card-button::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--metric-accent,var(--bs-border-color))}.metric-card-button:hover{border-color:var(--bs-primary);transform:translateY(-1px)}.metric-card-button:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.metric-card span{display:block;color:var(--bs-secondary-color);font-size:.9rem}.metric-card strong{display:block;font-size:2rem;margin-top:.25rem}.metric-card small{display:inline-flex;align-items:center;min-height:1.5rem;margin-top:.55rem;padding:.18rem .5rem;border-radius:999px;background:rgba(var(--metric-rgb,var(--bs-secondary-rgb)),.12);color:var(--bs-body-color);font-size:.78rem;font-weight:700}.metric-danger{--metric-accent:var(--bs-danger);--metric-rgb:var(--bs-danger-rgb);background:linear-gradient(135deg,rgba(var(--bs-danger-rgb),.13),var(--bs-body-bg) 58%)}.metric-warning{--metric-accent:var(--bs-warning);--metric-rgb:var(--bs-warning-rgb);background:linear-gradient(135deg,rgba(var(--bs-warning-rgb),.16),var(--bs-body-bg) 58%)}.metric-info{--metric-accent:var(--bs-primary);--metric-rgb:var(--bs-primary-rgb);background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.12),var(--bs-body-bg) 58%)}.metric-ok{--metric-accent:var(--bs-success);--metric-rgb:var(--bs-success-rgb);background:linear-gradient(135deg,rgba(var(--bs-success-rgb),.12),var(--bs-body-bg) 58%)}.metric-neutral{--metric-accent:var(--bs-secondary);--metric-rgb:var(--bs-secondary-rgb)}.dashboard-role-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.75rem}.dashboard-role-panel #dashboardRoleActions{display:flex;align-items:center;justify-content:flex-end;gap:.5rem;flex-wrap:wrap}.dashboard-role-card{position:relative;display:grid;gap:.25rem;text-align:left;width:100%;min-height:118px;padding:.9rem 1rem 1rem;border:1px solid var(--bs-border-color);border-radius:.95rem;background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.08),var(--bs-body-bg) 60%);color:inherit;box-shadow:0 .2rem .7rem rgba(0,0,0,.04)}.dashboard-role-card:hover{border-color:var(--bs-primary);transform:translateY(-1px)}.dashboard-role-card:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.dashboard-role-card-label{color:var(--bs-secondary-color);font-size:.82rem;font-weight:700}.dashboard-role-card strong{font-size:1.8rem;line-height:1.05}.dashboard-role-card small{color:var(--bs-body-color);font-size:.84rem;line-height:1.2}.dashboard-role-trend{position:absolute;top:.75rem;right:.8rem;padding:.16rem .45rem;border-radius:999px;background:rgba(var(--bs-success-rgb),.12);color:var(--bs-success);font-size:.72rem;font-weight:800}.dashboard-today-first-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem}.dashboard-priority-panel{border:2px solid rgba(var(--bs-danger-rgb),.35);background:linear-gradient(135deg,rgba(var(--bs-danger-rgb),.08),var(--bs-body-bg) 58%);box-shadow:0 .35rem 1rem rgba(var(--bs-danger-rgb),.12)}.dashboard-priority-panel .panel-header{border-bottom-color:rgba(var(--bs-danger-rgb),.2)}.dashboard-today-card{position:relative;display:grid;gap:.22rem;min-height:98px;padding:.9rem 1rem;border:1px solid var(--bs-border-color);border-radius:.9rem;background:var(--bs-body-bg);box-shadow:0 .15rem .55rem rgba(0,0,0,.04)}.dashboard-priority-panel .dashboard-today-card{border-left:5px solid var(--bs-danger);background:var(--bs-body-bg)}.dashboard-today-label{color:var(--bs-secondary-color);font-size:.82rem;font-weight:700}.dashboard-today-card strong{font-size:1.65rem;line-height:1.05}.dashboard-today-card small{color:var(--bs-body-color);font-size:.82rem;line-height:1.2}.today-planning-person-main{display:flex;align-items:center;justify-content:space-between;gap:.65rem;min-width:0}.today-planning-person-main strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.today-planning-task-count{flex:0 0 auto;padding:.16rem .5rem;border-radius:999px;background:rgba(var(--bs-primary-rgb),.1);color:var(--bs-primary);font-size:.76rem;font-weight:800;line-height:1.2;white-space:nowrap}.today-planning-task-count.has-tasks{background:rgba(var(--bs-primary-rgb),.12);color:var(--bs-primary)}.today-planning-task-count.no-tasks{background:rgba(var(--bs-success-rgb),.12);color:var(--bs-success)}.empty-state{display:grid;justify-items:center;gap:.35rem;padding:1.25rem;border:1px dashed var(--bs-border-color);border-radius:.75rem;background:var(--bs-tertiary-bg);color:var(--bs-secondary-color);text-align:center}.empty-state .bi{font-size:1.65rem;color:var(--bs-primary)}.empty-state strong{color:var(--bs-body-color);font-size:.98rem}.empty-state span{max-width:520px;font-size:.88rem}.settings-panel{max-width:680px}.table>:not(caption)>*>*{background:0 0}.clickable-data-row{cursor:pointer}.clickable-data-row:hover>td{background:rgba(var(--bs-primary-rgb),.08)}.clickable-data-row:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:-3px}.badge-icon{display:inline-flex;align-items:center;gap:.3rem}.badge-icon .bi{font-size:.8em;line-height:1}.notification-actions{display:flex;flex-wrap:wrap;min-width:210px}.notification-actions .btn{white-space:nowrap}.priority-ribbon{position:relative;overflow:hidden}.priority-ribbon::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:var(--priority-color,var(--bs-secondary))}.priority-high{--priority-color:var(--bs-danger)}.priority-medium{--priority-color:var(--bs-warning)}.priority-low{--priority-color:var(--bs-primary)}.work-order-priority-row>td:first-child{box-shadow:inset 5px 0 0 var(--priority-color,var(--bs-secondary));padding-left:1rem}.work-order-number-cell{min-width:110px}.work-order-number{font-size:1.2rem;font-weight:900;line-height:1.05;letter-spacing:.02em}.work-order-reassign{display:grid;grid-template-columns:minmax(160px,1fr) auto;gap:.4rem;align-items:center}.work-order-transfer-section{background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.07),var(--bs-body-bg) 65%)}.work-order-transfer-body{display:grid;gap:.5rem}.work-order-status-block .badge{white-space:nowrap}.deep-link-highlight>td{animation:1.2s ease-in-out 4 deepLinkPulse;box-shadow:inset 4px 0 0 var(--bs-warning)}@keyframes deepLinkPulse{0%,100%{background:0 0}50%{background:rgba(var(--bs-warning-rgb),.22)}}.spare-part-supplier-row>td{border-top:0;padding-top:.25rem;color:var(--bs-secondary-color)}.spare-part-supplier-row input{font-size:.85rem}.spare-part-main-row+.spare-part-supplier-row>td{padding-top:.4rem}.spare-name-column{min-width:360px}.spare-name-cell{min-width:360px;max-width:620px}.spare-name{min-height:3.1rem;resize:vertical}.clova-code-control{display:flex;align-items:center;gap:.4rem;min-width:210px}.clova-code-control .form-control{min-width:122px}.clova-code-display{min-width:0;font-size:.88rem}.clova-prefix-chip{min-width:2.25rem;padding:.18rem .48rem;border-radius:999px;color:#fff;font-size:.73rem;font-weight:800;line-height:1.25;text-align:center;box-shadow:inset 0 0 0 1px rgba(255,255,255,.2),0 .25rem .75rem rgba(0,0,0,.12)}.clova-prefix-0{background:linear-gradient(135deg,#0d6efd,#2f80ed)}.clova-prefix-1{background:linear-gradient(135deg,#198754,#20c997)}.clova-prefix-2{background:linear-gradient(135deg,#fd7e14,#ffc107);color:#1f2328}.clova-prefix-3{background:linear-gradient(135deg,#dc3545,#e35d6a)}.clova-prefix-4{background:linear-gradient(135deg,#6f42c1,#9b72cf)}.clova-prefix-5{background:linear-gradient(135deg,#0dcaf0,#0d6efd);color:#07151d}.clova-prefix-6{background:linear-gradient(135deg,#6c757d,#adb5bd);color:#111}.clova-prefix-7{background:linear-gradient(135deg,#20c997,#0dcaf0);color:#061a16}.spare-compact-input{width:78px;min-width:78px}.spare-stock-control{display:flex;align-items:center;gap:.35rem}.spare-stock-control .btn{min-width:42px;padding-left:.45rem;padding-right:.45rem;white-space:nowrap}.spare-location-input{width:58px;min-width:58px;text-transform:uppercase}.spare-machine-links{width:190px;min-width:190px;resize:vertical}.spare-photo-cell{min-width:76px;width:76px}.spare-photo-control{display:grid;gap:.3rem;width:72px;justify-items:center}.spare-photo-placeholder,.spare-photo-preview,.spare-photo-thumb{width:64px;height:64px;border-radius:.45rem;border:1px solid var(--bs-border-color)}.spare-photo-thumb{object-fit:cover;background:var(--bs-tertiary-bg)}.spare-photo-placeholder{display:grid;place-items:center;padding:.25rem;color:var(--bs-secondary-color);background:var(--bs-tertiary-bg);font-size:.62rem;text-align:center}.spare-icon-placeholder{align-content:center;gap:.15rem;line-height:1.05}.spare-icon-placeholder .bi{font-size:1.3rem;color:var(--bs-primary);line-height:1}.spare-icon-placeholder span{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.spare-photo-preview{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0;background:0 0;overflow:hidden;cursor:zoom-in;border-style:solid}.spare-photo-preview:focus-visible,.spare-photo-preview:hover{border-color:var(--bs-primary);box-shadow:0 0 0 3px rgba(var(--bs-primary-rgb),.18);outline:0}.spare-photo-picker{width:100%;padding:0;border:0;background:0 0;color:var(--bs-primary);font-size:.72rem;text-align:center;cursor:pointer}.spare-photo-picker:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:3px;border-radius:.4rem}.spare-photo-picker:disabled{cursor:not-allowed;color:var(--bs-secondary-color);opacity:.75}.spare-photo-action-button{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:28px;width:100%;padding:.18rem .35rem;border:1px solid rgba(var(--bs-primary-rgb),.4);border-radius:.45rem;background:rgba(var(--bs-primary-rgb),.08);color:var(--bs-primary);font-size:.66rem;font-weight:700;line-height:1.1}.spare-photo-picker:hover .spare-photo-action-button{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.14)}.spare-photo-action-button .bi{line-height:1}.spare-pagination{display:flex;align-items:center;justify-content:flex-end;gap:.65rem;padding:.6rem 0 .75rem;background:var(--bs-body-bg)}.spare-pagination-top{position:sticky;top:78px;z-index:8;border-bottom:1px solid var(--bs-border-color);margin-bottom:.35rem}.spare-pagination-bottom{border-top:1px solid var(--bs-border-color);margin-top:.35rem;padding-top:.75rem}.maintenance-task-cell{min-width:280px}.maintenance-instructions{min-height:3rem;resize:vertical}.maintenance-interval{width:96px;min-width:96px}.maintenance-next-date{width:148px;min-width:148px}.maintenance-actions{display:flex;gap:.4rem;flex-wrap:wrap}.maintenance-doc-links{display:flex;flex-wrap:wrap;gap:.35rem}.maintenance-calendar-wrap{overflow-x:auto}.maintenance-week-grid{display:grid;grid-template-columns:repeat(7,minmax(180px,1fr));gap:.65rem;min-width:1260px;align-items:start}.maintenance-day-column{border:1px solid var(--bs-border-color);border-radius:.75rem;background:var(--bs-body-bg);min-width:0;overflow:hidden}.maintenance-day-header{display:grid;gap:.1rem;padding:.7rem .8rem;border-bottom:1px solid var(--bs-border-color);background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.08),var(--bs-tertiary-bg) 68%)}.maintenance-day-header strong{font-size:.95rem;line-height:1.1}.maintenance-day-header span{color:var(--bs-secondary-color);font-size:.76rem;text-transform:capitalize}.maintenance-day-body{display:grid;gap:.45rem;padding:.55rem;min-height:120px}.maintenance-day-empty{padding:.8rem .55rem;border:1px dashed var(--bs-border-color);border-radius:.55rem;color:var(--bs-secondary-color);font-size:.82rem;text-align:center;background:var(--bs-tertiary-bg)}.maintenance-calendar-card{display:grid;gap:.28rem;padding:.55rem .6rem;border:1px solid var(--bs-border-color);border-radius:.6rem;background:var(--bs-tertiary-bg);box-shadow:0 .12rem .45rem rgba(0,0,0,.04)}.maintenance-calendar-card:hover{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.06)}.maintenance-calendar-card:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.maintenance-calendar-card-overdue{border-color:rgba(var(--bs-danger-rgb),.55);box-shadow:inset 4px 0 0 var(--bs-danger)}.maintenance-calendar-card-top{display:flex;align-items:center;justify-content:space-between;gap:.4rem;flex-wrap:wrap}.maintenance-calendar-card-machine{font-size:.9rem;line-height:1.1}.maintenance-calendar-card-id{color:var(--bs-secondary-color);font-size:.75rem}.maintenance-calendar-card-title{font-size:.8rem;line-height:1.2}.maintenance-calendar-card-tech{color:var(--bs-secondary-color);font-size:.76rem;line-height:1.15}.document-type-link{display:inline-flex;align-items:center;gap:.35rem}.document-type-link .bi{font-size:.95rem;line-height:1}.maintenance-checklist{display:grid;gap:.35rem;min-width:280px}.maintenance-checklist-item{display:flex;gap:.45rem;align-items:flex-start;font-size:.86rem}.maintenance-checklist-editor{display:grid;gap:.45rem}.maintenance-checklist-editor-row{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(12rem,.8fr) auto;gap:.45rem;align-items:center}.maintenance-checklist-editor-row .maintenance-check{margin:0 .25rem 0 0}.maintenance-checklist-editor-row .btn{min-width:36px}.maintenance-checklist-text,.maintenance-notes{resize:vertical}.maintenance-photos-cell{min-width:210px}.maintenance-summary-row>td{vertical-align:middle}.maintenance-summary-row{cursor:pointer}.maintenance-summary-row[aria-expanded=true]>td{background:rgba(var(--bs-primary-rgb),.08)}.maintenance-detail-row>td{padding-top:.85rem;padding-bottom:1.1rem;background:var(--bs-tertiary-bg)}.maintenance-detail-grid{display:grid;grid-template-columns:minmax(220px,1fr) minmax(320px,1.4fr) minmax(240px,1fr);gap:1rem;align-items:start}.maintenance-detail-section{min-width:0}.maintenance-detail-section .h6{margin-bottom:.75rem}.photo-gallery{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:.75rem;align-items:start}.maintenance-photo-card{width:190px;padding-bottom:.5rem;border-bottom:1px solid var(--bs-border-color);margin-bottom:.5rem}.gallery-photo-card{width:100%;padding:.5rem;border:1px solid var(--bs-border-color);border-radius:.6rem;margin:0;background:var(--bs-body-bg)}.maintenance-photo-marker{position:relative;width:190px;height:126px;cursor:crosshair;border:1px solid var(--bs-border-color);border-radius:.35rem;overflow:hidden;background:var(--bs-tertiary-bg)}.editable-photo-marker{cursor:zoom-in;touch-action:manipulation}.editable-photo-marker:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.45);outline-offset:2px}.gallery-photo-card .maintenance-photo-marker{width:100%;height:auto;aspect-ratio:4/3}.maintenance-photo-marker img{width:100%;height:100%;object-fit:cover;display:block}.maintenance-photo-marker span{position:absolute;width:18px;height:18px;border:2px solid #fff;border-radius:50%;background:var(--bs-danger);transform:translate(-50%,-50%);box-shadow:0 0 0 2px rgba(0,0,0,.35);pointer-events:none}.photo-overlay-actions{position:absolute;left:.35rem;right:.35rem;top:.35rem;display:flex;align-items:flex-start;justify-content:space-between;gap:.35rem;pointer-events:none}.photo-overlay-actions .badge,.photo-overlay-actions .btn{pointer-events:auto;box-shadow:0 .2rem .6rem rgba(0,0,0,.22)}.photo-overlay-actions .btn{width:32px;height:32px;display:inline-flex;align-items:center;justify-content:center;padding:0;margin-left:auto}.photo-delete-x{position:absolute;top:.35rem;right:.35rem;z-index:2;width:32px;height:32px;display:inline-grid;place-items:center;padding:0;border:0;border-radius:50%;background:rgba(185,28,28,.94);color:#fff;box-shadow:0 .2rem .65rem rgba(0,0,0,.4)}.photo-delete-x:focus-visible,.photo-delete-x:hover{background:#dc3545;color:#fff;transform:scale(1.06)}.photo-capture-tile{width:min(240px,100%);min-height:118px;display:grid;justify-items:center;align-content:center;gap:.25rem;margin-top:.75rem;border:1px dashed var(--bs-border-color);border-radius:.65rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:center;cursor:pointer}.photo-capture-tile:hover{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.08)}.photo-capture-tile:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.photo-capture-tile .bi{font-size:1.7rem;color:var(--bs-primary);line-height:1}.photo-capture-tile span{color:var(--bs-secondary-color);font-size:.82rem}#faultModal .fault-photo-trigger{width:min(176px,100%);min-height:78px;margin-top:.25rem;gap:.15rem;padding:.45rem .6rem}#faultModal .fault-photo-trigger .bi{font-size:1.25rem}#faultModal .fault-photo-trigger strong{font-size:.9rem;line-height:1.1}#faultModal .fault-photo-trigger span{font-size:.72rem;line-height:1.15}.photo-preview-overlay{position:fixed;inset:0;z-index:1090;display:grid;place-items:center;padding:1rem;background:rgba(0,0,0,.78)}.photo-preview-dialog{width:min(1100px,96vw);max-height:94dvh;display:grid;grid-template-rows:auto minmax(0,1fr);gap:.75rem}.photo-preview-header{display:flex;align-items:center;justify-content:space-between;gap:1rem;color:#fff}.photo-preview-dialog img{max-width:100%;max-height:calc(94dvh - 58px);object-fit:contain;border-radius:.65rem;background:#111;box-shadow:0 .75rem 2rem rgba(0,0,0,.45)}.maintenance-spare-list{display:grid;gap:.4rem;max-height:220px;overflow:auto}.maintenance-spare-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.15rem .45rem;border:1px solid var(--bs-border-color);border-radius:.45rem;padding:.45rem;background:var(--bs-tertiary-bg);font-size:.84rem}.maintenance-spare-link{width:100%;color:var(--bs-body-color);text-align:left;cursor:pointer}.maintenance-spare-link:hover{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.08)}.maintenance-spare-link:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.maintenance-spare-item small,.maintenance-spare-item span:nth-child(2){min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.maintenance-spare-item small{grid-column:1/-1;color:var(--bs-secondary-color)}.fault-photo-preview{display:grid;grid-template-columns:96px minmax(0,1fr);gap:.75rem;align-items:center;width:min(420px,100%);padding:.65rem;border:1px solid var(--bs-border-color);border-radius:.65rem;background:var(--bs-tertiary-bg)}.fault-photo-preview img{width:96px;height:72px;object-fit:cover;border:1px solid var(--bs-border-color);border-radius:.45rem;background:var(--bs-body-bg)}.fault-photo-preview-actions{display:flex;flex-wrap:wrap;gap:.45rem}.fault-photo-editor{position:fixed;inset:0;z-index:1095;display:grid;place-items:center;padding:.75rem;background:rgba(0,0,0,.82)}.photo-editor-open{overflow:hidden}.fault-photo-editor-dialog{width:min(980px,100%);max-height:96dvh;display:grid;grid-template-rows:auto auto auto minmax(0,1fr) auto;gap:.65rem;padding:.85rem;border:1px solid var(--bs-border-color);border-radius:.75rem;background:var(--bs-body-bg);box-shadow:0 1rem 2.5rem rgba(0,0,0,.45)}.fault-photo-editor-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.fault-photo-toolbar{display:flex;flex-wrap:wrap;gap:.45rem;margin-bottom:.65rem}.fault-photo-canvas{display:block;width:100%;max-height:66dvh;object-fit:contain;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-body-bg);touch-action:none;cursor:crosshair}.task-modal-shell{position:relative;overflow:hidden}.task-modal-shell::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--bs-secondary);z-index:2}.task-modal-shell-fault::before{background:var(--bs-danger)}.task-modal-shell-notification::before{background:#d39e00}.task-modal-header{position:relative;background:var(--bs-body-bg)}.task-modal-shell-fault .task-modal-header{background:linear-gradient(135deg,rgba(var(--bs-danger-rgb),.08),var(--bs-body-bg) 70%)}.task-modal-shell-notification .task-modal-header{background:linear-gradient(135deg,rgba(var(--bs-warning-rgb),.12),var(--bs-body-bg) 70%)}.task-modal-type{display:inline-flex;align-items:center;gap:.45rem;margin-right:.55rem;padding:.26rem .62rem;border-radius:999px;font-size:.8rem;font-weight:800;vertical-align:middle}.task-modal-type-fault{background:rgba(var(--bs-danger-rgb),.14);color:var(--bs-danger)}.work-order-detail{display:grid;gap:1rem}.work-order-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem;border:1px solid var(--bs-border-color);border-radius:.65rem;background:var(--bs-tertiary-bg);position:relative;overflow:hidden}.work-order-hero::before{content:"";position:absolute;inset:0 auto 0 0;width:4px;background:var(--bs-secondary)}.work-order-hero-fault{background:linear-gradient(135deg,rgba(var(--bs-danger-rgb),.1),var(--bs-tertiary-bg) 58%,var(--bs-body-bg));border-color:rgba(var(--bs-danger-rgb),.24)}.work-order-hero-fault::before{background:var(--bs-danger)}.work-order-hero-notification{background:linear-gradient(135deg,rgba(var(--bs-warning-rgb),.14),var(--bs-tertiary-bg) 58%,var(--bs-body-bg));border-color:rgba(138,90,0,.24)}.work-order-hero-notification::before{background:#d39e00}.work-order-hero-maintenance{background:linear-gradient(135deg,rgba(var(--bs-success-rgb),.12),var(--bs-tertiary-bg) 58%,var(--bs-body-bg));border-color:rgba(var(--bs-success-rgb),.24)}.work-order-hero-maintenance::before{background:var(--bs-success)}.work-order-status-block{display:flex;align-items:flex-end;gap:.5rem;flex-direction:column}.detail-primary-action{min-height:42px;min-width:9rem;font-weight:800;box-shadow:0 .2rem .5rem rgba(0,0,0,.12)}.detail-status-flow{display:flex;align-items:flex-start;gap:.35rem;padding:.8rem .9rem;border:1px solid var(--bs-border-color);border-radius:.7rem;background:var(--bs-tertiary-bg);overflow-x:auto}.detail-status-step{display:flex;align-items:center;gap:.35rem;min-width:max-content;color:var(--bs-secondary-color);font-size:.78rem;font-weight:700}.detail-status-step.is-current{color:var(--bs-primary)}.detail-status-step.is-complete{color:var(--bs-success)}.detail-status-step.is-blocked-step{color:#6f42c1}.detail-status-dot{width:1.45rem;height:1.45rem;display:inline-flex;align-items:center;justify-content:center;border:2px solid currentColor;border-radius:999px;background:var(--bs-body-bg);font-size:.62rem}.detail-status-step.is-current .detail-status-dot{background:var(--bs-primary);color:#fff}.detail-status-step.is-complete .detail-status-dot{background:var(--bs-success);color:#fff}.detail-status-step.is-blocked-step .detail-status-dot{background:#6f42c1;color:#fff}.detail-status-flow.is-paused .detail-status-step.is-current{color:var(--bs-warning-text-emphasis,#8a5700)}.detail-status-flow.is-paused .detail-status-step.is-current .detail-status-dot{background:var(--bs-warning);border-color:var(--bs-warning);color:#212529}.detail-status-connector{flex:1 0 1.2rem;min-width:1.2rem;height:2px;margin-top:.72rem;background:var(--bs-border-color)}.maintenance-detail-primary-action,.purchase-order-primary-action{display:flex;justify-content:flex-end;margin:.75rem 0}.purchase-order-primary-action .detail-primary-action{min-width:auto}.compact-detail-actions{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;flex-wrap:wrap}.compact-detail-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-width:36px}.fault-search-wrap{position:relative;max-width:58rem}.fault-search-wrap>i{position:absolute;left:.85rem;top:50%;z-index:2;color:var(--bs-secondary-color);transform:translateY(-50%);pointer-events:none}.fault-search-wrap .form-control{padding-left:2.45rem}.compact-row-summary{display:-webkit-box;max-width:42rem;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.3}.compact-icon-count{display:inline-flex;align-items:center;gap:.35rem;padding:.25rem .5rem;border-radius:999px;background:rgba(var(--bs-primary-rgb),.1);color:var(--bs-primary);font-size:.8rem;font-weight:800;white-space:nowrap}.compact-detail-text{padding:.75rem;border-radius:.5rem;background:var(--bs-tertiary-bg);white-space:pre-wrap;line-height:1.45}.compact-detail-solution{display:grid;gap:.25rem;padding-top:.75rem;border-top:1px solid var(--bs-border-color)}.compact-primary-action{display:flex;justify-content:flex-end}.compact-primary-action .btn{min-height:44px}.notification-status-control{display:grid;grid-template-columns:auto minmax(150px,1fr) auto;align-items:center;gap:.6rem}.notification-hero-status{padding:.42rem .65rem;font-size:.9rem;border-radius:.55rem}.work-order-grid{display:grid;grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);gap:1rem}.work-order-section{border:1px solid var(--bs-border-color);border-radius:.65rem;padding:1rem;background:var(--bs-body-bg)}.work-order-fast-panel{background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.1),var(--bs-body-bg))}.work-order-material-advice{background:linear-gradient(135deg,rgba(var(--bs-warning-rgb),.12),var(--bs-body-bg))}.work-order-fast-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(9rem,1fr));gap:.5rem}.work-order-fast-actions .btn{min-height:42px;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.section-title-row{display:flex;align-items:center;justify-content:space-between;gap:.75rem;flex-wrap:wrap;margin-bottom:.5rem}.section-collapse-toggle{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.75rem;padding:0;border:0;background:0 0;color:var(--bs-body-color);font-weight:800;text-align:left}.section-collapse-toggle span{display:inline-flex;align-items:center;gap:.45rem}.section-collapse-toggle>.bi{transition:transform .15s}.section-collapse-toggle[aria-expanded=true]>.bi{transform:rotate(180deg)}.notification-work-order-collapsed,.work-order-collapsible-section{padding-top:.85rem;padding-bottom:.85rem}.work-order-collapsible-section .section-collapse-toggle .badge{margin-left:auto}.work-order-completion-note{min-height:96px}.work-order-photos{display:flex;flex-wrap:wrap;gap:.75rem}.work-order-part-advice{display:flex;flex-wrap:wrap;gap:.4rem}.work-order-part-advice-button{max-width:340px;text-align:left;white-space:normal}.work-order-part-advice-button span{display:block;color:var(--bs-secondary-color);font-size:.75rem}.work-order-primary-actions{display:grid;grid-template-columns:repeat(3,minmax(8rem,1fr));gap:.55rem;padding:.65rem;border:1px solid var(--bs-border-color);border-radius:.75rem;background:var(--bs-tertiary-bg)}.work-order-primary-actions .btn{min-height:44px;display:inline-flex;align-items:center;justify-content:center;gap:.4rem}.planner-task-board{border:1px solid var(--bs-border-color);border-radius:.75rem;padding:1rem;margin-bottom:1rem;background:var(--bs-tertiary-bg)}.dashboard-actions-inbox{display:grid;gap:.8rem;padding:.9rem 1rem 1rem}.dashboard-inbox-group{display:grid;gap:.35rem}.dashboard-inbox-group h3{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.04em;color:var(--bs-secondary-color)}.dashboard-inbox-item{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.65rem .75rem;border-left:4px solid var(--bs-primary);border-radius:.5rem;background:var(--bs-tertiary-bg)}.dashboard-inbox-item>div{display:grid;min-width:0}.dashboard-inbox-item small{color:var(--bs-secondary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dashboard-inbox-item.inbox-now{border-left-color:var(--bs-danger)}.dashboard-inbox-item.inbox-today{border-left-color:var(--bs-warning)}.dashboard-inbox-item.inbox-soon{border-left-color:var(--bs-info)}.dashboard-inbox-item.inbox-info{border-left-color:var(--bs-secondary)}.detail-breadcrumbs{display:flex;align-items:center;gap:.4rem;margin-bottom:.6rem;color:var(--bs-secondary-color);font-size:.82rem}.detail-breadcrumbs button{padding:0;border:0;background:0 0;color:var(--bs-primary);text-decoration:underline}.machine-fixed-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.5rem;margin-top:.75rem}.machine-fixed-summary>div{display:grid;gap:.15rem;padding:.6rem .7rem;border:1px solid var(--bs-border-color);border-radius:.55rem;background:var(--bs-tertiary-bg)}.machine-fixed-summary span{color:var(--bs-secondary-color);font-size:.75rem}.machine-fixed-summary strong{font-size:.88rem}.qr-machine-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem;margin:.7rem 0}.qr-machine-summary>div{display:grid;gap:.12rem;padding:.55rem .65rem;border-radius:.5rem;background:var(--bs-tertiary-bg)}.qr-machine-summary span{color:var(--bs-secondary-color);font-size:.72rem}.machine-history-insights{display:flex;flex-wrap:wrap;gap:.6rem 1.2rem;margin-top:.6rem;color:var(--bs-secondary-color);font-size:.82rem}.machine-history-insights strong{color:var(--bs-body-color)}@media (max-width:760px){.machine-fixed-summary,.qr-machine-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-inbox-item{align-items:flex-start}}.planner-task-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:.85rem;align-items:start}.planner-technician-strip{display:grid;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:.35rem;margin:.55rem 0}.planner-technician-summary{display:grid;gap:.08rem;padding:.35rem .45rem;border:1px dashed var(--bs-primary);border-radius:.45rem;background:rgba(var(--bs-primary-rgb),.05);cursor:grab}.planner-technician-summary span{color:var(--bs-secondary-color);font-size:.78rem}.planner-technician-summary>span,.planner-technician-summary>strong{display:none}.planner-technician-summary-toggle{display:flex;align-items:center;justify-content:space-between;gap:.35rem;width:100%;padding:0;border:0;background:0 0;color:var(--bs-body-color);text-align:left}.planner-technician-summary-toggle strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-technician-counts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.2rem}.planner-technician-counts .badge{font-size:.65rem;font-weight:600}.planner-technician-availability,.planner-technician-summary-meta{color:var(--bs-secondary-color);font-size:.72rem}.planner-completed-summary{display:flex;flex-wrap:wrap;gap:.2rem .45rem;margin-top:.25rem;padding-top:.25rem;border-top:1px solid var(--bs-border-color);color:var(--bs-secondary-color);font-size:.72rem}.planner-completed-summary span:not(:first-child){color:var(--bs-body-color);font-weight:700}.planner-technician-strip-sticky{position:-webkit-sticky!important;position:sticky!important;top:0!important;z-index:100;align-self:start;padding:.35rem;border-radius:.6rem;background:var(--bs-body-bg);box-shadow:0 .35rem .7rem rgba(0,0,0,.22)}.planner-technician-strip-floating{position:fixed!important;top:0!important;z-index:1100!important;margin:0!important;border-radius:0 0 .6rem .6rem}.planner-task-card.is-dragging{opacity:.45}.planner-task-column{min-height:8rem}.planner-task-column[data-planner-drop-user-id]:hover,.planner-technician-summary:hover{outline:2px solid rgba(var(--bs-primary-rgb),.35)}.planner-technician-worklists{display:grid;gap:.65rem;margin-top:.75rem}.planner-technician-worklist{min-height:0}.planner-worklist-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem}.planner-worklist-header>div:first-child{min-width:0}.planner-worklist-counts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.3rem}.planner-current-task-list{grid-template-columns:1fr}.planner-current-task-list .planner-task-card{width:100%;grid-template-columns:3rem minmax(0,1fr) auto;padding:.45rem .55rem}.planner-current-task-list .planner-task-open{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(260px,1.2fr);align-items:center;gap:.75rem}.planner-current-task-list .planner-task-open>span,.planner-current-task-list .planner-task-open>strong{overflow:visible;text-overflow:clip;white-space:normal;overflow-wrap:anywhere}.planner-current-task-list .planner-task-main{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.75rem}.planner-current-task-list .planner-task-main>.d-flex{margin-top:0!important;justify-content:flex-end}.planner-worklist-empty{padding:.55rem;color:var(--bs-secondary-color);font-size:.82rem}.planner-history-group{border-top:1px solid var(--bs-border-color)}.planner-history-group summary{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.55rem .65rem;background:rgba(var(--bs-secondary-rgb),.06);cursor:pointer;font-weight:700;list-style:none}.planner-history-group summary::-webkit-details-marker{display:none}.planner-history-group summary::before{content:"›";margin-right:.35rem;color:var(--bs-secondary-color);font-size:1.15rem;transition:transform .15s}.planner-history-group[open] summary::before{transform:rotate(90deg)}.planner-history-group summary>span:first-of-type{margin-right:auto}.planner-history-list{display:grid}.planner-history-row{display:grid;grid-template-columns:minmax(120px,.55fr) minmax(150px,.8fr) minmax(240px,1.5fr) 110px auto;align-items:center;gap:.75rem;width:100%;padding:.5rem .65rem;border:0;border-top:1px solid var(--bs-border-color);background:var(--bs-body-bg);color:var(--bs-body-color);text-align:left}.planner-history-row:focus-visible,.planner-history-row:hover{background:rgba(var(--bs-primary-rgb),.08)}.planner-history-machine,.planner-history-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-task-reason{color:var(--bs-secondary-color);font-size:.75rem;margin-top:.35rem}.work-order-attention-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.6rem;margin-top:1rem}.work-order-attention-grid>div{display:grid;gap:.15rem;padding:.7rem;border:1px solid var(--bs-border-color);border-radius:.6rem;background:var(--bs-tertiary-bg)}.work-order-attention-grid small,.work-order-attention-grid span{color:var(--bs-secondary-color);font-size:.78rem}.work-order-recommended-action{border-color:rgba(var(--bs-success-rgb),.45)!important;box-shadow:inset 4px 0 var(--bs-success)}.work-order-blocked-banner{display:grid;gap:.2rem;border-left:5px solid var(--bs-danger)}.work-order-history{display:grid;gap:.4rem;margin-top:.65rem}.work-order-history-item{display:flex;justify-content:space-between;gap:1rem;padding:.5rem .65rem;border-radius:.45rem;background:var(--bs-tertiary-bg);font-size:.82rem}.work-order-history-item span{color:var(--bs-secondary-color);text-align:right}.fault-quick-assignment{display:flex;gap:.3rem;align-items:center;margin-top:.35rem}.fault-quick-assignment .form-select{width:155px;min-width:155px;padding:.25rem .5rem;font-size:.76rem}.fault-quick-assignment .btn{min-width:82px;padding:.28rem .45rem;font-size:.76rem;white-space:nowrap}.fault-detail .work-order-hero{padding:.55rem .75rem}.fault-detail .work-order-status-block{gap:.25rem}.fault-detail .detail-primary-action{padding:.3rem .65rem;min-height:34px}.fault-detail .compact-detail-actions{gap:.25rem}.fault-detail .compact-detail-actions .btn{min-height:30px}@media (max-width:700px){.work-order-attention-grid{grid-template-columns:1fr}.work-order-history-item{display:grid;gap:.15rem}.work-order-history-item span{text-align:left}.fault-quick-assignment{display:grid}.fault-quick-assignment .form-select{min-width:0;width:100%}}.planner-task-column{border:1px solid var(--bs-border-color);border-radius:.65rem;background:var(--bs-body-bg);overflow:hidden}.planner-technician-column{min-height:7rem}.planner-task-column-header{position:sticky;top:0;z-index:20;padding:.45rem .55rem;border-bottom:1px solid var(--bs-border-color);background:var(--bs-tertiary-bg)}.planner-task-column-header span,.planner-task-column-header strong{display:block}.planner-task-column-header span{color:var(--bs-secondary-color);font-size:.85rem}.planner-column-technician-toggle{display:flex;align-items:center;justify-content:space-between;gap:.3rem;width:100%;padding:0;border:0;background:0 0;color:var(--bs-body-color);text-align:left}.planner-column-technician-toggle strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.planner-column-technician-toggle .planner-technician-counts{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.2rem}.planner-column-technician-toggle .badge{font-size:.62rem}.planner-task-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,360px));gap:.35rem;padding:.45rem;justify-content:start}.planner-task-card{display:grid;grid-template-columns:2rem minmax(0,1fr) auto;gap:.6rem;align-items:start;border:1px solid var(--bs-border-color);border-radius:.55rem;padding:.6rem;background:var(--bs-body-bg)}.planner-task-card.compact-task-card{grid-template-columns:3rem minmax(0,1fr) auto;gap:.45rem;padding:.4rem;min-height:3.35rem}.planner-current-task-list .planner-task-card.compact-task-card{grid-template-columns:3rem minmax(0,1fr)}.planner-current-task-list .planner-task-card.compact-task-card .planner-task-open{display:block;grid-template-columns:none}.planner-current-task-list .planner-task-card.compact-task-card .planner-task-main,.planner-current-task-list .planner-task-card.compact-task-card .planner-task-open span{display:block}.planner-current-task-list .planner-task-card.compact-task-card .planner-task-actions{grid-column:2;grid-row:3;max-width:none;text-align:left}.planner-current-task-list{grid-template-columns:repeat(auto-fit,minmax(280px,360px));justify-content:start}.compact-task-code{display:grid;place-items:center;align-content:center;min-width:3rem;min-height:2.55rem;padding:.18rem;border-radius:.35rem;background:rgba(var(--bs-primary-rgb),.12);color:var(--bs-primary);line-height:1;text-align:center}.compact-task-code strong{font-size:.68rem}.compact-task-code span{font-size:.95rem;font-weight:800;margin-top:.18rem}.work-order-source-card-fault .compact-task-code{background:rgba(var(--bs-danger-rgb),.18);color:var(--bs-danger)}.work-order-source-card-notification .compact-task-code{background:rgba(var(--bs-warning-rgb),.24);color:#9a6700}.work-order-source-card-maintenance .compact-task-code{background:rgba(var(--bs-success-rgb),.18);color:var(--bs-success)}.work-order-source-card-workorder .compact-task-code{background:rgba(var(--bs-primary-rgb),.18);color:var(--bs-primary)}.compact-task-content{min-width:0}.compact-task-content>strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.86rem}.compact-task-card .planner-task-open span{display:none}.compact-task-card .planner-task-actions{align-self:center;max-width:7rem}.planner-task-card.planner-task-overdue{border-color:rgba(var(--bs-danger-rgb),.55);box-shadow:inset 4px 0 0 var(--bs-danger)}.mobile-task-board-technicians-anchor{min-width:0;width:100%}.mobile-task-board-technicians{position:sticky;top:var(--mobile-task-board-sticky-top,.25rem);z-index:19;display:grid;grid-template-columns:repeat(auto-fit,minmax(7rem,1fr));gap:.3rem;min-width:0;max-width:100%;padding:.35rem;border:1px solid var(--bs-border-color);border-radius:.55rem;background:var(--bs-body-bg);box-shadow:0 .25rem .65rem rgba(0,0,0,.2)}.mobile-task-board-technicians.mobile-task-board-technicians-fixed{position:fixed;top:var(--mobile-task-board-sticky-top,.25rem);left:var(--mobile-task-board-fixed-left,.75rem);right:var(--mobile-task-board-fixed-right,.75rem);width:auto}.mobile-task-board-technician{display:flex;align-items:center;justify-content:space-between;gap:.35rem;min-width:0;padding:.35rem .45rem;border:1px dashed rgba(var(--bs-primary-rgb),.65);border-radius:.4rem;background:rgba(var(--bs-primary-rgb),.08);color:var(--bs-body-color);text-align:left}.mobile-task-board-technician strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.76rem}.mobile-task-board-technician span{flex:0 0 auto;color:var(--bs-secondary-color);font-size:.66rem}.mobile-task-board-technician:hover{border-style:solid;background:rgba(var(--bs-primary-rgb),.16)}.mobile-task-board-technicians.mobile-task-board-awaiting-target .mobile-task-board-technician{border-style:solid;border-color:var(--bs-success);background:rgba(var(--bs-success-rgb),.16)}.mobile-task-board-group{display:grid;gap:.3rem;margin-top:.55rem;padding:.4rem;border:1px solid var(--bs-border-color);border-radius:.55rem;background:var(--bs-tertiary-bg)}.mobile-task-board-group-header{display:flex;align-items:center;justify-content:space-between;gap:.4rem;font-size:.78rem}.mobile-task-board-group-header span{color:var(--bs-secondary-color)}.mobile-task-board-group-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(145px,1fr));gap:.3rem}.mobile-task-board-empty{grid-column:1/-1;color:var(--bs-secondary-color);font-size:.7rem}.mobile-task-board-card{cursor:grab;-webkit-touch-callout:none;user-select:none}.mobile-task-board-card:active{cursor:grabbing}.mobile-task-board-card.mobile-task-tap-selected{border-color:var(--bs-success);background:rgba(var(--bs-success-rgb),.18);box-shadow:inset 0 0 0 2px var(--bs-success)}#mobileTaskBoardSection[aria-busy=true] .mobile-task-board-technicians::after{content:"Taak bijwerken…";position:absolute;right:.35rem;bottom:-.15rem;padding:.08rem .35rem;border-radius:999px;background:var(--bs-primary);color:#fff;font-size:.62rem;box-shadow:0 .15rem .4rem rgba(0,0,0,.25)}.mobile-task-board-assignment{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.4rem}.mobile-task-board-card.compact-task-card{display:grid;grid-template-columns:2.35rem minmax(0,1fr);gap:.3rem;min-height:3rem;padding:.3rem}.mobile-task-board-card .compact-task-code{min-width:2.35rem;min-height:2.35rem}.mobile-task-board-card .compact-task-code strong{font-size:.58rem}.mobile-task-board-card .compact-task-code span{font-size:.78rem}.mobile-task-board-card .compact-task-content>strong{font-size:.74rem;line-height:1.15}.mobile-task-board-card .mobile-card-meta{font-size:.62rem}.mobile-task-board-card>.d-flex,.mobile-task-board-card>.mobile-card-title,.mobile-task-board-card>.mobile-task-board-assignment{display:none!important}.work-order-source-card-fault{background:linear-gradient(135deg,rgba(var(--bs-danger-rgb),.08),var(--bs-body-bg) 62%)}.work-order-source-card-notification{background:linear-gradient(135deg,rgba(var(--bs-warning-rgb),.12),var(--bs-body-bg) 62%)}.work-order-source-card-maintenance{background:linear-gradient(135deg,rgba(var(--bs-success-rgb),.1),var(--bs-body-bg) 62%)}.work-order-source-card-workorder{background:linear-gradient(135deg,rgba(111,66,193,.14),var(--bs-body-bg) 62%)}.planner-task-order{width:2rem;height:2rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--bs-primary);color:#fff;font-weight:800;font-size:.85rem}.planner-task-main{min-width:0}.planner-task-open{width:100%;padding:0;border:0;background:0 0;color:var(--bs-body-color);text-align:left}.planner-task-open span,.planner-task-open strong{display:block;min-width:0;overflow-wrap:anywhere;white-space:normal}.planner-task-open span{color:var(--bs-secondary-color);font-size:.82rem;margin-top:.15rem}.planner-task-open .planner-task-machine{color:var(--bs-body-color);font-weight:700}.planner-current-task-list .planner-task-card.compact-task-card .planner-task-machine{white-space:nowrap;overflow:visible;font-size:.78rem}.planner-task-open .planner-task-title{color:var(--bs-secondary-color);font-size:.76rem}.planner-task-open .planner-task-deadline{font-size:.72rem}.planner-task-actions{min-width:0;max-width:8rem;overflow-wrap:anywhere;text-align:right;display:grid;gap:.35rem}.planner-task-open:hover strong{color:var(--bs-primary)}.work-order-source-pill{display:inline-flex;align-items:center;gap:.3rem;padding:.18rem .5rem;border-radius:999px;font-size:.72rem;font-weight:800;line-height:1.15}.work-order-source-pill-fault{background:rgba(var(--bs-danger-rgb),.14);color:var(--bs-danger)}.work-order-source-pill-notification{background:rgba(var(--bs-warning-rgb),.18);color:#8a5a00}.work-order-source-pill-maintenance{background:rgba(var(--bs-success-rgb),.16);color:var(--bs-success)}.work-order-source-hero-pill{display:inline-flex;align-items:center;gap:.4rem;padding:.32rem .72rem;border-radius:999px;font-size:.78rem;font-weight:800;line-height:1.1;box-shadow:inset 0 0 0 1px rgba(255,255,255,.18)}.work-order-source-hero-pill-fault{background:rgba(var(--bs-danger-rgb),.14);color:var(--bs-danger)}.work-order-source-hero-pill-notification{background:rgba(var(--bs-warning-rgb),.2);color:#8a5a00}.work-order-source-hero-pill-maintenance{background:rgba(var(--bs-success-rgb),.18);color:var(--bs-success)}.work-order-source-inline{display:inline-flex;align-items:center;gap:.3rem;padding:.14rem .46rem;border-radius:999px;font-size:.72rem;font-weight:700;line-height:1.15}.work-order-source-inline-fault{background:rgba(var(--bs-danger-rgb),.12);color:var(--bs-danger)}.work-order-source-inline-notification{background:rgba(var(--bs-warning-rgb),.16);color:#8a5a00}.work-order-source-inline-maintenance{background:rgba(var(--bs-success-rgb),.14);color:var(--bs-success)}.work-order-source-row-fault>td{background:linear-gradient(90deg,rgba(var(--bs-danger-rgb),.06),transparent 42%)}.work-order-source-row-notification>td{background:linear-gradient(90deg,rgba(var(--bs-warning-rgb),.08),transparent 42%)}.work-order-source-row-maintenance>td{background:linear-gradient(90deg,rgba(var(--bs-success-rgb),.06),transparent 42%)}.template-form-panel{border:1px solid var(--bs-border-color);border-radius:.65rem;padding:.85rem;background:var(--bs-tertiary-bg)}.purchase-order-kanban{display:grid;grid-template-columns:minmax(0,1fr);gap:.65rem;align-items:start}.purchase-order-column{width:100%;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-body-bg);overflow:hidden}.purchase-order-column-header{width:100%;display:flex;align-items:center;justify-content:space-between;gap:.45rem;padding:.55rem .7rem;border:0;border-bottom:1px solid var(--bs-border-color);background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:left;min-height:44px}.purchase-order-column-header span{display:inline-flex;align-items:center;gap:.35rem;font-weight:800;font-size:.92rem}.purchase-order-column-header strong{min-width:1.35rem;height:1.35rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgb(var(--purchase-group-rgb,var(--bs-primary-rgb)));color:#fff;font-size:.72rem;line-height:1}.purchase-order-column-header .bi-chevron-down,.purchase-order-column-header .bi-chevron-up{font-size:.9rem;color:var(--bs-secondary-color)}.purchase-order-column-body{display:grid;gap:0;padding:0}.purchase-order-column-completed{background:linear-gradient(180deg,rgba(var(--bs-secondary-rgb),.06),var(--bs-body-bg) 30%)}.purchase-order-item{border-bottom:1px solid var(--bs-border-color);background:var(--bs-body-bg);box-shadow:inset 4px 0 0 var(--purchase-status-color,var(--bs-primary))}.purchase-order-item:last-child{border-bottom:0}.purchase-order-item.is-expanded{background:color-mix(in srgb,var(--bs-tertiary-bg) 55%,var(--bs-body-bg))}.purchase-order-row-button{width:100%;display:grid;grid-template-columns:minmax(7.5rem,.7fr) minmax(16rem,1.8fr) minmax(12rem,1fr) minmax(12rem,1fr) minmax(9rem,.75fr) auto;gap:.65rem;align-items:center;min-height:58px;padding:.55rem .75rem .55rem 1rem;border:0;background:0 0;color:var(--bs-body-color);text-align:left}.purchase-order-row-button:focus-visible,.purchase-order-row-button:hover{background:rgba(var(--bs-primary-rgb),.06);outline:0}.purchase-order-row-number{font-weight:800;font-size:.85rem}.purchase-order-row-date,.purchase-order-row-part,.purchase-order-row-supplier{display:grid;gap:.08rem;min-width:0}.purchase-order-row-date strong,.purchase-order-row-part strong,.purchase-order-row-supplier strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-order-row-date small,.purchase-order-row-part small,.purchase-order-row-supplier small{color:var(--bs-secondary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-order-row-meta{display:flex;flex-wrap:wrap;gap:.25rem;align-items:center}.purchase-order-detail-panel{display:grid;grid-template-columns:minmax(14rem,1fr) minmax(28rem,2fr) minmax(22rem,1.4fr) auto;gap:.75rem;padding:.7rem .75rem .8rem 1rem;border-top:1px solid var(--bs-border-color)}.purchase-order-card{border:0;border-bottom:1px solid var(--bs-border-color);border-radius:0;padding:.65rem .75rem;background:var(--bs-body-bg);display:grid;grid-template-columns:minmax(13rem,1.15fr) minmax(30rem,2.35fr) minmax(22rem,1.45fr) auto;gap:.75rem;align-items:start}.purchase-order-card:last-child{border-bottom:0}.purchase-order-card.purchase-order-overdue{border-color:rgba(var(--bs-danger-rgb),.55);box-shadow:inset 4px 0 0 var(--bs-danger)}.purchase-order-card.purchase-order-proposal{box-shadow:inset 4px 0 0 var(--bs-primary)}.purchase-order-card.purchase-order-ordered{box-shadow:inset 4px 0 0 var(--bs-warning)}.purchase-order-card.purchase-order-delivered{box-shadow:inset 4px 0 0 var(--bs-success)}.purchase-order-card.purchase-order-completed{box-shadow:inset 4px 0 0 var(--bs-secondary)}.purchase-order-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.purchase-order-number{font-size:.72rem;color:var(--bs-secondary-color);font-weight:700}.purchase-order-title{font-size:.96rem;font-weight:800;line-height:1.16}.purchase-order-subtitle{color:var(--bs-secondary-color);font-size:.78rem;margin-top:.08rem}.purchase-order-badges{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:.25rem}.purchase-order-badges .badge{font-size:.68rem}.purchase-order-card-grid{display:grid;grid-template-columns:repeat(4,minmax(7rem,1fr));gap:.4rem .5rem;align-content:start}.purchase-order-field label{margin-bottom:.2rem;font-size:.78rem;color:var(--bs-secondary-color)}.purchase-order-field:first-child,.purchase-order-field:nth-child(2),.purchase-order-field:nth-child(7){grid-column:span 2}.purchase-order-delivery{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(10rem,.8fr);gap:.55rem;align-items:start}.purchase-order-documents{min-width:0}.purchase-order-dates{display:grid;gap:.1rem;min-width:11rem;padding:.45rem .55rem;border:1px solid var(--bs-border-color);border-radius:.55rem;background:var(--bs-body-bg);font-size:.78rem;line-height:1.25}.purchase-order-actions{display:grid;gap:.4rem;min-width:8.5rem}.purchase-order-row>td:first-child{box-shadow:inset 5px 0 0 var(--purchase-status-color,var(--bs-primary));padding-left:1rem}.purchase-order-proposal{--purchase-status-color:var(--bs-primary)}.purchase-order-ordered{--purchase-status-color:var(--bs-warning)}.purchase-order-delivered{--purchase-status-color:var(--bs-success)}.purchase-order-completed{--purchase-status-color:var(--bs-secondary)}.purchase-order-overdue{--purchase-status-color:var(--bs-danger)}.purchase-order-group td{padding:.45rem .85rem;border-top:2px solid var(--bs-border-color);background:linear-gradient(90deg,rgba(var(--purchase-group-rgb),.16),var(--bs-tertiary-bg) 55%);color:var(--bs-body-color)}.purchase-order-group{cursor:pointer;user-select:none}.purchase-order-group span{font-weight:800}.purchase-order-group strong{display:inline-flex;align-items:center;justify-content:center;min-width:1.35rem;height:1.35rem;margin-left:.4rem;border-radius:999px;background:rgb(var(--purchase-group-rgb));color:#fff;font-size:.7rem}.purchase-doc-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.45rem}.purchase-doc-slot{display:grid;gap:.2rem;align-content:start;min-width:0}.purchase-doc-slot .purchase-document-picker{width:100%;justify-content:center;gap:.35rem;font-weight:800}.purchase-doc-slot .purchase-document-picker .bi{font-size:.92rem}.purchase-doc-meta{min-height:1.1rem;font-size:.72rem;line-height:1.2;color:var(--bs-secondary-color);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.purchase-doc-meta a{color:inherit;text-decoration:none}.purchase-doc-meta a:hover{color:var(--bs-primary);text-decoration:underline}.purchase-doc-slot-quote .purchase-document-picker{--bs-btn-border-color:rgba(var(--bs-info-rgb), .65)}.purchase-doc-slot-confirmation .purchase-document-picker{--bs-btn-border-color:rgba(var(--bs-success-rgb), .65)}.purchase-doc-slot-delivery_note .purchase-document-picker{--bs-btn-border-color:rgba(var(--bs-warning-rgb), .8)}@media (max-width:1599.98px){.purchase-order-row-button{grid-template-columns:minmax(7.5rem,.75fr) minmax(15rem,1.7fr) minmax(10rem,1fr) minmax(10rem,.95fr) auto}.purchase-order-row-date{display:none}.purchase-order-detail-panel{grid-template-columns:minmax(14rem,1fr) minmax(28rem,2fr) minmax(20rem,1.3fr)}.purchase-order-detail-panel .purchase-order-actions{grid-column:1/-1;display:flex;justify-content:flex-end}.purchase-order-card{grid-template-columns:minmax(14rem,1fr) minmax(28rem,2fr) minmax(20rem,1.3fr)}.purchase-order-actions{grid-column:1/-1;display:flex;justify-content:flex-end}}@media (max-width:1199.98px){.purchase-order-row-button{grid-template-columns:minmax(7rem,.65fr) minmax(14rem,1.4fr) minmax(9rem,.9fr) auto}.purchase-order-row-supplier{display:none}.purchase-order-detail-panel{grid-template-columns:minmax(14rem,.8fr) minmax(28rem,2fr)}.purchase-order-detail-panel .purchase-order-delivery{grid-column:1/-1}.purchase-order-card{grid-template-columns:minmax(14rem,.8fr) minmax(28rem,2fr)}.purchase-order-delivery{grid-column:1/-1}}@media (max-width:767.98px),(pointer:coarse) and (hover:none){.planner-worklist-header{align-items:flex-start}.planner-current-task-list .planner-task-card{grid-template-columns:2.35rem minmax(0,1fr)}.planner-current-task-list .planner-task-main,.planner-current-task-list .planner-task-open{display:block}.planner-current-task-list .planner-task-actions{display:none}.planner-history-row{grid-template-columns:minmax(90px,.55fr) minmax(0,1.45fr) auto;gap:.35rem}.planner-history-row .planner-history-machine,.planner-history-row>span:nth-of-type(3){display:none}.mobile-module-mode.task-detail-active{--sidebar-width:0px;grid-template-columns:minmax(0,1fr)}.mobile-module-mode.task-detail-active .topbar,.mobile-module-mode.task-detail-active>.sidebar{display:none!important}.mobile-module-mode.task-detail-active .content,.mobile-module-mode.task-detail-active .main-area{width:100%;max-width:100%}.mobile-module-mode.task-detail-active .content{padding:.35rem!important}.purchase-order-row-button{grid-template-columns:minmax(0,1fr) auto;gap:.35rem;align-items:start;padding:.65rem .75rem .65rem .95rem}.purchase-order-row-meta,.purchase-order-row-number{grid-column:1/-1}.purchase-order-row-part{grid-column:1}.purchase-order-row-meta{justify-content:flex-start}.purchase-order-detail-panel{grid-template-columns:minmax(0,1fr);gap:.65rem;padding:.75rem .75rem .85rem .95rem}.purchase-order-card{grid-template-columns:minmax(0,1fr);gap:.65rem;padding:.75rem}.purchase-doc-grid,.purchase-order-card-grid,.purchase-order-delivery{grid-template-columns:1fr}.purchase-order-actions,.purchase-order-delivery,.purchase-order-field:first-child,.purchase-order-field:nth-child(2),.purchase-order-field:nth-child(7){grid-column:auto}.purchase-order-dates{min-width:0}.purchase-order-detail-panel .purchase-order-actions{display:grid;justify-content:stretch}.purchase-order-detail-panel .purchase-order-actions .btn{width:100%;min-height:42px}}.purchase-order-group-proposal{--purchase-group-rgb:var(--bs-primary-rgb)}.purchase-order-group-ordered{--purchase-group-rgb:var(--bs-warning-rgb)}.purchase-order-group-delivered{--purchase-group-rgb:var(--bs-success-rgb)}.purchase-order-group-completed{--purchase-group-rgb:var(--bs-secondary-rgb)}.purchase-doc-grid{display:grid;gap:.4rem;min-width:13rem}.purchase-doc-slot{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem}.purchase-doc-slot .btn{white-space:nowrap}.planner-task-reassign,.work-order-reassign{display:flex;flex-wrap:wrap;gap:.35rem;align-items:center}.planner-task-reassign .form-select,.work-order-reassign .form-select{min-width:12rem;max-width:18rem}.attendance-legend,.attendance-summary{display:flex;flex-wrap:wrap;gap:.45rem .75rem;align-items:center}.attendance-period-toolbar{display:grid;grid-template-columns:minmax(7rem,10rem) auto minmax(10rem,13rem) auto auto auto auto;gap:.45rem;align-items:center;justify-content:end}.attendance-period-toolbar .form-control,.attendance-period-toolbar .form-select{width:100%}.attendance-bulk-toolbar{display:grid;grid-template-columns:auto auto minmax(5rem,7rem) minmax(10rem,1fr) minmax(8rem,10rem) minmax(12rem,1.4fr) auto auto auto;gap:.45rem;align-items:center;border:1px solid rgba(var(--bs-primary-rgb),.35);border-radius:.65rem;padding:.65rem;background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.12),var(--bs-body-bg))}.attendance-bulk-presets{display:inline-flex;flex-wrap:wrap;gap:.25rem;align-items:center}.attendance-bulk-presets .attendance-code{min-width:2rem;min-height:1.85rem}.attendance-week-totals{display:inline-flex;flex-wrap:wrap;gap:.35rem;align-items:center;padding:.25rem .4rem;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-tertiary-bg)}.attendance-week-total{display:inline-flex;align-items:center;gap:.25rem;font-weight:700;color:var(--bs-body-color)}.attendance-code-input{max-width:6rem}.attendance-calendar-wrap{overflow:auto;border:1px solid var(--bs-border-color);border-radius:.5rem}.attendance-calendar{display:grid;grid-template-columns:minmax(9rem,13rem) repeat(4,minmax(2.35rem,2.8rem)) repeat(var(--attendance-days,31),minmax(2.3rem,1fr));min-width:1120px}.attendance-cell,.attendance-corner,.attendance-day-head,.attendance-stat-cell,.attendance-stat-head,.attendance-user{border-right:1px solid var(--bs-border-color);border-bottom:1px solid var(--bs-border-color);min-height:2.25rem}.attendance-corner,.attendance-day-head,.attendance-stat-head{position:sticky;top:0;z-index:2;background:var(--bs-tertiary-bg);font-size:.78rem;text-align:center}.attendance-stat-head{display:grid;place-items:center;font-weight:800;color:var(--bs-secondary-color)}.attendance-day-head{border-top:0;border-left:0;color:var(--bs-body-color)}.attendance-day-head:hover{background:rgba(var(--bs-primary-rgb),.12)}.attendance-corner,.attendance-user{position:sticky;left:0;z-index:3;background:var(--bs-body-bg);padding:.35rem .5rem;font-weight:700}.attendance-user{display:flex;align-items:center;min-width:0;width:100%;border:0;border-radius:0;text-align:left;color:var(--bs-body-color)}.attendance-user-absent{background:rgba(220,80,80,.1)}.attendance-user:focus-visible,.attendance-user:hover{background:rgba(var(--bs-primary-rgb),.1);outline:0}.attendance-user-name{display:flex;align-items:center;min-width:0;overflow:hidden}.attendance-user-name>span:first-child{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.attendance-group-row{grid-column:1/-1;background:rgba(var(--bs-primary-rgb),.1);border-top:1px solid var(--bs-border-color);border-bottom:1px solid var(--bs-border-color);color:var(--bs-primary);font-size:.75rem;font-weight:800;letter-spacing:.04em;padding:.45rem .65rem;text-transform:uppercase}.attendance-stat-cell{display:grid;place-items:center;background:var(--bs-body-bg);font-weight:800;font-size:.82rem;color:var(--bs-body-color)}.attendance-day-head span{display:block;color:var(--bs-secondary-color);font-size:.72rem}.attendance-cell{display:flex;flex-wrap:wrap;gap:.12rem;align-items:center;justify-content:center;padding:.15rem;cursor:pointer}.attendance-cell:hover{background:rgba(var(--bs-primary-rgb),.08)}.attendance-cell-absence{background:rgba(220,80,80,.1)}.attendance-cell-absence:hover{background:rgba(220,80,80,.16)}.attendance-cell-shift-early{background:rgba(255,228,168,.12)}.attendance-cell-shift-day{background:rgba(221,214,254,.12)}.attendance-cell-shift-late_shift{background:rgba(201,224,255,.12)}.attendance-cell-shift-early:hover{background:rgba(255,228,168,.18)}.attendance-cell-shift-day:hover{background:rgba(221,214,254,.18)}.attendance-cell-shift-late_shift:hover{background:rgba(201,224,255,.18)}html[data-bs-theme=light] .attendance-user-absent{background:rgba(220,80,80,.18)}html[data-bs-theme=light] .attendance-cell-absence{background:rgba(220,80,80,.2)}html[data-bs-theme=light] .attendance-cell-absence:hover{background:rgba(220,80,80,.27)}html[data-bs-theme=light] .attendance-cell-shift-early{background:rgba(255,228,168,.24)}html[data-bs-theme=light] .attendance-cell-shift-day{background:rgba(221,214,254,.24)}html[data-bs-theme=light] .attendance-cell-shift-late_shift{background:rgba(201,224,255,.24)}html[data-bs-theme=light] .attendance-cell-shift-early:hover{background:rgba(255,228,168,.32)}html[data-bs-theme=light] .attendance-cell-shift-day:hover{background:rgba(221,214,254,.32)}html[data-bs-theme=light] .attendance-cell-shift-late_shift:hover{background:rgba(201,224,255,.32)}.attendance-cell-selected{background:rgba(var(--bs-primary-rgb),.16);box-shadow:inset 0 0 0 2px var(--bs-primary)}.attendance-conflict{background:rgba(var(--bs-danger-rgb),.16);box-shadow:inset 0 0 0 2px rgba(var(--bs-danger-rgb),.35)}.attendance-code{border:1px solid rgba(15,23,42,.18);border-radius:.3rem;padding:.16rem .4rem;font-weight:900;font-size:.78rem;line-height:1.2;color:#172033!important;box-shadow:0 1px 2px rgba(0,0,0,.12)}.attendance-none{background:var(--bs-secondary-bg);color:var(--bs-secondary-color)}.attendance-generated{box-shadow:inset 0 0 0 1px rgba(0,0,0,.18);opacity:.9}.attendance-vacation{background:#baf0a4}.attendance-social-leave{background:#b9edf7}.attendance-sick{background:#ffc2c2}.attendance-late{background:#8ce9e9}.attendance-early{background:#ffe4a8}.attendance-day{background:#ddd6fe}.attendance-late-shift{background:#c9e0ff}.attendance-training{background:#ffe18a}.attendance-compensation{background:#a9df8e}.attendance-accident{background:#ffc18f}.attendance-holiday{background:#bcefd7}.today-planning-person .attendance-code{min-width:2rem;min-height:1.65rem;display:inline-flex;align-items:center;justify-content:center;font-size:.84rem}.attendance-patterns summary{cursor:pointer;font-weight:700}.attendance-quick-editor{position:absolute;z-index:1080;width:min(270px,calc(100vw - 16px));padding:.75rem;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-body-bg);box-shadow:0 .75rem 2rem rgba(0,0,0,.22)}.attendance-quick-title{font-weight:800;font-size:.85rem;margin-bottom:.5rem}.today-planning-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(12.5rem,1fr));gap:.5rem}.today-planning-group{display:grid;gap:.35rem}.today-planning-group+.today-planning-group{margin-top:.65rem}.today-planning-group-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.1rem .15rem;color:var(--bs-secondary-color);font-size:.78rem}.today-planning-group-header strong{color:var(--bs-body-color)}.today-planning-item{display:grid;align-content:center;gap:.45rem;width:100%;min-width:0;min-height:72px;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.6rem .75rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:left}.today-planning-person{cursor:pointer}.today-planning-person:hover{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.08)}.today-planning-person:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.32);outline-offset:2px}.today-planning-item span,.today-planning-item strong{display:block}.today-planning-item>div:first-child span{color:var(--bs-secondary-color);font-size:.8rem}.fault-group-row td{padding:.65rem 1rem;border-top:2px solid var(--bs-border-color);background:linear-gradient(90deg,rgba(var(--fault-group-rgb),.16),var(--bs-tertiary-bg) 55%)}.fault-group-toggle{width:100%;display:flex;align-items:center;gap:.6rem;border:0;padding:0;background:0 0;color:var(--bs-body-color);text-align:left;font-weight:800}.fault-group-toggle strong{display:inline-flex;align-items:center;justify-content:center;min-width:1.65rem;height:1.65rem;border-radius:999px;background:rgb(var(--fault-group-rgb));color:#fff;font-size:.82rem}.fault-group-toggle .bi{margin-left:auto;transition:transform .15s}.fault-group-toggle[aria-expanded=true] .bi{transform:rotate(180deg)}.fault-group-open{--fault-group-rgb:var(--bs-danger-rgb)}.fault-group-work_order{--fault-group-rgb:var(--bs-primary-rgb)}.fault-group-resolved{--fault-group-rgb:var(--bs-success-rgb)}.fault-family-summary{border:1px solid rgba(var(--bs-primary-rgb),.3);border-left:5px solid var(--bs-primary);border-radius:.65rem;padding:.75rem;background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.1),var(--bs-body-bg) 65%)}.fault-family-summary-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.55rem}.fault-family-summary-header>div{display:grid;gap:.15rem;min-width:0}.fault-family-summary-header strong{display:inline-flex;align-items:center;gap:.4rem}.fault-family-summary-header small{color:var(--bs-secondary-color)}.fault-family-summary-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(12rem,1fr));gap:.35rem}.fault-family-summary-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:.4rem;align-items:center;border:1px solid var(--bs-border-color);border-radius:.45rem;padding:.45rem .55rem;background:var(--bs-tertiary-bg);font-size:.82rem}.fault-family-summary-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.fault-family-summary-row .text-secondary{grid-column:2/-1;font-size:.75rem}.resolve-fault-button{white-space:nowrap}.fault-downtime-toggle{border:1px solid rgba(var(--bs-danger-rgb),.28);border-radius:.65rem;padding:.75rem .9rem .75rem 2.8rem;background:rgba(var(--bs-danger-rgb),.06);cursor:pointer}.fault-downtime-toggle .form-check-input,.fault-downtime-toggle .form-check-label{cursor:pointer}.fault-downtime-toggle:has(.form-check-input:focus-visible){outline:3px solid rgba(var(--bs-danger-rgb),.25);outline-offset:2px}.machine-history-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:.75rem}.machine-history-summary>div{border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.75rem;background:var(--bs-tertiary-bg)}.machine-history-summary span,.machine-history-summary strong{display:block}.machine-history-summary span{color:var(--bs-secondary-color);font-size:.85rem;margin-top:.15rem}.machine-history-summary>.status-summary-tile{border-left-width:5px;background:linear-gradient(135deg,rgba(var(--summary-rgb),.18),var(--bs-tertiary-bg) 62%);border-left-color:rgb(var(--summary-rgb))}.status-summary-tile strong{color:rgb(var(--summary-rgb))}.summary-ok{--summary-rgb:var(--bs-success-rgb)}.summary-info{--summary-rgb:var(--bs-primary-rgb)}.summary-warning{--summary-rgb:var(--bs-warning-rgb)}.summary-danger{--summary-rgb:var(--bs-danger-rgb)}.summary-neutral{--summary-rgb:var(--bs-secondary-rgb)}.machine-status-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--bs-border-color);border-left-width:6px;border-radius:.75rem;padding:.85rem 1rem;margin-bottom:.9rem;background:var(--bs-body-bg)}.machine-status-main{display:flex;align-items:center;gap:.75rem;min-width:0}.machine-status-main .bi{font-size:1.55rem;color:var(--machine-status-color,var(--bs-primary))}.machine-status-main span,.machine-status-main strong{display:block}.machine-status-main span{color:var(--bs-secondary-color);font-size:.88rem}.machine-status-pills{display:flex;align-items:center;justify-content:flex-end;gap:.4rem;flex-wrap:wrap}.machine-status-ok{--machine-status-color:var(--bs-success);border-left-color:var(--bs-success);background:linear-gradient(90deg,rgba(var(--bs-success-rgb),.11),var(--bs-body-bg) 45%)}.machine-status-info{--machine-status-color:var(--bs-primary);border-left-color:var(--bs-primary);background:linear-gradient(90deg,rgba(var(--bs-primary-rgb),.1),var(--bs-body-bg) 45%)}.machine-status-danger{--machine-status-color:var(--bs-danger);border-left-color:var(--bs-danger);background:linear-gradient(90deg,rgba(var(--bs-danger-rgb),.12),var(--bs-body-bg) 45%)}.machine-status-archived{--machine-status-color:var(--bs-secondary);border-left-color:var(--bs-secondary);background:linear-gradient(90deg,rgba(var(--bs-secondary-rgb),.1),var(--bs-body-bg) 45%)}.machine-dossier{display:grid;gap:.85rem}.machine-dossier-hero{display:grid;grid-template-columns:minmax(220px,.8fr) minmax(320px,1.2fr);gap:.8rem;align-items:stretch;padding:.85rem;border:1px solid var(--bs-border-color);border-radius:.85rem;background:linear-gradient(135deg,rgba(var(--bs-primary-rgb),.06),var(--bs-body-bg))}.machine-dossier-document-icons{display:flex;flex-wrap:wrap;gap:.35rem;margin-top:.45rem}.machine-dossier-document-icon{width:2rem;height:2rem;display:inline-flex;align-items:center;justify-content:center;border:1px solid rgba(var(--bs-primary-rgb),.55);border-radius:.45rem;background:rgba(var(--bs-primary-rgb),.1);color:var(--bs-primary);text-decoration:none}.machine-dossier-document-icon:focus-visible,.machine-dossier-document-icon:hover{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.2);color:var(--bs-primary);outline:2px solid rgba(var(--bs-primary-rgb),.2);outline-offset:1px}.machine-dossier-document-icon .bi{font-size:1rem}.machine-dossier-identity{display:flex;align-items:center;gap:.85rem;min-width:0}.machine-dossier-icon{width:3.25rem;height:3.25rem;border-radius:.85rem;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;background:rgba(var(--bs-primary-rgb),.12);color:var(--bs-primary);font-size:1.55rem}.machine-dossier-identity h3,.machine-dossier-subtitle{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-dossier-subtitle{color:var(--bs-secondary-color);font-size:.9rem}.machine-dossier-hero .machine-status-bar{margin:0;min-width:0}.machine-dossier-kpis{grid-column:1/-1;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:.5rem}.machine-dossier-kpi,.machine-dossier-kpis>div{min-width:0;padding:.55rem .65rem;border:1px solid var(--bs-border-color);border-radius:.6rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:left}.machine-dossier-kpi{display:block;width:100%;cursor:pointer;transition:border-color .15s,background .15s}.machine-dossier-kpi:focus-visible,.machine-dossier-kpi:hover{border-color:var(--bs-primary);background:rgba(var(--bs-primary-rgb),.1);outline:0}.machine-dossier-kpi>.bi{float:right;color:var(--bs-primary);font-size:.9rem}.machine-dossier-kpis span,.machine-dossier-kpis strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-dossier-kpis strong{font-size:1.15rem;line-height:1.1}.machine-dossier-kpis span{margin-top:.15rem;color:var(--bs-secondary-color);font-size:.74rem}.machine-dossier-quick-actions{display:flex;align-items:center;gap:.45rem;flex-wrap:wrap}.machine-dossier-quick-actions .btn{display:inline-flex;align-items:center;justify-content:center;gap:.35rem;min-height:36px;font-weight:700}.machine-dossier .machine-dossier-search{position:relative;display:grid;grid-template-columns:minmax(220px,1fr) auto;gap:.55rem;align-items:center;padding:.65rem;background:var(--bs-tertiary-bg)}.machine-dossier .machine-dossier-search>.bi{position:absolute;left:1.05rem;top:1.25rem;color:var(--bs-secondary-color);pointer-events:none}.machine-dossier .machine-dossier-search .form-control{padding-left:2.35rem}.machine-dossier .machine-dossier-filter-bar{justify-content:flex-end}.machine-dossier .machine-dossier-search-results{grid-column:1/-1}.machine-dossier-split{display:grid;grid-template-columns:minmax(280px,.85fr) minmax(360px,1.15fr);gap:.85rem;align-items:start}.machine-dossier-card{min-width:0;border:1px solid var(--bs-border-color);border-radius:.85rem;padding:.85rem;background:var(--bs-body-bg)}.machine-dossier-card-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.7rem}.machine-dossier-current-list{display:grid;gap:.5rem}.machine-dossier-current-item{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;gap:.65rem;align-items:center;border:1px solid var(--bs-border-color);border-radius:.65rem;padding:.65rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:left}.machine-dossier-current-item:hover{border-color:var(--bs-primary)}.machine-dossier-empty{min-height:96px;display:grid;place-items:center;gap:.3rem;color:var(--bs-secondary-color);border:1px dashed var(--bs-border-color);border-radius:.7rem;background:var(--bs-tertiary-bg);text-align:center}.machine-dossier-empty .bi{color:var(--bs-success);font-size:1.55rem}.machine-dossier-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:.75rem}.machine-dossier-stats>div{border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.75rem;background:var(--bs-tertiary-bg)}.machine-dossier-stats span,.machine-dossier-stats strong{display:block}.machine-dossier-stats strong{font-size:1.35rem;line-height:1.1}.machine-dossier-stats span{color:var(--bs-secondary-color);font-size:.82rem;margin-top:.15rem}.machine-dossier-tabs{display:flex;gap:.4rem;flex-wrap:wrap;border-bottom:1px solid var(--bs-border-color);padding-bottom:.45rem}.machine-dossier-tabs button{display:inline-flex;align-items:center;gap:.35rem;border:1px solid var(--bs-border-color);border-radius:.55rem;padding:.5rem .75rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color)}.machine-dossier-tabs button.active{background:var(--bs-primary);border-color:var(--bs-primary);color:#fff}.machine-dossier-panel{padding:.85rem;border:1px solid var(--bs-border-color);border-radius:.85rem;background:var(--bs-body-bg)}.machine-dossier-search{border:1px solid var(--bs-border-color);border-radius:.65rem;padding:.85rem;background:var(--bs-body-bg)}.machine-dossier-filter-bar{display:flex;gap:.35rem;flex-wrap:wrap}.machine-dossier-search-results{margin-top:.75rem}.machine-dossier-result-count{color:var(--bs-secondary-color);font-size:.85rem;margin-bottom:.45rem}.machine-dossier-result-list{display:grid;gap:.45rem}.machine-dossier-result{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.65rem;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.6rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:left}.machine-dossier-result:hover{border-color:var(--bs-primary)}.machine-dossier-result-main{display:grid;gap:.1rem;min-width:0}.machine-dossier-result-main small,.machine-dossier-result-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-dossier-result-main small{color:var(--bs-secondary-color)}.machine-dossier-result-meta{display:grid;justify-items:end;gap:.25rem}.machine-timeline{display:grid;gap:.55rem;margin-bottom:0}.machine-timeline-item{width:100%;display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:.75rem;border:1px solid var(--bs-border-color);border-radius:.55rem;padding:.65rem .75rem;background:var(--bs-body-bg);color:var(--bs-body-color);text-align:left}.machine-timeline-item:hover{border-color:var(--bs-primary)}.machine-timeline-icon{width:2rem;height:2rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(var(--bs-primary-rgb),.12);color:var(--bs-primary);flex:0 0 auto}.machine-timeline-main{display:grid;min-width:0;gap:.12rem}.machine-timeline-main small,.machine-timeline-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.machine-timeline-main small{color:var(--bs-secondary-color)}.machine-timeline-meta{display:grid;justify-items:end;gap:.25rem}.machine-timeline-meta small{color:var(--bs-secondary-color);font-size:.78rem}.qr-start-panel{border:1px solid var(--bs-border-color);border-radius:.75rem;padding:1rem;background:var(--bs-tertiary-bg)}.qr-start-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.qr-start-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.6rem;margin-bottom:.9rem}.qr-start-actions-compact{grid-template-columns:repeat(4,minmax(0,1fr))}.qr-start-action{min-height:58px;display:flex;align-items:center;justify-content:center;gap:.45rem;white-space:normal;font-weight:700}.qr-start-action .bi{font-size:1.15rem}.qr-start-action-count{min-width:1.65rem;height:1.65rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:rgba(255,255,255,.22);color:inherit;font-size:.82rem;line-height:1}.qr-start-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem}.qr-start-section{min-width:0;border:1px solid var(--bs-border-color);border-radius:.6rem;padding:.75rem;background:var(--bs-body-bg)}.qr-start-section-title{display:flex;align-items:center;gap:.45rem;margin-bottom:.6rem;font-weight:800}.qr-start-section-title strong{margin-left:auto;min-width:1.6rem;height:1.6rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--bs-primary);color:#fff;font-size:.82rem}.qr-start-list{display:grid;gap:.45rem}.qr-start-row{width:100%;min-width:0;display:flex;align-items:center;justify-content:space-between;gap:.75rem;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.65rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:left;text-decoration:none}.qr-start-row:hover{border-color:var(--bs-primary);color:var(--bs-body-color)}.qr-start-row span{min-width:0}.qr-start-row small,.qr-start-row strong{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qr-start-row small{color:var(--bs-secondary-color);margin-top:.15rem}.machine-document-list{display:grid;gap:.75rem}.machine-document-row{display:flex;align-items:center;justify-content:space-between;gap:1rem;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:.75rem;background:var(--bs-tertiary-bg)}.machine-row-clickable{cursor:pointer}.machine-row-clickable:hover>td{background:rgba(var(--bs-primary-rgb),.08)}.machine-qr-body{display:grid;gap:1rem}.machine-qr-label{display:grid;grid-template-columns:180px 1fr;gap:1rem;align-items:center;border:1px solid var(--bs-border-color);border-radius:.5rem;padding:1rem;background:#fff;color:#111}.machine-qr-code{width:180px;height:180px;display:grid;place-items:center}.machine-qr-code svg{width:180px;height:180px;display:block}.machine-qr-title{font-size:1.35rem;font-weight:800;line-height:1.15;margin-bottom:.35rem}.machine-qr-info{display:grid;gap:.22rem;font-size:.95rem}.machine-qr-small{font-size:.78rem;color:#444;margin-top:.45rem}.mobile-shell{min-height:100vh;background:var(--bs-tertiary-bg);padding-bottom:82px}.mobile-account-actions{display:flex;gap:.5rem;padding:0 1rem 1rem}.mobile-account-actions .btn{flex:1 1 0;min-height:44px}.mobile-topbar{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.9rem 1rem;background:var(--bs-body-bg);border-bottom:1px solid var(--bs-border-color)}.mobile-topbar .btn{white-space:nowrap}.mobile-content{padding:1rem;display:grid;gap:1rem}.mobile-section{background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:.75rem;padding:1rem}.mobile-section-header{display:flex;align-items:center;justify-content:space-between;gap:.75rem;margin-bottom:.85rem}.mobile-task-summary{display:grid;grid-template-columns:1fr 1fr;gap:.75rem}.mobile-summary-button{width:100%;border:1px solid var(--bs-border-color);border-radius:.6rem;padding:.85rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);text-align:left;cursor:pointer;transition:border-color .12s,transform .12s}.mobile-summary-button:hover{border-color:var(--bs-primary);transform:translateY(-1px)}.mobile-summary-button:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.mobile-summary-button.active{border-color:var(--bs-primary);box-shadow:inset 0 0 0 1px var(--bs-primary)}.mobile-task-summary span,.mobile-task-summary strong{display:block}.mobile-task-summary span{color:var(--bs-secondary-color);font-size:.85rem}.mobile-task-summary strong{font-size:2rem;line-height:1.1;margin-top:.15rem}.mobile-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.5rem}.mobile-search-with-action{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:.45rem;align-items:stretch}.mobile-search-with-action .btn{min-width:48px;min-height:48px}.mobile-action{min-height:68px;padding:.45rem .3rem;font-size:.78rem;font-weight:700;white-space:normal;display:flex;align-items:center;justify-content:center;flex-direction:column;gap:.22rem;line-height:1.12}.mobile-action .bi{font-size:1.15rem;line-height:1}.mobile-action-count{min-width:1.65rem;padding:.12rem .42rem;border-radius:999px;background:rgba(255,255,255,.22);color:inherit;font-size:.85rem;line-height:1.2}.mobile-list{display:grid;gap:.75rem}.mobile-card{border:1px solid var(--bs-border-color);border-radius:.65rem;padding:.85rem;background:var(--bs-tertiary-bg)}.mobile-card,.mobile-section,.modal-content,.panel{overflow-wrap:anywhere}.status-tinted-row>td{background:linear-gradient(90deg,rgba(var(--status-tint-rgb),.13),var(--bs-body-bg) 62%)}.status-tinted-row>td:first-child{box-shadow:inset 5px 0 0 rgb(var(--status-tint-rgb))}.status-tinted-card{border-left:5px solid rgb(var(--status-tint-rgb));background:linear-gradient(135deg,rgba(var(--status-tint-rgb),.14),var(--bs-tertiary-bg) 62%)}.status-tint-danger{--status-tint-rgb:var(--bs-danger-rgb)}.status-tint-warning{--status-tint-rgb:var(--bs-warning-rgb)}.status-tint-success{--status-tint-rgb:var(--bs-success-rgb)}.status-tint-info{--status-tint-rgb:var(--bs-primary-rgb)}.status-tint-neutral{--status-tint-rgb:var(--bs-secondary-rgb)}.notifications-table td,.notifications-table th{padding-top:.55rem;padding-bottom:.55rem}.notification-row>td:first-child{box-shadow:inset 5px 0 0 var(--notification-type-color,var(--bs-secondary));padding-left:.85rem}.notification-row>td{background:linear-gradient(90deg,rgba(var(--notification-type-rgb,var(--bs-secondary-rgb)),.08),var(--bs-body-bg) 50%)}.notification-row:hover>td{background:linear-gradient(90deg,rgba(var(--notification-type-rgb,var(--bs-secondary-rgb)),.14),var(--bs-tertiary-bg) 58%)}.notification-type-pill{display:inline-flex;align-items:center;gap:.35rem;border-radius:999px;padding:.24rem .55rem;font-size:.78rem;font-weight:800;color:var(--notification-type-color,var(--bs-secondary));background:rgba(var(--notification-type-rgb,var(--bs-secondary-rgb)),.12);white-space:nowrap}.notification-type-po{--notification-type-color:var(--bs-primary);--notification-type-rgb:var(--bs-primary-rgb)}.notification-type-fault{--notification-type-color:var(--bs-danger);--notification-type-rgb:var(--bs-danger-rgb)}.notification-type-order,.notification-type-spare{--notification-type-color:#b58100;--notification-type-rgb:var(--bs-warning-rgb)}.notification-type-message{--notification-type-color:var(--bs-secondary);--notification-type-rgb:var(--bs-secondary-rgb)}.notification-summary-title{font-weight:700;line-height:1.25;max-width:72rem}.notification-actions{display:flex;justify-content:flex-end;gap:.35rem;flex-wrap:wrap}.mobile-task-group{display:grid;gap:.45rem}.mobile-task-group+.mobile-task-group{margin-top:.25rem;padding-top:.7rem;border-top:1px solid var(--bs-border-color)}.mobile-task-group-title{display:flex;align-items:center;justify-content:space-between;gap:.75rem;color:var(--bs-secondary-color);font-weight:700;cursor:pointer;list-style:none}.mobile-task-group-title::-webkit-details-marker{display:none}.mobile-task-group-title::after{content:"⌄";margin-left:auto;color:var(--bs-primary);font-size:1rem;transition:transform .15s}.mobile-task-group:not([open]) .mobile-task-group-title::after{transform:rotate(-90deg)}.mobile-task-group-title strong{min-width:1.6rem;height:1.6rem;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;background:var(--bs-primary);color:#fff;font-size:.85rem}.mobile-task-card{padding:.62rem .7rem;cursor:pointer}.mobile-task-card:hover{border-color:var(--bs-primary)}.mobile-task-card:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.mobile-task-card .mobile-card-title{margin-bottom:.2rem}.mobile-task-card .mobile-card-title>div:first-child{min-width:0}.mobile-task-card .fw-semibold{line-height:1.2;font-size:1.05rem}.mobile-task-card-footer{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mobile-task-card .mobile-card-actions{flex:0 0 auto;gap:.3rem}.mobile-task-card .mobile-card-actions .btn{width:34px;height:32px;padding:0;display:inline-flex;align-items:center;justify-content:center}.mobile-task-card>.mobile-card-actions .btn{width:100%;height:auto;min-height:40px}.mobile-fault-toolbar,.mobile-notification-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(7rem,auto);gap:.5rem}.mobile-compact-notification-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.5rem .6rem;border:1px solid var(--bs-border-color);border-left:4px solid rgb(var(--status-tint-rgb));border-radius:.5rem;background:linear-gradient(90deg,rgba(var(--status-tint-rgb),.12),var(--bs-tertiary-bg) 68%);cursor:pointer}.mobile-compact-notification-row:focus-visible,.mobile-compact-notification-row:hover{border-color:var(--bs-primary);outline:2px solid rgba(var(--bs-primary-rgb),.18);outline-offset:1px}.mobile-compact-notification-main{min-width:0;display:grid;gap:.08rem}.mobile-compact-notification-main strong{font-size:.8rem}.mobile-compact-notification-main small,.mobile-compact-notification-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bs-secondary-color);font-size:.72rem}.mobile-compact-notification-actions{display:flex;align-items:center;gap:.25rem;flex:0 0 auto}.mobile-compact-notification-actions .badge{padding:.25rem .4rem;font-size:.65rem}.mobile-compact-notification-actions .btn{min-height:30px;padding:.2rem .4rem}#mobileStoringenList .mobile-card{padding:.55rem .65rem}#mobileStoringenList .mobile-card-title{margin-bottom:.2rem}#mobileStoringenList .mobile-card-title>div:first-child{min-width:0}#mobileStoringenList .mobile-card-title .fw-semibold{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.15}#mobileStoringenList .mobile-card-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}#mobileStoringenList .mobile-card>.mt-1{margin-top:.3rem!important}#mobileStoringenList .mobile-card>.mt-2{margin-top:.35rem!important;display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.78rem;line-height:1.2}#mobileStoringenList .mobile-card-actions{margin-top:.35rem!important}#mobileStoringenList .mobile-card-actions .btn{min-height:34px;padding:.3rem .55rem;font-size:.8rem}.mobile-maintenance-toolbar{display:grid;grid-template-columns:minmax(0,1fr) minmax(7rem,auto);gap:.5rem}.mobile-maintenance-card{padding:.6rem .65rem}.mobile-maintenance-card .mobile-card-title{margin-bottom:.35rem}.mobile-maintenance-card .mobile-card-title>div:first-child{min-width:0}.mobile-maintenance-card .mobile-card-title .fw-semibold{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.15}.mobile-maintenance-card .mobile-card-meta{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.mobile-maintenance-meta{display:grid;grid-template-columns:1fr 1fr;gap:.4rem}.mobile-maintenance-meta span{min-width:0;padding:.35rem .45rem;border:1px solid var(--bs-border-color);border-radius:.4rem;background:var(--bs-body-bg);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}.mobile-maintenance-meta strong{display:block;color:var(--bs-secondary-color);font-size:.66rem}.mobile-maintenance-card .mobile-card-actions{justify-content:flex-end;margin-top:.4rem}.mobile-maintenance-card .mobile-card-actions .btn{min-height:34px;padding:.3rem .55rem;font-size:.8rem}@media (max-width:600px),(pointer:coarse) and (hover:none){.mobile-task-group{gap:.3rem}.mobile-task-group+.mobile-task-group{margin-top:.15rem;padding-top:.5rem}.mobile-task-group-title{font-size:.82rem}.mobile-task-group-title strong{min-width:1.35rem;height:1.35rem;font-size:.72rem}.mobile-task-card{padding:.45rem .55rem;border-radius:.55rem}.mobile-task-card .mobile-card-title{align-items:center;gap:.4rem;margin-bottom:.12rem}.mobile-task-card .fw-semibold{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.92rem;line-height:1.13;overflow-wrap:normal}.mobile-task-card .mobile-card-meta{display:block;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem;line-height:1.2}.mobile-task-card-footer{align-items:center;flex-wrap:wrap;gap:.25rem .35rem}.mobile-task-card-footer>.mobile-card-meta{flex:1 1 46%;min-width:0}.mobile-task-card .badge{padding:.24rem .4rem;font-size:.68rem;line-height:1.1}.mobile-task-card>.mobile-card-actions{justify-content:flex-end;margin-top:.25rem!important}.mobile-task-card>.mobile-card-actions .btn{width:auto;min-height:30px;padding:.25rem .55rem;font-size:.75rem;line-height:1.1}}.mobile-work-order-action-cards{display:none}.mobile-machine-card{cursor:pointer;padding:.65rem .7rem}.mobile-machine-card:focus-visible{outline:3px solid rgba(var(--bs-primary-rgb),.35);outline-offset:2px}.mobile-machine-card:hover{border-color:var(--bs-primary)}.mobile-machine-card .mobile-card-title{margin-bottom:.25rem}.mobile-machine-card .fw-semibold{font-size:.95rem;line-height:1.15}.mobile-machine-card .mobile-card-meta{font-size:.78rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-machine-card-meta{display:flex;flex-wrap:wrap;gap:.25rem .65rem;color:var(--bs-secondary-color);font-size:.75rem}.mobile-machine-card-meta span{min-width:0}.mobile-card-title{display:flex;align-items:start;justify-content:space-between;gap:.75rem;margin-bottom:.35rem}.mobile-card-meta{color:var(--bs-secondary-color);font-size:.9rem}.mobile-card-actions{display:flex;gap:.45rem;flex-wrap:wrap}.mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;z-index:30;display:grid;grid-template-columns:repeat(5,1fr);background:var(--bs-body-bg);border-top:1px solid var(--bs-border-color);padding:.45rem .6rem calc(.45rem + env(safe-area-inset-bottom));gap:.4rem}.mobile-bottom-button{border:0;border-radius:.5rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);padding:.45rem .35rem;min-height:58px;font-weight:700;display:grid;place-items:center;gap:.12rem;font-size:.72rem}.mobile-bottom-button .bi{font-size:1.25rem;line-height:1}.mobile-bottom-button.active{background:var(--bs-primary);color:#fff}.mobile-bottom-fault{color:var(--bs-danger)}.mobile-bottom-fault.active{color:#fff;background:var(--bs-danger)}.mobile-bottom-spares{color:var(--bs-warning-text-emphasis,#8a5700)}.mobile-bottom-spares.active{color:#fff;background:var(--bs-warning)}.mobile-action-grid.mobile-menu-open{outline:2px solid rgba(var(--bs-primary-rgb),.3)}.mobile-action-grid.mobile-tile-editing{outline:2px dashed var(--bs-primary);outline-offset:.25rem}.mobile-action-grid.mobile-tile-editing .mobile-action{cursor:grab;touch-action:none}.mobile-action-grid.mobile-tile-editing .mobile-action:active{cursor:grabbing}.mobile-action.mobile-tile-dragging,.mobile-action.mobile-tile-selected{opacity:.55;transform:scale(.97)}.mobile-tile-edit-bar{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-top:.55rem;padding:.45rem .55rem;border:1px dashed var(--bs-primary);border-radius:.5rem;color:var(--bs-secondary-color);font-size:.75rem}.mobile-tile-edit-bar .bi{color:var(--bs-primary)}.mobile-menu-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.65rem}.mobile-menu-item{min-height:72px;display:flex;align-items:center;gap:.65rem;padding:.8rem;border:1px solid var(--bs-border-color);border-radius:.65rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);font-weight:700;text-align:left}.mobile-menu-item:active,.mobile-menu-item:focus-visible{border-color:var(--bs-primary);outline:3px solid rgba(var(--bs-primary-rgb),.2)}.mobile-menu-item .bi{align-items:center;background:rgba(var(--bs-primary-rgb),.12);border-radius:.55rem;color:var(--bs-primary);display:inline-flex;flex:0 0 2.15rem;font-size:1.35rem;height:2.15rem;justify-content:center;width:2.15rem}.mobile-menu-item:nth-child(3n+2) .bi{background:rgba(var(--bs-danger-rgb),.13);color:var(--bs-danger)}.mobile-menu-item:nth-child(3n+3) .bi{background:rgba(var(--bs-warning-rgb),.18);color:#9a6700}.mobile-menu-item:nth-child(3n+4) .bi{background:rgba(var(--bs-success-rgb),.14);color:var(--bs-success)}.mobile-menu-danger .bi{background:rgba(var(--bs-danger-rgb),.13);color:var(--bs-danger)}.mobile-faults-list .mobile-card{cursor:pointer}.mobile-faults-list .mobile-card:focus-visible,.mobile-faults-list .mobile-card:hover{border-color:var(--bs-primary);box-shadow:0 0 0 .15rem rgba(var(--bs-primary-rgb),.15)}.mobile-recent-fault-row{display:flex;align-items:center;justify-content:space-between;gap:.5rem;padding:.45rem .55rem;border:1px solid var(--bs-border-color);border-left:4px solid rgb(var(--status-tint-rgb));border-radius:.45rem;background:linear-gradient(90deg,rgba(var(--status-tint-rgb),.12),var(--bs-tertiary-bg) 68%);cursor:pointer}.mobile-recent-fault-row:focus-visible,.mobile-recent-fault-row:hover{border-color:var(--bs-primary);outline:2px solid rgba(var(--bs-primary-rgb),.18);outline-offset:1px}.mobile-recent-fault-main{min-width:0;display:grid;gap:.08rem}.mobile-recent-fault-main strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.82rem}.mobile-recent-fault-main span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:var(--bs-secondary-color);font-size:.7rem}.mobile-recent-fault-status{flex:0 0 auto}.mobile-recent-fault-status .badge{padding:.25rem .4rem;font-size:.65rem}.attendance-readonly #attendanceBulkToolbar,.attendance-readonly #attendanceCode,.attendance-readonly #attendanceCopyPreviousWeekButton,.attendance-readonly #attendanceDate,.attendance-readonly #attendanceMinutesLate,.attendance-readonly #attendanceNote,.attendance-readonly #attendancePatternsDetails,.attendance-readonly #attendanceSaveButton,.attendance-readonly #attendanceType,.attendance-readonly #attendanceUser{display:none!important}.attendance-readonly .attendance-calendar{cursor:default}.mobile-spare-search{display:grid;gap:.55rem}.mobile-spare-card{padding:.5rem .55rem;transition:background-color .15s,border-color .15s}.mobile-spare-layout{display:grid;grid-template-columns:56px minmax(0,1fr);gap:.5rem;align-items:start}.mobile-spare-photo-column{min-width:0}.mobile-spare-photo{width:56px;height:56px;border:1px solid var(--bs-border-color);border-radius:.45rem;display:flex;align-items:center;justify-content:center;background:var(--bs-body-bg);overflow:hidden;padding:0;color:var(--bs-primary)}.mobile-spare-photo img{width:100%;height:100%;object-fit:cover;display:block}.mobile-spare-icon{flex-direction:column;gap:.15rem;font-size:.68rem;line-height:1.1;text-align:center}.mobile-spare-icon .bi{font-size:1.45rem;line-height:1}.mobile-spare-main{min-width:0}.mobile-spare-main .fw-semibold{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-height:1.2}.mobile-spare-meta-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:.25rem;margin-top:.3rem}.mobile-spare-meta-grid span{min-width:0;border:1px solid var(--bs-border-color);border-radius:.4rem;padding:.25rem .35rem;background:var(--bs-body-bg)}.mobile-spare-meta-grid small,.mobile-spare-meta-grid strong{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.mobile-spare-meta-grid strong{font-size:.82rem}.mobile-spare-meta-grid small{color:var(--bs-secondary-color);font-size:.68rem}.mobile-spare-meta-grid .btn{min-height:32px;padding:.15rem .2rem;font-size:.72rem}.mobile-spare-meta-grid .mobile-spare-details .bi{font-size:.95rem}.mobile-spare-location-under-photo{display:grid;gap:.05rem;margin-top:.2rem;color:var(--bs-secondary-color);font-size:.58rem;line-height:1.05;overflow-wrap:anywhere}.mobile-spare-location-under-photo strong{color:var(--bs-body-color);font-size:.62rem;font-weight:700}.mobile-spare-card.mobile-spare-stock-empty{border-color:rgba(var(--bs-danger-rgb),.7);background:rgba(var(--bs-danger-rgb),.14);box-shadow:inset 5px 0 0 rgba(var(--bs-danger-rgb),.9)}.mobile-spare-card.mobile-spare-stock-requested{border-color:rgba(var(--bs-warning-rgb),.8);background:rgba(var(--bs-warning-rgb),.16);box-shadow:inset 5px 0 0 rgba(var(--bs-warning-rgb),.95)}.mobile-spare-card.mobile-spare-stock-ok{border-color:rgba(var(--bs-success-rgb),.55);background:rgba(var(--bs-success-rgb),.1);box-shadow:inset 5px 0 0 rgba(var(--bs-success-rgb),.8)}.mobile-spare-card.mobile-spare-stock-low{border-color:rgba(253,126,20,.8);background:rgba(253,126,20,.13);box-shadow:inset 5px 0 0 rgba(253,126,20,.95)}.mobile-spare-stock-badge{background:rgba(0,0,0,.22);color:inherit;border:1px solid currentColor}.mobile-today-attendance{margin:.75rem 0 1rem;padding:.6rem .7rem;border:1px solid var(--bs-border-color);border-radius:.65rem;background:var(--bs-tertiary-bg)}.mobile-today-attendance-header{display:flex;align-items:center;justify-content:space-between;gap:.5rem;margin-bottom:.45rem}.mobile-today-attendance-header .btn{margin-left:auto;flex:0 0 auto}.mobile-today-attendance-list{display:grid;gap:.35rem;max-height:7.5rem;overflow:auto}.mobile-today-attendance-group{display:grid;grid-template-columns:minmax(5rem,auto) minmax(0,1fr);align-items:center;gap:.4rem}.mobile-today-attendance-role{color:var(--bs-secondary-color);font-size:.65rem;font-weight:800;text-transform:uppercase}.mobile-today-attendance-chips{display:flex;flex-wrap:wrap;gap:.25rem;min-width:0}.mobile-today-attendance-chip{display:inline-flex;align-items:center;gap:.25rem;padding:.2rem .4rem;border:1px solid rgba(15,23,42,.18);border-radius:.35rem;color:#172033;font-size:.72rem;line-height:1.2}.mobile-today-attendance-chip strong{font-size:.72rem}.mobile-today-attendance-chip.attendance-none{background:var(--bs-secondary-bg);color:var(--bs-secondary-color)}.mobile-today-attendance-chip.attendance-vacation{background:#baf0a4}.mobile-today-attendance-chip.attendance-social-leave{background:#b9edf7}.mobile-today-attendance-chip.attendance-sick{background:#ffc2c2}.mobile-today-attendance-chip.attendance-late{background:#8ce9e9}.mobile-today-attendance-chip.attendance-early{background:#ffe4a8}.mobile-today-attendance-chip.attendance-day{background:#ddd6fe}.mobile-today-attendance-chip.attendance-late-shift{background:#c9e0ff}.mobile-today-attendance-chip.attendance-training{background:#ffe18a}.mobile-today-attendance-chip.attendance-compensation{background:#a9df8e}.mobile-today-attendance-chip.attendance-accident{background:#ffc18f}.mobile-today-attendance-chip.attendance-holiday{background:#bcefd7}.mobile-attendance-toolbar{display:grid;grid-template-columns:42px minmax(0,1fr) 42px;gap:.5rem;align-items:center}.mobile-attendance-card{display:grid;grid-template-columns:minmax(5.6rem,.75fr) minmax(0,2fr);align-items:center;gap:.4rem;padding:.4rem .5rem}.mobile-attendance-card>.fw-semibold{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.8rem}.mobile-attendance-card>.mobile-card-meta{display:none}.mobile-attendance-days{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:.15rem;margin-top:0}.mobile-attendance-day{min-width:0;display:grid;justify-items:center;gap:0;padding:.18rem .05rem;border:1px solid var(--bs-border-color);border-radius:.3rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color)}button.mobile-attendance-day{width:100%;font:inherit;cursor:pointer}button.mobile-attendance-day:focus-visible,button.mobile-attendance-day:hover{border-color:var(--bs-primary);box-shadow:inset 0 0 0 1px var(--bs-primary)}.mobile-attendance-day strong{font-size:.54rem;line-height:1;text-transform:uppercase;color:var(--bs-secondary-color)}.mobile-attendance-day small{font-size:.58rem;line-height:1.1;color:var(--bs-secondary-color)}.mobile-attendance-day span{font-weight:800;font-size:.72rem;line-height:1.1}.mobile-attendance-card.mobile-attendance-role-planner{background:rgba(111,66,193,.08)}.mobile-attendance-card.mobile-attendance-role-admin{background:rgba(13,110,253,.08)}.mobile-attendance-card.mobile-attendance-role-technieker{background:rgba(25,135,84,.08)}.mobile-attendance-card.mobile-attendance-role-onderhoud{background:rgba(253,126,20,.09)}.mobile-attendance-card.mobile-attendance-role-operator{background:rgba(13,202,240,.09)}.mobile-attendance-card.mobile-attendance-role-magazijn{background:rgba(255,193,7,.11)}.mobile-attendance-card.mobile-attendance-role-other{background:rgba(108,117,125,.08)}.mobile-attendance-day.attendance-vacation{background:#baf0a4;color:#172033}.mobile-attendance-day.attendance-social-leave{background:#b9edf7;color:#172033}.mobile-attendance-day.attendance-sick{background:#ffc2c2;color:#172033}.mobile-attendance-day.attendance-late{background:#8ce9e9;color:#172033}.mobile-attendance-day.attendance-early{background:#ffe4a8;color:#172033}.mobile-attendance-day.attendance-day{background:#ddd6fe;color:#172033}.mobile-attendance-day.attendance-late-shift{background:#c9e0ff;color:#172033}.mobile-attendance-day.attendance-training{background:#ffe18a;color:#172033}.mobile-attendance-day.attendance-compensation{background:#a9df8e;color:#172033}.mobile-attendance-day.attendance-accident{background:#ffc18f;color:#172033}.mobile-attendance-day.attendance-holiday{background:#bcefd7;color:#172033}.mobile-attendance-editor-open{overflow:hidden}.mobile-attendance-editor{position:fixed;inset:0;z-index:1110;display:grid;place-items:end center;padding:.75rem;background:rgba(0,0,0,.68)}.mobile-attendance-editor-dialog{width:min(520px,100%);display:grid;gap:.75rem;padding:.85rem;border:1px solid var(--bs-border-color);border-radius:.85rem;background:var(--bs-body-bg);box-shadow:0 1rem 2.5rem rgba(0,0,0,.45)}.mobile-attendance-editor-header{display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem}.mobile-attendance-editor-header>div{display:grid;gap:.12rem}.mobile-attendance-editor-header span{color:var(--bs-secondary-color);font-size:.78rem}.mobile-attendance-code-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.mobile-attendance-code{min-height:58px;display:grid;place-items:center;align-content:center;gap:.1rem;padding:.4rem .2rem;border:2px solid transparent;border-radius:.55rem;color:#172033}.mobile-attendance-code strong{font-size:1rem;line-height:1}.mobile-attendance-code span{font-size:.62rem;line-height:1.1;text-align:center}.mobile-attendance-code.is-active{border-color:var(--bs-primary);box-shadow:0 0 0 2px rgba(var(--bs-primary-rgb),.25)}.mobile-attendance-code:focus-visible,.mobile-attendance-code:hover{border-color:var(--bs-primary);transform:translateY(-1px)}@media (max-width:800px){:root{--sidebar-width:84px}.brand>div:last-child,.nav-label{display:none}.brand{justify-content:center}.sidebar{align-items:stretch}.sidebar .nav-link{justify-content:center;padding:.85rem .55rem}.nav-icon{font-size:1.35rem}.topbar{align-items:flex-start!important;gap:.75rem}.topbar>.d-flex{flex-wrap:wrap;justify-content:flex-end}.panel-header{align-items:flex-start;flex-direction:column}.metric-card strong{font-size:1.55rem}.content{padding:.75rem!important}.maintenance-detail-grid{grid-template-columns:1fr}.maintenance-checklist{min-width:0}.maintenance-week-grid{grid-template-columns:repeat(7,minmax(160px,1fr));min-width:1120px}.work-order-grid{grid-template-columns:1fr}.machine-document-row,.work-order-hero{align-items:stretch;flex-direction:column}.work-order-status-block{align-items:flex-start}.machine-dossier-hero,.machine-dossier-split{grid-template-columns:1fr}.machine-dossier-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.machine-dossier .machine-dossier-search{grid-template-columns:1fr}.machine-dossier .machine-dossier-filter-bar{justify-content:flex-start}.machine-dossier-quick-actions{display:grid;grid-template-columns:1fr 1fr}.machine-dossier-quick-actions .btn{width:100%}.machine-status-bar{align-items:stretch;flex-direction:column}.machine-status-pills{justify-content:flex-start}.machine-dossier-stats{grid-template-columns:repeat(2,1fr)}.machine-qr-label{grid-template-columns:1fr;justify-items:center;text-align:center}.machine-qr-info{width:100%;text-align:left}.mobile-module-mode{--sidebar-width:62px;grid-template-columns:var(--sidebar-width) minmax(0,1fr);width:100%;overflow-x:hidden}.mobile-module-mode .content,.mobile-module-mode .main-area,.mobile-module-mode .page-section,.mobile-module-mode .panel{min-width:0;max-width:100%}.mobile-module-mode .sidebar{min-height:100dvh;position:sticky;top:0;padding:.55rem .4rem!important;overflow-x:hidden}.mobile-module-mode .brand{justify-content:center;margin-bottom:.75rem!important}.mobile-module-mode .brand-mark{width:38px;height:38px;border-radius:10px;font-size:.9rem}.mobile-module-mode .sidebar .nav-link{min-height:40px;padding:.62rem .3rem;border-radius:.55rem;justify-content:center}.mobile-module-mode .nav-icon{width:1.15rem;min-width:1.15rem;font-size:1.18rem}.mobile-module-mode .nav-icon-wrap{width:1.25rem;min-width:1.25rem}.mobile-module-mode .sidebar .mt-auto{display:none}.mobile-module-mode .content{padding:.55rem!important;overflow-x:hidden}.mobile-module-mode .topbar{position:sticky;top:0;align-items:flex-start!important;flex-direction:column;gap:.45rem;padding:.55rem!important}.mobile-module-mode .topbar h1{font-size:1.05rem;line-height:1.15}.mobile-module-mode #userSummary,.mobile-module-mode .topbar small{display:none!important}.mobile-module-mode .topbar>.d-flex{width:100%;flex-wrap:wrap;justify-content:flex-start;gap:.35rem!important}.mobile-module-mode .topbar .btn{padding:.35rem .45rem;font-size:.8rem}.mobile-module-mode .panel{padding:.65rem;border-radius:.65rem}.mobile-module-mode .panel-header{gap:.5rem;margin-bottom:.65rem}.mobile-module-mode .panel-header .btn{width:100%}.mobile-module-mode .dashboard-panel-actions,.mobile-module-mode .maintenance-actions,.mobile-module-mode .mobile-card-actions,.mobile-module-mode .notification-actions{display:grid;grid-template-columns:1fr;width:100%;gap:.45rem}.mobile-module-mode .dashboard-panel-actions .btn,.mobile-module-mode .maintenance-actions .btn,.mobile-module-mode .mobile-card-actions .btn,.mobile-module-mode .notification-actions .btn{width:100%;min-height:42px}.mobile-module-mode .row{--bs-gutter-x:.5rem;--bs-gutter-y:.5rem}.mobile-module-mode .btn,.mobile-module-mode .form-control,.mobile-module-mode .form-select{max-width:100%}.mobile-module-mode .form-control,.mobile-module-mode .form-select{min-height:44px;font-size:1rem}.mobile-module-mode textarea.form-control{min-height:96px}.mobile-module-mode input[type=date],.mobile-module-mode input[type=number]{font-size:1rem}.mobile-module-mode .table-responsive{border:0;border-radius:0;overflow:visible}.mobile-module-mode .table{width:100%;min-width:0;border-collapse:separate;border-spacing:0 .55rem;font-size:.86rem}.mobile-module-mode .table thead{display:none}.mobile-module-mode .table tbody,.mobile-module-mode .table td,.mobile-module-mode .table tr{display:block;width:100%}.mobile-module-mode .table tr{border:1px solid var(--bs-border-color);border-radius:.65rem;padding:.65rem;background:var(--bs-body-bg);box-shadow:0 .15rem .5rem rgba(0,0,0,.08)}.mobile-module-mode .table td{border:0;padding:.34rem 0;display:grid;grid-template-columns:minmax(76px,30%) minmax(0,1fr);gap:.55rem;align-items:start}.mobile-module-mode .table td::before{content:attr(data-label);color:var(--bs-secondary-color);font-size:.74rem;font-weight:700;line-height:1.2}.mobile-module-mode .table td:empty{display:none}.mobile-module-mode .table tr.work-order-priority-row{position:relative;overflow:hidden;padding-left:.85rem;box-shadow:inset 5px 0 0 var(--priority-color,var(--bs-secondary))}.mobile-module-mode .table tr.clickable-data-row:hover{border-color:var(--bs-primary)}.mobile-module-mode .table td:first-child{font-size:1.02rem;font-weight:800}.mobile-module-mode .table td:last-child .btn,.mobile-module-mode .table td:last-child button{width:100%;min-height:42px}.mobile-module-mode .table td[colspan]{display:block;color:var(--bs-secondary-color)}.mobile-module-mode .table td[colspan]::before{content:"";display:none}.mobile-module-mode .table .btn,.mobile-module-mode .table .form-control,.mobile-module-mode .table .form-select{min-height:36px;font-size:.88rem}.mobile-module-mode .dashboard-role-cards,.mobile-module-mode .dashboard-today-first-grid{grid-template-columns:1fr}.mobile-module-mode .dashboard-role-card,.mobile-module-mode .dashboard-today-card{min-height:0}.mobile-module-mode .dashboard-role-card strong,.mobile-module-mode .dashboard-today-card strong{font-size:1.45rem}.mobile-module-mode .dashboard-header-bar{align-items:stretch;flex-direction:column}.mobile-module-mode .dashboard-header-actions{justify-content:stretch}.mobile-module-mode .dashboard-header-actions .btn{width:100%}.mobile-module-mode .dashboard-panel-actions,.mobile-module-mode .dashboard-role-actions{justify-content:stretch}.mobile-module-mode .dashboard-panel-actions .btn,.mobile-module-mode .dashboard-role-actions .btn{width:100%;min-height:42px}.mobile-module-mode .maintenance-photos-cell,.mobile-module-mode .maintenance-task-cell,.mobile-module-mode .spare-name-cell,.mobile-module-mode .spare-name-column{min-width:0;max-width:100%}.mobile-module-mode .spare-name{min-height:4.5rem}.mobile-module-mode .spare-compact-input,.mobile-module-mode .spare-location-input,.mobile-module-mode .spare-machine-links{width:100%;min-width:0}.mobile-module-mode .spare-stock-control{align-items:stretch}.mobile-module-mode .spare-stock-control .btn{min-width:44px}.mobile-module-mode .spare-photo-cell{min-width:0;width:100%}.mobile-module-mode .spare-photo-control,.mobile-module-mode .spare-photo-picker{width:66px}.mobile-module-mode .spare-action-group{display:grid;grid-template-columns:1fr 1fr;gap:.35rem}.mobile-module-mode .spare-action-group .btn{width:100%;min-height:42px}.mobile-module-mode .spare-part-main-row.is-focused{border-color:var(--bs-primary);box-shadow:0 0 0 2px rgba(var(--bs-primary-rgb),.15),0 .15rem .5rem rgba(0,0,0,.08)}.mobile-module-mode .spare-part-supplier-row{border-style:dashed;background:color-mix(in srgb,var(--bs-body-bg) 92%,var(--bs-primary) 8%)}.mobile-module-mode .spare-part-supplier-row td{grid-template-columns:minmax(92px,34%) minmax(0,1fr)}.mobile-module-mode .clova-code-control{min-width:0;align-items:stretch;flex-direction:column;gap:.3rem}.mobile-module-mode .clova-code-control .form-control{min-width:0;width:100%}.mobile-module-mode .clova-prefix-chip{align-self:flex-start}.mobile-module-mode .spare-pagination{position:static;justify-content:stretch;display:grid;grid-template-columns:1fr;gap:.45rem}.mobile-module-mode .spare-pagination .btn-group{display:grid;grid-template-columns:1fr 1fr;width:100%}.mobile-module-mode .spare-pagination .btn{min-height:42px}.mobile-module-mode .machine-dossier-stats,.mobile-module-mode .machine-history-summary,.mobile-module-mode .maintenance-detail-grid,.mobile-module-mode .work-order-grid{grid-template-columns:1fr}.mobile-module-mode .maintenance-checklist-editor-row{grid-template-columns:auto minmax(0,1fr) auto}.mobile-module-mode .maintenance-checklist-editor-frequency{grid-column:2/-1}.mobile-module-mode .machine-status-bar{align-items:stretch;flex-direction:column}.mobile-module-mode .machine-status-pills{justify-content:flex-start}.mobile-module-mode .machine-document-row,.mobile-module-mode .work-order-hero{align-items:stretch;flex-direction:column}.mobile-module-mode .work-order-hero{padding:.75rem}.mobile-module-mode .work-order-status-block{align-items:stretch;width:100%}.mobile-module-mode .work-order-status-block .btn{width:100%;min-height:42px}.mobile-module-mode .work-order-status-block .compact-detail-actions{justify-content:flex-start}.mobile-module-mode .work-order-status-block .compact-detail-actions .btn{width:auto;min-width:44px}.mobile-module-mode .work-order-section{padding:.75rem}.mobile-module-mode .purchase-order-board,.mobile-module-mode .purchase-order-card-grid,.mobile-module-mode .purchase-order-delivery{grid-template-columns:1fr}.mobile-module-mode .purchase-order-dates{min-width:0}.mobile-module-mode .purchase-order-actions{justify-content:stretch}.mobile-module-mode .purchase-order-actions .btn{width:100%;min-height:42px}.mobile-module-mode .photo-capture-tile{width:100%;min-height:104px}.mobile-module-mode #faultModal .fault-photo-trigger{width:min(164px,100%);min-height:72px}.mobile-module-mode .maintenance-week-grid{grid-template-columns:1fr;min-width:0}.mobile-module-mode .maintenance-day-body{min-height:0}.mobile-module-mode .maintenance-doc-links{display:grid;grid-template-columns:1fr}.mobile-module-mode .document-type-link{justify-content:center;min-height:42px}.mobile-module-mode .planner-task-board{padding:.75rem}.mobile-module-mode .planner-task-grid{grid-template-columns:1fr}.mobile-module-mode .planner-task-card{grid-template-columns:1.8rem minmax(0,1fr)}.mobile-module-mode .planner-task-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.mobile-work-order-actions{display:grid;grid-template-columns:1fr 1fr;gap:.55rem;margin-top:.85rem}.mobile-work-order-flow .work-order-section{scroll-margin-top:1rem}.mobile-work-order-flow .maintenance-checklist-item{padding:.8rem;font-size:1rem}.mobile-work-order-flow .form-check-input{width:1.35rem;height:1.35rem}.mobile-work-order-flow .work-order-block-reason,.mobile-work-order-flow .work-order-part-search,.mobile-work-order-flow .work-order-photo-input{min-height:48px;font-size:1rem}.mobile-work-order-flow .work-order-reassign,.mobile-work-order-flow .work-order-transfer-section .row{grid-template-columns:1fr}.mobile-work-order-flow .work-order-fast-actions{grid-template-columns:1fr 1fr}.mobile-work-order-flow .work-order-fast-actions .btn{min-height:48px}.mobile-work-order-action-cards{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:.45rem}.mobile-work-order-action-card{min-width:0;min-height:78px;display:grid;place-items:center;align-content:center;gap:.18rem;padding:.5rem .25rem;border:1px solid var(--bs-border-color);border-radius:.65rem;background:var(--bs-tertiary-bg);color:var(--bs-body-color);font-weight:800;text-align:center}.mobile-work-order-action-card .bi{font-size:1.25rem}.mobile-work-order-action-card span{font-size:.76rem;line-height:1.1}.mobile-work-order-action-card small{color:var(--bs-secondary-color);font-size:.65rem;font-weight:600;line-height:1.1}.mobile-work-order-action-card:active,.mobile-work-order-action-card:focus-visible{border-color:var(--bs-primary);outline:3px solid rgba(var(--bs-primary-rgb),.2)}.mobile-work-order-action-card.action-checklist .bi{color:var(--bs-primary)}.mobile-work-order-action-card.action-photo .bi{color:var(--bs-info)}.mobile-work-order-action-card.action-note .bi{color:var(--bs-secondary)}.mobile-work-order-action-card.action-part .bi{color:var(--bs-warning-text-emphasis,#8a5700)}.mobile-work-order-flow .work-order-grid{display:flex;flex-direction:column}.mobile-work-order-flow .work-order-grid [data-work-order-section=checklist]{order:-2}.mobile-work-order-flow .work-order-grid [data-work-order-section=notes]{order:-1}.mobile-work-order-flow .mobile-po-summary{grid-template-columns:1fr 1fr;gap:.5rem}.mobile-work-order-flow .mobile-po-summary>div{min-height:68px;padding:.65rem}.mobile-work-order-flow .work-order-photo-trigger{width:min(164px,100%);min-height:72px;padding:.45rem .6rem;gap:.15rem}.mobile-work-order-flow .work-order-photo-trigger .bi{font-size:1.25rem}.mobile-work-order-flow .work-order-photo-trigger strong{font-size:.9rem;line-height:1.1}.mobile-work-order-flow .work-order-photo-trigger span{font-size:.72rem;line-height:1.15}.mobile-work-order-bottom-actions{position:sticky;bottom:.6rem;z-index:4;display:grid;grid-template-columns:1fr;gap:.55rem;padding:.55rem;border:1px solid var(--bs-border-color);border-radius:.75rem;background:color-mix(in srgb,var(--bs-body-bg) 92%,transparent);box-shadow:0 .5rem 1.5rem rgba(0,0,0,.18)}.mobile-work-order-bottom-actions .btn{min-height:48px}.mobile-blocked-reason-panel{border-color:rgba(var(--bs-warning-rgb),.45);background:rgba(var(--bs-warning-rgb),.08)}.attendance-bulk-toolbar{grid-template-columns:1fr 1fr}.attendance-period-toolbar{width:100%;grid-template-columns:1fr auto 1fr auto;justify-content:stretch}.attendance-period-toolbar #attendanceCopyPreviousWeekButton,.attendance-period-toolbar #attendanceExportButton,.attendance-period-toolbar #attendanceRefreshButton{grid-column:span 2}.attendance-bulk-presets,.attendance-bulk-toolbar input[placeholder=Opmerking],.attendance-bulk-toolbar strong{grid-column:1/-1}.mobile-module-mode .machine-dossier-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;border-bottom:0}.mobile-module-mode .machine-dossier-tabs button{border-radius:.45rem;padding:.5rem .35rem;font-size:.84rem}.mobile-module-mode .machine-dossier-result{grid-template-columns:1fr;align-items:stretch}.mobile-module-mode .machine-dossier-result-main small,.mobile-module-mode .machine-dossier-result-main strong{white-space:normal}.mobile-module-mode .machine-dossier-result-meta,.mobile-module-mode .machine-timeline-meta{justify-items:start}.mobile-module-mode .machine-timeline-item{grid-template-columns:1.8rem minmax(0,1fr);align-items:start}.mobile-module-mode .machine-timeline-meta{grid-column:1/-1;margin-top:.35rem}.mobile-module-mode .qr-start-actions,.mobile-module-mode .qr-start-grid{grid-template-columns:1fr}.mobile-module-mode .qr-start-actions-compact{grid-template-columns:1fr 1fr}.mobile-module-mode .qr-start-action{min-height:64px}.mobile-module-mode .qr-start-row small,.mobile-module-mode .qr-start-row strong{white-space:normal}.mobile-module-mode .modal-dialog,.modal-dialog{width:calc(100% - .75rem);margin:.375rem auto}.mobile-module-mode .modal-content,.modal-content{max-height:calc(100dvh - .75rem);border-radius:.65rem}.mobile-module-mode .modal-body,.mobile-module-mode .modal-footer,.mobile-module-mode .modal-header{padding:.75rem}.mobile-module-mode .modal-footer{display:grid;grid-template-columns:1fr;align-items:stretch}.mobile-module-mode .modal-footer .btn{width:100%;min-height:44px}.notification-status-control{grid-template-columns:1fr auto}.notification-status-control label{grid-column:1/-1}}@media (max-width:420px){:root{--sidebar-width:64px}.app-shell{grid-template-columns:var(--sidebar-width) minmax(0,1fr)}.sidebar{padding:.55rem .4rem!important}.brand-mark{width:38px;height:38px;border-radius:10px}.sidebar .nav-link{min-height:42px;padding:.72rem .35rem;border-radius:.55rem}.nav-icon{font-size:1.25rem;width:1.2rem;min-width:1.2rem}.topbar{position:static;padding:.75rem!important}.topbar h1{font-size:1.05rem}.topbar .btn{padding:.42rem .55rem;font-size:.85rem}.metric-card,.panel{padding:.8rem;border-radius:.75rem}.mobile-content{padding:.75rem}.mobile-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.mobile-action{min-height:64px;font-size:.7rem}.mobile-section{padding:.85rem}.mobile-topbar{padding:.75rem;align-items:flex-start;flex-direction:column}.mobile-topbar>.d-flex{width:100%;justify-content:stretch}.mobile-topbar .btn{flex:1 1 0}.mobile-task-summary{grid-template-columns:1fr}.mobile-card-title{align-items:stretch;flex-direction:column}.mobile-card-actions .btn{flex:1 1 auto}.mobile-work-order-actions,.purchase-order-board,.purchase-order-card-grid,.purchase-order-delivery{grid-template-columns:1fr}.purchase-order-dates{min-width:0}.purchase-order-actions{justify-content:stretch}.purchase-order-actions .btn{width:100%;min-height:42px}.maintenance-week-grid{grid-template-columns:1fr;min-width:0}.maintenance-day-body{min-height:0}.planner-task-grid{grid-template-columns:1fr}.planner-task-card{grid-template-columns:1.8rem minmax(0,1fr)}.planner-task-actions{grid-column:1/-1;grid-template-columns:1fr 1fr}.planner-task-open span,.planner-task-open strong{white-space:normal}.machine-dossier-kpis,.machine-dossier-quick-actions,.machine-history-summary{grid-template-columns:1fr}.machine-dossier-identity{align-items:flex-start}.machine-dossier-identity h3,.machine-dossier-subtitle{white-space:normal}.machine-dossier-stats{grid-template-columns:1fr}.machine-dossier-filter-bar{display:grid;grid-template-columns:1fr 1fr}.machine-timeline-item{grid-template-columns:1.8rem minmax(0,1fr);align-items:start}.machine-timeline-meta{grid-column:1/-1;margin-top:.35rem;justify-items:start}.machine-dossier-tabs{display:grid;grid-template-columns:1fr 1fr;gap:.35rem;border-bottom:0}.machine-dossier-tabs button{border-radius:.45rem;padding:.55rem .35rem}.machine-dossier-result{grid-template-columns:1fr;align-items:stretch}.machine-dossier-result-main small,.machine-dossier-result-main strong{white-space:normal}.qr-start-panel{padding:.75rem}.qr-start-header{align-items:stretch;flex-direction:column}.qr-start-actions,.qr-start-grid{grid-template-columns:1fr}.qr-start-action{min-height:62px}.qr-start-row{align-items:stretch;flex-direction:column;gap:.45rem}.qr-start-row small,.qr-start-row strong{white-space:normal}.machine-qr-label{padding:.75rem}.machine-qr-code,.machine-qr-code svg{width:min(210px,100%);height:auto}.maintenance-photo-card{width:min(190px,100%)}.maintenance-photo-marker{width:100%;height:auto;aspect-ratio:190/126}.spare-compact-input{width:96px;min-width:96px;min-height:40px;font-size:1rem}.spare-stock-control .btn{min-height:40px;min-width:48px}.modal-dialog{width:calc(100% - .75rem);margin:.375rem auto}.modal-dialog-centered{min-height:calc(100% - .75rem);align-items:flex-start}.modal-body,.modal-footer,.modal-header{padding:.75rem}.modal-footer{justify-content:stretch;flex-wrap:wrap}.modal-footer .btn{flex:1 1 auto}#faultModal .modal-dialog{margin:.25rem auto;min-height:calc(100dvh - .5rem)}#faultModal .modal-content{max-height:calc(100dvh - .5rem)}#faultModal .modal-body{padding-bottom:5.5rem;-webkit-overflow-scrolling:touch}.fault-photo-editor{padding:0}.fault-photo-editor-dialog{width:100%;height:100dvh;max-height:100dvh;padding:.65rem;border:0;border-radius:0}.fault-photo-toolbar{flex-wrap:nowrap;overflow-x:auto;margin-bottom:0;padding-bottom:.2rem}.fault-photo-toolbar .btn{flex:0 0 auto}.fault-photo-canvas{max-height:calc(100dvh - 190px)}.spare-photo-control{width:76px}.spare-photo-placeholder,.spare-photo-preview,.spare-photo-thumb{width:68px;height:68px}}@media print{body.printing-machine-qr *{visibility:hidden!important}body.printing-machine-qr #machineQrPrintArea,body.printing-machine-qr #machineQrPrintArea *{visibility:visible!important}body.printing-machine-qr #machineQrPrintArea{position:fixed;left:12mm;top:12mm;width:130mm;box-shadow:none;border:1px solid #111}}.telegram-setting{align-items:center;background:color-mix(in srgb,var(--bs-primary) 8%,var(--bs-body-bg));border:1px solid color-mix(in srgb,var(--bs-primary) 30%,var(--bs-border-color));display:flex;gap:1rem;justify-content:space-between;padding:1rem}.telegram-setting.telegram-setting-off{background:color-mix(in srgb,var(--bs-secondary) 8%,var(--bs-body-bg));border-color:var(--bs-border-color)}.telegram-setting-switch{align-items:center;display:flex;flex:0 0 auto;gap:.55rem;margin:0;min-width:5rem}.telegram-setting-switch .form-check-input{height:1.35rem;margin:0;width:2.7rem}.task-page{margin:0 auto;max-width:1560px;width:100%}.task-page-toolbar{align-items:center;background:var(--bs-body-bg);border:1px solid var(--bs-border-color);border-radius:.5rem;display:flex;gap:1rem;margin-bottom:1rem;padding:.75rem;position:sticky;top:.5rem;z-index:20}.task-page-type{color:var(--bs-secondary-color);font-size:.75rem;font-weight:700;text-transform:uppercase}#taskPageHost>.task-page-content{border:1px solid var(--bs-border-color);border-radius:.5rem;box-shadow:none;display:block;max-height:none;overflow:visible;pointer-events:auto;width:100%}#taskPageHost>.task-page-content>.modal-header{display:none}#taskPageHost>.task-page-content>.modal-body{max-height:none;overflow:visible;padding:1rem}#taskPageHost>.task-page-content>.modal-footer{background:var(--bs-body-bg);bottom:0;position:sticky;z-index:15}@media (min-width:1200px){.task-detail-active .task-page-toolbar{padding:.6rem .75rem;box-shadow:0 .2rem .65rem rgba(0,0,0,.08)}.task-detail-active #taskPageHost>.task-page-content{border-color:var(--bs-border-color);background:0 0}.task-detail-active #taskPageHost>.task-page-content>.modal-body{padding:.75rem}.task-detail-active #taskPageHost>.task-page-content>.modal-footer{display:none}.task-detail-active #taskPageHost .fault-detail{grid-template-columns:minmax(0,1.15fr) minmax(360px,.85fr);grid-template-areas:"hero hero" "status status" "summary summary" "planning description" "planning photos" "extra extra";gap:.75rem}.task-detail-active #taskPageHost .fault-detail>.work-order-hero{grid-area:hero}.task-detail-active #taskPageHost .fault-detail>.detail-status-flow{grid-area:status}.task-detail-active #taskPageHost .fault-detail>.machine-history-summary{grid-area:summary;margin-top:0!important}.task-detail-active #taskPageHost .fault-detail>.fault-planning-panel{grid-area:planning;align-self:stretch}.task-detail-active #taskPageHost .fault-detail>.fault-description-panel{grid-area:description;align-self:start}.task-detail-active #taskPageHost .fault-detail>.fault-photo-panel{grid-area:photos;align-self:start}.task-detail-active #taskPageHost .fault-detail>.fault-extra-panel{grid-area:extra}.task-detail-active #taskPageHost .fault-detail>.fault-planning-toggle-row{display:none!important}.task-detail-active #taskPageHost .fault-detail .work-order-hero{align-items:center;padding:.7rem .9rem}.task-detail-active #taskPageHost .fault-detail .work-order-hero h3{font-size:1.2rem}.task-detail-active #taskPageHost .fault-detail .work-order-status-block{min-width:310px}.task-detail-active #taskPageHost .fault-detail .detail-status-flow{padding:.55rem .75rem}.task-detail-active #taskPageHost .fault-detail .machine-history-summary{gap:.55rem}.task-detail-active #taskPageHost .fault-detail .machine-history-summary>div{padding:.6rem .7rem}.task-detail-active #taskPageHost .fault-detail .work-order-section{padding:.8rem}.task-detail-active #taskPageHost .fault-detail .compact-detail-text{min-height:58px;padding:.6rem .7rem}.task-detail-active #taskPageHost .fault-detail .fault-planning-panel textarea{min-height:92px}}@media (max-width:767.98px){#mobileTaskBoardList,#mobileTaskBoardSection,.mobile-task-board-group,.mobile-task-board-group-list{min-width:0;max-width:100%}.mobile-task-board-group{overflow:hidden}.mobile-task-board-group-list{grid-template-columns:repeat(2,minmax(0,1fr))}.mobile-task-board-card{min-width:0;max-width:100%}.mobile-task-board-card[draggable=false]{cursor:pointer}.mobile-task-board-technicians{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scrollbar-width:thin}.mobile-task-board-technician{flex:0 0 7.5rem}.machine-history-dialog{width:calc(100% - .5rem);margin:.25rem auto}.machine-history-dialog .modal-content{max-height:calc(100dvh - .5rem);border-radius:.55rem}.machine-history-dialog .modal-body,.machine-history-dialog .modal-footer,.machine-history-dialog .modal-header{padding:.65rem}.machine-history-dialog .modal-title{font-size:1rem}.machine-history-dialog .machine-dossier{gap:.6rem}.machine-history-dialog .machine-dossier-hero{grid-template-columns:1fr;gap:.6rem;padding:.65rem;border-radius:.65rem}.machine-history-dialog .machine-dossier-kpis{grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.machine-history-dialog .machine-dossier-kpis>div{padding:.45rem}.machine-history-dialog .machine-dossier-kpis strong{font-size:1rem}.machine-history-dialog .machine-dossier-kpis span{font-size:.68rem}.machine-history-dialog .machine-status-bar{padding:.65rem;margin:0}.machine-history-dialog .machine-status-pills{justify-content:flex-start}.machine-history-dialog .machine-dossier-quick-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.35rem}.machine-history-dialog .machine-dossier-quick-actions .btn{min-height:40px;padding:.4rem .35rem;font-size:.78rem}.machine-history-dialog .machine-dossier-search{padding:.6rem;grid-template-columns:1fr}.machine-history-dialog .machine-dossier-filter-bar{justify-content:stretch}.machine-history-dialog .machine-dossier-filter-bar button{flex:1 1 calc(50% - .35rem);min-height:38px}.machine-history-dialog .machine-dossier-card,.machine-history-dialog .machine-dossier-panel{padding:.65rem;border-radius:.65rem}.machine-history-dialog .machine-dossier-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.machine-history-dialog .machine-dossier-tabs button{min-height:38px;font-size:.78rem}.task-page-toolbar{align-items:center;border-radius:.55rem;display:grid;grid-template-columns:auto minmax(0,1fr);gap:.5rem;margin-bottom:.4rem;padding:.4rem;top:0}.task-page-toolbar .btn{flex:0 0 auto;width:42px;min-height:42px;padding:0}.task-page-toolbar .btn span{display:none}.task-page-toolbar .task-page-type{font-size:.6rem;line-height:1.1}.task-page-toolbar h2{display:-webkit-box;overflow:hidden;-webkit-box-orient:vertical;-webkit-line-clamp:2;font-size:.95rem;line-height:1.15}#taskPageHost>.task-page-content{border:0;border-radius:0}#taskPageHost>.task-page-content::before{display:none}#taskPageHost .fault-detail{gap:.5rem}#taskPageHost>.task-page-content>.modal-body{padding:.25rem}#taskPageHost .fault-detail .work-order-hero{padding:.5rem;border-radius:.55rem}#taskPageHost .fault-detail .work-order-hero>div:first-child{display:none}#taskPageHost .fault-detail .work-order-status-block{align-items:stretch;gap:.35rem;width:100%}#taskPageHost .fault-detail .work-order-status-block>.badge{align-self:flex-start}#taskPageHost .fault-detail .detail-primary-action{width:100%;min-height:42px}#taskPageHost .fault-detail .fault-quick-assignment{grid-template-columns:minmax(0,1fr) auto;width:100%}#taskPageHost .fault-detail .fault-quick-assignment .btn{width:auto;min-width:44px}#taskPageHost .fault-detail .compact-detail-actions{justify-content:flex-start}#taskPageHost .fault-detail .detail-status-flow{align-items:center;min-height:42px;padding:.4rem .55rem;overflow:hidden}#taskPageHost .fault-detail .detail-status-flow::before{content:"Status";margin-right:auto;color:var(--bs-secondary-color);font-size:.7rem;font-weight:700;text-transform:uppercase}#taskPageHost .fault-detail .detail-status-connector,#taskPageHost .fault-detail .detail-status-step{display:none}#taskPageHost .fault-detail .detail-status-step.is-current{display:flex}#taskPageHost .fault-detail .detail-status-dot{width:1.25rem;height:1.25rem}#taskPageHost .fault-detail .machine-history-summary{grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem;margin-top:0!important}#taskPageHost .fault-detail .machine-history-summary>div{min-width:0;padding:.45rem;border-left-width:3px}#taskPageHost .fault-detail .machine-history-summary strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.78rem}#taskPageHost .fault-detail .machine-history-summary span{font-size:.62rem}#taskPageHost .fault-detail .fault-planning-toggle-row{margin-top:0!important}#taskPageHost .fault-detail .fault-planning-toggle{width:100%;min-height:38px}#taskPageHost .fault-detail .work-order-section{padding:.6rem;border-radius:.55rem}#taskPageHost .fault-detail .compact-detail-text{padding:.55rem;font-size:.85rem;line-height:1.35}#taskPageHost .fault-detail .section-title-row{gap:.35rem}#taskPageHost .fault-detail h3{font-size:.9rem}#taskPageHost .fault-detail .fault-detail-photo-add{flex:1 1 calc(50% - .25rem);min-height:38px}#taskPageHost>.task-page-content>.modal-footer{display:grid;grid-template-columns:1fr;padding:.75rem}#taskPageHost>.task-page-content>.modal-footer .btn{min-height:44px;width:100%}}.maintenance-detail-page{max-width:none;margin:0;width:100%;overflow-x:hidden}.maintenance-detail-page .maintenance-detail-row>td,.maintenance-detail-page>table{width:100%}.maintenance-detail-page .maintenance-detail-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:1rem;width:100%;min-width:0}.maintenance-detail-page .maintenance-detail-grid>*{min-width:0;width:100%}.maintenance-detail-page .maintenance-detail-row{display:table-row}.maintenance-detail-page .maintenance-detail-row>td{border-top:0;padding:0}.mobile-maintenance-hero{display:none}@media (max-width:767.98px){.mobile-maintenance-detail{display:grid;gap:.5rem}.mobile-maintenance-detail .mobile-maintenance-hero{display:grid;gap:.45rem;padding:.7rem;border:1px solid color-mix(in srgb,var(--bs-success) 42%,var(--bs-border-color));border-radius:.7rem;background:color-mix(in srgb,var(--bs-success) 7%,var(--bs-body-bg))}.mobile-maintenance-hero-top{display:flex;align-items:center;justify-content:space-between;gap:.5rem}.mobile-maintenance-code{color:var(--bs-success);font-size:.72rem;font-weight:800}.mobile-maintenance-hero>strong{font-size:1rem;line-height:1.2}.mobile-maintenance-hero>small{color:var(--bs-secondary-color)}.mobile-maintenance-hero .detail-primary-action{width:100%;min-height:46px;margin-top:.15rem}.mobile-maintenance-warning{padding:.45rem .55rem;border-radius:.45rem;background:rgba(var(--bs-danger-rgb),.14);color:var(--bs-danger-text-emphasis);font-size:.78rem;font-weight:700}.mobile-maintenance-facts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.3rem}.mobile-maintenance-facts>div{min-width:0;display:grid;gap:.08rem;padding:.4rem;border-radius:.45rem;background:var(--bs-tertiary-bg)}.mobile-maintenance-facts span{color:var(--bs-secondary-color);font-size:.58rem;font-weight:700;text-transform:uppercase}.mobile-maintenance-facts strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:.72rem}.mobile-maintenance-quick-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.35rem}.mobile-maintenance-quick-actions button{min-height:54px;display:grid;place-items:center;align-content:center;gap:.1rem;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-body-bg);color:var(--bs-body-color);font-size:.68rem;font-weight:700}.mobile-maintenance-quick-actions i{color:var(--bs-primary);font-size:1rem}.mobile-maintenance-detail>.detail-status-flow{min-height:40px;align-items:center;padding:.35rem .5rem;overflow:hidden}.mobile-maintenance-detail>.detail-status-flow::before{content:"Status";margin-right:auto;color:var(--bs-secondary-color);font-size:.65rem;font-weight:700;text-transform:uppercase}.mobile-maintenance-detail>.detail-status-flow .detail-status-connector,.mobile-maintenance-detail>.detail-status-flow .detail-status-step{display:none}.mobile-maintenance-detail>.detail-status-flow .detail-status-step.is-current{display:flex}.mobile-maintenance-detail>.maintenance-detail-primary-action{display:none}.mobile-maintenance-detail>table{margin:0!important}.mobile-maintenance-detail .maintenance-detail-row{padding:0;border:0;border-radius:0;background:0 0;box-shadow:none}.mobile-maintenance-detail .maintenance-detail-grid{display:flex;flex-direction:column;gap:.5rem}.mobile-maintenance-detail .maintenance-task-cell{order:1;padding:.65rem;border-radius:.65rem}.mobile-maintenance-detail .maintenance-planning-section{order:2}.mobile-maintenance-detail .maintenance-resources-section{order:3}.mobile-maintenance-detail .maintenance-detail-section{min-width:0}.mobile-maintenance-detail .maintenance-editor-help,.mobile-maintenance-detail .maintenance-title{display:none}.mobile-maintenance-detail .maintenance-instructions{min-height:74px;margin-bottom:.2rem}.mobile-maintenance-detail .maintenance-checklist-editor{display:grid;gap:.4rem}.mobile-maintenance-detail .maintenance-checklist-editor-row{grid-template-columns:auto minmax(0,1fr) auto;padding:.4rem;border:1px solid var(--bs-border-color);border-radius:.5rem;background:var(--bs-tertiary-bg)}.mobile-maintenance-detail .maintenance-checklist-editor-frequency{display:none}.mobile-maintenance-detail .maintenance-checklist-editor-text{min-height:36px}.mobile-maintenance-detail .maintenance-notes{margin-top:.5rem!important}.mobile-maintenance-disclosure{overflow:hidden;border:1px solid var(--bs-border-color);border-radius:.65rem;background:var(--bs-body-bg)}.mobile-maintenance-disclosure>summary{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:.45rem;padding:.65rem;cursor:pointer;list-style:none}.mobile-maintenance-disclosure>summary::-webkit-details-marker{display:none}.mobile-maintenance-disclosure>summary>span{min-width:0;display:flex;align-items:center;gap:.45rem}.mobile-maintenance-disclosure>summary i{color:var(--bs-primary)}.mobile-maintenance-disclosure>summary small{display:none}.mobile-maintenance-disclosure>summary::after{content:"+";grid-column:2;grid-row:1;margin-left:auto;font-size:1rem;font-weight:800}.mobile-maintenance-disclosure[open]>summary::after{content:"−"}.mobile-maintenance-disclosure-body{display:grid;gap:.35rem;padding:.65rem;border-top:1px solid var(--bs-border-color)}.mobile-maintenance-disclosure-body>h3:first-child{display:none}.mobile-maintenance-disclosure-body .photo-capture-tile{min-height:72px}.mobile-maintenance-disclosure-body .maintenance-actions{grid-template-columns:1fr 1fr}}.attendance-year-grid{display:grid;gap:.5rem}.attendance-year-item{display:flex;align-items:center;justify-content:space-between;padding:.55rem .7rem;border:1px solid var(--bs-border-color);border-radius:.5rem}.attendance-year-item strong{min-width:2rem;text-align:center}.user-task-visibility{display:flex;flex-wrap:wrap;gap:.3rem .55rem;min-width:12rem}.user-task-visibility-option{display:inline-flex;align-items:center;gap:.2rem;white-space:nowrap;font-size:.78rem;color:var(--bs-secondary-color)}.user-task-visibility-option input{accent-color:var(--bs-primary)}@media (max-width:760px){.planner-technician-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.planner-task-list{grid-template-columns:1fr}}@media (max-width:767.98px),(pointer:coarse) and (hover:none){#page-stookplaats{padding:0}#page-stookplaats>.panel{margin-bottom:.65rem!important;padding:.65rem;border-radius:.65rem}#page-stookplaats .panel-header{align-items:flex-start;gap:.45rem;margin-bottom:.55rem}#page-stookplaats .panel-header h2{font-size:1rem}#page-stookplaats .panel-header p{font-size:.72rem;line-height:1.2}#page-stookplaats .panel-header .badge{flex:0 0 auto;font-size:.62rem}#page-stookplaats #stookplaatsChecklists,#page-stookplaats #stookplaatsFields,#page-stookplaats #stookplaatsLimits{margin-right:0;margin-left:0;row-gap:.45rem!important}#page-stookplaats #stookplaatsChecklists>[class*=col-],#page-stookplaats #stookplaatsFields>[class*=col-],#page-stookplaats #stookplaatsLimits>[class*=col-]{width:100%;padding-right:0;padding-left:0}#page-stookplaats .form-label{margin-bottom:.18rem;font-size:.76rem}#page-stookplaats .form-control{min-height:38px;padding:.35rem .55rem;font-size:.88rem}#page-stookplaats #stookplaatsChecklists,#page-stookplaats #stookplaatsFields{margin-bottom:.7rem!important}#page-stookplaats #stookplaatsChecklists fieldset{padding:.55rem!important;border-radius:.55rem}#page-stookplaats #stookplaatsChecklists legend{margin-bottom:.25rem;font-size:.78rem!important}#page-stookplaats #stookplaatsChecklists .form-check{min-height:34px;display:flex;align-items:center;gap:.35rem;padding-left:1.7rem;font-size:.78rem;line-height:1.2}#page-stookplaats #stookplaatsChecklists .form-check-input{width:1.1rem;height:1.1rem;margin-left:-1.7rem}#page-stookplaats #stookplaatsNotes{min-height:76px}#page-stookplaats #stookplaatsForm>.btn{width:100%;min-height:44px;padding:.5rem .65rem;font-size:.86rem}#page-stookplaats #stookplaatsSummaryPanel .panel-header{flex-wrap:wrap}#page-stookplaats #stookplaatsSummaryPanel .table{min-width:520px;font-size:.72rem}#page-stookplaats #stookplaatsHistoryRows{font-size:.72rem}#page-stookplaats #stookplaatsSettingsPanel .input-group{gap:.35rem}#page-stookplaats #stookplaatsSettingsPanel .input-group .form-control{min-width:0;border-radius:.35rem!important}}.stookplaats-previous-value{flex:0 0 auto;color:var(--bs-secondary-color);font-size:.68rem;font-weight:600;white-space:nowrap}.stookplaats-difference-value{display:block;min-height:1rem;margin-top:.15rem;font-size:.68rem;font-weight:700}.stookplaats-photo-box{padding:.65rem;border:1px dashed var(--bs-border-color);border-radius:.6rem;background:rgba(var(--bs-primary-rgb),.04)}.stookplaats-photo-trigger{width:8.5rem;min-height:4.2rem;padding:.45rem}.stookplaats-photo-trigger span,.stookplaats-photo-trigger strong{font-size:.72rem}.stookplaats-gallery-trigger{min-height:42px}.stookplaats-photo-previews{display:flex;flex-wrap:wrap;gap:.45rem;margin-top:.55rem}.stookplaats-photo-preview{position:relative;width:86px;height:68px;overflow:hidden;border:1px solid var(--bs-border-color);border-radius:.45rem;background:var(--bs-body-bg)}.stookplaats-photo-preview img{width:100%;height:100%;object-fit:cover}.stookplaats-photo-preview .btn{position:absolute;top:.15rem;right:.15rem;width:25px;height:25px;padding:0}.stookplaats-summary-photos{margin-top:.75rem}.stookplaats-summary-photo{display:block;width:86px;height:68px;object-fit:cover;border-radius:.45rem}.stookplaats-history-actions{display:flex;align-items:center;flex-wrap:wrap;justify-content:flex-end;gap:.35rem}.stookplaats-history-row{cursor:pointer}.stookplaats-history-row-open{background:color-mix(in srgb,var(--bs-primary) 10%,transparent)}.stookplaats-history-detail-box{padding:.55rem .7rem .7rem;border-left:3px solid var(--bs-primary);background:color-mix(in srgb,var(--bs-secondary-bg) 55%,transparent);font-size:.82rem}.stookplaats-history-detail-box .table{margin-top:.35rem}.stookplaats-history-detail-box td,.stookplaats-history-detail-box th{padding:.3rem .45rem}.stookplaats-history-detail-box small{color:var(--bs-secondary-color)}.stookplaats-history-actions .form-control,.stookplaats-history-actions .form-select{width:auto;min-width:8rem}@media (max-width:767.98px),(pointer:coarse) and (hover:none){#page-stookplaats .stookplaats-previous-value{display:block;font-size:.62rem}#page-stookplaats .stookplaats-photo-box{padding:.5rem}#page-stookplaats .stookplaats-photo-trigger{width:7rem;min-height:3.7rem}#page-stookplaats .stookplaats-gallery-trigger{flex:1 1 auto;min-height:42px}#page-stookplaats .stookplaats-photo-preview{width:72px;height:58px}#page-stookplaats .stookplaats-history-actions{width:100%;justify-content:stretch}#page-stookplaats .stookplaats-history-actions .btn,#page-stookplaats .stookplaats-history-actions .form-control,#page-stookplaats .stookplaats-history-actions .form-select{flex:1 1 calc(50% - .2rem);min-width:0}}