/* Compatibilité fonctionnelle des composants RH historiques, rendus exclusivement dans le shell natif Phase 25. */
.hr-system-shell{display:grid;gap:18px}.hr-system-hero{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;flex-wrap:wrap;padding:22px;border:1px solid var(--border);border-radius:18px;background:linear-gradient(135deg,rgba(15,118,110,.08),rgba(37,99,235,.06))}.hr-system-hero h2{margin:3px 0 6px}.hr-system-actions{display:flex;gap:10px;align-items:end;flex-wrap:wrap}.hr-system-actions label{min-width:230px}.hr-system-nav{display:flex;gap:8px;flex-wrap:wrap;padding:8px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.hr-system-nav button{border:0;border-radius:10px;padding:10px 13px;background:transparent;color:var(--muted);font-weight:700;cursor:pointer}.hr-system-nav button.active{background:var(--text);color:var(--surface)}.hr-metrics{display:grid;grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px}.hr-metric{padding:16px;border:1px solid var(--border);border-radius:14px;background:var(--surface)}.hr-metric span{display:block;color:var(--muted);font-size:.86rem}.hr-metric strong{display:block;font-size:1.55rem;margin-top:6px}.hr-grid{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(300px,.8fr);gap:16px}.hr-card{border:1px solid var(--border);border-radius:16px;background:var(--surface);padding:18px}.hr-card-head{display:flex;justify-content:space-between;gap:10px;align-items:center;margin-bottom:14px}.hr-card h3,.hr-card h4{margin:0}.hr-table-wrap{overflow:auto;border:1px solid var(--border);border-radius:12px}.hr-table{width:100%;border-collapse:collapse;min-width:760px}.hr-table th,.hr-table td{padding:11px 12px;border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.hr-table th{font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);background:rgba(127,127,127,.05)}.hr-table tr:last-child td{border-bottom:0}.hr-inline-form{display:grid;gap:11px}.hr-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.hr-inline-form label{display:grid;gap:5px;font-size:.86rem;color:var(--muted)}.hr-inline-form input,.hr-inline-form select,.hr-inline-form textarea{width:100%;padding:10px 11px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--text)}.hr-form-actions{display:flex;gap:9px;justify-content:flex-end;flex-wrap:wrap}.hr-button{border:1px solid var(--border);border-radius:9px;padding:9px 12px;background:var(--surface);color:var(--text);font-weight:700;cursor:pointer}.hr-button.primary{background:var(--text);color:var(--surface);border-color:var(--text)}.hr-button.danger{color:var(--danger)}.hr-button:disabled{opacity:.5;cursor:not-allowed}.hr-badge{display:inline-flex;align-items:center;padding:4px 8px;border-radius:999px;font-size:.76rem;font-weight:800;background:rgba(37,99,235,.1);color:#2563eb}.hr-badge.warning{background:rgba(217,119,6,.12);color:#b45309}.hr-badge.success{background:rgba(5,150,105,.12);color:#047857}.hr-badge.danger{background:rgba(220,38,38,.1);color:#b91c1c}.hr-empty{padding:28px;text-align:center;color:var(--muted)}.hr-modal{position:fixed;inset:0;z-index:1200;background:rgba(15,23,42,.58);display:grid;place-items:center;padding:18px}.hr-modal[hidden]{display:none}.hr-modal-card{width:min(920px,100%);max-height:92vh;overflow:auto;background:var(--surface);border-radius:18px;border:1px solid var(--border);padding:20px;box-shadow:0 24px 80px rgba(0,0,0,.25)}.hr-modal-head{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:16px}.hr-modal-close{border:0;background:transparent;font-size:1.6rem;color:var(--muted);cursor:pointer}.hr-help{font-size:.82rem;color:var(--muted);line-height:1.5}.hr-run-details{display:grid;gap:12px}.hr-anomaly{color:#b91c1c;font-size:.82rem}.hr-structure-columns{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hr-structure-column{display:grid;gap:12px;align-content:start}.hr-system-loading{padding:50px;text-align:center;color:var(--muted)}@media(max-width:980px){.hr-grid{grid-template-columns:1fr}.hr-structure-columns{grid-template-columns:1fr}.hr-form-grid{grid-template-columns:1fr}}@media(max-width:640px){.hr-system-hero{padding:16px}.hr-system-actions{width:100%}.hr-system-actions label{min-width:100%;width:100%}.hr-card{padding:14px}.hr-metrics{grid-template-columns:1fr 1fr}}

/* Phase 2 : bulletins, paiements et comptabilité */
.hr-grid-wide { grid-template-columns: minmax(0, 1fr) minmax(250px, 330px); }
.hr-toolbar { display:flex; flex-wrap:wrap; gap:.65rem; align-items:center; margin:0 0 1rem; }
.hr-metrics-compact { margin: 1rem 0; }
.hr-document-state { display:grid; grid-template-columns:1fr auto; gap:.75rem; margin-top:1rem; padding:1rem; border-radius:14px; background:rgba(20,92,79,.06); }
.hr-document-state span { color:var(--muted, #65736f); }
.hr-document-state strong { text-align:right; }
.hr-button.danger { border-color:#b94b4b; color:#9d3030; background:#fff7f7; }
.hr-badge.danger { background:#fbe8e8; color:#9d3030; }
.hr-system-nav { overflow-x:auto; scrollbar-width:thin; }
.hr-system-nav button { white-space:nowrap; }
@media (max-width: 1100px) { .hr-grid-wide { grid-template-columns:1fr; } }
.hr-task-list{display:grid;gap:.65rem}.hr-task-row{display:grid;grid-template-columns:minmax(0,1fr) 180px;align-items:center;gap:1rem;padding:.85rem;border:1px solid rgba(20,92,79,.14);border-radius:12px}.section-gap{margin-top:1.25rem}@media(max-width:640px){.hr-task-row{grid-template-columns:1fr}}

/* Phase 4 : performance, formation, carrière, discipline et sorties */
.hr-phase4-stack{display:grid;gap:16px}.hr-phase4-stack .hr-table{min-width:680px}.hr-card aside .hr-table{min-width:620px}.hr-task-row select{width:100%;padding:9px 10px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text)}

/* Phase 5 : pilotage, organigramme, documents, imports et rapports */
.hr-phase5-stack{display:grid;gap:1rem}.hr-distribution{display:grid;gap:.7rem;margin-top:1rem}.hr-distribution-row{display:grid;grid-template-columns:minmax(120px,1fr) 3fr auto;gap:.7rem;align-items:center}.hr-distribution-row>div{height:10px;background:#e8eef4;border-radius:999px;overflow:hidden}.hr-distribution-row i{display:block;height:100%;background:linear-gradient(90deg,#2563eb,#0f766e);border-radius:999px}.hr-org-chart{overflow:auto;padding:1rem 0}.hr-org-chart ul{list-style:none;margin:0;padding-left:1.5rem;position:relative}.hr-org-chart>ul{padding-left:0;display:flex;gap:1rem;align-items:flex-start;min-width:max-content}.hr-org-chart li{position:relative;padding:.35rem}.hr-org-chart li>ul{margin-top:.5rem;border-left:1px solid #cbd5e1}.hr-org-node{display:grid;gap:.18rem;min-width:210px;max-width:250px;padding:.8rem;border:1px solid #dbe3eb;border-radius:12px;background:#fff;box-shadow:0 3px 12px rgba(15,23,42,.06)}.hr-org-node strong{font-size:.92rem}.hr-org-node span{font-size:.82rem;color:#1d4ed8}.hr-org-node small,.hr-org-node em{font-size:.72rem;color:#64748b;font-style:normal}.hr-report-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:.8rem;margin-top:1rem}.hr-report-card{display:grid;gap:.8rem;padding:1rem;border:1px solid #dbe3eb;border-radius:12px;background:#f8fafc}.hr-report-card>div{display:flex;gap:.4rem;flex-wrap:wrap}.hr-badge.danger{background:#fee2e2;color:#991b1b}.hr-table code{white-space:normal;word-break:break-word;font-size:.72rem}.hr-system-nav{scrollbar-width:thin}@media(max-width:760px){.hr-distribution-row{grid-template-columns:1fr auto}.hr-distribution-row>div{grid-column:1/-1}.hr-org-chart>ul{display:block;min-width:0}.hr-org-node{min-width:0;max-width:none}.hr-report-grid{grid-template-columns:1fr}}

/* Phase 6 — workflows documentaires et notifications */
.hr-notification-item{border-left:4px solid transparent}
.hr-notification-item.is-unread{border-left-color:#2563eb;background:linear-gradient(90deg,rgba(37,99,235,.06),transparent 42%)}
.hr-notification-item p{margin:.35rem 0;color:#334155}
.hr-notification-item small{color:#64748b}

/* Phase 7 — refonte professionnelle de l'espace Ressources humaines */
.hr-workspace-shell{display:grid;grid-template-columns:272px minmax(0,1fr);min-height:720px;border:1px solid var(--border);border-radius:18px;overflow:hidden;background:var(--surface)}
.hr-sidebar{background:color-mix(in srgb,var(--surface) 94%,var(--text) 6%);border-right:1px solid var(--border);padding:16px 12px;overflow:auto;max-height:calc(100vh - 140px);position:sticky;top:12px;align-self:start}
.hr-sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:2px 8px 15px;border-bottom:1px solid var(--border);margin-bottom:10px}
.hr-sidebar-head>div{display:flex;align-items:center;gap:10px;min-width:0}.hr-sidebar-head>div>span{display:grid;place-items:center;width:38px;height:38px;border-radius:11px;background:var(--text);color:var(--surface);font-size:.78rem;font-weight:900}.hr-sidebar-head strong{font-size:.92rem;line-height:1.2}.hr-sidebar-head>button{display:none;border:0;background:transparent;color:var(--muted);font-size:1.5rem;cursor:pointer}
.hr-nav-group{border-bottom:1px solid var(--border);padding:5px 0}.hr-nav-group:last-child{border-bottom:0}.hr-nav-group.has-active{background:color-mix(in srgb,var(--text) 2.5%,transparent);border-radius:10px}.hr-nav-toggle{display:grid;grid-template-columns:minmax(0,1fr) 18px;align-items:center;gap:8px;width:100%;min-height:46px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);padding:9px 10px;text-align:left;font:inherit;font-size:.72rem;font-weight:900;letter-spacing:.06em;text-transform:uppercase;cursor:pointer;touch-action:manipulation}.hr-nav-toggle:hover{background:color-mix(in srgb,var(--text) 5%,transparent);border-color:color-mix(in srgb,var(--text) 10%,var(--border))}.hr-nav-toggle:focus-visible{outline:0;border-color:var(--primary,#216e5d);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#216e5d) 16%,transparent)}.hr-nav-group.is-open>.hr-nav-toggle{color:var(--text);background:color-mix(in srgb,var(--text) 5%,transparent);border-color:color-mix(in srgb,var(--text) 11%,var(--border))}.hr-nav-toggle>b{display:grid;place-items:center;min-width:23px;height:21px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,currentColor 11%,transparent);font-size:.66rem;letter-spacing:0}.hr-nav-toggle>i{width:9px;height:9px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg) translate(-1px,-1px);transition:transform .18s ease}.hr-nav-group.is-open>.hr-nav-toggle>i{transform:rotate(225deg) translate(-1px,-1px)}.hr-nav-submenu{display:grid;grid-template-rows:0fr;visibility:hidden;opacity:0;transition:grid-template-rows .18s ease,opacity .14s ease,visibility 0s linear .18s}.hr-nav-submenu>div{min-height:0;overflow:hidden;display:grid;gap:3px;padding:0 3px}.hr-nav-group.is-open>.hr-nav-submenu{grid-template-rows:1fr;visibility:visible;opacity:1;transition:grid-template-rows .18s ease,opacity .16s ease}.hr-nav-group.is-open>.hr-nav-submenu>div{padding-top:4px;padding-bottom:5px}
.hr-nav-item{display:flex;align-items:center;justify-content:space-between;gap:8px;width:100%;min-height:44px;border:1px solid transparent;border-radius:9px;background:transparent;color:var(--text);padding:9px 10px 9px 15px;text-align:left;font:inherit;font-size:.84rem;font-weight:650;cursor:pointer;touch-action:manipulation}.hr-nav-item:hover{background:color-mix(in srgb,var(--text) 6%,transparent);border-color:color-mix(in srgb,var(--text) 8%,var(--border))}.hr-nav-item:focus-visible{outline:0;border-color:var(--primary,#216e5d);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#216e5d) 14%,transparent)}.hr-nav-item.active{background:var(--text);color:var(--surface);border-color:var(--text);box-shadow:0 4px 12px rgba(15,23,42,.10)}.hr-nav-item b{display:inline-grid;place-items:center;min-width:23px;height:21px;padding:0 6px;border-radius:999px;background:color-mix(in srgb,currentColor 14%,transparent);font-size:.68rem}
.hr-main{min-width:0;padding:0 20px 24px}.hr-page-header{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:20px 0 15px;border-bottom:1px solid var(--border);position:sticky;top:0;z-index:8;background:color-mix(in srgb,var(--surface) 96%,transparent);backdrop-filter:blur(12px)}.hr-page-title-row{display:flex;align-items:center;gap:12px;min-width:0}.hr-page-title-row h2{margin:0;font-size:1.35rem}.hr-page-indicators{display:flex;gap:8px;flex-wrap:wrap;margin-top:4px}.hr-page-indicators span{font-size:.74rem;color:var(--muted);font-weight:700}.hr-page-indicators .is-critical{color:#b91c1c}.hr-icon-button{display:none;width:38px;height:38px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);cursor:pointer}.hr-page-actions{display:flex;align-items:flex-end;justify-content:flex-end;gap:8px;flex-wrap:wrap}.hr-company-filter{min-width:210px}
.hr-command-bar{display:grid;grid-template-columns:minmax(220px,1fr) 170px 170px;gap:10px;padding:14px 0}.hr-command-bar label,.hr-page-actions label{display:grid;gap:4px;color:var(--muted);font-size:.72rem;font-weight:800}.hr-command-bar input,.hr-command-bar select,.hr-page-actions select{min-height:40px;border:1px solid var(--border);border-radius:9px;background:var(--surface);color:var(--text);padding:8px 10px}.hr-search-field input{padding-left:12px}.hr-page-content{display:grid;gap:14px}
.hr-workspace-grid{display:grid;grid-template-columns:minmax(0,1fr) 270px;gap:14px}.hr-kpi-strip{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.hr-kpi-strip button{display:grid;gap:5px;border:1px solid var(--border);border-radius:13px;background:var(--surface);padding:14px;text-align:left;color:var(--text);cursor:pointer}.hr-kpi-strip button:hover{border-color:color-mix(in srgb,var(--text) 38%,var(--border))}.hr-kpi-strip span{color:var(--muted);font-size:.78rem;font-weight:700}.hr-kpi-strip strong{font-size:1.55rem}.hr-work-queue{min-width:0}.hr-domain-queue>div,.hr-dashboard-domains{display:grid;gap:7px;margin-top:12px}.hr-domain-queue button,.hr-dashboard-domains button{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid var(--border);border-radius:10px;background:transparent;color:var(--text);padding:10px 11px;cursor:pointer;text-align:left}.hr-domain-queue button:hover,.hr-dashboard-domains button:hover{background:color-mix(in srgb,var(--text) 5%,transparent)}.hr-domain-queue b,.hr-dashboard-domains strong{font-size:.83rem}
.hr-dashboard-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(280px,.55fr);gap:14px}.hr-metrics-operational{grid-template-columns:repeat(2,minmax(0,1fr))}.hr-metrics-operational .hr-metric{min-height:105px}.hr-metric small{display:block;margin-top:4px;color:var(--muted)}
.hr-card{box-shadow:none}.hr-card-head h3{font-size:1rem}.hr-text-button{border:0;background:transparent;color:var(--text);font-weight:800;cursor:pointer;text-decoration:underline;text-underline-offset:3px}.hr-table-wrap{background:var(--surface)}.hr-table th{position:sticky;top:0;z-index:1}.hr-table td strong{display:block}.hr-table td small{display:block;margin-top:3px;color:var(--muted)}.hr-table th.hr-sortable{cursor:pointer;padding-right:22px}.hr-table th.hr-sortable::after{content:"↕";position:absolute;margin-left:6px;opacity:.45}.hr-table-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 2px 0;color:var(--muted);font-size:.76rem}.hr-table-footer>div{display:flex;gap:6px}.hr-table-footer .hr-button{padding:6px 9px;font-size:.72rem}.hr-task-table{min-width:1080px}.hr-priority-dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:8px;vertical-align:middle}.hr-priority-dot.critical{background:#b91c1c}.hr-priority-dot.urgent{background:#d97706}.hr-priority-dot.normal{background:#2563eb}.hr-priority-dot.low{background:#64748b}.hr-priority{display:inline-flex;padding:4px 8px;border-radius:999px;font-size:.72rem;font-weight:850}.hr-priority.critical{background:#fee2e2;color:#991b1b}.hr-priority.urgent{background:#ffedd5;color:#9a3412}.hr-priority.normal{background:#dbeafe;color:#1d4ed8}.hr-priority.low{background:#e2e8f0;color:#475569}.hr-status-badge{display:inline-flex;padding:4px 8px;border-radius:999px;background:color-mix(in srgb,var(--text) 7%,transparent);font-size:.72rem;font-weight:800}.hr-empty-state{display:grid;place-items:center;gap:10px;min-height:130px;color:var(--muted)}
.hr-calendar{display:grid;gap:12px}.hr-calendar-day{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden}.hr-calendar-day>header{display:flex;justify-content:space-between;align-items:center;padding:11px 14px;border-bottom:1px solid var(--border);text-transform:capitalize}.hr-calendar-day>header span{display:grid;place-items:center;min-width:26px;height:24px;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);font-size:.72rem;font-weight:850}.hr-calendar-day>div{display:grid}.hr-calendar-day button{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"dot title" "dot detail";column-gap:8px;border:0;border-bottom:1px solid var(--border);background:transparent;color:var(--text);padding:11px 14px;text-align:left;cursor:pointer}.hr-calendar-day button:last-child{border-bottom:0}.hr-calendar-day button:hover{background:color-mix(in srgb,var(--text) 4%,transparent)}.hr-calendar-day button .hr-priority-dot{grid-area:dot;margin-top:5px}.hr-calendar-day button strong{grid-area:title}.hr-calendar-day button small{grid-area:detail;color:var(--muted)}
.hr-personnel-form fieldset{border:0;margin:0;padding:0;display:grid;gap:10px}.hr-form-section{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.hr-form-section summary{cursor:pointer;padding:12px 14px;font-weight:850;background:color-mix(in srgb,var(--text) 4%,transparent)}.hr-form-section>.hr-form-grid{padding:14px}.hr-required{display:inline-flex;margin-left:5px;padding:2px 5px;border-radius:5px;background:#fee2e2;color:#991b1b;font-size:.62rem;font-weight:850;vertical-align:middle}.hr-personnel-form fieldset:disabled{opacity:.86}.hr-personnel-form fieldset:disabled input,.hr-personnel-form fieldset:disabled select,.hr-personnel-form fieldset:disabled textarea{background:color-mix(in srgb,var(--surface) 90%,var(--text) 10%);cursor:default}.hr-modal-head-actions{display:flex;align-items:center;gap:8px}
.hr-button{transition:border-color .15s ease,background .15s ease,transform .15s ease}.hr-button:hover:not(:disabled){border-color:color-mix(in srgb,var(--text) 38%,var(--border))}.hr-button:active:not(:disabled){transform:translateY(1px)}.hr-button.primary{background:#0f172a;color:#fff;border-color:#0f172a}.hr-button.danger{background:#fff7f7}.hr-inline-form input:invalid:not(:placeholder-shown),.hr-inline-form select:invalid,.hr-personnel-form input:invalid:not(:placeholder-shown),.hr-personnel-form select:invalid{border-color:#dc2626;box-shadow:0 0 0 2px rgba(220,38,38,.08)}
@media(max-width:1180px){.hr-workspace-shell{grid-template-columns:235px minmax(0,1fr)}.hr-workspace-grid,.hr-dashboard-layout{grid-template-columns:1fr}.hr-domain-queue{grid-column:1}.hr-kpi-strip{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:900px){.hr-workspace-shell{display:block;min-height:0}.hr-sidebar{position:fixed;inset:0 auto 0 0;z-index:1600;width:min(320px,88vw);max-height:none;transform:translateX(-105%);transition:transform .2s ease;box-shadow:20px 0 60px rgba(0,0,0,.22)}.hr-sidebar.is-open{transform:translateX(0)}.hr-sidebar-head>button,.hr-icon-button{display:inline-grid;place-items:center}.hr-main{padding:0 14px 18px}.hr-page-header{top:0}.hr-page-actions{max-width:55%}.hr-command-bar{grid-template-columns:1fr 1fr}.hr-search-field{grid-column:1/-1}}
@media(max-width:640px){.hr-main{padding:0 10px 14px}.hr-page-header{align-items:flex-start;padding-top:12px}.hr-page-title-row h2{font-size:1.12rem}.hr-page-actions{max-width:none;width:100%;justify-content:flex-start}.hr-page-header{flex-wrap:wrap}.hr-company-filter{min-width:100%;width:100%}.hr-command-bar{grid-template-columns:1fr}.hr-search-field{grid-column:auto}.hr-kpi-strip{grid-template-columns:1fr 1fr}.hr-kpi-strip button{padding:11px}.hr-kpi-strip strong{font-size:1.25rem}.hr-metrics-operational{grid-template-columns:1fr 1fr}.hr-metrics-operational .hr-metric{min-height:90px;padding:12px}.hr-metrics-operational .hr-metric strong{font-size:1.12rem}.hr-card{padding:12px}.hr-card-head{align-items:flex-start;flex-wrap:wrap}.hr-form-grid{grid-template-columns:1fr}.hr-modal{padding:8px}.hr-modal-card{padding:14px;border-radius:13px}.hr-modal-head{align-items:flex-start}.hr-modal-head-actions{flex-wrap:wrap;justify-content:flex-end}.hr-table-footer{align-items:flex-start;flex-direction:column}.hr-calendar-day button{padding:10px 11px}}

/* Phase 7.1 — tableau de bord RH maintenu et champs variables lisibles */
.hr-dashboard-professional{display:grid;gap:14px}
.hr-dashboard-summary{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border:1px solid var(--border);border-radius:14px;background:color-mix(in srgb,var(--surface) 96%,var(--text) 4%)}
.hr-dashboard-summary h3{margin:3px 0 0;font-size:1.12rem}.hr-dashboard-eyebrow{color:var(--muted);font-size:.72rem;font-weight:900;letter-spacing:.08em;text-transform:uppercase}
.hr-dashboard-metrics{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
.hr-dashboard-metric{min-height:118px;display:flex;flex-direction:column;align-items:flex-start;gap:5px;padding:14px;border:1px solid var(--border);border-radius:13px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;transition:border-color .15s ease,box-shadow .15s ease,transform .15s ease}
.hr-dashboard-metric:hover{border-color:color-mix(in srgb,var(--text) 34%,var(--border));box-shadow:0 8px 22px rgba(15,23,42,.07);transform:translateY(-1px)}
.hr-dashboard-metric:focus-visible{outline:0;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.14)}
.hr-dashboard-metric>span{color:var(--muted);font-size:.76rem;font-weight:800;line-height:1.35}.hr-dashboard-metric>strong{font-size:1.42rem;line-height:1.2}.hr-dashboard-metric>small{color:var(--muted);font-size:.69rem;line-height:1.35}
.hr-dashboard-metric.danger{border-left:3px solid #dc2626}.hr-dashboard-metric.warning{border-left:3px solid #d97706}.hr-dashboard-metric.success{border-left:3px solid #059669}.hr-dashboard-metric.neutral{border-left:3px solid #64748b}
.hr-trend{margin-top:auto!important}.hr-trend.up{color:#047857!important}.hr-trend.down{color:#b91c1c!important}.hr-trend.flat{color:var(--muted)!important}
.hr-dashboard-charts{display:grid;grid-template-columns:1fr 1fr;gap:14px}.hr-chart-card{min-width:0}.hr-bar-chart{display:grid;grid-template-columns:repeat(6,minmax(44px,1fr));gap:10px;align-items:end;min-height:235px;padding:12px 4px 2px}.hr-bar-item{display:grid;grid-template-rows:auto 160px auto;gap:6px;align-items:end;text-align:center;min-width:0}.hr-bar-value{font-size:.66rem;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.hr-bar-track{height:160px;display:flex;align-items:flex-end;justify-content:center;border-radius:8px;background:color-mix(in srgb,var(--text) 4%,transparent);overflow:hidden}.hr-bar-track span{display:block;width:58%;min-height:2px;border-radius:6px 6px 2px 2px;background:linear-gradient(180deg,#2563eb,#0f766e)}.hr-bar-item small{font-size:.68rem;color:var(--muted);white-space:nowrap}
.hr-link-button{border:0;background:transparent;color:var(--text);font:inherit;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer;padding:0}

#hrSystemRoot input:not([type="checkbox"]):not([type="radio"]),#hrSystemRoot select,#hrSystemRoot textarea{border:1px solid color-mix(in srgb,var(--text) 22%,var(--border));background:var(--surface);color:var(--text);transition:border-color .15s ease,box-shadow .15s ease,background .15s ease}
#hrSystemRoot input:not([type="checkbox"]):not([type="radio"]):hover,#hrSystemRoot select:hover,#hrSystemRoot textarea:hover{border-color:color-mix(in srgb,var(--text) 34%,var(--border))}
#hrSystemRoot input:not([type="checkbox"]):not([type="radio"]):focus,#hrSystemRoot select:focus,#hrSystemRoot textarea:focus{outline:0;border-color:#2563eb;box-shadow:0 0 0 3px rgba(37,99,235,.12)}
#hrSystemRoot input:disabled,#hrSystemRoot select:disabled,#hrSystemRoot textarea:disabled,#hrSystemRoot input[readonly],#hrSystemRoot textarea[readonly]{background:color-mix(in srgb,var(--surface) 88%,var(--text) 12%);border-color:color-mix(in srgb,var(--text) 14%,var(--border));color:color-mix(in srgb,var(--text) 72%,var(--muted));cursor:not-allowed;opacity:1}
#hrSystemRoot input[aria-invalid="true"],#hrSystemRoot select[aria-invalid="true"],#hrSystemRoot textarea[aria-invalid="true"],#hrSystemRoot input:invalid:not(:placeholder-shown),#hrSystemRoot select:invalid{border-color:#dc2626;box-shadow:0 0 0 3px rgba(220,38,38,.09)}
#hrSystemRoot .hr-field-error,#hrSystemRoot [data-field-error]{display:block;margin-top:4px;color:#b91c1c;font-size:.72rem;font-weight:650}
#hrSystemRoot .is-dirty input,#hrSystemRoot .is-dirty select,#hrSystemRoot .is-dirty textarea,#hrSystemRoot input.is-dirty,#hrSystemRoot select.is-dirty,#hrSystemRoot textarea.is-dirty{border-color:#d97706;box-shadow:0 0 0 2px rgba(217,119,6,.08)}
#hrSystemRoot label:has(input[required],select[required],textarea[required])>span:first-child::after{content:" *";color:#b91c1c;font-weight:900}
#hrSystemRoot .hr-inline-form label,#hrSystemRoot .hr-form-grid label,#hrSystemRoot .hr-command-bar label,#hrSystemRoot .hr-page-actions label{gap:6px}
#hrSystemRoot .hr-inline-form label>span:first-child,#hrSystemRoot .hr-form-grid label>span:first-child{color:var(--text);font-size:.78rem;font-weight:750}

@media(max-width:1180px){.hr-dashboard-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(max-width:900px){.hr-dashboard-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.hr-dashboard-charts{grid-template-columns:1fr}}
@media(max-width:640px){.hr-dashboard-summary{align-items:flex-start;flex-direction:column}.hr-dashboard-metrics{grid-template-columns:1fr 1fr}.hr-dashboard-metric{min-height:105px;padding:11px}.hr-dashboard-metric>strong{font-size:1.18rem}.hr-bar-chart{overflow-x:auto;grid-template-columns:repeat(6,minmax(62px,1fr));padding-bottom:8px}.hr-chart-card{overflow:hidden}}
@media(max-width:420px){.hr-dashboard-metrics{grid-template-columns:1fr}}


/* Phase 9 — navigation tactile, accessibilité et indicateurs cohérents */
.hr-breadcrumb{display:flex;align-items:center;gap:6px;flex-wrap:wrap;margin-bottom:3px;color:var(--muted);font-size:.68rem;line-height:1.3}.hr-breadcrumb i{font-style:normal;color:color-mix(in srgb,var(--muted) 58%,transparent)}.hr-breadcrumb strong{color:var(--text);font-weight:800}.hr-sidebar-backdrop{display:none}
.hr-dashboard-metric-status{display:inline-flex!important;align-items:center;gap:6px;width:auto!important;margin-bottom:2px;padding:3px 7px;border-radius:999px;font-size:.65rem!important;font-weight:850!important;line-height:1!important}.hr-dashboard-metric-status i,.hr-indicator-legend i{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor}.hr-dashboard-metric-status.success{color:#047857;background:#ecfdf5}.hr-dashboard-metric-status.warning{color:#b45309;background:#fff7ed}.hr-dashboard-metric-status.danger{color:#b91c1c;background:#fef2f2}.hr-dashboard-metric-status.neutral{color:#64748b;background:#f1f5f9}.hr-dashboard-metric-label{color:var(--muted)!important;font-size:.76rem!important;font-weight:800!important;line-height:1.35}.hr-dashboard-metric.success{border-color:rgba(5,150,105,.28);background:linear-gradient(180deg,rgba(5,150,105,.045),var(--surface) 52%)}.hr-dashboard-metric.warning{border-color:rgba(217,119,6,.30);background:linear-gradient(180deg,rgba(217,119,6,.05),var(--surface) 52%)}.hr-dashboard-metric.danger{border-color:rgba(220,38,38,.28);background:linear-gradient(180deg,rgba(220,38,38,.045),var(--surface) 52%)}.hr-dashboard-metric.neutral{border-color:rgba(100,116,139,.24);background:linear-gradient(180deg,rgba(100,116,139,.04),var(--surface) 52%)}.hr-indicator-legend{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:8px}.hr-indicator-legend span{display:inline-flex;align-items:center;gap:5px;color:var(--muted);font-size:.68rem;font-weight:750}.hr-indicator-legend .success i{color:#059669}.hr-indicator-legend .warning i{color:#d97706}.hr-indicator-legend .danger i{color:#dc2626}.hr-indicator-legend .neutral i{color:#64748b}
#hrSystemRoot input[type="checkbox"],#hrSystemRoot input[type="radio"]{width:19px;height:19px;min-height:19px;margin:0;border:1px solid color-mix(in srgb,var(--text) 30%,var(--border));accent-color:var(--primary,#216e5d);vertical-align:middle;cursor:pointer}#hrSystemRoot input[type="checkbox"]:focus-visible,#hrSystemRoot input[type="radio"]:focus-visible{outline:0;box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#216e5d) 16%,transparent)}
@media(prefers-reduced-motion:reduce){.hr-nav-submenu,.hr-nav-toggle>i,.hr-sidebar{transition:none!important}}
@media(max-width:900px){.hr-sidebar-backdrop{position:fixed;inset:0;z-index:1590;border:0;background:rgba(15,23,42,.38);opacity:0;pointer-events:none;transition:opacity .18s ease}.hr-sidebar.is-open+.hr-sidebar-backdrop{display:block;opacity:1;pointer-events:auto}.hr-sidebar-head>button{display:grid;place-items:center;width:44px;height:44px;border-radius:10px}.hr-icon-button{min-width:44px;min-height:44px}.hr-nav-toggle,.hr-nav-item{min-height:48px}}
@media(max-width:640px){.hr-breadcrumb{font-size:.64rem}.hr-dashboard-metric-status{font-size:.61rem!important}.hr-indicator-legend{gap:8px}}

/* Phase 10 — Centre de travail RH professionnel */
.hr-work-center-professional{display:grid;gap:14px;position:relative}
.hr-work-header{display:flex;align-items:flex-end;justify-content:space-between;gap:16px;padding:15px 17px;border:1px solid var(--border);border-radius:14px;background:var(--surface);box-shadow:0 4px 15px rgba(15,23,42,.035)}
.hr-work-header>div:first-child>span{display:block;color:var(--muted);font-size:.7rem;font-weight:900;text-transform:uppercase;letter-spacing:.07em}.hr-work-header h3{margin:3px 0;font-size:1.13rem}.hr-work-header small{color:var(--muted)}
.hr-work-header-actions{display:flex;align-items:flex-end;gap:8px;flex-wrap:wrap;justify-content:flex-end}.hr-work-search{display:grid;gap:5px;min-width:250px}.hr-work-search span{font-size:.72rem;font-weight:800;color:var(--muted)}
.hr-work-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.hr-work-summary-card{display:grid;grid-template-columns:32px minmax(0,1fr) auto;grid-template-areas:"icon label value" "icon state state";align-items:center;gap:3px 9px;min-height:82px;padding:11px 12px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--text);text-align:left;cursor:pointer;box-shadow:0 2px 8px rgba(15,23,42,.025)}.hr-work-summary-card:hover{border-color:color-mix(in srgb,var(--text) 30%,var(--border));box-shadow:0 7px 18px rgba(15,23,42,.06)}.hr-work-summary-card:focus-visible{outline:0;border-color:var(--primary,#216e5d);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary,#216e5d) 15%,transparent)}.hr-work-summary-icon{grid-area:icon;display:grid;place-items:center;width:30px;height:30px;border-radius:8px;background:#f1f5f9;font-weight:900}.hr-work-summary-card>span:nth-child(2){grid-area:label;color:var(--muted);font-size:.73rem;font-weight:800}.hr-work-summary-card strong{grid-area:value;font-size:1.25rem}.hr-work-summary-card small{grid-area:state;color:var(--muted);font-size:.66rem}.hr-work-summary-card.danger{border-left:3px solid #dc2626}.hr-work-summary-card.danger .hr-work-summary-icon{background:#fef2f2;color:#b91c1c}.hr-work-summary-card.warning{border-left:3px solid #d97706}.hr-work-summary-card.warning .hr-work-summary-icon{background:#fff7ed;color:#b45309}.hr-work-summary-card.success{border-left:3px solid #059669}.hr-work-summary-card.success .hr-work-summary-icon{background:#ecfdf5;color:#047857}.hr-work-summary-card.neutral{border-left:3px solid #64748b}.hr-work-summary-card.neutral .hr-work-summary-icon{color:#475569}
.hr-work-filters{border:1px solid var(--border);border-radius:12px;background:var(--surface);overflow:hidden}.hr-filter-toggle{display:flex;align-items:center;justify-content:space-between;gap:10px;width:100%;min-height:44px;padding:10px 13px;border:0;background:transparent;color:var(--text);font:inherit;font-size:.78rem;font-weight:850;cursor:pointer}.hr-filter-toggle i{font-style:normal;transition:transform .16s ease}.hr-work-filters.is-open .hr-filter-toggle i{transform:rotate(180deg)}#hrWorkFiltersPanel{padding:0 13px 13px;border-top:1px solid var(--border)}.hr-work-filter-grid{display:grid;grid-template-columns:repeat(5,minmax(130px,1fr));gap:9px;padding-top:12px}.hr-work-filter-grid label{display:grid;gap:5px}.hr-work-filter-grid label>span{font-size:.69rem;font-weight:800;color:var(--muted)}.hr-filter-actions{display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;margin-top:11px}.hr-active-filter-tags,.hr-saved-views{display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding:0 13px 10px}.hr-saved-views{border-top:1px solid var(--border);padding-top:9px}.hr-saved-views>span{font-size:.68rem;font-weight:850;color:var(--muted);text-transform:uppercase;letter-spacing:.04em}.hr-filter-tag{display:inline-flex;align-items:center;gap:5px;min-height:30px;padding:5px 9px;border:1px solid color-mix(in srgb,var(--text) 16%,var(--border));border-radius:999px;background:color-mix(in srgb,var(--surface) 96%,var(--text) 4%);color:var(--text);font-size:.7rem;font-weight:750;cursor:pointer}
.hr-work-tabs{display:flex;gap:5px;overflow:auto;padding:5px;border:1px solid var(--border);border-radius:11px;background:color-mix(in srgb,var(--surface) 96%,var(--text) 4%)}.hr-work-tabs button{display:flex;align-items:center;gap:7px;min-height:38px;padding:7px 11px;border:1px solid transparent;border-radius:8px;background:transparent;color:var(--muted);font-weight:800;cursor:pointer;white-space:nowrap}.hr-work-tabs button b{display:grid;place-items:center;min-width:22px;height:22px;padding:0 5px;border-radius:999px;background:color-mix(in srgb,var(--text) 8%,transparent);font-size:.68rem}.hr-work-tabs button.active{background:var(--surface);border-color:var(--border);color:var(--text);box-shadow:0 2px 7px rgba(15,23,42,.05)}
.hr-work-main-zone{min-width:0}.hr-work-main-zone>.hr-card{border:0;padding:0}.hr-work-table-actions{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 0 10px}.hr-work-table-actions>label{display:flex;align-items:center;gap:7px;font-size:.72rem;font-weight:750;color:var(--muted)}.hr-work-table-actions>div{display:flex;gap:6px;flex-wrap:wrap}.hr-select-cell{width:38px}.hr-task-title-button{display:grid;gap:3px;width:100%;border:0;background:transparent;color:var(--text);padding:0;text-align:left;cursor:pointer}.hr-task-title-button strong{font-size:.82rem}.hr-task-title-button small{color:var(--muted);font-size:.69rem;line-height:1.35}.hr-priority{display:inline-flex;align-items:center;gap:5px;font-size:.68rem;font-weight:850;white-space:nowrap}.hr-priority i{display:inline-block;width:8px;height:8px;border-radius:50%;background:currentColor}.hr-priority.critical{color:#b91c1c}.hr-priority.urgent{color:#b45309}.hr-priority.normal{color:#2563eb}.hr-priority.low{color:#64748b}.hr-due{display:inline-flex;align-items:center;padding:3px 7px;border-radius:999px;font-size:.66rem;font-weight:850;white-space:nowrap}.hr-due.danger{color:#b91c1c;background:#fef2f2}.hr-due.warning{color:#b45309;background:#fff7ed}.hr-due.neutral{color:#475569;background:#f1f5f9}.hr-work-task-row.is-overdue{background:linear-gradient(90deg,rgba(220,38,38,.035),transparent 34%)}.hr-status-badge.status-blocked,.hr-status-badge.status-rejected{color:#b91c1c;background:#fef2f2}.hr-status-badge.status-in_progress,.hr-status-badge.status-submitted,.hr-status-badge.status-to_review{color:#1d4ed8;background:#eff6ff}.hr-status-badge.status-completed,.hr-status-badge.status-validated{color:#047857;background:#ecfdf5}.hr-status-badge.status-waiting_information,.hr-status-badge.status-todo{color:#b45309;background:#fff7ed}.hr-work-mobile-list{display:none}
.hr-work-detail-panel{position:fixed;top:0;right:0;bottom:0;z-index:1800;width:min(520px,94vw);overflow:auto;border-left:1px solid var(--border);background:var(--surface);box-shadow:-20px 0 60px rgba(15,23,42,.18);transform:translateX(105%);transition:transform .2s ease}.hr-work-detail-panel.is-open{transform:translateX(0)}.hr-work-detail-head{position:sticky;top:0;z-index:2;display:flex;justify-content:space-between;gap:12px;padding:17px;border-bottom:1px solid var(--border);background:color-mix(in srgb,var(--surface) 96%,var(--text) 4%)}.hr-work-detail-head h3{margin:6px 0 2px;font-size:1.06rem}.hr-work-detail-head small{color:var(--muted)}.hr-work-detail-body{display:grid;gap:17px;padding:17px}.hr-work-detail-body section{display:grid;gap:10px}.hr-work-detail-body h4{margin:0;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em;color:var(--muted)}.hr-work-detail-summary dl{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.hr-work-detail-summary dl>div{padding:9px;border:1px solid var(--border);border-radius:9px}.hr-work-detail-summary dt{font-size:.65rem;color:var(--muted);font-weight:800}.hr-work-detail-summary dd{margin:3px 0 0;font-size:.78rem;font-weight:750}.hr-work-detail-summary p{margin:0;padding:10px;border-left:3px solid var(--border);background:color-mix(in srgb,var(--surface) 95%,var(--text) 5%);font-size:.8rem;line-height:1.5}.hr-work-blocked-reason{display:grid;gap:4px;padding:10px;border:1px solid rgba(220,38,38,.24);border-radius:9px;background:#fef2f2;color:#991b1b}.hr-work-detail-actions{display:flex!important;gap:7px!important;flex-wrap:wrap}.hr-comments-list{display:grid;gap:8px}.hr-comment{padding:10px;border:1px solid var(--border);border-radius:9px;background:color-mix(in srgb,var(--surface) 97%,var(--text) 3%)}.hr-comment header{display:flex;justify-content:space-between;gap:8px}.hr-comment header time{font-size:.67rem;color:var(--muted)}.hr-comment p{margin:7px 0 0;font-size:.79rem;line-height:1.45}.hr-work-history{display:grid;gap:7px;margin:0;padding:0;list-style:none}.hr-work-history li{display:grid;grid-template-columns:112px 100px minmax(0,1fr);gap:7px;padding:8px;border-bottom:1px solid var(--border);font-size:.71rem}.hr-work-history time{color:var(--muted)}.hr-work-history small{grid-column:3;color:var(--muted)}.hr-work-detail-loading{padding:40px;text-align:center;color:var(--muted)}.hr-form-span-2{grid-column:1/-1}
.hr-calendar-work-view{display:grid;gap:12px}.hr-calendar-work-view .hr-card{min-width:0}
@media(max-width:1200px){.hr-work-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.hr-work-filter-grid{grid-template-columns:repeat(3,minmax(150px,1fr))}}
@media(max-width:900px){.hr-work-header{align-items:flex-start;flex-direction:column}.hr-work-header-actions{width:100%;justify-content:flex-start}.hr-work-search{min-width:min(100%,320px);flex:1}.hr-work-filter-grid{grid-template-columns:repeat(2,minmax(140px,1fr))}.hr-task-table th:nth-child(5),.hr-task-table td:nth-child(5),.hr-task-table th:nth-child(6),.hr-task-table td:nth-child(6){display:none}}
@media(max-width:700px){.hr-work-summary{grid-template-columns:1fr 1fr}.hr-work-desktop-table,.hr-work-table-actions>label{display:none}.hr-work-mobile-list{display:grid;gap:9px}.hr-work-mobile-card{display:grid;gap:10px;padding:12px;border:1px solid var(--border);border-radius:11px;background:var(--surface)}.hr-work-mobile-card.is-overdue{border-left:3px solid #dc2626}.hr-work-mobile-card header{display:flex;justify-content:space-between;gap:8px}.hr-work-mobile-card dl{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin:0}.hr-work-mobile-card dl>div{display:grid;gap:2px}.hr-work-mobile-card dt{font-size:.62rem;color:var(--muted);font-weight:800;text-transform:uppercase}.hr-work-mobile-card dd{margin:0;font-size:.73rem}.hr-work-filter-grid{grid-template-columns:1fr}.hr-work-table-actions{justify-content:flex-end}.hr-work-detail-summary dl{grid-template-columns:1fr 1fr}.hr-work-history li{grid-template-columns:1fr}.hr-work-history small{grid-column:auto}}
@media(max-width:480px){.hr-work-summary{grid-template-columns:1fr}.hr-work-header-actions>.hr-button{flex:1}.hr-work-search{min-width:100%;width:100%}.hr-work-detail-summary dl{grid-template-columns:1fr}.hr-work-mobile-card dl{grid-template-columns:1fr}.hr-work-tabs button{min-height:44px}.hr-work-summary-card{min-height:76px}}
@media(prefers-reduced-motion:reduce){.hr-work-detail-panel,.hr-filter-toggle i{transition:none!important}}

/* Phase 10 - configuration sobre des règles automatiques */
.hr-work-rules-panel {
  position: fixed;
  inset: 0 0 0 auto;
  z-index: 1200;
  width: min(720px, 96vw);
  height: 100dvh;
  overflow: auto;
  background: #fff;
  border-left: 1px solid #d7dee7;
  box-shadow: -10px 0 28px rgba(15, 23, 42, .12);
  padding: 1rem;
}
.hr-work-rules-panel[hidden] { display: none !important; }
.hr-work-rules-head {
  position: sticky;
  top: -1rem;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin: -1rem -1rem .8rem;
  padding: 1rem;
  background: rgba(255,255,255,.97);
  border-bottom: 1px solid #e2e8f0;
}
.hr-work-rules-head span { color: #64748b; font-size: .78rem; text-transform: uppercase; letter-spacing: .04em; }
.hr-work-rules-head h3 { margin: .15rem 0 0; }
.hr-work-rules-note { margin: 0 0 1rem; color: #475569; font-size: .9rem; }
.hr-work-rules-list { display: grid; gap: .7rem; }
.hr-work-rule-row {
  display: grid;
  grid-template-columns: minmax(220px, 1.7fr) minmax(90px, .65fr) minmax(130px, .8fr) minmax(145px, .9fr) auto;
  align-items: end;
  gap: .65rem;
  padding: .8rem;
  border: 1px solid #e2e8f0;
  border-radius: 8px;
  background: #fbfcfe;
}
.hr-work-rule-row label { display: grid; gap: .35rem; min-width: 0; }
.hr-work-rule-row label > span { font-size: .78rem; color: #475569; }
.hr-work-rule-enabled { grid-template-columns: auto 1fr !important; align-items: center; }
.hr-work-rule-enabled input { width: 1.1rem; height: 1.1rem; }
.hr-work-rule-enabled span { display: grid; gap: .15rem; }
.hr-work-rule-enabled strong { color: #172033; font-size: .9rem; }
.hr-work-rule-enabled small { color: #64748b; overflow-wrap: anywhere; }
@media (max-width: 820px) {
  .hr-work-rule-row { grid-template-columns: 1fr 1fr; align-items: end; }
  .hr-work-rule-enabled { grid-column: 1 / -1; }
}
@media (max-width: 520px) {
  .hr-work-rules-panel { width: 100vw; }
  .hr-work-rule-row { grid-template-columns: 1fr; }
  .hr-work-rule-enabled { grid-column: auto; }
  .hr-work-rule-row .hr-button { width: 100%; min-height: 44px; }
}

/* Phase 12 — Bibliothèque professionnelle des modèles de documents RH */
#hrSystemRoot .hr-document-library{display:grid;gap:14px;min-width:0}
#hrSystemRoot .hr-library-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--hr-border);border-radius:10px;background:linear-gradient(135deg,color-mix(in srgb,var(--hr-primary) 7%,var(--hr-panel)),var(--hr-panel));box-shadow:0 1px 3px rgba(15,23,42,.035)}
#hrSystemRoot .hr-library-hero>div:first-child{min-width:0}
#hrSystemRoot .hr-library-hero span{display:block;margin-bottom:4px;color:var(--hr-primary);font-size:.68rem;font-weight:850;letter-spacing:.075em;text-transform:uppercase}
#hrSystemRoot .hr-library-hero h3{margin:0 0 4px;font-size:1.12rem;line-height:1.28}
#hrSystemRoot .hr-library-hero small{color:var(--hr-muted);font-size:.78rem}
#hrSystemRoot .hr-library-hero-actions{display:flex;align-items:center;gap:8px;flex:0 0 auto}
#hrSystemRoot .hr-library-filter-card{padding-bottom:14px}
#hrSystemRoot .hr-library-filters{display:grid;grid-template-columns:minmax(210px,1.5fr) repeat(3,minmax(135px,.8fr)) auto;gap:10px;align-items:end}
#hrSystemRoot .hr-library-filters label,#hrSystemRoot .hr-template-editor-form label,#hrSystemRoot .hr-template-editor-settings label{display:grid;gap:5px;min-width:0}
#hrSystemRoot .hr-library-filters label>span,#hrSystemRoot .hr-template-editor-form label>span,#hrSystemRoot .hr-template-editor-settings label>span{font-size:.71rem;font-weight:800;color:var(--hr-text)}
#hrSystemRoot .hr-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(265px,1fr));gap:12px}
#hrSystemRoot .hr-library-template-card{display:grid;grid-template-rows:168px minmax(0,1fr);overflow:hidden;border:1px solid var(--hr-border);border-radius:9px;background:var(--hr-panel);box-shadow:0 1px 3px rgba(15,23,42,.035);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
#hrSystemRoot .hr-library-template-card:hover{border-color:color-mix(in srgb,var(--hr-primary) 38%,var(--hr-border));box-shadow:0 4px 12px rgba(15,23,42,.07);transform:translateY(-1px)}
#hrSystemRoot .hr-library-thumbnail{display:grid;place-items:center;width:100%;min-height:168px;padding:12px;border:0;border-bottom:1px solid var(--hr-border);border-radius:0;background:color-mix(in srgb,var(--hr-bg) 75%,#eef2f1);cursor:pointer}
#hrSystemRoot .hr-library-thumbnail:focus-visible{outline:3px solid color-mix(in srgb,var(--hr-primary) 28%,transparent);outline-offset:-3px}
#hrSystemRoot .hr-library-paper{position:relative;display:flex;flex-direction:column;width:108px;height:143px;padding:18px 10px 10px;border:1px solid #d6d9dc;background:#fff;color:#17211e;box-shadow:0 4px 10px rgba(15,23,42,.11);text-align:left}
#hrSystemRoot .hr-library-paper::before{content:"";position:absolute;inset:8px;border-top:2px solid color-mix(in srgb,var(--hr-primary) 60%,#fff);border-bottom:1px solid #dfe4e2;pointer-events:none}
#hrSystemRoot .hr-library-paper small{position:relative;z-index:1;margin-bottom:18px;color:#a23b3b;font-size:.42rem;font-weight:900;letter-spacing:.035em}
#hrSystemRoot .hr-library-paper strong{position:relative;z-index:1;display:-webkit-box;overflow:hidden;color:#15211d;font-size:.62rem;line-height:1.25;-webkit-line-clamp:3;-webkit-box-orient:vertical}
#hrSystemRoot .hr-library-paper i{position:relative;z-index:1;margin-top:auto;color:#66716d;font-size:.48rem;font-style:normal}
#hrSystemRoot .hr-library-paper b{position:absolute;right:10px;bottom:10px;z-index:1;color:var(--hr-primary);font-size:.54rem}
#hrSystemRoot .hr-library-template-body{display:flex;flex-direction:column;gap:10px;padding:13px}
#hrSystemRoot .hr-library-template-title{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}
#hrSystemRoot .hr-library-template-title>div{min-width:0}
#hrSystemRoot .hr-library-template-title small{display:block;margin-bottom:3px;color:var(--hr-muted);font-size:.62rem;font-weight:780;text-transform:uppercase}
#hrSystemRoot .hr-library-template-title h3{display:-webkit-box;overflow:hidden;margin:0;font-size:.86rem;line-height:1.28;-webkit-line-clamp:2;-webkit-box-orient:vertical}
#hrSystemRoot .hr-library-template-body dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}
#hrSystemRoot .hr-library-template-body dl div{min-width:0;padding:6px;border:1px solid color-mix(in srgb,var(--hr-border) 75%,transparent);border-radius:6px;background:color-mix(in srgb,var(--hr-bg) 65%,var(--hr-panel))}
#hrSystemRoot .hr-library-template-body dt{color:var(--hr-muted);font-size:.55rem;font-weight:800;text-transform:uppercase}
#hrSystemRoot .hr-library-template-body dd{overflow:hidden;margin:2px 0 0;font-size:.65rem;font-weight:730;text-overflow:ellipsis;white-space:nowrap}
#hrSystemRoot .hr-library-formats{display:flex;flex-wrap:wrap;gap:5px}
#hrSystemRoot .hr-library-formats span{padding:3px 6px;border:1px solid var(--hr-border);border-radius:5px;background:var(--hr-bg);font-size:.57rem;font-weight:850;letter-spacing:.035em}
#hrSystemRoot .hr-library-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}
#hrSystemRoot .hr-library-actions .hr-button{min-height:34px;padding:6px 8px;font-size:.66rem}
#hrSystemRoot .hr-library-preview-frame{display:block;width:100%;height:min(72vh,920px);border:1px solid var(--hr-border);border-radius:7px;background:#dfe3e2}
#hrSystemRoot .hr-preview-modes{display:flex;gap:6px;margin-bottom:10px}
#hrSystemRoot .hr-preview-modes .is-active{border-color:var(--hr-primary);background:color-mix(in srgb,var(--hr-primary) 8%,var(--hr-panel));color:var(--hr-primary)}
#hrSystemRoot .hr-template-editor-layout{display:grid;grid-template-columns:minmax(230px,290px) minmax(0,1fr);gap:14px;min-height:620px}
#hrSystemRoot .hr-template-editor-tools{display:flex;flex-direction:column;gap:12px;padding:12px;border:1px solid var(--hr-border);border-radius:8px;background:color-mix(in srgb,var(--hr-bg) 72%,var(--hr-panel));overflow:auto}
#hrSystemRoot .hr-template-editor-tools h4{margin:0;font-size:.76rem}
#hrSystemRoot .hr-template-editor-form,#hrSystemRoot .hr-template-editor-settings{display:grid;gap:9px}
#hrSystemRoot .hr-template-editor-settings{grid-template-columns:1fr 1fr}
#hrSystemRoot .hr-template-editor-tools .hr-button{justify-content:flex-start;width:100%}
#hrSystemRoot .hr-rich-inline-editor{display:grid;grid-template-columns:1fr auto;gap:6px;align-items:end}
#hrSystemRoot .hr-visual-document-editor-wrap{display:grid;place-items:start center;overflow:auto;padding:18px;border:1px solid var(--hr-border);border-radius:8px;background:#dfe4e2}
#hrSystemRoot .hr-visual-document-editor{width:min(100%,794px);min-height:1123px;padding:68px 60px;border:1px solid #cfd4d2;background:#fff;color:#1f2937;box-shadow:0 8px 22px rgba(15,23,42,.13);font-family:Arial,sans-serif;font-size:13px;line-height:1.55;outline:none}
#hrSystemRoot .hr-visual-document-editor:focus{border-color:color-mix(in srgb,var(--hr-primary) 65%,#cfd4d2);box-shadow:0 0 0 3px color-mix(in srgb,var(--hr-primary) 18%,transparent),0 8px 22px rgba(15,23,42,.13)}
#hrSystemRoot .hr-visual-document-editor[data-hr-dirty="1"]{border-color:#c78024}
#hrSystemRoot .hr-visual-document-editor h1{text-align:center;font-size:21px;text-transform:uppercase}
#hrSystemRoot .hr-visual-document-editor h2{margin-top:20px;border-bottom:1px solid #d7dcda;font-size:15px}
#hrSystemRoot .hr-visual-document-editor table{width:100%;border-collapse:collapse}
#hrSystemRoot .hr-visual-document-editor th,#hrSystemRoot .hr-visual-document-editor td{padding:7px;border:1px solid #aeb7b3}
#hrSystemRoot .hr-field-error ul{margin:7px 0 0;padding-left:20px}
#hrSystemRoot .hr-library-template-card .hr-badge{flex:0 0 auto}
#hrSystemRoot .hr-library-grid>.hr-empty-state{grid-column:1/-1}
@media(max-width:1100px){
 #hrSystemRoot .hr-library-filters{grid-template-columns:repeat(2,minmax(0,1fr))}
 #hrSystemRoot .hr-library-filters .hr-button{width:100%}
 #hrSystemRoot .hr-template-editor-layout{grid-template-columns:1fr}
 #hrSystemRoot .hr-template-editor-tools{max-height:none}
}
@media(max-width:760px){
 #hrSystemRoot .hr-library-hero{align-items:stretch;flex-direction:column;padding:14px}
 #hrSystemRoot .hr-library-hero-actions{width:100%}
 #hrSystemRoot .hr-library-hero-actions .hr-button{flex:1}
 #hrSystemRoot .hr-library-filters{grid-template-columns:1fr}
 #hrSystemRoot .hr-library-grid{grid-template-columns:1fr}
 #hrSystemRoot .hr-library-template-card{grid-template-columns:110px minmax(0,1fr);grid-template-rows:auto}
 #hrSystemRoot .hr-library-thumbnail{min-height:100%;padding:10px;border-right:1px solid var(--hr-border);border-bottom:0}
 #hrSystemRoot .hr-library-paper{width:82px;height:112px;padding:14px 8px 8px}
 #hrSystemRoot .hr-library-paper small{margin-bottom:11px;font-size:.35rem}
 #hrSystemRoot .hr-library-template-body dl{grid-template-columns:1fr}
 #hrSystemRoot .hr-library-actions .hr-button{min-height:42px;flex:1 1 43%}
 #hrSystemRoot .hr-template-editor-settings{grid-template-columns:1fr}
 #hrSystemRoot .hr-visual-document-editor-wrap{padding:8px}
 #hrSystemRoot .hr-visual-document-editor{min-height:760px;padding:38px 28px;font-size:12px}
 #hrSystemRoot .hr-library-preview-frame{height:70vh}
}
@media(max-width:480px){
 #hrSystemRoot .hr-library-template-card{grid-template-columns:1fr}
 #hrSystemRoot .hr-library-thumbnail{min-height:135px;border-right:0;border-bottom:1px solid var(--hr-border)}
 #hrSystemRoot .hr-library-paper{width:92px;height:122px}
 #hrSystemRoot .hr-library-template-body{padding:11px}
 #hrSystemRoot .hr-library-actions .hr-button{flex:1 1 100%}
 #hrSystemRoot .hr-preview-modes{display:grid;grid-template-columns:1fr 1fr}
 #hrSystemRoot .hr-rich-inline-editor{grid-template-columns:1fr}
}

/* Phase 13 — chargement progressif des rubriques RH */
.hr-lazy-loading {
  min-height: 150px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 14px;
  color: var(--hr-text, #243447);
}
.hr-lazy-loading > div:last-child { display: grid; gap: 4px; }
.hr-lazy-loading span { color: var(--hr-muted, #667085); font-size: .9rem; }
.hr-loading-spinner {
  width: 28px;
  height: 28px;
  border: 3px solid rgba(31, 78, 121, .16);
  border-top-color: rgba(31, 78, 121, .72);
  border-radius: 50%;
  animation: hr-lazy-spin .75s linear infinite;
}
@keyframes hr-lazy-spin { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) { .hr-loading-spinner { animation: none; } }

/* Interface RH native Phase 25 */
:root {
  --hr15-bg: #f5f7fa;
  --hr15-surface: #ffffff;
  --hr15-surface-soft: #f9fafb;
  --hr15-text: #172033;
  --hr15-muted: #667085;
  --hr15-border: #d7dde7;
  --hr15-border-strong: #aeb8c8;
  --hr15-primary: #225b8f;
  --hr15-primary-soft: #eaf2f9;
  --hr15-positive: #2f7d55;
  --hr15-positive-soft: #eaf6ef;
  --hr15-warning: #a45b0a;
  --hr15-warning-soft: #fff4df;
  --hr15-critical: #b42318;
  --hr15-critical-soft: #fef0ef;
  --hr15-radius: 10px;
  --hr15-shadow: 0 1px 3px rgba(16, 24, 40, .08);
}

#hrSystemRoot { min-height: 440px; color: var(--hr15-text); }
#hrSystemRoot *, #hrSystemRoot *::before, #hrSystemRoot *::after { box-sizing: border-box; }
.hr15-shell { min-height: 540px; background: var(--hr15-bg); border: 1px solid var(--hr15-border); border-radius: var(--hr15-radius); overflow: hidden; }
.hr15-header { display: flex; align-items: flex-start; justify-content: space-between; gap: 20px; padding: 18px 20px; background: var(--hr15-surface); border-bottom: 1px solid var(--hr15-border); }
.hr15-header h2 { margin: 2px 0 4px; font-size: clamp(1.25rem, 2vw, 1.65rem); line-height: 1.2; }
.hr15-header p { margin: 0; color: var(--hr15-muted); font-size: .92rem; max-width: 760px; }
.hr15-kicker { color: var(--hr15-primary) !important; font-size: .72rem !important; font-weight: 750; letter-spacing: .08em; text-transform: uppercase; }
.hr15-header-actions { display: flex; align-items: flex-end; justify-content: flex-end; gap: 10px; flex-wrap: wrap; }
.hr15-company-select, .hr15-filter-bar label { display: grid; gap: 5px; min-width: 150px; }
.hr15-company-select span, .hr15-filter-bar label > span { color: var(--hr15-muted); font-size: .74rem; font-weight: 650; }
.hr15-company-select select, .hr15-filter-bar input, .hr15-filter-bar select {
  min-height: 40px; width: 100%; padding: 8px 10px; color: var(--hr15-text); background: #fff;
  border: 1px solid var(--hr15-border); border-radius: 7px; outline: none;
}
.hr15-company-select select:hover, .hr15-filter-bar input:hover, .hr15-filter-bar select:hover { border-color: var(--hr15-border-strong); }
.hr15-company-select select:focus, .hr15-filter-bar input:focus, .hr15-filter-bar select:focus { border-color: var(--hr15-primary); box-shadow: 0 0 0 3px rgba(34, 91, 143, .12); }
.hr15-updated { color: var(--hr15-muted); font-size: .78rem; padding-bottom: 10px; white-space: nowrap; }
.hr15-button, .hr15-space-card, .hr15-nav-space, .hr15-back-home, .hr15-sub-toggle, .hr15-sub-link, .hr15-metric { touch-action: manipulation; }
.hr15-button { min-height: 40px; padding: 8px 13px; border: 1px solid var(--hr15-border); border-radius: 7px; background: #fff; color: var(--hr15-text); font: inherit; font-size: .86rem; font-weight: 650; cursor: pointer; }
.hr15-button:hover { border-color: var(--hr15-border-strong); background: var(--hr15-surface-soft); }
.hr15-button:focus-visible { outline: 3px solid rgba(34, 91, 143, .2); outline-offset: 2px; }
.hr15-button:disabled { opacity: .48; cursor: not-allowed; }
.hr15-button-primary { background: var(--hr15-primary); border-color: var(--hr15-primary); color: #fff; }
.hr15-button-primary:hover { background: #194b78; border-color: #194b78; }

.hr15-home-summary { display: flex; align-items: center; justify-content: space-between; gap: 14px; padding: 12px 20px; border-bottom: 1px solid var(--hr15-border); background: var(--hr15-surface-soft); color: var(--hr15-muted); font-size: .88rem; }
.hr15-home-summary strong { color: var(--hr15-text); font-size: 1.05rem; margin-right: 5px; }
.hr15-space-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 14px; padding: 18px; }
.hr15-space-card { display: grid; grid-template-columns: 44px 1fr auto; align-items: start; gap: 13px; min-height: 190px; padding: 17px; text-align: left; color: var(--hr15-text); background: var(--hr15-surface); border: 1px solid var(--hr15-border); border-radius: 9px; box-shadow: var(--hr15-shadow); cursor: pointer; font: inherit; }
.hr15-space-card:hover { border-color: var(--hr15-primary); transform: translateY(-1px); }
.hr15-space-card:focus-visible { outline: 3px solid rgba(34, 91, 143, .18); outline-offset: 2px; }
.hr15-space-icon { display: grid; place-items: center; width: 42px; height: 42px; border-radius: 8px; background: var(--hr15-primary-soft); color: var(--hr15-primary); font-size: 1.25rem; font-weight: 800; }
.hr15-space-card > i { color: var(--hr15-primary); font-size: 1.5rem; font-style: normal; }
.hr15-space-card-title { display: flex; align-items: flex-start; justify-content: space-between; gap: 8px; }
.hr15-space-card-title h3 { margin: 0; font-size: 1rem; line-height: 1.35; }
.hr15-space-card-title b { flex: 0 0 auto; padding: 4px 7px; border-radius: 999px; background: var(--hr15-warning-soft); color: var(--hr15-warning); font-size: .68rem; }
.hr15-space-card-title b.is-neutral { background: #eef1f5; color: var(--hr15-muted); }
.hr15-space-card p { margin: 10px 0 14px; color: var(--hr15-muted); font-size: .82rem; line-height: 1.45; }
.hr15-space-metrics { display: flex; flex-wrap: wrap; gap: 8px; }
.hr15-space-metrics span { display: grid; gap: 1px; min-width: 90px; color: var(--hr15-muted); font-size: .69rem; }
.hr15-space-metrics strong { color: var(--hr15-text); font-size: .95rem; }
.hr15-performance { padding: 9px 18px 14px; color: var(--hr15-muted); font-size: .73rem; text-align: right; }

.hr15-space-shell { display: grid; grid-template-columns: 250px minmax(0, 1fr); }
.hr15-main-nav { min-height: 620px; background: #182434; color: #fff; border-right: 1px solid #243448; padding: 14px 10px; }
.hr15-main-nav-head { display: flex; align-items: center; gap: 10px; padding: 7px 8px 14px; border-bottom: 1px solid rgba(255,255,255,.12); }
.hr15-main-nav-head > span { display: grid; place-items: center; width: 36px; height: 36px; border-radius: 7px; background: #fff; color: #182434; font-weight: 850; }
.hr15-main-nav-head div { display: grid; gap: 2px; }
.hr15-main-nav-head small { color: #b7c1ce; font-size: .72rem; }
.hr15-back-home { width: 100%; min-height: 40px; margin: 12px 0 8px; border: 1px solid rgba(255,255,255,.22); border-radius: 7px; background: transparent; color: #fff; font-weight: 650; cursor: pointer; }
.hr15-main-nav nav { display: grid; gap: 4px; }
.hr15-nav-space { display: grid; grid-template-columns: 26px 1fr auto; align-items: center; gap: 8px; width: 100%; min-height: 48px; padding: 8px 9px; border: 1px solid transparent; border-radius: 7px; background: transparent; color: #dbe2eb; text-align: left; font: inherit; font-size: .78rem; cursor: pointer; }
.hr15-nav-space:hover, .hr15-nav-space.active { background: rgba(255,255,255,.09); border-color: rgba(255,255,255,.16); color: #fff; }
.hr15-nav-space > span:first-child { font-size: 1rem; text-align: center; }
.hr15-nav-space i { font-style: normal; }
.hr15-content { min-width: 0; }

.hr15-space-layout { display: grid; grid-template-columns: 235px minmax(0, 1fr); gap: 14px; padding: 14px; }
.hr15-subnav { align-self: start; position: sticky; top: 10px; background: var(--hr15-surface); border: 1px solid var(--hr15-border); border-radius: 8px; overflow: hidden; box-shadow: var(--hr15-shadow); }
.hr15-subnav-title { display: flex; align-items: center; gap: 10px; padding: 13px; border-bottom: 1px solid var(--hr15-border); }
.hr15-subnav-title > span { display: grid; place-items: center; width: 34px; height: 34px; border-radius: 7px; background: var(--hr15-primary-soft); color: var(--hr15-primary); }
.hr15-subnav-title div { display: grid; gap: 2px; }
.hr15-subnav-title strong { font-size: .83rem; line-height: 1.3; }
.hr15-subnav-title small { color: var(--hr15-muted); font-size: .67rem; }
.hr15-subgroup + .hr15-subgroup { border-top: 1px solid var(--hr15-border); }
.hr15-sub-toggle { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 44px; padding: 9px 12px; border: 0; background: #fff; color: var(--hr15-text); font: inherit; font-size: .78rem; font-weight: 750; cursor: pointer; }
.hr15-sub-toggle i { width: 8px; height: 8px; border-right: 1.5px solid currentColor; border-bottom: 1.5px solid currentColor; transform: rotate(45deg); transition: transform .18s ease; }
.hr15-subgroup.is-open .hr15-sub-toggle i { transform: rotate(225deg); }
.hr15-sub-panel { padding: 3px 7px 8px; background: var(--hr15-surface-soft); }
.hr15-sub-link { display: flex; align-items: center; justify-content: space-between; width: 100%; min-height: 38px; padding: 7px 8px; border: 0; border-radius: 6px; background: transparent; color: #344054; font: inherit; font-size: .75rem; text-align: left; cursor: pointer; }
.hr15-sub-link:hover { background: var(--hr15-primary-soft); color: var(--hr15-primary); }
.hr15-sub-link i { font-style: normal; }
.hr15-space-main { min-width: 0; display: grid; gap: 13px; align-content: start; }
.hr15-metrics { display: grid; grid-template-columns: repeat(4, minmax(0, 1fr)); gap: 10px; }
.hr15-metric { position: relative; display: grid; grid-template-columns: 8px 1fr; grid-template-rows: auto auto; column-gap: 9px; min-height: 88px; padding: 13px; border: 1px solid var(--hr15-border); border-radius: 8px; background: #fff; color: var(--hr15-text); text-align: left; font: inherit; cursor: pointer; }
.hr15-metric-state { grid-row: 1 / span 2; align-self: stretch; width: 5px; border-radius: 4px; background: #98a2b3; }
.hr15-metric strong { font-size: 1.35rem; line-height: 1.1; }
.hr15-metric > span:last-child { color: var(--hr15-muted); font-size: .74rem; }
.hr15-tone-positive .hr15-metric-state { background: var(--hr15-positive); }
.hr15-tone-warning .hr15-metric-state { background: #d97706; }
.hr15-tone-critical .hr15-metric-state { background: var(--hr15-critical); }
.hr15-tone-primary .hr15-metric-state { background: var(--hr15-primary); }
.hr15-panel { background: #fff; border: 1px solid var(--hr15-border); border-radius: 8px; box-shadow: var(--hr15-shadow); overflow: hidden; }
.hr15-panel-head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 13px 15px; border-bottom: 1px solid var(--hr15-border); }
.hr15-panel-head h3 { margin: 0; font-size: 1rem; }
.hr15-panel-head p { margin: 3px 0 0; color: var(--hr15-muted); font-size: .76rem; }
.hr15-filter-bar { display: grid; grid-template-columns: minmax(200px, 1.5fr) repeat(4, minmax(120px, .7fr)) auto; gap: 9px; align-items: end; padding: 12px 15px; background: var(--hr15-surface-soft); border-bottom: 1px solid var(--hr15-border); }
.hr15-warning { display: flex; align-items: flex-start; gap: 8px; margin: 12px 15px 0; padding: 10px 12px; border: 1px solid #f5d7a3; border-radius: 7px; background: var(--hr15-warning-soft); color: #7a4708; font-size: .76rem; line-height: 1.45; }
.hr15-warning strong { flex: 0 0 auto; }
.hr15-search { min-width: 210px !important; }
.hr15-table-wrap { width: 100%; overflow: auto; }
.hr15-table { width: 100%; border-collapse: collapse; font-size: .78rem; }
.hr15-table th { padding: 10px 11px; color: #475467; background: #f8fafc; border-bottom: 1px solid var(--hr15-border); text-align: left; font-weight: 750; white-space: nowrap; }
.hr15-table td { padding: 10px 11px; border-bottom: 1px solid #e8ecf2; vertical-align: middle; }
.hr15-table tbody tr:hover { background: #fbfcfe; }
.hr15-badge { display: inline-flex; align-items: center; min-height: 24px; padding: 3px 7px; border-radius: 999px; background: #eef1f5; color: #475467; font-size: .68rem; font-weight: 700; white-space: nowrap; }
.hr15-badge-critical, .hr15-badge-rejected, .hr15-badge-blocked { background: var(--hr15-critical-soft); color: var(--hr15-critical); }
.hr15-badge-urgent, .hr15-badge-warning, .hr15-badge-submitted, .hr15-badge-to_review, .hr15-badge-draft, .hr15-badge-incomplete, .hr15-badge-to_sign { background: var(--hr15-warning-soft); color: var(--hr15-warning); }
.hr15-badge-positive, .hr15-badge-completed, .hr15-badge-validated, .hr15-badge-signed, .hr15-badge-active, .hr15-badge-paid { background: var(--hr15-positive-soft); color: var(--hr15-positive); }
.hr15-badge-primary, .hr15-badge-in_progress, .hr15-badge-open, .hr15-badge-approved { background: var(--hr15-primary-soft); color: var(--hr15-primary); }
.hr15-pagination { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 11px 15px; color: var(--hr15-muted); font-size: .77rem; }
.hr15-pagination > div { display: flex; align-items: center; gap: 9px; }
.hr15-empty { padding: 30px 12px; color: var(--hr15-muted); text-align: center; }
.hr15-boot, .hr15-skeleton, .hr15-error { min-height: 360px; display: grid; place-content: center; justify-items: center; gap: 10px; padding: 24px; background: #fff; color: var(--hr15-muted); }
.hr15-boot > span { width: 30px; height: 30px; border: 3px solid #d9e1ea; border-top-color: var(--hr15-primary); border-radius: 50%; animation: hr15-spin .7s linear infinite; }
@keyframes hr15-spin { to { transform: rotate(360deg); } }
.hr15-skeleton { place-content: stretch; justify-items: stretch; }
.hr15-skeleton-line, .hr15-skeleton-cards span, .hr15-skeleton-table span { display: block; border-radius: 6px; background: linear-gradient(90deg, #edf0f4 25%, #f8f9fb 50%, #edf0f4 75%); background-size: 200% 100%; animation: hr15-shimmer 1.2s infinite; }
.hr15-skeleton-line.is-title { width: 38%; height: 28px; }
.hr15-skeleton-cards { display: grid; grid-template-columns: repeat(4, 1fr); gap: 10px; }
.hr15-skeleton-cards span { height: 82px; }
.hr15-skeleton-table { display: grid; gap: 7px; }
.hr15-skeleton-table span { height: 38px; }
.hr15-skeleton p { text-align: center; }
@keyframes hr15-shimmer { to { background-position: -200% 0; } }
.hr15-error strong { color: var(--hr15-critical); }
.hr15-error span { max-width: 540px; text-align: center; }

@media (max-width: 1180px) {
  .hr15-space-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hr15-filter-bar { grid-template-columns: repeat(3, minmax(150px, 1fr)); }
  .hr15-metrics { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .hr15-space-layout { grid-template-columns: 210px minmax(0, 1fr); }
}
@media (max-width: 900px) {
  .hr15-header { flex-direction: column; }
  .hr15-header-actions { width: 100%; justify-content: flex-start; }
  .hr15-space-shell { grid-template-columns: 1fr; }
  .hr15-main-nav { min-height: auto; padding: 10px; border-right: 0; border-bottom: 1px solid #243448; }
  .hr15-main-nav nav { grid-template-columns: repeat(3, minmax(0,1fr)); }
  .hr15-nav-space { min-height: 50px; grid-template-columns: 24px 1fr; }
  .hr15-nav-space i { display: none; }
  .hr15-space-layout { grid-template-columns: 1fr; }
  .hr15-subnav { position: static; }
  .hr15-subnav-title { display: none; }
}
@media (max-width: 680px) {
  .hr15-shell { border-radius: 0; border-left: 0; border-right: 0; }
  .hr15-space-grid { grid-template-columns: 1fr; padding: 10px; }
  .hr15-space-card { min-height: 150px; padding: 14px; }
  .hr15-home-summary { align-items: flex-start; flex-direction: column; padding: 10px 14px; }
  .hr15-main-nav nav { grid-template-columns: 1fr 1fr; }
  .hr15-nav-space { font-size: .72rem; }
  .hr15-header { padding: 14px; }
  .hr15-header-actions { display: grid; grid-template-columns: 1fr 1fr; align-items: end; }
  .hr15-company-select { grid-column: 1 / -1; }
  .hr15-updated { padding: 0; align-self: center; }
  .hr15-space-layout { padding: 9px; }
  .hr15-metrics { grid-template-columns: 1fr 1fr; }
  .hr15-filter-bar { grid-template-columns: 1fr 1fr; padding: 10px; }
  .hr15-filter-bar .hr15-search { grid-column: 1 / -1; }
  .hr15-table-wrap { overflow: visible; }
  .hr15-table, .hr15-table thead, .hr15-table tbody, .hr15-table tr, .hr15-table td { display: block; width: 100%; }
  .hr15-table thead { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
  .hr15-table tbody { display: grid; gap: 9px; padding: 10px; }
  .hr15-table tr { padding: 10px; border: 1px solid var(--hr15-border); border-radius: 8px; background: #fff; }
  .hr15-table td { display: grid; grid-template-columns: minmax(100px, 42%) 1fr; gap: 8px; padding: 7px 2px; border-bottom: 1px solid #edf0f4; }
  .hr15-table td:last-child { border-bottom: 0; }
  .hr15-table td::before { content: attr(data-label); color: var(--hr15-muted); font-size: .7rem; font-weight: 750; }
  .hr15-pagination { align-items: stretch; flex-direction: column; }
  .hr15-pagination > div { justify-content: space-between; }
}
@media (max-width: 420px) {
  .hr15-main-nav nav, .hr15-metrics, .hr15-filter-bar, .hr15-header-actions { grid-template-columns: 1fr; }
  .hr15-filter-bar .hr15-search, .hr15-company-select { grid-column: auto; }
  .hr15-space-card { grid-template-columns: 38px 1fr; }
  .hr15-space-card > i { display: none; }
  .hr15-space-card-title { flex-direction: column; }
}
@media (prefers-reduced-motion: reduce) {
  .hr15-space-card, .hr15-sub-toggle i, .hr15-boot > span, .hr15-skeleton-line, .hr15-skeleton-cards span, .hr15-skeleton-table span { transition: none; animation: none; }
}

.hr15-sub-link.is-active,
.hr15-sub-link[aria-current="page"] {
  background: var(--hr15-primary-soft);
  color: var(--hr15-primary);
  font-weight: 750;
  box-shadow: inset 3px 0 0 var(--hr15-primary);
}
.hr15-detail-backdrop {
  position: fixed;
  inset: 0;
  z-index: 1190;
  background: rgba(15, 23, 42, .28);
}
.hr15-detail-panel {
  position: fixed;
  z-index: 1200;
  top: 0;
  right: 0;
  width: min(440px, 94vw);
  height: 100dvh;
  display: grid;
  grid-template-rows: auto 1fr auto;
  background: #fff;
  border-left: 1px solid var(--hr15-border);
  box-shadow: -12px 0 32px rgba(15, 23, 42, .12);
  animation: hr15-detail-in .16s ease-out;
}
.hr15-detail-panel > header,
.hr15-detail-panel > footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 16px;
  border-bottom: 1px solid var(--hr15-border);
}
.hr15-detail-panel > footer { border-top: 1px solid var(--hr15-border); border-bottom: 0; justify-content: flex-end; }
.hr15-detail-panel h3 { margin: 2px 0 0; color: var(--hr15-text); }
.hr15-detail-close {
  width: 40px;
  height: 40px;
  border: 1px solid var(--hr15-border);
  border-radius: 7px;
  background: #fff;
  color: var(--hr15-text);
  font-size: 1.4rem;
  cursor: pointer;
}
.hr15-detail-list {
  min-height: 0;
  overflow: auto;
  margin: 0;
  padding: 14px 16px;
}
.hr15-detail-list > div {
  display: grid;
  grid-template-columns: minmax(115px, 38%) 1fr;
  gap: 12px;
  padding: 10px 0;
  border-bottom: 1px solid #edf0f4;
}
.hr15-detail-list dt { color: var(--hr15-muted); font-size: .72rem; font-weight: 750; text-transform: capitalize; }
.hr15-detail-list dd { margin: 0; color: var(--hr15-text); overflow-wrap: anywhere; }
@keyframes hr15-detail-in { from { transform: translateX(16px); opacity: .4; } to { transform: translateX(0); opacity: 1; } }
@media (prefers-reduced-motion: reduce) { .hr15-detail-panel { animation: none; } }

/* Phase 17 — Bibliothèque des 304 modèles dans la nouvelle interface RH */
.hr17-library-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--hr15-border);border-radius:8px;background:linear-gradient(135deg,var(--hr15-primary-soft),#fff);box-shadow:var(--hr15-shadow)}
.hr17-library-hero h3{margin:2px 0 6px;font-size:1.18rem}.hr17-library-hero p{margin:0;color:var(--hr15-muted);font-size:.82rem;line-height:1.5;max-width:760px}
.hr17-library-filters{display:grid;grid-template-columns:minmax(210px,1.45fr) repeat(4,minmax(125px,.7fr));gap:9px;align-items:end;padding:12px 15px;background:var(--hr15-surface-soft);border-bottom:1px solid var(--hr15-border)}
.hr17-library-filters label,.hr17-editor-tools label,.hr17-editor-main label,.hr17-generate-form label{display:grid;gap:5px;min-width:0}.hr17-library-filters label>span,.hr17-editor-tools label>span,.hr17-editor-main label>span,.hr17-generate-form label>span{color:var(--hr15-muted);font-size:.72rem;font-weight:700}
.hr17-library-filters input,.hr17-library-filters select,.hr17-editor-tools input,.hr17-editor-tools select,.hr17-generate-form input,.hr17-generate-form select{width:100%;min-height:40px;padding:8px 10px;border:1px solid var(--hr15-border);border-radius:7px;background:#fff;color:var(--hr15-text);outline:none}
.hr17-library-filters input:focus,.hr17-library-filters select:focus,.hr17-editor-tools input:focus,.hr17-editor-tools select:focus,.hr17-generate-form input:focus,.hr17-generate-form select:focus{border-color:var(--hr15-primary);box-shadow:0 0 0 3px rgba(34,91,143,.12)}
.hr17-library-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:12px;padding:14px}.hr17-library-grid>.hr15-empty{grid-column:1/-1}
.hr17-template-card{display:grid;grid-template-rows:165px minmax(0,1fr);overflow:hidden;border:1px solid var(--hr15-border);border-radius:8px;background:#fff;box-shadow:var(--hr15-shadow)}.hr17-template-card:hover{border-color:var(--hr15-primary)}
.hr17-template-preview{display:grid;place-items:center;width:100%;min-height:165px;padding:12px;border:0;border-bottom:1px solid var(--hr15-border);background:#eef2f5;cursor:pointer}.hr17-template-preview:focus-visible{outline:3px solid rgba(34,91,143,.2);outline-offset:-3px}
.hr17-paper{position:relative;display:flex;flex-direction:column;width:108px;height:142px;padding:18px 10px 10px;border:1px solid #d0d5dd;background:#fff;color:#172033;box-shadow:0 4px 12px rgba(15,23,42,.13);text-align:left}.hr17-paper:before{content:"";position:absolute;inset:8px;border-top:2px solid var(--hr15-primary);border-bottom:1px solid #e4e7ec}.hr17-paper small,.hr17-paper strong,.hr17-paper i,.hr17-paper b{position:relative;z-index:1}.hr17-paper small{margin-bottom:18px;color:#b42318;font-size:.42rem;font-weight:850}.hr17-paper strong{display:-webkit-box;overflow:hidden;font-size:.62rem;line-height:1.25;-webkit-line-clamp:3;-webkit-box-orient:vertical}.hr17-paper i{margin-top:auto;color:#667085;font-size:.48rem;font-style:normal}.hr17-paper b{position:absolute;right:10px;bottom:10px;color:var(--hr15-primary);font-size:.56rem}
.hr17-template-body{display:flex;flex-direction:column;gap:10px;padding:13px}.hr17-template-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.hr17-template-heading>div{min-width:0}.hr17-template-heading small{display:block;margin-bottom:3px;color:var(--hr15-muted);font-size:.62rem;font-weight:750;text-transform:uppercase}.hr17-template-heading h3{display:-webkit-box;overflow:hidden;margin:0;font-size:.88rem;line-height:1.3;-webkit-line-clamp:2;-webkit-box-orient:vertical}.hr17-template-body dl{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px;margin:0}.hr17-template-body dl div{padding:6px;border:1px solid var(--hr15-border);border-radius:6px;background:var(--hr15-surface-soft);min-width:0}.hr17-template-body dt{color:var(--hr15-muted);font-size:.56rem;font-weight:750;text-transform:uppercase}.hr17-template-body dd{overflow:hidden;margin:2px 0 0;font-size:.65rem;font-weight:700;text-overflow:ellipsis;white-space:nowrap}.hr17-formats{display:flex;flex-wrap:wrap;gap:5px}.hr17-formats span{padding:3px 6px;border:1px solid var(--hr15-border);border-radius:5px;background:#fff;font-size:.58rem;font-weight:800}.hr17-actions{display:flex;flex-wrap:wrap;gap:6px;margin-top:auto}.hr17-actions .hr15-button{min-height:34px;padding:6px 8px;font-size:.68rem}
.hr17-modal{position:fixed;z-index:1200;top:4vh;right:4vw;width:min(620px,92vw);max-height:92vh;display:grid;grid-template-rows:auto minmax(0,1fr) auto;overflow:hidden;border:1px solid var(--hr15-border);border-radius:10px;background:#fff;box-shadow:0 24px 65px rgba(15,23,42,.25)}.hr17-modal.is-wide{left:4vw;right:4vw;width:auto}.hr17-modal>header,.hr17-modal>footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px;border-bottom:1px solid var(--hr15-border)}.hr17-modal>footer{justify-content:flex-end;border-top:1px solid var(--hr15-border);border-bottom:0}.hr17-modal h3{margin:2px 0 0}.hr17-modal-body{min-height:0;overflow:auto;padding:14px}.hr17-preview-frame{display:block;width:100%;height:76vh;border:1px solid var(--hr15-border);border-radius:7px;background:#dfe3e7}
.hr17-editor-layout{display:grid;grid-template-columns:minmax(230px,285px) minmax(0,1fr);gap:14px;min-height:68vh}.hr17-editor-tools{display:flex;flex-direction:column;gap:13px;padding:12px;border:1px solid var(--hr15-border);border-radius:8px;background:var(--hr15-surface-soft);overflow:auto}.hr17-editor-tools p,.hr17-help{margin:4px 0 0;color:var(--hr15-muted);font-size:.72rem;line-height:1.45}.hr17-margin-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.hr17-variable-list{display:flex;flex-wrap:wrap;gap:5px;margin-top:7px;max-height:260px;overflow:auto}.hr17-variable-list .hr15-button{min-height:32px;padding:5px 7px;font-size:.66rem}.hr17-editor-main{display:grid;grid-template-rows:auto minmax(460px,1fr) auto;gap:10px;min-width:0}.hr17-rich-editor{min-height:460px;padding:18mm;border:1px solid var(--hr15-border);border-radius:7px;background:#fff;box-shadow:0 3px 12px rgba(15,23,42,.08);outline:none;overflow:auto}.hr17-rich-editor.is-small{min-height:72px;padding:12px}.hr17-rich-editor:focus{border-color:var(--hr15-primary);box-shadow:0 0 0 3px rgba(34,91,143,.12)}
.hr17-generate-form{display:grid;gap:12px}.hr17-info{display:grid;place-items:center;min-height:280px;padding:24px;text-align:center;color:var(--hr15-muted)}.hr17-info strong{color:var(--hr15-text)}
@media(max-width:1100px){.hr17-library-filters{grid-template-columns:repeat(3,minmax(140px,1fr))}.hr17-editor-layout{grid-template-columns:1fr}.hr17-editor-tools{max-height:none}.hr17-rich-editor{min-height:380px;padding:12mm}}
@media(max-width:680px){.hr17-library-hero{flex-direction:column}.hr17-library-filters{grid-template-columns:1fr 1fr}.hr17-library-grid{grid-template-columns:1fr;padding:10px}.hr17-template-card{grid-template-columns:108px minmax(0,1fr);grid-template-rows:auto}.hr17-template-preview{min-height:100%;border-right:1px solid var(--hr15-border);border-bottom:0}.hr17-paper{width:82px;height:112px;padding:14px 8px 8px}.hr17-template-body dl{grid-template-columns:1fr}.hr17-actions .hr15-button{flex:1 1 42%}.hr17-modal,.hr17-modal.is-wide{top:0;left:0;right:0;width:100vw;max-width:none;height:100dvh;max-height:none;border-radius:0}.hr17-preview-frame{height:78vh}.hr17-rich-editor{padding:8mm}}
@media(max-width:420px){.hr17-library-filters{grid-template-columns:1fr}.hr17-template-card{grid-template-columns:1fr}.hr17-template-preview{min-height:135px;border-right:0;border-bottom:1px solid var(--hr15-border)}.hr17-actions .hr15-button{flex:1 1 100%}.hr17-margin-grid{grid-template-columns:1fr}}

/* Phase 18 — Paramétrage RH différencié et variables visibles */
.hr18-config-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:18px 20px;border:1px solid var(--hr15-border);border-radius:9px;background:linear-gradient(135deg,#f3f8fc,#fff);box-shadow:var(--hr15-shadow)}
.hr18-config-hero h3{margin:2px 0 6px;font-size:1.18rem;color:var(--hr15-text)}
.hr18-config-hero p{margin:0;max-width:780px;color:var(--hr15-muted);font-size:.82rem;line-height:1.55}
.hr18-config-status{display:grid;justify-items:end;gap:6px;flex:0 0 auto}.hr18-config-status small{color:var(--hr15-muted);font-size:.68rem}
.hr18-config-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:14px;align-items:start}
.hr18-config-form{display:grid;gap:14px;min-width:0}.hr18-config-form>footer,.hr18-config-footer{display:flex;align-items:center;justify-content:flex-end;gap:10px;padding:13px 15px;border:1px solid var(--hr15-border);border-radius:8px;background:#fff}
.hr18-config-group{overflow:hidden;border:1px solid var(--hr15-border);border-radius:9px;background:#fff;box-shadow:var(--hr15-shadow)}
.hr18-config-group>header{padding:14px 16px;border-bottom:1px solid var(--hr15-border);background:var(--hr15-surface-soft)}
.hr18-config-group>header h4{margin:0;color:var(--hr15-text);font-size:.93rem}.hr18-config-group>header p{margin:4px 0 0;color:var(--hr15-muted);font-size:.73rem;line-height:1.45}
.hr18-config-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:15px}
.hr18-config-field{display:grid;align-content:start;gap:7px;min-width:0;padding:11px;border:1px solid #d8dee7;border-radius:8px;background:#fff}
.hr18-config-field.is-wide{grid-column:1/-1}.hr18-config-field.is-toggle{grid-template-columns:minmax(0,1fr) auto;align-items:center}.hr18-config-field.is-toggle>.hr18-field-label{align-self:center}
.hr18-field-label{display:flex;align-items:flex-start;justify-content:space-between;gap:8px;min-width:0}.hr18-field-label strong{color:var(--hr15-text);font-size:.76rem;line-height:1.3}.hr18-field-label code{max-width:58%;overflow:hidden;padding:2px 5px;border:1px solid #dce5ef;border-radius:5px;background:#f5f8fb;color:#35536c;font-size:.58rem;text-overflow:ellipsis;white-space:nowrap}
.hr18-config-field input:not([type="checkbox"]),.hr18-config-field select,.hr18-config-field textarea,.hr18-table-editor input:not([type="checkbox"]),.hr18-table-editor select,.hr18-modal-form input:not([type="checkbox"]),.hr18-modal-form select,.hr18-modal-form textarea,.hr18-signatory input{width:100%;min-height:40px;padding:8px 10px;border:1px solid #cfd7e3;border-radius:7px;background:#fff;color:var(--hr15-text);font:inherit;outline:none}
.hr18-config-field textarea,.hr18-modal-form textarea{resize:vertical;min-height:88px}
.hr18-config-field input:focus,.hr18-config-field select:focus,.hr18-config-field textarea:focus,.hr18-table-editor input:focus,.hr18-table-editor select:focus,.hr18-modal-form input:focus,.hr18-modal-form select:focus,.hr18-modal-form textarea:focus,.hr18-signatory input:focus{border-color:var(--hr15-primary);box-shadow:0 0 0 3px rgba(34,91,143,.12)}
.hr18-config-field input:disabled,.hr18-config-field select:disabled,.hr18-config-field textarea:disabled,.hr18-table-editor input:disabled,.hr18-table-editor select:disabled{background:#f5f7f9;color:#667085;cursor:not-allowed}
.hr18-input-with-unit{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:stretch}.hr18-input-with-unit>input{border-radius:7px 0 0 7px!important}.hr18-input-with-unit>span{display:grid;place-items:center;min-width:44px;padding:0 9px;border:1px solid #cfd7e3;border-left:0;border-radius:0 7px 7px 0;background:#f5f7fa;color:var(--hr15-muted);font-size:.68rem;font-weight:750}
.hr18-switch{display:inline-grid;grid-template-columns:42px auto;align-items:center;gap:8px;cursor:pointer}.hr18-switch input{position:absolute;opacity:0;pointer-events:none}.hr18-switch>span{position:relative;width:42px;height:24px;border:1px solid #bdc7d4;border-radius:999px;background:#dfe5ec;transition:.15s}.hr18-switch>span:after{content:"";position:absolute;top:3px;left:3px;width:16px;height:16px;border-radius:50%;background:#fff;box-shadow:0 1px 4px rgba(15,23,42,.22);transition:.15s}.hr18-switch input:checked+span{border-color:var(--hr15-primary);background:var(--hr15-primary)}.hr18-switch input:checked+span:after{transform:translateX(18px)}.hr18-switch b{color:var(--hr15-muted);font-size:.7rem}
.hr18-variable-panel{position:sticky;top:12px;overflow:hidden;border:1px solid var(--hr15-border);border-radius:9px;background:#fff;box-shadow:var(--hr15-shadow)}
.hr18-variable-panel>header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;padding:13px 14px;border-bottom:1px solid var(--hr15-border);background:#f3f7fb}.hr18-variable-panel h4{margin:1px 0 0;font-size:.88rem}.hr18-variable-panel>header>span{display:grid;place-items:center;min-width:30px;height:26px;padding:0 7px;border-radius:999px;background:var(--hr15-primary);color:#fff;font-size:.68rem;font-weight:800}
.hr18-variable-grid{display:grid;gap:6px;max-height:430px;overflow:auto;padding:10px}.hr18-variable{display:grid;gap:3px;width:100%;padding:9px 10px;border:1px solid #dce4ec;border-radius:7px;background:#fff;text-align:left;cursor:pointer}.hr18-variable:hover{border-color:var(--hr15-primary);background:var(--hr15-primary-soft)}.hr18-variable code{overflow-wrap:anywhere;color:var(--hr15-primary);font-size:.67rem;font-weight:800}.hr18-variable span{color:var(--hr15-text);font-size:.69rem}.hr18-variable small{color:var(--hr15-muted);font-size:.59rem}
.hr18-function-list{display:grid;gap:6px;padding:10px;border-top:1px solid var(--hr15-border)}.hr18-function-list>strong{font-size:.7rem}.hr18-function-list button{display:flex;align-items:center;gap:8px;padding:7px 8px;border:1px solid #dce4ec;border-radius:6px;background:#fff;text-align:left;cursor:pointer}.hr18-function-list code{color:var(--hr15-primary);font-size:.65rem}.hr18-function-list span{color:var(--hr15-muted);font-size:.65rem}
.hr18-variable-panel>.hr17-help{display:block;margin:0;padding:9px 12px;border-top:1px solid var(--hr15-border);background:#fafbfc}
.hr18-table-editor{display:grid;gap:8px;padding:12px}.hr18-table-grid{display:grid;gap:8px}.hr18-table-row{display:grid;grid-template-columns:repeat(var(--hr18-cols,6),minmax(125px,1fr)) 44px;gap:7px;align-items:end;padding:9px;border:1px solid var(--hr15-border);border-radius:8px;background:#fff}.hr18-table-row.is-header{align-items:center;padding:8px 9px;background:var(--hr15-surface-soft);color:var(--hr15-muted);font-size:.63rem;font-weight:800}.hr18-table-row>label{display:grid;gap:4px}.hr18-table-row>label>span{display:none;color:var(--hr15-muted);font-size:.59rem;font-weight:750}.hr18-table-row button[data-config-remove]{min-width:40px;height:40px;padding:0}
.hr18-table-check{display:flex;align-items:center;gap:6px;min-height:40px;padding:8px;border:1px solid #cfd7e3;border-radius:7px;background:#fff;font-size:.68rem}.hr18-table-check input{width:17px;height:17px}.hr18-form-actions{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;padding:0 12px 12px}
.hr18-permission-table{overflow:auto}.hr18-permission-table table{min-width:860px}.hr18-permission-table td,.hr18-permission-table th{text-align:center}.hr18-permission-table td:first-child,.hr18-permission-table th:first-child{text-align:left;position:sticky;left:0;background:#fff;z-index:1}.hr18-checkbox-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.hr18-checkbox-grid label{display:flex;align-items:center;gap:7px;padding:8px;border:1px solid var(--hr15-border);border-radius:7px;background:#fff;font-size:.7rem}.hr18-checkbox-grid input{width:17px;height:17px}
.hr18-editor-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,340px);gap:14px;align-items:start}.hr18-formula-code{width:100%;min-height:96px;padding:10px;border:1px solid #cfd7e3;border-radius:7px;background:#111827;color:#e5edf7;font:600 .76rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;resize:vertical}.hr18-formula-code:focus{outline:none;border-color:#5b9bd5;box-shadow:0 0 0 3px rgba(91,155,213,.18)}
.hr18-modal-form{display:grid;gap:12px}.hr18-modal-form>label{display:grid;gap:5px}.hr18-modal-form>label>span{display:flex;justify-content:space-between;gap:8px;color:var(--hr15-text);font-size:.72rem;font-weight:750}.hr18-modal-form code{color:var(--hr15-primary);font-size:.6rem}.hr18-modal-form .is-wide{grid-column:1/-1}
.hr18-signatories{display:grid;gap:8px}.hr18-signatory{display:grid;grid-template-columns:1fr 1fr 1fr auto;gap:8px;align-items:end;padding:9px;border:1px solid var(--hr15-border);border-radius:8px;background:#fff}.hr18-signatory label{display:grid;gap:4px}.hr18-signatory label>span{display:flex;justify-content:space-between;gap:6px;color:var(--hr15-muted);font-size:.64rem;font-weight:750}.hr18-signatory code{font-size:.56rem;color:var(--hr15-primary)}
.hr18-report-list{display:grid;gap:8px;padding:13px}.hr18-report-list article{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:11px;border:1px solid var(--hr15-border);border-radius:8px;background:#fff}.hr18-report-list article>div:first-child{display:grid;gap:3px}.hr18-report-list code{color:var(--hr15-primary);font-size:.61rem}.hr18-report-list article>div:last-child{display:flex;gap:6px;flex-wrap:wrap}
.hr18-audit-detail{display:block;max-width:520px;overflow-wrap:anywhere;color:var(--hr15-muted);font-size:.68rem;line-height:1.4}.hr18-config-status+.hr15-button{align-self:center}
@media(max-width:1100px){.hr18-config-layout,.hr18-editor-split{grid-template-columns:1fr}.hr18-variable-panel{position:static}.hr18-variable-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-height:none}.hr18-table-row{overflow-x:auto}}
@media(max-width:760px){.hr18-config-hero{flex-direction:column;padding:14px}.hr18-config-status{justify-items:start}.hr18-config-grid{grid-template-columns:1fr;padding:10px}.hr18-config-field.is-wide{grid-column:auto}.hr18-variable-grid{grid-template-columns:1fr}.hr18-table-row,.hr18-table-row.is-header{grid-template-columns:1fr}.hr18-table-row.is-header{display:none}.hr18-table-row>label>span{display:block}.hr18-signatory{grid-template-columns:1fr}.hr18-report-list article{align-items:flex-start;flex-direction:column}.hr18-config-form>footer,.hr18-config-footer{align-items:stretch;flex-direction:column}.hr18-config-form>footer .hr15-button,.hr18-config-footer .hr15-button{width:100%}}
@media(max-width:420px){.hr18-config-field{padding:9px}.hr18-field-label{align-items:flex-start;flex-direction:column}.hr18-field-label code{max-width:100%}.hr18-modal-form{grid-template-columns:1fr}}
@media(prefers-reduced-motion:reduce){.hr18-switch>span,.hr18-switch>span:after{transition:none}}

/* Phase 18 — corrections de structure des catalogues variables */
.hr18-table-row{display:block;padding:0;overflow:hidden}
.hr18-table-row>header{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:9px 11px;border-bottom:1px solid var(--hr15-border);background:var(--hr15-surface-soft)}
.hr18-table-row>header strong{min-width:0;overflow:hidden;color:var(--hr15-text);font-size:.75rem;text-overflow:ellipsis;white-space:nowrap}
.hr18-table-row>header code{margin-left:auto;color:var(--hr15-primary);font-size:.61rem}
.hr18-table-grid{grid-template-columns:repeat(auto-fit,minmax(145px,1fr));padding:10px}
.hr18-table-grid>label{display:grid;align-content:start;gap:5px;min-width:0}
.hr18-table-grid>label>span{display:flex;align-items:flex-start;justify-content:space-between;gap:5px;color:var(--hr15-muted);font-size:.61rem;font-weight:750}
.hr18-table-grid>label>span code{color:var(--hr15-primary);font-size:.54rem}
.hr18-permission-table{min-width:760px}.hr18-permission-table td,.hr18-permission-table th{text-align:center}.hr18-permission-table td:first-child,.hr18-permission-table th:first-child{text-align:left;position:sticky;left:0;background:#fff;z-index:1}
code.hr18-formula-code{display:block;min-height:0;width:auto;max-width:360px;overflow:auto;padding:6px 7px;border:1px solid #dbe3ec;border-radius:6px;background:#f7f9fb;color:#28445c;font:600 .65rem/1.45 ui-monospace,SFMono-Regular,Consolas,monospace;white-space:nowrap}
#hr18FormulaEditor{width:100%;min-height:110px;padding:10px;border:1px solid #cfd7e3;border-radius:7px;background:#111827;color:#e5edf7;font:600 .76rem/1.55 ui-monospace,SFMono-Regular,Consolas,monospace;resize:vertical}
#hr18FormulaEditor:focus{outline:none;border-color:#5b9bd5;box-shadow:0 0 0 3px rgba(91,155,213,.18)}
@media(max-width:760px){.hr18-table-grid{grid-template-columns:1fr}.hr18-table-row>header{align-items:flex-start;flex-wrap:wrap}.hr18-table-row>header code{margin-left:0}.hr18-table-row>header button{margin-left:auto}.hr18-permission-table{min-width:680px}}

/* Phase 25 — éditeurs RH natifs intégrés à la nouvelle interface */
#hr25NativeEditorHost{position:fixed;inset:0;z-index:10000;pointer-events:none}
#hr25NativeEditorHost:empty{display:none}
#hr25NativeEditorHost>*{pointer-events:auto}
#hr25NativeEditorHost .hr15-detail-backdrop{z-index:10001}
#hr25NativeEditorHost .hr17-modal{z-index:10002;pointer-events:auto}
#hr25NativeEditorHost .hr17-modal-body,#hr25NativeEditorHost .hr17-modal header,#hr25NativeEditorHost .hr17-modal footer{position:relative;z-index:1;pointer-events:auto}
.hr25-dialog{position:fixed;z-index:10002;top:3vh;right:3vw;bottom:3vh;width:min(980px,94vw);background:#fff;border:1px solid var(--hr15-border);border-radius:18px;box-shadow:0 26px 80px rgba(14,35,29,.3);display:flex;flex-direction:column;overflow:hidden;color:var(--hr15-text)}
.hr25-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #e2ebe8;background:#fff}
.hr25-dialog>header h3{margin:2px 0 4px;font-size:1.35rem}.hr25-dialog>header span{display:block;color:#65756f;font-size:.87rem}
.hr25-dialog-body{padding:20px 22px;overflow:auto;flex:1;background:#fbfdfc}
.hr25-dialog>footer{padding:14px 22px;border-top:1px solid #e2ebe8;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap;background:#fff}
.hr25-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}
.hr25-dialog [hidden],.hr25-form-grid[hidden],[data-social-stage][hidden],[data-social-independent][hidden],[data-social-independent-details][hidden],[data-social-international][hidden]{display:none!important}
.hr25-form-grid label{display:flex;flex-direction:column;gap:6px;font-size:.82rem;font-weight:650;color:#34443f}
.hr25-form-grid input,.hr25-form-grid select,.hr25-form-grid textarea{width:100%;min-height:42px;border:1px solid #cfdcd8;border-radius:10px;background:#fff;padding:9px 11px;color:#1c2c27}
.hr25-form-grid textarea{min-height:92px;resize:vertical}
.hr25-form-grid input:focus,.hr25-form-grid select:focus,.hr25-form-grid textarea:focus{outline:2px solid rgba(29,116,91,.18);border-color:#1d745b}
.hr25-span-2{grid-column:span 2}.hr25-check{flex-direction:row!important;align-items:center;align-self:end;min-height:42px;border:1px solid #d8e3df;border-radius:10px;padding:8px 11px;background:#fff}.hr25-check input{min-height:auto;width:18px;height:18px}
.hr25-action-bar{display:flex;align-items:center;gap:8px;flex-wrap:wrap;padding:12px 18px;border-bottom:1px solid #e2ebe8;background:#f8fbfa}
.hr25-run-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px}.hr25-run-summary span{display:grid;gap:4px;padding:12px;border:1px solid #dce7e3;border-radius:12px;background:#fff;color:#65756f;font-size:.74rem}.hr25-run-summary strong{color:#1c2c27;font-size:1rem}
.hr25-payroll-items{margin-top:18px;border:1px solid #dce7e3;border-radius:12px;overflow:hidden;background:#fff}.hr25-payroll-items>header{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;border-bottom:1px solid #dce7e3}.hr25-payroll-items h4{margin:0}.hr25-payroll-items input,.hr25-payroll-items select{min-width:110px;min-height:36px;border:1px solid #cfdcd8;border-radius:8px;padding:6px 8px}
@media(max-width:900px){.hr25-dialog{top:1vh;right:1vw;bottom:1vh;width:98vw;border-radius:14px}.hr25-form-grid{grid-template-columns:1fr 1fr}.hr25-run-summary{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.hr25-dialog{left:0;right:0;top:0;bottom:0;width:100vw;border-radius:0}.hr25-form-grid,.hr25-run-summary{grid-template-columns:1fr}.hr25-span-2{grid-column:auto}.hr25-action-bar{align-items:stretch}.hr25-action-bar .hr15-button{flex:1}.hr25-dialog>footer .hr15-button{flex:1}}


/* Phase 21 - plan comptable et imports CSV/XLSX (interface RH native phase 25) */
.hr21-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid var(--hr15-line,#dfe7e4);background:#f8fbfa}.hr21-toolbar>div{display:flex;gap:8px;flex-wrap:wrap}.hr21-toolbar>span{font-size:.84rem;color:#60706b}.hr15-row-actions{display:flex;gap:7px;flex-wrap:wrap}.hr21-help{margin:0 18px 18px;padding:12px 14px;border:1px solid #dce8e4;border-radius:12px;background:#f8fbfa;display:flex;gap:8px;flex-direction:column}.hr21-help strong{font-size:.86rem}.hr21-help span{font-size:.78rem;color:#60706b;line-height:1.5;word-break:break-word}.hr21-dialog{position:fixed;z-index:10002;top:3vh;right:3vw;bottom:3vh;width:min(980px,94vw);background:#fff;border-radius:18px;box-shadow:0 26px 80px rgba(14,35,29,.3);display:flex;flex-direction:column;overflow:hidden}.hr21-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px;border-bottom:1px solid #e2ebe8}.hr21-dialog>header h3{margin:2px 0 4px;font-size:1.35rem}.hr21-dialog>header span{display:block;color:#65756f;font-size:.87rem}.hr21-dialog-body{padding:20px 22px;overflow:auto;flex:1;background:#fbfdfc}.hr21-dialog>footer{padding:14px 22px;border-top:1px solid #e2ebe8;display:flex;justify-content:flex-end;gap:8px;flex-wrap:wrap}.hr21-form-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.hr21-form-grid label{display:flex;flex-direction:column;gap:6px;font-size:.82rem;font-weight:650;color:#34443f}.hr21-form-grid input,.hr21-form-grid select{min-height:42px;border:1px solid #cfdcd8;border-radius:10px;background:#fff;padding:9px 11px;color:#1c2c27}.hr21-form-grid input:focus,.hr21-form-grid select:focus{outline:2px solid rgba(29,116,91,.18);border-color:#1d745b}.hr21-span-2{grid-column:span 2}.hr21-check{flex-direction:row!important;align-items:center;align-self:end;min-height:42px;border:1px solid #d8e3df;border-radius:10px;padding:8px 11px;background:#fff}.hr21-check input{min-height:auto;width:18px;height:18px}.hr21-import-section{background:#fff;border:1px solid #dce7e3;border-radius:14px;padding:16px;margin-bottom:16px}.hr21-import-section>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;margin-bottom:14px}.hr21-import-section h4{margin:0 0 4px}.hr21-import-section p{margin:0;color:#687973;font-size:.82rem}.hr21-file-actions{display:flex;gap:8px;align-items:flex-end;flex-wrap:wrap}.hr21-import-command{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:14px;padding-top:14px;border-top:1px dashed #d9e5e1}.hr21-import-command span{color:#5c6d67;font-size:.84rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.hr21-mapping-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.hr21-mapping-grid label{display:flex;flex-direction:column;gap:6px;font-size:.8rem;font-weight:650}.hr21-mapping-grid select{min-height:40px;border:1px solid #cfdcd8;border-radius:9px;padding:8px;background:#fff}.hr21-import-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:14px 0}.hr21-import-summary div{border:1px solid #dce7e3;border-radius:12px;background:#fff;padding:12px;display:flex;flex-direction:column;gap:3px}.hr21-import-summary strong{font-size:1.25rem}.hr21-import-summary span{font-size:.76rem;color:#687973}.hr21-import-message{display:flex;flex-direction:column;gap:3px;padding:12px 14px;border-radius:12px;margin-bottom:16px}.hr21-import-message.is-success{background:#ecf8f3;color:#145d47;border:1px solid #bfe3d4}.hr21-import-message.is-error{background:#fff1f1;color:#8b2626;border:1px solid #efc5c5}.hr21-import-message span{font-size:.82rem}.hr15-badge-warning{background:#fff3d8;color:#815c08}
@media(max-width:900px){.hr21-dialog{top:1vh;right:1vw;bottom:1vh;width:98vw;border-radius:14px}.hr21-form-grid,.hr21-mapping-grid{grid-template-columns:1fr 1fr}.hr21-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:620px){.hr21-form-grid,.hr21-mapping-grid{grid-template-columns:1fr}.hr21-span-2{grid-column:auto}.hr21-toolbar{align-items:stretch}.hr21-toolbar>div{width:100%}.hr21-toolbar .hr15-button{flex:1}.hr21-import-command{align-items:stretch;flex-direction:column}.hr21-import-summary{grid-template-columns:1fr 1fr}}

/* Phase 26 - formulaire natif des types de congés */
.hr26-inline-editor{margin:0 0 14px;border:1px solid #8fb4d4;box-shadow:0 10px 28px rgba(34,91,143,.12)}
.hr26-inline-editor .hr18-modal-form{padding:4px 0 0}
.hr26-inline-editor .hr18-form-actions{position:sticky;bottom:0;padding:12px 0 2px;background:linear-gradient(180deg,rgba(255,255,255,0),#fff 28%)}

/* Phase 27 — conformité territoriale et réglementaire */
.hr27-grid-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.hr27-grid-form label{display:grid;gap:6px;font-size:.88rem;color:#334}.hr27-grid-form label>span{font-weight:700}.hr27-grid-form input,.hr27-grid-form textarea,.hr27-grid-form select{width:100%;border:1px solid #ccd7d3;border-radius:9px;padding:10px 11px;background:#fff;color:#142520}.hr27-grid-form .is-wide{grid-column:1/-1}.hr27-grid-form .hr27-check{display:flex;align-items:center;gap:9px}.hr27-grid-form .hr27-check input{width:auto}.hr27-actions,.hr27-row-actions{display:flex;flex-wrap:wrap;gap:8px}.hr27-preflight{padding:14px;border-radius:10px;border:1px solid #cad8d2}.hr27-preflight.is-blocked{border-color:#d8aaa0;background:#fff3f0}.hr27-preflight.is-ready{border-color:#9bc5a9;background:#f1fbf4}.hr15-table td small{display:block;color:#63726d;margin-top:3px}@media(max-width:760px){.hr27-grid-form{grid-template-columns:1fr}.hr27-grid-form .is-wide{grid-column:auto}}

/* Phase 40 — progression temps réel des imports de référentiels de paie */
.hr40-reference-progress{margin-top:18px;padding:16px;border:1px solid rgba(15,23,42,.14);border-radius:14px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.06)}
.hr40-reference-progress header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:12px}
.hr40-reference-progress header div{display:grid;gap:4px}
.hr40-reference-progress header strong{font-size:15px;color:#0f172a}
.hr40-reference-progress header span{font-size:13px;color:#64748b}
.hr40-reference-progress header b{font-variant-numeric:tabular-nums;color:#0f766e;white-space:nowrap}
.hr40-reference-progress progress{display:block;width:100%;height:14px;accent-color:#0f766e}
.hr40-progress-counts{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:12px}
.hr40-progress-counts span{display:grid;gap:2px;padding:10px;border-radius:10px;background:#f8fafc}
.hr40-progress-counts strong{font-size:14px;font-variant-numeric:tabular-nums;color:#0f172a}
.hr40-progress-counts small{font-size:11px;color:#64748b;text-transform:uppercase;letter-spacing:.04em}
.hr40-reference-progress.is-completed{border-color:rgba(22,163,74,.35);background:#f0fdf4}
.hr40-reference-progress.is-failed{border-color:rgba(220,38,38,.35);background:#fef2f2}
.hr40-reference-progress.is-failed header b{color:#b91c1c}
@media(max-width:720px){.hr40-progress-counts{grid-template-columns:1fr}.hr40-reference-progress header{align-items:center}}

/* Phase 42 — conserver la progression finale jusqu'à fermeture explicite */
.hr41-import-success{margin-top:12px;display:flex;flex-wrap:wrap;align-items:center;gap:10px}
.hr41-import-success>span{flex:1 1 320px}
.hr41-import-success>.hr15-button{margin-left:auto}

/* Phase 43 — consultation des référentiels toujours visible */
.hr15-table th.hr15-actions-column,.hr15-table td.hr15-actions-column{position:sticky;right:0;z-index:3;min-width:190px;background:#fff;box-shadow:-8px 0 14px rgba(18,45,36,.08)}
.hr15-table th.hr15-actions-column{z-index:5;background:#f8fafc}
.hr15-table tbody tr:hover td.hr15-actions-column{background:#fbfcfe}
.hr43-reference-title{display:grid;gap:3px;width:100%;min-width:180px;border:0;background:transparent;padding:0;text-align:left;color:inherit;cursor:pointer}
.hr43-reference-title strong{color:#145d47;text-decoration:underline;text-underline-offset:3px}
.hr43-reference-title small{font-size:.72rem;color:#66756f}
.hr43-consult-button{white-space:nowrap}
.hr43-actions-menu{position:relative}
.hr43-actions-menu summary{list-style:none;cursor:pointer;border:1px solid var(--hr15-border,#d7dfdc);border-radius:8px;padding:8px 10px;font-weight:750;background:#fff;white-space:nowrap}
.hr43-actions-menu summary::-webkit-details-marker{display:none}
.hr43-actions-menu[open]>summary{border-color:#1d745b;color:#145d47}
.hr43-actions-menu>div{display:flex;flex-wrap:wrap;gap:7px;margin-top:7px;min-width:180px}
.hr43-reference-summary{margin-bottom:16px}
.hr43-reference-lines-head{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:8px 0 10px;flex-wrap:wrap}
.hr43-reference-lines-head span{color:#65756f;font-size:.82rem}
.hr43-reference-table-wrap{max-height:52vh;border:1px solid #dce7e3;border-radius:12px;background:#fff}
.hr43-reference-table{min-width:1050px}
.hr43-reference-table th{position:sticky;top:0;z-index:2}
.hr43-reference-help{margin-top:14px}
@media(max-width:760px){.hr15-table th.hr15-actions-column,.hr15-table td.hr15-actions-column{position:static;min-width:0;box-shadow:none}.hr43-actions-menu>div{min-width:0}.hr43-reference-table{min-width:0}.hr43-reference-table-wrap{max-height:none}}

/* Phase 48 — contrat alimenté par le référentiel SALAIRES_CATEGORIELS */
.hr25-form-grid .hr48-reference-derived[readonly]{background:#f2f7f5;border-color:#b9cec7;color:#173d31;font-weight:750;cursor:not-allowed}
.hr48-reference-status{display:grid;gap:4px;align-content:center;min-height:56px;padding:10px 12px;border:1px solid #d7e3df;border-radius:10px;background:#fff;color:#41534d}
.hr48-reference-status strong{font-size:.8rem}.hr48-reference-status span{font-size:.74rem;line-height:1.45}
.hr48-reference-status.is-loading{border-color:#b9cbdc;background:#f3f8fc;color:#31556f}
.hr48-reference-status.is-success{border-color:#a9d6c4;background:#eef9f4;color:#155b45}
.hr48-reference-status.is-warning{border-color:#e6cf93;background:#fff9e9;color:#715710}
.hr48-reference-status.is-error{border-color:#e3b7b7;background:#fff3f3;color:#842d2d}
.hr25-dialog>footer [data-contract-submit]:disabled{opacity:.52;cursor:not-allowed}

/* Phase 50 — situation fiscale, salaire brut, IR et TRIMF */
.hr25-fiscal-section{margin:2px 0 0;padding:14px;border:1px solid #cddfd8;border-radius:14px;background:#f8fcfa;min-width:0}
.hr25-fiscal-section>legend{padding:0 8px;color:#174f3e;font-size:.88rem;font-weight:800}
.hr25-fiscal-section>.hr25-form-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
.hr25-fiscal-section input[readonly]{background:#eef5f2;border-color:#bfd4cc;color:#173d31;font-weight:750;cursor:not-allowed}
.hr25-payroll-items input[type="checkbox"]{min-width:18px;width:18px;height:18px;min-height:18px;padding:0;accent-color:#1d745b}
.hr25-payroll-items th:nth-last-child(n+2){white-space:nowrap}
.hr25-payroll-items>header p{margin:4px 0 0;color:#65756f;font-size:.76rem;line-height:1.4}
@media(max-width:900px){.hr25-fiscal-section>.hr25-form-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.hr25-fiscal-section>.hr25-form-grid{grid-template-columns:1fr}}

/* Phase 52 - organisation du personnel */
.hr25-field-warning{display:block;margin-top:.35rem;font-size:.78rem;color:var(--hr-warning,#9a6700);font-weight:600}
.hr25-form-grid select:disabled,.hr15-filter-bar select:disabled{cursor:not-allowed;opacity:.65;background:var(--hr-surface-muted,#f3f4f6)}

/* Phase 59 — listes Dossiers et Contrats */
.hr59-toolbar{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:10px;margin:12px 0}
.hr59-toolbar>div{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.hr59-selection-count{font-size:.8rem;font-weight:750;color:#52655f}
.hr59-link{border:0;background:transparent;padding:0;color:#145d47;font-weight:800;text-decoration:underline;text-underline-offset:3px;cursor:pointer;text-align:left}
.hr59-danger{border-color:#e3b7b7!important;color:#842d2d!important;background:#fff7f7!important}
.hr59-danger:hover{background:#fff0f0!important}
.hr59-detail{display:grid;gap:16px}
.hr59-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.hr59-section{padding:14px;border:1px solid #dce7e3;border-radius:14px;background:#fbfdfc}
.hr59-section h4{margin:0 0 10px;color:#174f3e}
.hr59-section dl{display:grid;grid-template-columns:minmax(140px,.7fr) minmax(0,1.3fr);gap:7px 14px;margin:0}
.hr59-section dt{font-size:.78rem;color:#65756f;font-weight:700}
.hr59-section dd{margin:0;font-size:.84rem;color:#203d34;overflow-wrap:anywhere}
.hr59-row-check{width:18px;height:18px;accent-color:#1d745b}
.hr59-close{display:flex;justify-content:flex-end;gap:8px;margin-top:12px}
@media(max-width:920px){.hr59-detail-grid{grid-template-columns:1fr 1fr}}
@media(max-width:620px){.hr59-detail-grid{grid-template-columns:1fr}.hr59-section dl{grid-template-columns:1fr}.hr59-section dd{margin-bottom:5px}}

/* Phase 61 - navigation visible vers les cotisations sociales */
.hr61-breadcrumb {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: .45rem;
  margin: 0 0 1rem;
  padding: .8rem 1rem;
  border: 1px solid var(--hr15-border, #d9e1e8);
  border-radius: .75rem;
  background: var(--hr15-surface, #fff);
  color: var(--hr15-muted, #56616b);
  font-size: .92rem;
}
.hr61-breadcrumb span { opacity: .55; }
.hr61-breadcrumb strong { color: var(--hr15-text, #17212b); }

/* Phase 62 - configuration AT par établissement */
.hr61-establishment-cards {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(260px, 1fr));
  gap: 12px;
  margin: 14px 0 18px;
}
.hr61-establishment-cards article {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding: 14px;
  border: 1px solid var(--hr-border, #dfe7e3);
  border-radius: 14px;
  background: var(--hr-surface, #fff);
}
.hr61-establishment-cards article > div {
  display: grid;
  gap: 4px;
}
.hr61-establishment-cards article > div:last-child {
  justify-items: end;
}
.hr61-establishment-cards code,
.hr61-establishment-cards small {
  overflow-wrap: anywhere;
}
@media (max-width: 720px) {
  .hr61-establishment-cards article {
    align-items: stretch;
    flex-direction: column;
  }
  .hr61-establishment-cards article > div:last-child {
    justify-items: start;
  }
}

/* Phase 70 - suppression securisee des bulletins en brouillon */
.hr70-danger-button {
  border-color: #b42318 !important;
  background: #b42318 !important;
  color: #fff !important;
}
.hr70-danger-button:hover:not(:disabled) { background: #912018 !important; }
.hr70-danger-button:disabled { opacity: .48; cursor: not-allowed; }
.hr70-delete-warning {
  border: 1px solid #f4b4ae;
  background: #fff4f2;
  border-radius: 12px;
  padding: 14px;
}
.hr70-delete-warning strong { color: #912018; }
.hr70-delete-warning p, .hr70-delete-employees p { margin: 6px 0 0; }
.hr70-delete-employees { max-height: 130px; overflow: auto; }
.hr70-payslip-check { width: 18px; height: 18px; }

/* Phase 75 - documents joints aux contrats */
.hr75-doc-dialog{width:min(1180px,96vw);max-width:1180px}
.hr75-doc-dialog .hr25-dialog-body{display:grid;gap:14px;max-height:78vh;overflow:auto}
.hr75-completeness{display:flex;justify-content:space-between;gap:18px;align-items:center;padding:14px 16px;border-radius:14px;border:1px solid #f0c36a;background:#fff8e6}
.hr75-completeness.is-complete{border-color:#8fd3b5;background:#edf9f3}
.hr75-completeness div{display:grid;gap:4px}.hr75-completeness span{font-size:.86rem;color:#52645d}
.hr75-toolbar{display:grid;grid-template-columns:minmax(200px,1fr) minmax(150px,.55fr) minmax(180px,.65fr) auto;gap:10px;align-items:end}
.hr75-toolbar label,.hr75-upload-form label{display:grid;gap:5px;font-size:.82rem;font-weight:700;color:#40564e}
.hr75-toolbar input,.hr75-toolbar select,.hr75-upload-form input,.hr75-upload-form select,.hr75-upload-form textarea{width:100%;border:1px solid #cfdad5;border-radius:10px;padding:10px;background:#fff;color:#18352c}
.hr75-upload-form{border:1px solid #d8e4df;border-radius:14px;padding:15px;background:#f8fbfa}
.hr75-upload-form[hidden]{display:none!important}
.hr75-progress{height:22px;position:relative;overflow:hidden;border-radius:999px;background:#e4ece8;margin:12px 0}
.hr75-progress i{display:block;height:100%;width:0;background:#1d745b;transition:width .18s ease}.hr75-progress span{position:absolute;inset:0;display:grid;place-items:center;font-size:.75rem;font-weight:800;z-index:1;color:#18352c}
.hr75-doc-table td{vertical-align:top;min-width:110px}.hr75-doc-table td:nth-child(2){min-width:210px}.hr75-doc-table td:last-child{min-width:260px}
.hr75-doc-table td small{display:block;margin-top:4px;color:#62756d;line-height:1.45}.hr75-doc-table tr[hidden]{display:none}
.hr75-empty{display:grid;gap:5px;padding:24px;text-align:center;border:1px dashed #bacbc3;border-radius:14px;color:#52645d}
.hr75-pagination{display:flex;justify-content:center;align-items:center;gap:12px;flex-wrap:wrap}.hr75-pagination span{font-size:.85rem;color:#52645d}
.employee-inline-actions{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px}
@media(max-width:900px){.hr75-toolbar{grid-template-columns:1fr 1fr}.hr75-toolbar button{width:100%}}
@media(max-width:620px){.hr75-doc-dialog{width:100vw;max-width:none;height:100vh;border-radius:0}.hr75-toolbar{grid-template-columns:1fr}.hr75-completeness{align-items:flex-start;flex-direction:column}.hr75-doc-table td:last-child{min-width:220px}}
.hr75-completeness-actions{display:flex;align-items:flex-end;gap:8px;flex-direction:column}
.hr75-requirements{display:grid;gap:12px;padding:14px;border:1px solid #d8e4df;border-radius:14px;background:#fff}
.hr75-requirements[hidden]{display:none!important}.hr75-requirements>div:first-child{display:grid;gap:4px}.hr75-requirements>div:first-child span{font-size:.84rem;color:#62756d}
.hr75-requirement-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:8px}.hr75-requirement-grid label{display:flex;gap:8px;align-items:center;padding:8px;border:1px solid #e0e9e5;border-radius:9px;font-size:.8rem}.hr75-requirement-grid input{width:16px;height:16px;accent-color:#1d745b}
@media(max-width:620px){.hr75-completeness-actions{align-items:flex-start}.hr75-requirement-grid{grid-template-columns:1fr}}
.hr75-dropzone{display:grid;place-items:center;gap:7px;padding:22px;border:2px dashed #9db9ad;border-radius:14px;background:#fff;text-align:center;color:#52645d;transition:.16s ease}.hr75-dropzone.is-dragging{border-color:#1d745b;background:#edf9f3;transform:scale(1.005)}.hr75-dropzone>label{position:relative;overflow:hidden}.hr75-dropzone input[type=file]{position:absolute;inset:0;opacity:0;cursor:pointer}.hr75-dropzone small{font-weight:600;color:#1d745b;overflow-wrap:anywhere}

/* Phase 84 - diagnostics administratifs: contenu technique contenu dans son panneau. */
.hr84-diagnostic-panel .hr15-table{min-width:980px;table-layout:fixed}
.hr84-diagnostic-panel .hr15-table th:nth-child(1){width:14%}
.hr84-diagnostic-panel .hr15-table th:nth-child(2){width:14%}
.hr84-diagnostic-panel .hr15-table th:nth-child(3){width:16%}
.hr84-diagnostic-panel .hr15-table th:nth-child(4){width:28%}
.hr84-diagnostic-panel .hr15-table th:nth-child(5){width:28%}
.hr84-diagnostic-panel .hr15-table td{vertical-align:top;overflow-wrap:anywhere;word-break:break-word}
.hr84-diagnostic-panel pre{margin:0;max-height:240px;overflow:auto;white-space:pre-wrap;overflow-wrap:anywhere;font:11px/1.45 ui-monospace,SFMono-Regular,Consolas,monospace}
