.wo-page{display:grid;gap:14px;padding:22px 26px 34px}.wo-card{background:var(--reg-card,#fffdf8);border:1px solid rgba(164,122,34,.20);border-radius:18px;box-shadow:var(--reg-shadow-sm,0 10px 30px rgba(18,20,27,.08));overflow:hidden}.wo-hero{position:relative;overflow:hidden;padding:30px 28px;border-radius:21px;background:linear-gradient(135deg,#f8de73 0%,#d9a828 62%,#bd8217 100%);color:#201a0c;box-shadow:0 18px 45px rgba(120,83,13,.18)}.wo-hero:after{content:"";position:absolute;width:220px;height:220px;right:-48px;top:-72px;border-radius:50%;border:1px solid rgba(92,61,8,.18);box-shadow:0 0 0 34px rgba(255,255,255,.08),0 0 0 70px rgba(255,255,255,.05)}.wo-kicker{display:block;font-size:.66rem;letter-spacing:.17em;font-weight:900;color:#80560b}.wo-hero h1,.wo-detail-hero h1{margin:8px 0 6px;font-size:1.72rem;line-height:1.16;font-weight:900}.wo-hero p,.wo-detail-hero p{margin:0;max-width:840px;font-size:.76rem;line-height:1.55}.wo-hero-meta{display:flex;flex-wrap:wrap;gap:7px;margin-top:15px;position:relative;z-index:1}.wo-hero-meta span{padding:5px 9px;border-radius:999px;background:rgba(255,255,255,.63);border:1px solid rgba(111,74,8,.17);font-size:.63rem;font-weight:800}.wo-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:11px}.wo-stat{position:relative;padding:16px 17px;background:var(--reg-card,#fff);border:1px solid rgba(164,122,34,.18);border-radius:15px;box-shadow:0 8px 24px rgba(44,33,8,.05)}.wo-stat:before{content:"";position:absolute;left:0;top:13px;bottom:13px;width:3px;background:#d5a31d;border-radius:0 4px 4px 0}.wo-stat small{display:block;font-size:.58rem;text-transform:uppercase;letter-spacing:.13em;color:#927b4d;font-weight:850}.wo-stat strong{display:block;margin:5px 0 2px;font-size:1.45rem;line-height:1;font-weight:900;color:var(--reg-ink-950,#252017)}.wo-stat span{font-size:.64rem;color:#9a8c70}.wo-filter-card{padding:13px 14px}.wo-filter-grid{display:grid;grid-template-columns:minmax(280px,2fr) repeat(3,minmax(110px,.8fr)) auto;gap:9px;align-items:end}.wo-field{display:grid;gap:5px}.wo-field>span{font-size:.58rem;text-transform:uppercase;letter-spacing:.10em;font-weight:850;color:#8d7650}.wo-field input,.wo-field select{width:100%;min-height:39px;padding:7px 10px;border:1px solid #e4d7bc;border-radius:10px;background:var(--reg-card,#fff);color:var(--reg-ink-900,#2c281e);font:inherit;font-size:.72rem;outline:none}.wo-field input:focus,.wo-field select:focus{border-color:#c8941f;box-shadow:0 0 0 3px rgba(201,148,31,.11)}.wo-filter-actions{display:flex;gap:6px}.wo-btn{display:inline-flex;align-items:center;justify-content:center;min-height:39px;padding:8px 13px;border:1px solid transparent;border-radius:10px;text-decoration:none;font-size:.68rem;font-weight:850;cursor:pointer;white-space:nowrap}.wo-btn-primary{background:linear-gradient(135deg,#e0b23c,#af760d);color:#17130a;border-color:#c38d1e}.wo-btn-neutral{background:var(--reg-card,#fff);color:var(--reg-ink-900,#3d3422);border-color:#e5dac5}.wo-btn-ghost{background:#fff8df;color:#8b5e0c;border-color:#ead18d}.wo-btn-xs{min-height:31px;padding:5px 9px;border-radius:8px;font-size:.62rem}.wo-btn[disabled]{opacity:.45;cursor:not-allowed}.wo-card-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:15px 17px;border-bottom:1px solid rgba(157,126,68,.16)}.wo-card-head.compact{padding:0 0 12px;border:0}.wo-card-head h2{margin:0;font-size:.9rem;font-weight:900;color:var(--reg-ink-950,#332b1c)}.wo-card-head p{margin:3px 0 0;font-size:.64rem;color:#998a70}.wo-count{padding:6px 10px;border-radius:999px;background:#fff5d8;color:#93610b;border:1px solid #ecd18b;font-size:.62rem;font-weight:850}.wo-table-wrap{overflow:auto}.wo-table{width:100%;min-width:1050px;border-collapse:separate;border-spacing:0}.wo-table th{padding:9px 11px;background:rgba(246,241,229,.72);border-bottom:1px solid rgba(154,126,72,.17);text-align:left;font-size:.57rem;text-transform:uppercase;letter-spacing:.09em;color:#897454;font-weight:850}.wo-table td{padding:10px 11px;border-bottom:1px solid rgba(154,126,72,.12);vertical-align:middle;font-size:.68rem;color:var(--reg-ink-900,#463c2d)}.wo-table tbody tr:hover{background:rgba(232,202,123,.07)}.wo-table tbody tr:last-child td{border-bottom:0}.wo-primary strong{display:block;font-size:.72rem;color:var(--reg-ink-950,#322b20)}.wo-primary small{display:block;margin-top:2px;font-size:.60rem;color:#998a70}.wo-number{font-variant-numeric:tabular-nums;font-weight:750}.wo-status{display:inline-flex;padding:5px 8px;border-radius:999px;background:#eef8f2;color:#187449;font-size:.60rem;font-weight:850}.wo-actions{display:flex;gap:5px;justify-content:flex-end}.wo-empty{display:grid;gap:4px;padding:38px;text-align:center;color:#8c7b5f}.wo-empty strong{font-size:.88rem;color:var(--reg-ink-950,#332b1c)}.wo-empty span{font-size:.68rem}.wo-pagination{display:flex;justify-content:space-between;align-items:center;padding:12px 15px;border-top:1px solid rgba(154,126,72,.15);font-size:.64rem;color:#8c7b5f}.wo-pagination>div{display:flex;gap:5px}.wo-page-link{min-width:32px;height:32px;display:grid;place-items:center;border:1px solid #e4d7bc;border-radius:8px;background:var(--reg-card,#fff);color:#705b35;text-decoration:none;font-weight:850}.wo-page-link.is-current,.wo-page-link:hover{background:#c9941f;color:#17130a;border-color:#c9941f}.wo-page-link.is-disabled{pointer-events:none;opacity:.38}.wo-detail-hero{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:22px}.wo-detail-hero .wo-kicker{color:#a87512}.wo-detail-actions{display:flex;gap:7px;flex-wrap:wrap}.wo-detail-grid{display:grid;grid-template-columns:1.15fr .85fr;gap:14px}.wo-section{padding:17px}.wo-info-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:rgba(159,128,72,.13);border:1px solid rgba(159,128,72,.13);border-radius:13px;overflow:hidden}.wo-info-grid>div{min-height:58px;padding:10px 11px;background:var(--reg-card,#fff)}.wo-info-grid .wide{grid-column:1/-1}.wo-info-grid small{display:block;font-size:.56rem;text-transform:uppercase;letter-spacing:.08em;font-weight:850;color:#9b8765}.wo-info-grid strong{display:block;margin-top:4px;font-size:.70rem;color:var(--reg-ink-900,#463c2d);word-break:break-word}.wo-output-flags{display:flex;flex-wrap:wrap;gap:6px}.wo-output-flags span{padding:6px 9px;border-radius:999px;font-size:.61rem;font-weight:850}.wo-output-flags .on{background:#edf8f2;color:#187449}.wo-output-flags .off{background:#f3f0ea;color:#7e725f}.wo-variant{margin:11px 0;padding:10px 12px;border-radius:11px;background:linear-gradient(135deg,#fff5d7,#f7e6ad);border:1px solid #ecd08a;color:#7f570e;font-size:.72rem;font-weight:900}.wo-output-form{display:grid;gap:9px}.wo-output-form>small{font-size:.60rem;color:#998a70}.wo-output-form .wo-btn{width:100%;margin-top:4px}.wo-inline-note{padding:10px 11px;border-radius:10px;background:#f5f1e7;color:#7b6f5b;font-size:.66rem}.wo-validation-card{display:flex;gap:14px;padding:18px;border-color:#e8b56c;background:linear-gradient(135deg,#fffaf0,#fff5df)}.wo-validation-icon{width:42px;height:42px;flex:0 0 42px;display:grid;place-items:center;border-radius:12px;background:#e6ad3a;color:#20180b;font-size:1.1rem;font-weight:900}.wo-validation-card h2{margin:0;font-size:.90rem;color:#6f4a0d}.wo-validation-card p{margin:5px 0 8px;font-size:.67rem;color:#8c7650}.wo-validation-card ul{margin:0;padding-left:18px;font-size:.66rem;color:#624c28}.wo-validation-card li{margin:4px 0}.wo-hours-table{min-width:980px}.wo-hours-table th small{display:block;font-size:.52rem;margin-top:2px;letter-spacing:0;text-transform:none}.wo-hours-table td{text-align:center}.wo-hours-table td:first-child{text-align:left}.wo-hours-table td small{display:block;color:#a87512;font-size:.57rem;margin-top:2px}

html[data-reg-theme="dark"] .wo-card,html[data-reg-theme="dark"] .wo-stat,html[data-reg-theme="dark"] .wo-field input,html[data-reg-theme="dark"] .wo-field select,html[data-reg-theme="dark"] .wo-btn-neutral,html[data-reg-theme="dark"] .wo-page-link,html[data-reg-theme="dark"] .wo-info-grid>div{background:#20242d;color:#f0eadb;border-color:rgba(222,180,66,.18)}html[data-reg-theme="dark"] .wo-stat strong,html[data-reg-theme="dark"] .wo-card-head h2,html[data-reg-theme="dark"] .wo-primary strong,html[data-reg-theme="dark"] .wo-info-grid strong,html[data-reg-theme="dark"] .wo-empty strong{color:#f5eddb}html[data-reg-theme="dark"] .wo-table th{background:#1b1f27;color:#c8b992}html[data-reg-theme="dark"] .wo-table td{color:#e2d8c1;border-color:rgba(222,180,66,.10)}html[data-reg-theme="dark"] .wo-table tbody tr:hover{background:rgba(221,180,66,.07)}html[data-reg-theme="dark"] .wo-info-grid{background:rgba(222,180,66,.16)}html[data-reg-theme="dark"] .wo-output-card .wo-variant{background:rgba(221,180,66,.11)}

@media(max-width:1200px){.wo-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wo-filter-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.wo-search{grid-column:1/-1}.wo-filter-actions{grid-column:1/-1}.wo-detail-grid{grid-template-columns:1fr}}@media(max-width:700px){.wo-page{padding:14px}.wo-hero{padding:22px 20px}.wo-hero h1,.wo-detail-hero h1{font-size:1.35rem}.wo-stat-grid,.wo-filter-grid,.wo-info-grid{grid-template-columns:1fr}.wo-info-grid .wide{grid-column:auto}.wo-detail-hero{align-items:flex-start;flex-direction:column}.wo-pagination{align-items:flex-start;gap:8px;flex-direction:column}}

/* Work Orders list actions R1 */
.wo-actions{flex-wrap:wrap}.wo-inline-form{display:inline-flex;margin:0}.wo-btn-pdf{background:#eef5ff;color:#245b91;border-color:#c7d8ec}.wo-btn-danger{background:#fff0f0;color:#a62d38;border-color:#efc3c7}.wo-alert{padding:11px 14px;border-radius:12px;border:1px solid;font-size:.69rem;font-weight:750}.wo-alert-success{background:#eef8f2;border-color:#bee1cb;color:#176d45}.wo-alert-error{background:#fff1f1;border-color:#edc5c9;color:#9e2c36}.wo-copy-dialog{width:min(560px,calc(100vw - 28px));padding:0;border:0;border-radius:18px;background:var(--reg-card,#fffdf8);color:var(--reg-ink-900,#322b20);box-shadow:0 26px 90px rgba(22,18,8,.28)}.wo-copy-dialog::backdrop{background:rgba(19,18,16,.48);backdrop-filter:blur(2px)}.wo-copy-form{display:grid;gap:14px;padding:20px}.wo-dialog-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.wo-dialog-head h2{margin:5px 0 3px;font-size:1.05rem;font-weight:900}.wo-dialog-head p{margin:0;font-size:.68rem;color:#8d7c5f}.wo-dialog-close{width:34px;height:34px;display:grid;place-items:center;border:1px solid #e5dac5;border-radius:9px;background:transparent;color:inherit;font-size:1.25rem;cursor:pointer}.wo-dialog-note{padding:11px 12px;border-radius:11px;background:#fff6dc;border:1px solid #ecd397;color:#705527;font-size:.66rem;line-height:1.5}.wo-dialog-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.wo-dialog-actions{display:flex;justify-content:flex-end;gap:7px;border-top:1px solid rgba(154,126,72,.15);padding-top:13px}html[data-reg-theme="dark"] .wo-copy-dialog{background:#20242d;color:#f3ecd9}html[data-reg-theme="dark"] .wo-dialog-note{background:rgba(221,180,66,.10);border-color:rgba(221,180,66,.24);color:#dbc791}html[data-reg-theme="dark"] .wo-btn-pdf{background:#192c41;color:#a9d1f3;border-color:#294867}html[data-reg-theme="dark"] .wo-btn-danger{background:#391f24;color:#f1b5bc;border-color:#60323a}html[data-reg-theme="dark"] .wo-dialog-close{border-color:rgba(222,180,66,.18)}
@media(max-width:700px){.wo-dialog-grid{grid-template-columns:1fr}.wo-dialog-actions{flex-direction:column-reverse}.wo-dialog-actions .wo-btn{width:100%}}

/* ============================================================
   REGISTRATIE Work Order Duplicate Guard R1
   ============================================================ */
.wo-duplicate-page-alert{
    display:grid;
    gap:8px;
    margin:0 0 14px;
    padding:18px 20px;
    border:3px solid #c62828;
    border-radius:16px;
    background:#fff0f0;
    color:#8f111b;
    box-shadow:0 10px 28px rgba(160,25,35,.14);
}
.wo-duplicate-page-alert strong{
    font-size:1rem;
    line-height:1.2;
    font-weight:950;
    letter-spacing:.035em;
}
.wo-duplicate-page-alert span{
    font-size:.78rem;
    line-height:1.55;
    font-weight:760;
}
.wo-copy-duplicate-warning{
    display:grid;
    gap:7px;
    padding:16px 17px;
    border:3px solid #c62828;
    border-radius:13px;
    background:#fff0f0;
    color:#8f111b;
}
.wo-copy-duplicate-warning strong{
    font-size:.9rem;
    line-height:1.2;
    font-weight:950;
    letter-spacing:.035em;
}
.wo-copy-duplicate-warning span{
    font-size:.72rem;
    line-height:1.5;
    font-weight:760;
}
.wo-copy-occupied-info{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    gap:8px 12px;
    padding:10px 12px;
    border:1px solid #e3c87e;
    border-radius:10px;
    background:#fff9e8;
    color:#6b5421;
    font-size:.67rem;
    line-height:1.45;
}
.wo-copy-occupied-info strong{font-weight:900}
.wo-copy-dialog option:disabled{color:#a33b43;font-weight:800;background:#fff1f1}
html[data-reg-theme="dark"] .wo-duplicate-page-alert,
html[data-reg-theme="dark"] .wo-copy-duplicate-warning{
    background:#3a1c22;
    color:#ffc0c7;
    border-color:#b94a55;
    box-shadow:none;
}
html[data-reg-theme="dark"] .wo-copy-occupied-info{
    background:rgba(220,178,70,.10);
    color:#e0ca8e;
    border-color:rgba(220,178,70,.28);
}
html[data-reg-theme="dark"] .wo-copy-dialog option:disabled{color:#e8a3aa;background:#362027}

/* ============================================================
   REGISTRATIE Work Orders Workflow R2
   Quick-fix, related work orders and explicit duplicate override
   ============================================================ */
.wo-copy-confirm{
    display:flex;
    align-items:flex-start;
    gap:10px;
    margin-top:4px;
    padding:11px 12px;
    border:2px solid currentColor;
    border-radius:10px;
    background:rgba(255,255,255,.58);
    cursor:pointer;
}
.wo-copy-confirm input{
    width:19px;
    height:19px;
    margin-top:1px;
    accent-color:#b71c1c;
    flex:0 0 auto;
}
.wo-copy-confirm span{
    font-size:.70rem!important;
    line-height:1.45!important;
    font-weight:900!important;
}
.wo-copy-dialog option.is-occupied{
    color:#a32630;
    font-weight:900;
    background:#fff2f2;
}
.wo-quick-fix-card{overflow:visible}
.wo-quick-fix-form{display:grid;gap:14px;padding:17px}
.wo-quick-fix-group{
    margin:0;
    padding:14px;
    border:1px solid rgba(164,122,34,.22);
    border-radius:13px;
    background:rgba(255,250,237,.62);
}
.wo-quick-fix-group legend{
    padding:0 7px;
    color:#80560b;
    font-size:.68rem;
    font-weight:900;
    letter-spacing:.06em;
    text-transform:uppercase;
}
.wo-quick-fix-grid{
    display:grid;
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:10px;
}
.wo-quick-wide{grid-column:span 2}
.wo-quick-fix-actions{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding-top:2px;
}
.wo-quick-fix-actions span{font-size:.64rem;color:#8a7654;line-height:1.45}
.wo-related-list{display:grid}
.wo-related-item{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
    padding:12px 16px;
    border-bottom:1px solid rgba(154,126,72,.13);
    color:inherit;
    text-decoration:none;
    transition:background .15s ease,border-color .15s ease;
}
.wo-related-item:last-child{border-bottom:0}
.wo-related-item:hover{background:rgba(224,178,60,.08)}
.wo-related-item strong{display:block;font-size:.72rem;color:var(--reg-ink-950,#332b1c)}
.wo-related-item small{display:block;margin-top:2px;font-size:.60rem;color:#998a70}
.wo-related-meta{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap}
.wo-related-meta span{
    padding:5px 8px;
    border-radius:999px;
    background:#f5f0e4;
    color:#756441;
    font-size:.58rem;
    font-weight:850;
}
.wo-related-meta .is-active{background:#eef8f2;color:#187449}
.wo-related-meta .is-passive{background:#f3eeee;color:#8b5b5b}
.wo-related-meta b{font-size:.61rem;color:#95640e}
html[data-reg-theme="dark"] .wo-copy-confirm{background:rgba(255,255,255,.04)}
html[data-reg-theme="dark"] .wo-copy-dialog option.is-occupied{color:#f0a7af;background:#392126}
html[data-reg-theme="dark"] .wo-quick-fix-group{background:rgba(221,180,66,.05);border-color:rgba(221,180,66,.18)}
html[data-reg-theme="dark"] .wo-quick-fix-group legend{color:#dfc37b}
html[data-reg-theme="dark"] .wo-related-item strong{color:#f5eddb}
html[data-reg-theme="dark"] .wo-related-item:hover{background:rgba(221,180,66,.06)}
html[data-reg-theme="dark"] .wo-related-meta span{background:#2a2f38;color:#d5c7a6}
html[data-reg-theme="dark"] .wo-related-meta .is-active{background:#173328;color:#9de0bd}
html[data-reg-theme="dark"] .wo-related-meta .is-passive{background:#34272a;color:#d7aeb2}
@media(max-width:900px){
    .wo-quick-fix-grid{grid-template-columns:1fr 1fr}
    .wo-quick-wide{grid-column:1/-1}
    .wo-related-item{align-items:flex-start;flex-direction:column}
    .wo-related-meta{justify-content:flex-start}
}
@media(max-width:600px){
    .wo-quick-fix-grid{grid-template-columns:1fr}
    .wo-quick-wide{grid-column:auto}
    .wo-quick-fix-actions{align-items:stretch;flex-direction:column}
    .wo-quick-fix-actions .wo-btn{width:100%}
}


/* ============================================================
   REGISTRATIE Work Orders Details R3
   Employee cards + clearer output rules
   ============================================================ */
.wo-output-rule{
    margin:-3px 0 2px;
    background:#f8f4e9;
    color:#736649;
}
.wo-employee-card{
    display:inline-flex;
    align-items:center;
    gap:9px;
    min-width:190px;
    max-width:270px;
    padding:5px 7px;
    border:1px solid transparent;
    border-radius:11px;
    color:inherit;
    text-decoration:none;
    transition:background .15s ease,border-color .15s ease,transform .15s ease;
}
.wo-employee-card:hover{
    background:#fff8e6;
    border-color:#ead18d;
    transform:translateY(-1px);
}
.wo-employee-avatar{
    width:38px;
    height:38px;
    flex:0 0 38px;
    overflow:hidden;
    display:grid;
    place-items:center;
    border-radius:50%;
    background:#f1e6c8;
    border:1px solid #dfca93;
}
.wo-employee-avatar img{
    width:100%;
    height:100%;
    display:block;
    object-fit:cover;
}
.wo-employee-avatar-fallback{
    width:100%;
    height:100%;
    display:grid;
    place-items:center;
    font-size:1rem;
    line-height:1;
}
.wo-employee-card-text{
    min-width:0;
    display:grid;
    gap:1px;
    text-align:left;
}
.wo-employee-card-text strong{
    overflow:hidden;
    color:var(--reg-ink-950,#332b1c);
    font-size:.69rem;
    line-height:1.25;
    text-overflow:ellipsis;
    white-space:nowrap;
}
.wo-employee-card-text small{
    margin:0!important;
    color:#9a701c!important;
    font-size:.54rem!important;
    line-height:1.2;
}
html[data-reg-theme="dark"] .wo-output-rule{
    background:rgba(221,180,66,.06);
    color:#cbbb91;
}
html[data-reg-theme="dark"] .wo-employee-card:hover{
    background:rgba(221,180,66,.07);
    border-color:rgba(221,180,66,.24);
}
html[data-reg-theme="dark"] .wo-employee-avatar{
    background:#2b2f38;
    border-color:rgba(221,180,66,.25);
}
html[data-reg-theme="dark"] .wo-employee-card-text strong{color:#f5eddb}
html[data-reg-theme="dark"] .wo-employee-card-text small{color:#d8ba6d!important}

/* ============================================================
   REGISTRATIE Work Orders Hours Table Alignment R1
   Center day headings/numbers and add a subtle cell grid.
   ============================================================ */
.wo-hours-table{
    table-layout:fixed;
    border:1px solid rgba(154,126,72,.22);
    border-radius:0 0 14px 14px;
    overflow:hidden;
}
.wo-hours-table th:first-child{
    width:30%;
    text-align:left;
}
.wo-hours-table th:last-child{
    width:9%;
}
.wo-hours-table th:not(:first-child),
.wo-hours-table td:not(:first-child){
    text-align:center;
}
.wo-hours-table th,
.wo-hours-table td{
    border-right:1px solid rgba(154,126,72,.14);
}
.wo-hours-table th:last-child,
.wo-hours-table td:last-child{
    border-right:0;
}
.wo-hours-table tbody tr:last-child td{
    border-bottom:0;
}
.wo-hours-table td:not(:first-child){
    font-variant-numeric:tabular-nums;
}
html[data-reg-theme="dark"] .wo-hours-table{
    border-color:rgba(222,180,66,.18);
}
html[data-reg-theme="dark"] .wo-hours-table th,
html[data-reg-theme="dark"] .wo-hours-table td{
    border-right-color:rgba(222,180,66,.12);
}
