.m3-period-trigger{display:flex;align-items:center;justify-content:center;gap:8px;min-height:38px;border:0;background:transparent;color:inherit;font:inherit;cursor:pointer;padding:0 2px}.period-pill{position:relative}.m3-period-popover{position:absolute;right:0;top:calc(100% + 9px);z-index:45;width:min(330px,calc(100vw - 28px));padding:10px;border:1px solid rgba(100,219,255,.18);border-radius:16px;background:rgba(7,22,43,.98);box-shadow:0 24px 70px rgba(0,0,0,.38);backdrop-filter:blur(18px)}.m3-period-options{display:grid;grid-template-columns:1fr 1fr;gap:7px}.m3-period-options button{min-height:40px;border:1px solid rgba(255,255,255,.06);border-radius:11px;background:rgba(255,255,255,.02);color:#b6c9e2;text-align:left;padding:9px 10px;cursor:pointer}.m3-period-options button:hover,.m3-period-options button:focus-visible{border-color:rgba(100,219,255,.26);background:rgba(100,219,255,.07)}.m3-custom-range{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:10px;padding-top:10px;border-top:1px solid rgba(255,255,255,.06)}.m3-custom-range label{display:grid;gap:5px;color:#8ea5c4;font-size:.68rem}.m3-custom-range input{min-width:0;width:100%;height:40px;border:1px solid rgba(255,255,255,.08);border-radius:10px;background:#0b1d36;color:#dcefff;padding:0 9px}.m3-custom-range .primary-action{grid-column:1/-1}.m3-state-box{display:flex;align-items:center;gap:12px;min-height:110px;padding:18px;border:1px dashed rgba(100,219,255,.17);border-radius:15px;background:rgba(255,255,255,.015)}.m3-state-box .m3-state-icon{width:10px;height:10px;border-radius:50%;background:var(--state-verify);box-shadow:0 0 15px currentColor}.m3-state-box strong{display:block;font-size:.86rem}.m3-state-box p{margin:3px 0 0;color:#8ea5c4;font-size:.72rem}.m3-state-box.loading .m3-state-icon{border:2px solid rgba(105,203,255,.18);border-top-color:var(--state-verify);background:transparent;width:24px;height:24px;animation:m3spin .85s linear infinite}.m3-state-box.warning .m3-state-icon{background:var(--state-late)}.m3-state-box.error .m3-state-icon{background:var(--state-blocked)}.m3-state-box.forbidden .m3-state-icon{background:var(--state-anomaly)}.m3-state-box.offline .m3-state-icon{background:#8296b3}.m3-retry{margin-left:auto}@keyframes m3spin{to{transform:rotate(360deg)}}@media(max-width:680px){.m3-period-popover{position:fixed;left:12px;right:12px;bottom:82px;top:auto;width:auto}.m3-period-options{grid-template-columns:1fr}.m3-custom-range{grid-template-columns:1fr}.m3-state-box{align-items:flex-start}.m3-retry{margin-left:0}}@media(prefers-reduced-motion:reduce){.m3-state-box.loading .m3-state-icon{animation-duration:2s}}
/* Mission 3 pass 2 - formulaires et contrat UI/backend */
.m3-contract-note{padding:18px;border:1px dashed rgba(100,219,255,.22);border-radius:14px;background:rgba(100,219,255,.035)}
.m3-contract-note strong{display:block;color:#ccecff;font-size:.82rem}.m3-contract-note p{margin:6px 0 0;color:var(--muted-strong);font-size:.74rem;line-height:1.5}
.m3-form-card{width:min(680px,100%)}.m3-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:18px}
.m3-form-grid label{display:grid;gap:7px;color:#9eb2d0;font-size:.73rem}.m3-form-grid input,.m3-form-grid select{width:100%;min-height:44px;border:1px solid var(--line);border-radius:12px;background:#0c1c36;color:var(--text);padding:0 12px}
.m3-form-grid input[type="file"]{padding:10px}.m3-backend-note{margin-top:15px;padding:11px 13px;border-radius:12px;background:rgba(255,184,107,.06);border:1px solid rgba(255,184,107,.14);color:#d9b986;font-size:.7rem}
[data-m3-list="sales"]>.tr,[data-m3-list="invoices"]>.tr{display:grid}.m3-form-modal[hidden]{display:none}
@media(max-width:680px){.m3-form-grid{grid-template-columns:1fr}.m3-form-card{max-height:90vh;overflow:auto}}
.m3-row-actions{display:flex;flex-wrap:wrap;gap:6px}.m3-row-actions button{min-height:36px}.m3-backend-note{margin-top:14px}.m3-backend-note strong{display:block;font-size:.82rem}.m3-backend-note p{margin:5px 0 0;color:var(--muted);font-size:.74rem;line-height:1.5}.document-grid>article{min-width:0}.document-grid .m3-row-actions{justify-content:flex-end}.timeline-list .m3-row-actions{justify-content:flex-end}
@media(max-width:680px){.timeline-list article{grid-template-columns:auto minmax(0,1fr)}.timeline-list article>strong,.timeline-list article>.status-badge,.timeline-list article>.m3-row-actions{grid-column:2}.timeline-list .m3-row-actions,.document-grid .m3-row-actions{justify-content:flex-start}.document-grid article{grid-template-columns:auto minmax(0,1fr)}.document-grid article>.m3-row-actions{grid-column:2}.document-grid .m3-row-actions button{flex:1 1 110px}}
.m3-secondary-grid{margin-top:14px}.m3-match-list,.m3-health-list,.m3-compliance-list{display:grid;gap:10px}.m3-match-card,.m3-health-list article,.m3-compliance-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.055);border-radius:14px;background:rgba(255,255,255,.016)}.m3-match-card strong,.m3-match-card small,.m3-health-list strong,.m3-health-list small,.m3-compliance-list strong,.m3-compliance-list small{display:block}.m3-match-card small,.m3-health-list small,.m3-compliance-list small{color:var(--muted);font-size:.68rem;margin-top:3px}.m3-health-score{display:flex;align-items:center;gap:18px;margin-bottom:14px}.m3-health-score strong{font-size:2rem}.m3-health-score small{margin-left:auto;color:var(--muted);max-width:340px}.m3-cost-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.m3-cost-card{border:1px solid rgba(255,255,255,.055);border-radius:16px;background:rgba(255,255,255,.016);padding:16px;display:grid;gap:12px}.m3-cost-card>div:not(:first-child){display:flex;justify-content:space-between;gap:12px;color:var(--muted);font-size:.72rem}.m3-cost-card b{color:var(--text)}
@media(max-width:900px){.m3-cost-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.m3-match-card,.m3-health-list article,.m3-compliance-list article{grid-template-columns:1fr}.m3-match-card .m3-row-actions{grid-column:1}.m3-health-score{align-items:flex-start;flex-direction:column}.m3-health-score small{margin-left:0}.m3-cost-grid{grid-template-columns:1fr}.m3-secondary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}


/* Mission 3 pass 5 - audit, alertes et dossier de contrôle */
.m3-audit-list{display:grid;gap:9px}.m3-audit-row{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(3,minmax(110px,.7fr));gap:12px;align-items:center;padding:13px 14px;border:1px solid rgba(255,255,255,.055);border-radius:14px;background:rgba(255,255,255,.015)}.m3-audit-row strong,.m3-audit-row small,.m3-audit-row span,.m3-audit-row b{display:block}.m3-audit-row small,.m3-audit-row span{color:var(--muted);font-size:.66rem}.m3-audit-row b{margin-top:3px;font-size:.74rem}.m3-control-builder form{display:grid;gap:14px}.m3-control-fields{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.m3-control-fields label{display:grid;gap:6px;color:var(--muted-strong);font-size:.72rem}.m3-control-fields select{min-height:44px;border:1px solid var(--line);border-radius:12px;background:#0c1c36;color:var(--text);padding:0 12px}.m3-control-content{display:flex;flex-wrap:wrap;gap:12px;border:1px solid rgba(255,255,255,.06);border-radius:14px;padding:12px}.m3-control-content legend{padding:0 7px;color:var(--muted-strong);font-size:.7rem}.m3-control-content label{display:flex;align-items:center;gap:7px;color:#b8c9df;font-size:.72rem}.m3-package-status{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:14px}.m3-package-status>div{padding:11px;border:1px solid rgba(255,255,255,.055);border-radius:12px;background:rgba(255,255,255,.015)}.m3-package-status span,.m3-package-status strong{display:block}.m3-package-status span{color:var(--muted);font-size:.64rem}.m3-package-status strong{margin-top:4px;font-size:.76rem}.m3-audit-toolbar{margin-bottom:12px}
@media(max-width:900px){.m3-audit-row{grid-template-columns:1fr 1fr}.m3-package-status{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.m3-audit-row,.m3-control-fields,.m3-package-status{grid-template-columns:1fr}.m3-control-content{display:grid}.m3-audit-toolbar{align-items:stretch}}

/* Mission 3 pass 6 - dashboard readiness */
.m3-dashboard-health .section-head>strong{font-size:1.45rem;color:var(--cyan)}.m3-health-mini{display:grid;gap:8px}.m3-health-mini>div{display:flex;justify-content:space-between;gap:12px;padding:8px 0;border-bottom:1px solid rgba(255,255,255,.045)}.m3-health-mini>div:last-child{border-bottom:0}.m3-health-mini span{color:var(--muted);font-size:.68rem}.m3-health-mini b{font-size:.72rem}

/* Authentification centrale */
.m3-auth-trigger{min-height:38px;padding:0 14px;border:1px solid rgba(100,219,255,.2);border-radius:999px;background:rgba(100,219,255,.06);color:var(--text);font:inherit;font-size:.72rem;cursor:pointer}.m3-auth-trigger:hover,.m3-auth-trigger:focus-visible{border-color:rgba(100,219,255,.4);background:rgba(100,219,255,.1)}.m3-auth-card{width:min(460px,100%)}.m3-auth-copy{color:var(--muted-strong);font-size:.78rem;line-height:1.55}.m3-auth-card form{display:grid;gap:12px;margin-top:16px}.m3-auth-card label{display:grid;gap:7px;color:#9eb2d0;font-size:.72rem}.m3-auth-card input{width:100%;min-height:44px;border:1px solid var(--line);border-radius:12px;background:#0c1c36;color:var(--text);padding:0 12px}.m3-auth-card .primary-action{margin-top:4px}.m3-auth-error{margin:0;padding:10px 12px;border:1px solid rgba(255,104,104,.22);border-radius:11px;background:rgba(255,104,104,.07);color:#ffd1d1;font-size:.72rem}.m3-auth-role{color:var(--muted);font-size:.72rem;margin:8px 0 16px}.m3-auth-modal[hidden]{display:none}@media(max-width:680px){.m3-auth-trigger{padding:0 10px}.m3-auth-card{max-height:90vh;overflow:auto}}

/* Lot 1 - obligations et règlements */
.m3-dashboard-obligations .section-head{align-items:flex-start}.m3-dashboard-obligations .text-btn{white-space:nowrap}.m3-obligation-list{display:grid;gap:11px}.m3-obligation-card{border:1px solid rgba(255,255,255,.06);border-radius:16px;background:rgba(255,255,255,.017);overflow:hidden}.m3-obligation-card.late{border-color:rgba(255,112,112,.2)}.m3-obligation-card.verify{border-color:rgba(255,191,94,.18)}.m3-obligation-card.ok{border-color:rgba(87,214,154,.16)}.m3-obligation-main{display:grid;grid-template-columns:minmax(220px,1.4fr) minmax(130px,.55fr) auto minmax(230px,.9fr);gap:14px;align-items:center;padding:15px}.m3-obligation-main h3{margin:4px 0 3px;font-size:.9rem}.m3-obligation-main small{color:var(--muted);font-size:.68rem}.m3-obligation-amount strong,.m3-obligation-amount small{display:block}.m3-obligation-amount strong{font-size:1.03rem}.m3-obligation-amount small{margin-top:4px}.m3-obligation-main .m3-row-actions{justify-content:flex-end;align-items:center}.m3-obligation-main .m3-row-actions a{display:inline-flex;align-items:center;text-decoration:none;min-height:36px}.m3-obligation-detail{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:13px 15px 15px;border-top:1px solid rgba(255,255,255,.05);background:rgba(255,255,255,.012)}.m3-obligation-detail>div{min-width:0;padding:10px;border:1px solid rgba(255,255,255,.045);border-radius:11px;background:rgba(255,255,255,.012)}.m3-obligation-detail span,.m3-obligation-detail strong{display:block}.m3-obligation-detail span{color:var(--muted);font-size:.64rem}.m3-obligation-detail strong{margin-top:4px;font-size:.73rem;overflow-wrap:anywhere}
@media(max-width:980px){.m3-obligation-main{grid-template-columns:minmax(0,1fr) auto}.m3-obligation-main>.ui-status,.m3-obligation-main>.m3-row-actions{grid-column:1/-1;justify-self:start}.m3-obligation-main .m3-row-actions{justify-content:flex-start}.m3-obligation-detail{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.m3-obligation-main,.m3-obligation-detail{grid-template-columns:1fr}.m3-obligation-main>.ui-status,.m3-obligation-main>.m3-row-actions{grid-column:1}.m3-obligation-main .m3-row-actions>*{flex:1 1 150px;justify-content:center}.m3-dashboard-obligations .section-head{gap:10px}.m3-dashboard-obligations .text-btn{white-space:normal}}

/* Profil fiscal & social */
.m3-regulatory-profile{margin-top:14px}.m3-regulatory-summary{margin:0 0 16px;color:var(--muted);font-size:.74rem;line-height:1.55}.m3-regulatory-form{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.m3-regulatory-form label{display:grid;gap:6px;color:var(--muted-strong);font-size:.72rem}.m3-regulatory-form input,.m3-regulatory-form select,.m3-regulatory-form textarea{width:100%;min-width:0;border:1px solid var(--line);border-radius:12px;background:#0c1c36;color:var(--text);padding:0 12px;font:inherit}.m3-regulatory-form input,.m3-regulatory-form select{min-height:44px}.m3-regulatory-form textarea{padding-top:11px;padding-bottom:11px;resize:vertical}.m3-regulatory-form .full{grid-column:1/-1}.m3-regulatory-actions{display:flex;align-items:center;justify-content:space-between;gap:14px;flex-wrap:wrap}.m3-regulatory-actions .primary-action{margin-left:auto}@media(max-width:680px){.m3-regulatory-form{grid-template-columns:1fr}.m3-regulatory-form .full{grid-column:1}.m3-regulatory-actions{align-items:stretch}.m3-regulatory-actions .primary-action{margin-left:0;width:100%}}

/* Pass 3 - simulateurs fiscaux */
.m3-simulator-grid{align-items:start}.m3-sim-form{display:grid;gap:12px}.m3-sim-form label{display:grid;gap:6px;color:var(--muted-strong);font-size:.72rem}.m3-sim-form input,.m3-sim-form select{min-height:44px;border:1px solid var(--line);border-radius:12px;background:#0c1c36;color:var(--text);padding:0 12px}.m3-sim-output{margin-top:16px;padding:14px;border:1px solid rgba(100,219,255,.12);border-radius:14px;background:rgba(100,219,255,.025)}.m3-sim-output p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.55}.m3-sim-result-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.m3-sim-result-grid>div{padding:11px;border:1px solid rgba(255,255,255,.055);border-radius:12px;background:rgba(255,255,255,.015)}.m3-sim-result-grid span,.m3-sim-result-grid strong{display:block}.m3-sim-result-grid span{color:var(--muted);font-size:.66rem}.m3-sim-result-grid strong{margin-top:4px;font-size:.92rem}.m3-sim-warning{margin-top:12px!important;color:#d9b986!important}.m3-sim-error{display:grid;gap:4px;color:#ffd1d1}.m3-sim-error span{font-size:.72rem}.m3-source-link{display:inline-flex;margin-top:12px}@media(max-width:680px){.m3-sim-result-grid{grid-template-columns:1fr}}

/* Pass 4 - RH & Paie foundation */
.m3-employee-list{display:grid;gap:12px}.m3-employee-card{display:grid;grid-template-columns:minmax(220px,1.5fr) repeat(4,minmax(120px,.7fr)) auto;gap:12px;align-items:center;padding:15px;border:1px solid rgba(255,255,255,.055);border-radius:16px;background:rgba(255,255,255,.016)}.m3-employee-card h3{margin:3px 0;font-size:.96rem}.m3-employee-card small,.m3-employee-card span{color:var(--muted);font-size:.67rem}.m3-employee-card strong{display:block;margin-top:4px;font-size:.77rem;color:var(--text)}
@media(max-width:1000px){.m3-employee-card{grid-template-columns:repeat(2,minmax(0,1fr))}.m3-employee-card>div:first-child{grid-column:1/-1}}@media(max-width:680px){.m3-employee-card{grid-template-columns:1fr}.m3-employee-card>div:first-child{grid-column:auto}}

.m3-payroll-month-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.m3-payroll-month-actions input{min-height:42px;padding:0 12px;border:1px solid rgba(116,160,220,.25);border-radius:12px;background:rgba(9,20,38,.72);color:#eaf2ff}.m3-payroll-summary{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;margin:18px 0}.m3-payroll-summary>div{padding:14px;border:1px solid rgba(116,160,220,.15);border-radius:14px;background:rgba(10,23,43,.5);display:grid;gap:5px}.m3-payroll-summary span{font-size:.72rem;color:#91a8c7}.m3-payroll-summary strong{font-size:1.15rem}.m3-payroll-list{display:grid;gap:14px}.m3-payroll-employee{border:1px solid rgba(116,160,220,.16);border-radius:16px;padding:16px;background:rgba(9,20,38,.45)}.m3-payroll-employee.blocked{border-color:rgba(255,111,123,.34)}.m3-payroll-employee.verify{border-color:rgba(255,196,87,.28)}.m3-payroll-head{display:flex;justify-content:space-between;gap:16px;align-items:flex-start}.m3-payroll-head h3{margin:4px 0}.m3-payroll-messages{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.m3-payroll-messages span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.045);font-size:.72rem;color:#c8d6ea}.m3-payroll-vars{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin:14px 0}.m3-payroll-vars label{display:grid;gap:6px}.m3-payroll-vars label span,.m3-payroll-confirm{font-size:.72rem;color:#9eb2d0}.m3-payroll-vars input{width:100%;min-height:40px;padding:0 10px;border:1px solid rgba(116,160,220,.2);border-radius:10px;background:rgba(9,20,38,.72);color:#eef5ff}.m3-payroll-confirm{display:flex;align-items:center;gap:8px;margin:4px 0 14px}.m3-payroll-empty{padding:24px;text-align:center;border:1px dashed rgba(116,160,220,.2);border-radius:14px;color:#9eb2d0}.m3-payroll-empty strong{display:block;color:#eef5ff;margin-bottom:6px}@media(max-width:900px){.m3-payroll-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.m3-payroll-vars{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:560px){.m3-payroll-head{display:grid}.m3-payroll-month-actions{width:100%}.m3-payroll-month-actions input,.m3-payroll-month-actions button{width:100%}}
.m3-payroll-source-health{display:flex;gap:12px;align-items:center;flex-wrap:wrap;padding:12px 14px;border:1px solid rgba(120,150,210,.18);border-radius:14px;margin:12px 0}.m3-payroll-source-health small{color:#90a6c8}.m3-payroll-engine-list{display:grid;gap:12px}.m3-payroll-engine-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:12px;align-items:center;padding:14px;border:1px solid rgba(120,150,210,.16);border-radius:16px}.m3-payroll-engine-row.blocked{opacity:.9}.m3-payroll-calc-result{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.m3-payroll-calc-result>div{padding:10px 12px;border:1px solid rgba(120,150,210,.12);border-radius:12px}.m3-payroll-calc-result span{display:block;font-size:.72rem;color:#90a6c8}.m3-payroll-calc-result b{display:block;margin-top:4px}.m3-payroll-calc-result p{grid-column:1/-1;margin:0;color:#9db0cf;font-size:.78rem}.m3-payroll-error{color:#ffb1b1!important}@media(max-width:820px){.m3-payroll-engine-row{grid-template-columns:1fr}.m3-payroll-calc-result{grid-template-columns:repeat(2,minmax(0,1fr))}}.m3-employee-detail-card{width:min(1080px,94vw);max-height:90vh;overflow:auto}.m3-employee-completeness{display:flex;gap:8px;flex-wrap:wrap;align-items:center;margin:12px 0 18px}.m3-employee-completeness p{margin:0;padding:7px 10px;border-radius:10px;background:rgba(255,255,255,.05);font-size:.85rem}.m3-employee-completeness p.blocked{border:1px solid rgba(255,120,120,.35)}.m3-employee-subgrids{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:20px}.m3-employee-subgrids>section{border:1px solid rgba(255,255,255,.1);border-radius:16px;padding:16px}.m3-employee-subgrids form{display:grid;grid-template-columns:1fr 1fr;gap:10px}.m3-employee-subgrids label{display:grid;gap:5px;font-size:.82rem}.m3-employee-history{display:grid;gap:8px;margin-top:14px}.m3-employee-history>div{display:grid;gap:3px;padding:10px;border-radius:10px;background:rgba(255,255,255,.04)}.m3-employee-history span,.m3-employee-history small{opacity:.78}@media(max-width:760px){.m3-employee-subgrids{grid-template-columns:1fr}.m3-employee-subgrids form{grid-template-columns:1fr}}

/* Pass 9 - payslip drafts */
.m3-payroll-drafts-list{display:grid;gap:12px;margin-top:14px}.m3-payslip-draft-card{display:grid;grid-template-columns:minmax(220px,1fr) 180px auto auto;gap:16px;align-items:center;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}.m3-payslip-draft-card.blocked{border-color:rgba(255,90,90,.28)}.m3-payslip-draft-card.verify{border-color:rgba(255,196,80,.28)}.m3-payslip-draft-preview{margin-top:18px}.m3-payslip-sheet{background:#fff;color:#172033;border:1px solid #d9e0ea;border-radius:14px;padding:28px;box-shadow:0 12px 40px rgba(0,0,0,.18)}.m3-payslip-banner{display:flex;justify-content:space-between;gap:16px;padding:10px 14px;border:1px solid #d8a8a8;background:#fff7f7;border-radius:10px;color:#7b2222}.m3-payslip-sheet header{display:grid;grid-template-columns:1fr 1fr;gap:28px;padding:24px 0;border-bottom:1px solid #dfe5ed}.m3-payslip-sheet header h3{margin:4px 0 6px;color:#172033}.m3-payslip-sheet header p,.m3-payslip-sheet header small{color:#5e6879}.m3-payslip-period{display:grid;grid-template-columns:auto 1fr auto 1fr auto 1fr;gap:10px 14px;padding:15px 0;border-bottom:1px solid #dfe5ed;align-items:center}.m3-payslip-period span{color:#6a7484}.m3-payslip-lines{padding:14px 0}.m3-payslip-line{display:grid;grid-template-columns:130px 1fr 90px 130px;gap:12px;padding:9px 4px;border-bottom:1px solid #eef1f5}.m3-payslip-line span{color:#6a7484}.m3-payslip-line b{text-align:right}.m3-payslip-totals{display:grid;grid-template-columns:repeat(2,minmax(180px,1fr));gap:10px;padding:16px;border:1px solid #dfe5ed;border-radius:10px;background:#fbfcfe}.m3-payslip-totals div{display:flex;justify-content:space-between;gap:12px}.m3-payslip-totals .major{grid-column:1/-1;padding-top:10px;border-top:1px solid #dfe5ed;font-size:1.08rem}.m3-payslip-issues{margin-top:12px;padding:12px 14px;border-radius:10px}.m3-payslip-issues.blocked{background:#fff2f2;border:1px solid #e8b1b1}.m3-payslip-issues.verify{background:#fff9ea;border:1px solid #ead39b}.m3-payslip-sheet footer{display:flex;justify-content:space-between;gap:20px;margin-top:18px;padding-top:14px;border-top:1px solid #dfe5ed;color:#667085;font-size:.82rem}.m3-payslip-sheet footer strong{color:#344054}@media(max-width:1050px){.m3-payslip-draft-card{grid-template-columns:1fr 1fr}.m3-payslip-sheet header{grid-template-columns:1fr}.m3-payslip-period{grid-template-columns:auto 1fr}.m3-payslip-line{grid-template-columns:100px 1fr 90px}.m3-payslip-line b{grid-column:3}.m3-payslip-totals{grid-template-columns:1fr}}

/* Pass 10 — payroll draft details */
.m3-payslip-payment{display:flex;gap:12px;align-items:end;justify-content:flex-end;margin:14px 0}.m3-payslip-payment label{display:grid;gap:6px}.m3-payslip-payment input{min-width:170px}.m3-payslip-contrib{margin-top:18px}.m3-payslip-contrib h4,.m3-payslip-cumul h4{margin:0 0 10px}.m3-payslip-contrib-head,.m3-payslip-contrib-row{display:grid;grid-template-columns:minmax(220px,1fr) 130px 130px;gap:12px;align-items:center;padding:8px 10px;border-bottom:1px solid rgba(15,23,42,.12)}.m3-payslip-contrib-head{font-size:.78rem;text-transform:uppercase;font-weight:700}.m3-payslip-contrib-row b{text-align:right}.m3-payslip-cumul{margin-top:18px;padding:14px;border:1px solid rgba(15,23,42,.14);border-radius:12px}.m3-payslip-cumul>div{display:flex;justify-content:space-between;gap:20px;padding:6px 0}.m3-payslip-cumul small{display:block;margin-top:8px;line-height:1.45}.m3-payroll-empty{padding:10px 0}

.m3-payslip-draft-card.validated{border-color:rgba(61,205,135,.45);box-shadow:0 0 0 1px rgba(61,205,135,.08) inset}.m3-payroll-finalize,.m3-payroll-lock{margin:18px 0;padding:15px 16px;border:1px solid rgba(80,170,255,.28);border-radius:14px;background:rgba(24,78,140,.08);display:flex;align-items:center;gap:12px;flex-wrap:wrap}.m3-payroll-lock{border-color:rgba(61,205,135,.35);background:rgba(61,205,135,.08)}.m3-payroll-finalize strong,.m3-payroll-lock strong{font-size:.95rem}.m3-payroll-finalize span,.m3-payroll-lock span{flex:1;min-width:220px;color:var(--muted,#a9b6c8);font-size:.82rem}.m3-payroll-finalize .primary-action,.m3-payroll-lock .primary-action{margin-left:auto}.m3-payslip-payment input:disabled{opacity:.7;cursor:not-allowed}

/* PASS13 — payroll corrections + obligation payment proofs */
.m3-obligation-proofs{grid-column:1/-1;border-top:1px solid rgba(148,163,184,.22);padding-top:10px}.m3-obligation-proofs>[data-obligation-proofs-list]{display:grid;gap:7px;margin-top:8px}.m3-proof-row{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:center;padding:8px 10px;border:1px solid rgba(148,163,184,.18);border-radius:10px}.m3-proof-row small{grid-column:1/2;opacity:.7}.m3-proof-row .ghost-action{grid-column:2;grid-row:1/3}.m3-correction-open{display:grid;gap:4px;padding:10px 12px;border:1px solid rgba(245,158,11,.45);border-radius:12px;background:rgba(245,158,11,.08)}.m3-correction-open span{font-size:.82rem;opacity:.82}

.m3-dsn-actions{display:flex;gap:.7rem;align-items:center;flex-wrap:wrap}.m3-dsn-actions input{background:rgba(13,24,45,.9);border:1px solid rgba(122,172,255,.25);color:#eef6ff;border-radius:12px;padding:.7rem .85rem}.m3-dsn-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(135px,1fr));gap:.75rem;margin-top:1rem}.m3-dsn-summary>div{padding:.85rem;border:1px solid rgba(122,172,255,.16);border-radius:14px;background:rgba(18,29,52,.52)}.m3-dsn-summary span,.m3-dsn-note span,.m3-dsn-note small{display:block;color:var(--muted,#9fb0c8);font-size:.78rem}.m3-dsn-summary strong{display:block;margin-top:.28rem;font-size:1.05rem}.m3-dsn-note{margin-top:.85rem;padding:.8rem 1rem;border-left:3px solid rgba(83,177,255,.65);background:rgba(36,87,145,.08);border-radius:10px}.m3-dsn-note strong{display:block;margin-bottom:.25rem}.m3-dsn-note small{margin-top:.35rem}

.m3-dsn-actions-row{display:flex;flex-wrap:wrap;gap:.6rem;margin:.75rem 0}.m3-dsn-issues,.m3-dsn-history{display:grid;gap:.35rem;margin-top:.7rem}.m3-dsn-issues small{display:block;padding:.45rem .6rem;border:1px solid rgba(245,158,11,.28);border-radius:10px;background:rgba(245,158,11,.06)}.m3-dsn-history{padding:.7rem;border:1px solid rgba(96,165,250,.18);border-radius:12px;background:rgba(15,23,42,.28)}.m3-dsn-history span{font-size:.78rem;color:var(--muted,#94a3b8)}

/* Visual identity fix 2026-10-19: official Comptabilite logo */
.brand-orb.brand-logo{width:78px!important;height:66px!important;padding:0!important;border:0!important;border-radius:16px!important;background:transparent!important;box-shadow:none!important;overflow:visible!important;margin-bottom:16px!important}
.brand-orb.brand-logo img{display:block;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 0 10px rgba(65,210,255,.24)) drop-shadow(0 0 18px rgba(130,74,255,.16))}
.m3-auth-brand-logo{display:block;width:min(180px,58vw);height:auto;margin:0 auto 12px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(65,210,255,.18))}
@media(max-width:980px){.brand-orb.brand-logo{display:none!important}}

/* Employee import / migration */
.m3-employee-import[hidden]{display:none!important}.m3-import-toolbar{display:flex;flex-wrap:wrap;gap:12px;align-items:end;margin:14px 0}.m3-import-file{min-width:240px;flex:1}.m3-import-file span{display:block;margin-bottom:7px}.m3-import-file input{width:100%}.m3-import-mapping{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;margin:14px 0}.m3-import-mapping label span{display:block;font-size:.82rem;margin-bottom:6px}.m3-import-mapping select{width:100%}.m3-import-summary{display:grid;grid-template-columns:repeat(5,minmax(110px,1fr));gap:10px;margin:14px 0}.m3-import-summary>div{padding:12px;border:1px solid var(--border-soft,rgba(255,255,255,.12));border-radius:14px}.m3-import-summary span{display:block;font-size:.76rem;opacity:.7}.m3-import-summary strong{font-size:1.15rem}.m3-import-table-wrap{overflow-x:auto}.m3-import-table{width:100%;border-collapse:collapse;min-width:760px}.m3-import-table th,.m3-import-table td{padding:10px 9px;text-align:left;border-bottom:1px solid var(--border-soft,rgba(255,255,255,.1));vertical-align:top}.m3-import-table th{font-size:.76rem;opacity:.7}.m3-import-table td{font-size:.86rem}@media(max-width:720px){.m3-import-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.m3-import-toolbar>*{width:100%}.m3-import-mapping{grid-template-columns:1fr 1fr}}

.m3-import-history-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding-top:18px;border-top:1px solid var(--border-soft,rgba(255,255,255,.12))}.m3-import-history-head h3{margin:3px 0 0}.m3-import-history{margin-top:10px}.m3-import-history-table{min-width:900px}.m3-import-history-table .m3-import-rollback{padding:7px 10px;font-size:.78rem;white-space:nowrap}@media(max-width:720px){.m3-import-history-head{align-items:flex-start;flex-direction:column}.m3-import-history-head .ghost-action{width:100%}}

.m3-import-profilebar{display:flex;flex-wrap:wrap;align-items:end;gap:10px;margin:12px 0 4px}.m3-import-profilebar label{min-width:240px;flex:1}.m3-import-profilebar label span{display:block;font-size:.82rem;margin-bottom:6px}.m3-import-profilebar select{width:100%}@media(max-width:720px){.m3-import-profilebar>*{width:100%}.m3-import-profilebar label{min-width:0}}

/* Encrypted backups / PRA */
.m3-backups{margin-top:18px}.m3-backup-summary{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px;margin:14px 0}.m3-backup-summary>div{padding:13px 14px;border:1px solid var(--border-soft,rgba(255,255,255,.12));border-radius:14px}.m3-backup-summary span{display:block;font-size:.76rem;opacity:.72;margin-bottom:4px}.m3-backup-summary strong{font-size:1rem}.m3-backup-table-wrap{overflow-x:auto}.m3-backup-table{width:100%;border-collapse:collapse;min-width:860px}.m3-backup-table th,.m3-backup-table td{padding:10px 9px;text-align:left;border-bottom:1px solid var(--border-soft,rgba(255,255,255,.1));vertical-align:middle}.m3-backup-table th{font-size:.76rem;opacity:.7}.m3-backup-table td{font-size:.85rem}.m3-backup-table .m3-row-actions{flex-wrap:nowrap}@media(max-width:760px){.m3-backup-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.m3-backups .section-head{align-items:flex-start}.m3-backups .section-head>.m3-row-actions{width:100%;flex-wrap:wrap}.m3-backups .section-head>.m3-row-actions button{flex:1}}

/* Centre d'importation unifié */
.m3-import-center-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin-bottom:16px}.m3-import-center-card{display:grid;gap:14px;min-height:190px;padding:18px;border:1px solid rgba(120,170,230,.16);border-radius:18px;background:rgba(255,255,255,.018)}.m3-import-center-card.pending{opacity:.72}.m3-import-center-card h3{margin:4px 0 6px}.m3-import-center-card p{margin:0;color:var(--muted);font-size:.72rem;line-height:1.45}.m3-import-center-card .ui-status{justify-self:start}.m3-import-center-card button{align-self:end;justify-self:start}.m3-universal-import{margin-top:14px}.m3-import-center-history{margin-top:14px}.m3-import-toolbar>label:not(.form-check){display:grid;gap:6px;color:var(--muted-strong);font-size:.72rem}.m3-import-toolbar select{min-height:42px;border:1px solid var(--line);border-radius:12px;background:#0c1c36;color:var(--text);padding:0 11px}.m3-import-center-card button:disabled{cursor:not-allowed;opacity:.55}@media(max-width:980px){.m3-import-center-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media(max-width:680px){.m3-import-center-grid{grid-template-columns:1fr}.m3-import-center-card{min-height:0}.m3-import-toolbar>label:not(.form-check){width:100%}}
