:root{color-scheme:light;--navy:#0d1726;--navy2:#162439;--blue:#3c78ff;--violet:#7056df;--bg:#f4f6fa;--ink:#182339;--muted:#768296;--border:#e6eaf2;--shadow:0 5px 24px rgba(14,28,53,.035)}*{box-sizing:border-box}html{font-family:Inter,-apple-system,BlinkMacSystemFont,"Segoe UI",Arial,sans-serif;font-size:14px}body{margin:0;color:var(--ink);background:var(--bg)}a{color:#3762db;text-decoration:none}a:hover{text-decoration:underline}button,input,select,textarea{font:inherit}button{cursor:pointer}button:disabled{opacity:.5;cursor:not-allowed}label{font-size:12px;font-weight:650;color:#42516b;display:flex;flex-direction:column;gap:7px}input,select,textarea{border:1px solid #dbe2ee;background:#fff;color:#1a2639;border-radius:9px;padding:10px 12px;width:100%;outline:none;min-width:0}input:focus,select:focus,textarea:focus{border-color:#7394ed;box-shadow:0 0 0 3px #d7e3ff}input[type=checkbox]{width:auto;accent-color:var(--blue)}.app-shell{min-height:100vh;display:grid;grid-template-columns:238px minmax(0,1fr)}.sidebar{background:var(--navy);color:#f2f6ff;display:flex;flex-direction:column;min-height:100vh;position:sticky;top:0;height:100vh}.brand{display:flex;align-items:center;gap:10px;padding:29px 22px 39px;font-size:14px}.brand strong{display:block;letter-spacing:-.3px}.brand small{display:block;font-size:11px;color:#8998b1;margin-top:4px}.logomark{display:flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:10px;flex:none;background:linear-gradient(135deg,#648efe,#7a5bd9);color:white;font-weight:800;letter-spacing:-1px;font-size:16px}.sidebar nav{padding:0 10px;display:flex;flex-direction:column;gap:5px}.nav-link{color:#96a5ba;display:flex;gap:13px;align-items:center;padding:13px 12px;border-radius:9px;font-weight:600;font-size:12.8px}.nav-link:hover{background:#1b2d44;color:#fff;text-decoration:none}.nav-link.selected{color:#fff;background:#263957}.nav-icon{font-size:18px;line-height:1;width:23px;text-align:center}.sidebar-foot{color:#7f91ac;font-size:11px;line-height:2;margin-top:auto;padding:24px}.sidebar-foot a{color:#b7c8df}.online-dot{display:inline-block;width:7px;height:7px;background:#50c79e;border-radius:50%;margin-right:7px}.main-column{min-width:0;display:flex;flex-direction:column}.topbar{height:88px;background:#fff;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;align-items:center;padding:0 35px;gap:14px}.header-title{font-weight:750;font-size:18px;letter-spacing:-.5px}.overline,.eyebrow{font-weight:750;font-size:10px;letter-spacing:1.8px;color:#8090a9;margin:0 0 6px}.period-chip{padding:10px 13px;border-radius:9px;background:#f5f7fb;border:1px solid #e8edf5;font-size:12px;font-weight:680;white-space:nowrap}.menu-toggle{display:none;border:0;background:transparent;font-size:22px}.content{width:100%;max-width:1460px;margin:0 auto;padding:34px 35px 50px;flex:1}.page-intro{display:flex;justify-content:space-between;align-items:center;gap:20px;margin-bottom:26px}.page-intro h1{font-size:26px;letter-spacing:-.8px;margin:0 0 9px;font-weight:780}.muted{color:var(--muted);line-height:1.55}.page-intro p.muted{margin:0}.metric-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:22px}.metric{background:#fff;padding:23px 23px 20px;border:1px solid var(--border);border-radius:13px;box-shadow:var(--shadow);min-height:134px}.metric.accent{background:linear-gradient(135deg,#1c3254,#192a47);color:#fff;border-color:#192a47}.metric-label{font-size:12px;font-weight:650;color:#8190a4}.metric.accent .metric-label,.metric.accent .metric-sub{color:#aebcd8}.metric-value{font-size:25px;line-height:1.3;letter-spacing:-1px;font-weight:780;margin-top:13px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.metric-sub{color:#8e99a9;font-size:10.7px;margin-top:6px}.two-col{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-bottom:20px}.two-col.wide-left{grid-template-columns:minmax(0,1.58fr) minmax(280px,1fr)}.three-col{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;margin-bottom:20px}.panel{background:#fff;border:1px solid var(--border);border-radius:13px;padding:24px 26px;box-shadow:var(--shadow);margin-bottom:20px;min-width:0}.two-col .panel,.three-col .panel{margin-bottom:0}.panel.small{padding:22px;min-height:145px}.panel h2{font-size:15px;letter-spacing:-.3px;margin:0 0 18px}.panel h3{font-size:13px;margin:16px 0 12px}.panel p{line-height:1.65}.panel-head{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:14px}.panel-head h2{margin:0}.panel-head a{font-size:12px;font-weight:650}.breakdown{display:flex;flex-direction:column;gap:0}.breakdown>div,.mini-lines>div{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:12px 0;border-bottom:1px solid #eef1f6;font-size:12.5px}.breakdown>div:last-child,.mini-lines>div:last-child{border:0}.breakdown span{color:#6e7c90}.breakdown strong,.mini-lines strong{font-size:13px;text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.breakdown .total{background:#f4f7ff;padding:14px;margin:8px -8px 5px;border-radius:9px;font-weight:700;border:0}.breakdown .total span{color:var(--ink)}.headline-value{font-size:33px;font-weight:800;letter-spacing:-1px;padding:0 0 8px}.mini-lines{margin-top:20px}.mini-lines div{padding:9px 0}.border-top{border-top:1px solid var(--border)}.note{background:#f6f8fc;border-left:3px solid #b9c9e9;padding:11px 13px;border-radius:5px;color:#728199;font-size:11.5px;margin-top:16px}.warn-text{color:#9d6638;border-left-color:#f3bb7b}.alert{padding:13px 16px;border-radius:9px;margin-bottom:17px;font-size:12.7px;line-height:1.5}.alert.error{background:#fff0f0;color:#ad3535;border:1px solid #ffcfcf}.alert.success{background:#e9f7ef;color:#137847;border:1px solid #bfebcf}.alert.warn{background:#fff8e9;color:#926521;border:1px solid #f6dfae}.status{display:inline-block;background:#f0f2f7;color:#5e6a7c;padding:6px 9px;border-radius:20px;font-size:10px;font-weight:750;white-space:nowrap}.status.ok{background:#e8f8f0;color:#278b5b}.status.muted-status{background:#f0f2f7}.tag{display:block;font-size:10px;font-weight:500;color:#966f48;margin-top:3px}button.primary,.button.primary{background:#376cf0;color:#fff;border:1px solid #376cf0;border-radius:9px;padding:11px 17px;font-weight:730;display:inline-block;white-space:nowrap}button.primary:hover,.button.primary:hover{background:#245cd9;text-decoration:none}.secondary,.button.secondary{border:1px solid #dfe6f0;color:#344761;background:#fff;padding:11px 16px;border-radius:9px;font-weight:650;display:inline-block;font-size:12px;white-space:nowrap}.secondary:hover{text-decoration:none;background:#f5f7fa}.wide{width:100%;text-align:center}.form-inline{margin:22px 0 8px}.stack{display:flex;flex-direction:column;gap:15px}.stack button{align-self:flex-start}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.toggle{flex-direction:row;align-items:center;font-size:13px;gap:9px;margin-bottom:3px}.transfer-group{border:1px solid var(--border);border-radius:10px;padding:16px;display:flex;flex-direction:column;gap:12px}.transfer-group h3{margin:0}.transfer-group p{margin:0}.mini-amount{font-weight:800;font-size:27px;margin:16px 0 5px;letter-spacing:-1px}.table-wrap{overflow-x:auto;width:100%}table{width:100%;border-collapse:collapse;font-size:12px;text-align:left}th{font-size:10px;color:#8391a5;letter-spacing:.6px;text-transform:uppercase;background:#f8fafe}th,td{padding:13px 11px;border-bottom:1px solid #edf0f5;white-space:nowrap}td{font-variant-numeric:tabular-nums}td:first-child{white-space:normal}tr:last-child td{border-bottom:0}td input{padding:8px;min-width:100px}.empty{text-align:center;color:#929eaf;padding:35px}.icon-button{border:none;color:#d05656;background:#fff;border-radius:7px;font-size:15px;padding:6px}.icon-button:hover{background:#ffeded}.year-form select{width:auto;min-width:140px}.footer{text-align:center;color:#9ba6b5;font-size:11px;padding:18px 20px 26px}.auth-page{min-height:100vh;background:radial-gradient(circle at 40% 0%,#233b65 0,#0d1726 55%);display:flex;justify-content:center;align-items:center;padding:22px}.auth-box{width:100%;max-width:420px;padding:40px;background:#fff;border-radius:18px;box-shadow:0 25px 90px #0004}.auth-box h1{letter-spacing:-.7px;margin-bottom:4px}.auth-box .logomark{margin-bottom:30px}.auth-box form{display:flex;flex-direction:column;gap:16px;margin-top:25px}.auth-box button{margin-top:6px}.auth-box.installer{max-width:530px}.compact{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.compact .metric{min-height:100px;padding:15px}.compact .metric-value{font-size:20px}.compact .metric-label{font-size:10px}@media(max-width:1180px){.metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.app-shell{grid-template-columns:220px minmax(0,1fr)}.sidebar{width:220px}.content{padding:26px 22px}.topbar{padding:0 22px}}@media(max-width:850px){.app-shell{display:block}.sidebar{position:fixed;z-index:20;left:0;top:0;width:265px;transform:translateX(-110%);transition:transform .2s;box-shadow:0 0 0 transparent}.sidebar.open{transform:translateX(0);box-shadow:0 0 0 150vmax #0d17267c}.topbar{height:73px}.menu-toggle{display:block}.main-column{min-height:100vh}.two-col,.two-col.wide-left{grid-template-columns:1fr}.three-col{grid-template-columns:1fr 1fr}.form-grid.three{grid-template-columns:1fr 1fr}}@media(max-width:550px){.content{padding:24px 14px}.topbar{padding:0 15px}.header-title{font-size:15px}.period-chip{font-size:10px;padding:8px}.page-intro{align-items:flex-start;flex-direction:column}.page-intro h1{font-size:23px}.metric-grid{gap:10px}.metric{padding:15px;min-height:118px}.metric-value{font-size:19px;letter-spacing:-.6px}.metric-label{font-size:11px}.metric-sub{font-size:10px}.panel{padding:18px 15px}.three-col{grid-template-columns:1fr}.form-grid,.form-grid.three{grid-template-columns:1fr}.table-wrap th,.table-wrap td{padding:10px 8px}.compact{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* V1.0.4 — Réserve bancaire et bouton de confirmation du prélèvement URSSAF */
.keep-reserve{border:1px solid #cfdbf5;background:#f7faff;border-radius:13px;padding:24px 26px;margin-bottom:22px}
.keep-reserve-head{display:flex;justify-content:space-between;align-items:center;gap:18px}
.keep-reserve-amount{font-size:34px;font-weight:800;line-height:1.2;letter-spacing:-.7px;font-variant-numeric:tabular-nums}
.keep-reserve-sub{font-size:12px;color:#61748c;line-height:1.5;margin:8px 0 0}
.keep-reserve-breakdown{display:flex;gap:11px 22px;flex-wrap:wrap;margin-top:19px;padding:13px 0;border-top:1px solid #dfe8fb;border-bottom:1px solid #dfe8fb;font-size:12px;color:#62748f}
.keep-reserve-breakdown strong{color:#213958}
.keep-debit{display:flex;justify-content:space-between;align-items:center;gap:18px;padding-top:17px}
.keep-debit h3{font-size:14px;margin:0 0 5px}.keep-debit p{margin:0;font-size:12px}
.keep-debit-figure{margin-top:7px!important;font-weight:700;color:#23395b}
.keep-debit form{flex:none}.keep-reserve-foot{font-size:11px;color:#63728a;line-height:1.5;margin:12px 0 0}
@media(max-width:640px){.keep-reserve{padding:19px 15px}.keep-reserve-head,.keep-debit{align-items:stretch;flex-direction:column}.keep-reserve-amount{font-size:30px}.keep-debit form button{width:100%}}
