:root{color:#17263c;font-synthesis:none;text-rendering:optimizelegibility;background:#f5f7fb;font-family:Inter,system-ui,Arial,sans-serif}body{min-width:320px;margin:0}button{font:inherit}:root{color:#1d2d44;font-synthesis:none;background:#f4f7fb;font-family:Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}*{box-sizing:border-box}body{margin:0}button,input,textarea,select{font:inherit}button{transition:background .18s,transform .18s,box-shadow .18s}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline-offset:2px;outline:3px solid #a5c4f0}button:disabled{opacity:.55;cursor:not-allowed}.app-layout{min-height:100vh;display:flex}.sidebar{color:#fff;z-index:30;background:linear-gradient(165deg,#101e34 0%,#172d4a 75%,#1c3453 100%);flex-direction:column;flex-shrink:0;width:270px;height:100vh;padding:30px 18px;display:flex;position:sticky;top:0}.brand{align-items:center;gap:13px;padding:0 9px 38px;display:flex}.brand-symbol{color:#172942;background:linear-gradient(135deg,#d4a75e,#f0d7a4);border-radius:14px;place-items:center;width:47px;height:47px;display:grid;box-shadow:0 8px 25px #080f1b45}.brand h2{letter-spacing:-.7px;margin:0;font-size:23px}.brand p{color:#aabdd3;margin:4px 0 0;font-size:12px}.sidebar-caption{letter-spacing:2px;color:#8fa6c0;margin-bottom:15px;padding:0 16px;font-size:10px;font-weight:800}.sidebar nav{gap:7px;display:grid}.sidebar nav button{color:#bdcee0;text-align:left;cursor:pointer;background:0 0;border:1px solid #0000;border-radius:12px;align-items:center;gap:13px;width:100%;padding:14px 15px;font-size:14px;font-weight:600;display:flex}.sidebar nav button:hover{color:#fff;background:#ffffff12}.sidebar nav button.nav-active{color:#fff;background:linear-gradient(90deg,#ffffff23,#ffffff0e);border-color:#fff2;box-shadow:inset 3px 0 #e8c58c}.nav-chevron{color:#e8c58c;margin-left:auto}.sidebar-bottom{margin-top:auto}.sidebar-info{color:#e8c58c;background:#ffffff0b;border:1px solid #ffffff16;border-radius:14px;align-items:center;gap:11px;padding:14px;display:flex}.sidebar-info div{gap:4px;display:grid}.sidebar-info strong{color:#fff;font-size:13px}.sidebar-info span{color:#a9bfd5;font-size:11px}.logout-button{color:#d6e0ee;text-align:left;cursor:pointer;background:0 0;border:0;border-radius:11px;align-items:center;gap:11px;width:100%;margin-top:16px;padding:13px 15px;display:flex}.logout-button:hover{background:#ffffff14}.sidebar-footer{color:#a6bad1;margin-top:15px;padding:10px 13px 0;font-size:11px}.environment-dot{background:#6fd6aa;border-radius:50%;width:7px;height:7px;margin-right:7px;display:inline-block}.mobile-header,.mobile-scrim{display:none}.main-content{background:radial-gradient(circle at 100% 0,#e8effa 0%,#0000 32%),#f4f7fb;flex:1;min-width:0;max-width:100%;padding:0 40px 25px}.topbar{border-bottom:1px solid #e5ebf3;justify-content:space-between;align-items:center;gap:16px;height:76px;margin-bottom:34px;display:flex}.breadcrumb{color:#8190a4;align-items:center;gap:10px;font-size:13px;display:flex}.breadcrumb strong{color:#2a3c54}.topbar-status{color:#60748c;background:#fff;border:1px solid #e5ebf2;border-radius:30px;align-items:center;gap:8px;padding:9px 13px;font-size:12px;display:flex}.content-footer{color:#9aa8b9;text-align:center;border-top:1px solid #e2e9f2;margin-top:38px;padding:22px 0 4px;font-size:12px}.content-footer span{margin:0 7px}.eyebrow{color:#a98047;letter-spacing:2px;margin-bottom:10px;font-size:10px;font-weight:800;display:block}.page-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-bottom:24px;display:flex}.page-heading h1,.main-content h1{letter-spacing:-1.2px;color:#172b45;margin:0 0 8px;font-size:clamp(26px,3vw,35px)}.page-heading p,.dashboard-page>p{color:#7c8da2;margin:0;font-size:14px}.primary-button,.secondary-button{cursor:pointer;border-radius:10px;justify-content:center;align-items:center;gap:8px;padding:11px 17px;font-size:13px;font-weight:700;display:inline-flex}.primary-button{color:#fff;background:#1c436e;border:1px solid #1c436e;box-shadow:0 5px 14px #1c436e21}.primary-button:hover:not(:disabled){background:#285786}.secondary-button{color:#28496c;background:#fff;border:1px solid #d8e2ee}.secondary-button:hover:not(:disabled){background:#f1f6fb}.portfolio-banner{color:#fff;background:linear-gradient(115deg,#14253e 0%,#1f4168 100%);border-radius:20px;justify-content:space-between;align-items:center;gap:24px;padding:30px 34px;display:flex;position:relative;overflow:hidden;box-shadow:0 15px 35px #172f5020}.portfolio-banner:after{content:"";border:60px solid #ffffff0a;border-radius:50%;width:330px;height:330px;position:absolute;top:-110px;right:-60px}.portfolio-banner h2{letter-spacing:-.7px;margin:7px 0 10px;font-size:clamp(21px,2.6vw,30px)}.portfolio-banner p{color:#c4d5e8;margin:0;font-size:13px}.portfolio-eyebrow{letter-spacing:2px;color:#e9c991;font-size:10px;font-weight:800}.portfolio-mark{color:#e9c991;z-index:1;background:#ffffff13;border:1px solid #ffffff30;border-radius:23px;flex-shrink:0;place-items:center;width:76px;height:76px;display:grid}.dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:17px;margin:23px 0;display:grid}.stat-card,.premium-stat{background:#fff;border:1px solid #e5ebf3;border-radius:17px;padding:22px;box-shadow:0 5px 22px #1d385708}.stat-card{gap:12px;display:grid}.stat-card span{color:#6c7e94;font-size:13px}.stat-card strong{color:#203750;overflow-wrap:anywhere;font-size:clamp(20px,2vw,26px)}.premium-stat{flex-direction:column;gap:15px;min-width:0;display:flex;position:relative;overflow:hidden}.premium-stat:before{content:"";background:#8db6e6;width:100%;height:3px;position:absolute;top:0;left:0}.premium-stat-gold:before{background:#e7c081}.premium-stat-violet:before{background:#b4a3ed}.premium-stat-rose:before{background:#f0a4a4}.premium-stat-mint:before{background:#7dd2b3}.premium-stat-top{justify-content:space-between;align-items:center;gap:10px;display:flex}.premium-stat-label{color:#71839a;font-size:12px;font-weight:600}.premium-stat-icon{color:#4c7fb5;background:#ecf4ff;border-radius:12px;flex-shrink:0;place-items:center;width:40px;height:40px;display:grid}.premium-stat-gold .premium-stat-icon{color:#bd914d;background:#fff6e8}.premium-stat-violet .premium-stat-icon{color:#8975c5;background:#f1edff}.premium-stat-rose .premium-stat-icon{color:#c77;background:#fff0f0}.premium-stat-mint .premium-stat-icon{color:#399d76;background:#eafaf3}.premium-stat-value{color:#1d314b;letter-spacing:-.7px;overflow-wrap:anywhere;font-size:clamp(18px,1.9vw,25px)}.premium-stat-detail{color:#95a3b4;font-size:11px}.premium-secondary-grid{margin-top:-5px}.dashboard-panels{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);gap:20px;margin-top:24px;display:grid}.premium-panel{background:#fff;border:1px solid #e5ebf3;border-radius:18px;overflow:hidden;box-shadow:0 5px 22px #1d385708}.panel-heading{justify-content:space-between;align-items:center;gap:10px;padding:25px 25px 18px;display:flex}.panel-heading h2{color:#1b304a;letter-spacing:-.4px;margin:0 0 5px;font-size:19px}.panel-heading p{color:#8b9aae;margin:0;font-size:12px}.panel-heading .eyebrow{margin-bottom:7px}.panel-icon{color:#9aadc2}.table-container{background:#fff;border:1px solid #e8edf4;border-radius:14px;overflow-x:auto}.premium-panel .table-container{border:0;border-radius:0}table{border-collapse:collapse;width:100%}th,td{text-align:left;border-bottom:1px solid #edf1f6;padding:15px 16px;font-size:13px}th{text-transform:uppercase;letter-spacing:.7px;color:#8292a5;background:#f8fafc;font-size:11px;font-weight:800}td{color:#465a72}tbody tr:hover{background:#f9fbfe}tbody tr:last-child td{border-bottom:0}.client-identity{align-items:center;gap:10px;display:flex}.client-avatar{color:#3e638b;background:#eaf1fb;border-radius:10px;flex-shrink:0;place-items:center;width:33px;height:33px;font-size:13px;font-weight:800;display:grid}.client-identity strong{color:#263e59}.currency-pill,.status-pill{border-radius:20px;align-items:center;padding:5px 9px;font-size:10px;font-weight:800;display:inline-flex}.currency-pill{color:#3e6e9e;background:#eaf2fc}.currency-cdf{color:#a77933;background:#fff4e2}.amount-cell{color:#243d58;white-space:nowrap;font-weight:800}.due-list{padding:0 23px 14px}.due-item{border-top:1px solid #edf1f6;align-items:center;gap:12px;padding:15px 0;display:flex}.due-indicator{color:#ba8b48;background:#fff4e5;border-radius:12px;flex-shrink:0;place-items:center;width:39px;height:39px;display:grid}.due-indicator.is-overdue{color:#c56b6b;background:#fff0ef}.due-details{flex:1;gap:5px;min-width:0;display:grid}.due-details strong{color:#293f59;overflow-wrap:anywhere;font-size:13px}.due-details small{color:#8b9aad;font-size:11px}.due-amount{text-align:right;justify-items:end;gap:6px;display:grid}.due-amount strong{white-space:nowrap;font-size:12px}.status-danger{color:#b95353;background:#ffefed}.status-warning{color:#a37a36;background:#fff4e5}.empty-state{text-align:center;color:#94a3b5;padding:26px!important}.loading-panel{color:#6c8099;justify-content:center;align-items:center;gap:12px;min-height:280px;display:flex}.loading-spinner{border:2px solid #d6e3f3;border-top-color:#275789;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.client-form{background:#fff;border:1px solid #e5ebf3;border-radius:18px;margin-bottom:24px;padding:26px;box-shadow:0 5px 22px #1d385708}.client-form h2{color:#213851;margin:0 0 22px;font-size:19px}.form-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:18px;display:grid}.form-grid label{color:#455a72;gap:8px;font-size:13px;font-weight:700;display:grid}.form-grid input,.form-grid select,.form-grid textarea,.list-toolbar input,.remboursement-select,.modal-card textarea,.login-card input{color:#263c56;background:#fbfcff;border:1px solid #dce5ef;border-radius:10px;width:100%;min-width:0;padding:12px 13px}.form-grid textarea{resize:vertical}.form-actions{flex-wrap:wrap;gap:12px;margin-top:23px;display:flex}.list-toolbar{color:#7a8ba0;justify-content:space-between;align-items:center;gap:15px;margin-bottom:17px;font-size:13px;display:flex}.list-toolbar input{background:#fff;max-width:390px}.message{border-radius:11px;margin-bottom:18px;padding:14px 17px;font-size:13px}.message.succes{color:#17643b;background:#e9f8ef;border:1px solid #c6ead5}.message.erreur{color:#a53636;background:#fff0f0;border:1px solid #f2d0d0}.modal-overlay{z-index:1000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#0c1c33a8;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.modal-card{background:#fff;border-radius:19px;width:100%;max-width:520px;padding:28px;box-shadow:0 20px 65px #06132940}.modal-card h2{color:#203850;margin-top:0}.modal-card label{gap:8px;font-size:13px;font-weight:700;display:grid}.login-container{background:radial-gradient(circle at 20% 10%,#2e527a 0%,#0000 38%),linear-gradient(135deg,#101e34,#1c385a);justify-content:center;align-items:center;min-height:100vh;padding:24px;display:flex}.login-card{background:#fff;border-radius:23px;gap:16px;width:100%;max-width:465px;padding:39px;display:grid;box-shadow:0 25px 90px #07111f70}.login-emblem{color:#a67b3e;background:#f5ead7;border-radius:16px;place-items:center;width:55px;height:55px;display:grid}.login-card h1{color:#1b304a;letter-spacing:-.8px;margin:0;font-size:27px}.login-card p{color:#7c8da2;margin:0 0 9px;font-size:14px;line-height:1.6}.login-card label{color:#3e526b;font-size:13px;font-weight:700}.login-card button{color:#fff;cursor:pointer;background:#1b416c;border:0;border-radius:11px;justify-content:center;align-items:center;gap:9px;padding:14px;font-weight:800;display:flex}.login-card button:hover{background:#295887}.login-card small{color:#8797a9;align-items:center;gap:8px;font-size:11px;line-height:1.5;display:flex}@media (width<=1250px){.dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-panels{grid-template-columns:1fr}.main-content{padding-left:28px;padding-right:28px}}@media (width<=800px){.mobile-header{z-index:35;color:#fff;background:#14253e;justify-content:space-between;align-items:center;height:62px;padding:0 20px;display:flex;position:sticky;top:0}.mobile-brand{align-items:center;gap:10px;display:flex}.mobile-brand svg{color:#e8c58c}.mobile-header button{color:#fff;cursor:pointer;background:0 0;border:0}.app-layout{display:block}.sidebar{height:calc(100vh - 62px);transition:transform .2s;position:fixed;top:62px;bottom:0;left:0;transform:translate(-105%);box-shadow:12px 0 28px #09152533}.sidebar.sidebar-open{transform:translate(0)}.mobile-scrim{z-index:25;background:#0b1b3180;border:0;width:100%;display:block;position:fixed;inset:62px 0 0}.main-content{padding:0 20px 20px}.topbar{height:60px;margin-bottom:24px}.topbar-status{display:none}}@media (width<=560px){.dashboard-grid{grid-template-columns:1fr;gap:12px}.portfolio-banner{padding:24px}.portfolio-mark{display:none}.premium-stat{padding:19px}.page-heading h1,.main-content h1{font-size:27px}.form-grid{grid-template-columns:1fr}.list-toolbar{flex-direction:column;align-items:stretch}.list-toolbar input{max-width:none}.login-card{padding:26px}.panel-heading{padding:20px}.due-list{padding:0 15px 12px}.due-item{flex-wrap:wrap}.due-amount{margin-left:auto}}.premium-client-grid,.premium-debt-grid{grid-template-columns:repeat(auto-fill,minmax(min(100%,310px),1fr));gap:20px;margin:20px 0 30px;display:grid}.premium-client-card,.premium-debt-card{background:#fff;border:1px solid #e5eaf2;border-radius:20px;min-width:0;padding:24px;transition:transform .18s,box-shadow .18s;box-shadow:0 8px 26px #1227440b}.premium-client-card:hover,.premium-debt-card:hover{transform:translateY(-3px);box-shadow:0 16px 36px #1227441a}.premium-card-head,.premium-debt-footer,.premium-progress-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.premium-avatar{color:#f0c988;letter-spacing:.04em;background:#142c4c;border-radius:16px;place-items:center;width:52px;height:52px;font-weight:800;display:grid}.premium-client-id,.premium-debt-number{color:#75859b;letter-spacing:.04em;font-size:12px;font-weight:700}.premium-client-card h3,.premium-debt-card h3{color:#182b46;overflow-wrap:anywhere;margin:18px 0 10px;font-size:19px;line-height:1.35}.premium-card-meta{color:#60718a;overflow-wrap:anywhere;gap:10px;font-size:13px;display:grid}.premium-card-action{width:100%;margin-top:22px}.premium-debt-motif{color:#718097;min-height:20px;margin:0 0 20px;font-size:13px}.premium-debt-amount{background:#f4f7fb;border-radius:14px;gap:5px;margin-bottom:20px;padding:18px;display:grid}.premium-debt-amount small{color:#687a92}.premium-debt-amount strong{color:#172d4c;overflow-wrap:anywhere;font-size:clamp(20px,2vw,27px)}.premium-status{white-space:nowrap;border-radius:999px;padding:6px 10px;font-size:11px;font-weight:800}.premium-status-paid{color:#187347;background:#e6f7ee}.premium-status-late{color:#ae4039;background:#fff0ee}.premium-status-partial{color:#966014;background:#fff5e4}.premium-status-open{color:#27548b;background:#eaf1fb}.premium-progress-heading{color:#64758c;margin-bottom:10px;font-size:12px}.premium-progress-heading strong{color:#183451}.premium-progress{background:#eaf0f6;border-radius:999px;height:9px;overflow:hidden}.premium-progress>span{border-radius:inherit;background:linear-gradient(90deg,#bd9658,#e9c782);height:100%;transition:width .3s;display:block}.premium-debt-footer{color:#748298;border-top:1px solid #edf0f5;flex-wrap:wrap;margin-top:20px;padding-top:15px;font-size:12px}.premium-empty{text-align:center;color:#65758b;background:#fff;border:1px dashed #cbd5e1;border-radius:18px;grid-column:1/-1;padding:42px 22px}.premium-repayment-progress{margin-top:0}.premium-repayment-progress .premium-progress{height:12px}@media (width<=600px){.premium-client-grid,.premium-debt-grid{grid-template-columns:1fr}.premium-client-card,.premium-debt-card{padding:20px}}.alt-clients-list{flex-direction:column;gap:8px;margin-top:16px;display:flex}.alt-client-row{color:#1e293b;text-align:left;cursor:pointer;background:#fff;border:1px solid #e2e8f0;border-radius:12px;align-items:center;gap:16px;width:100%;padding:14px 18px;transition:background .2s,border-color .2s;display:flex}.alt-client-row:hover,.alt-client-row[aria-expanded=true]{background:#f1f5f9;border-color:#94a3b8}.alt-client-primary{flex-direction:column;flex:1;gap:4px;min-width:0;display:flex}.alt-client-primary small{color:#64748b}.alt-client-phone{color:#475569;font-size:14px}.alt-client-chevron{color:#64748b;font-size:26px}.alt-client-detail{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-top:20px;padding:24px;box-shadow:0 8px 24px #0f172a0f}.alt-client-detail-head{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:24px;display:flex}.alt-client-detail-head h2{margin:8px 0}.alt-client-detail-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;display:grid}.alt-client-detail-grid strong,.alt-client-observations strong{color:#64748b;font-size:13px}.alt-client-detail-grid p,.alt-client-observations p{overflow-wrap:anywhere;margin-top:6px}.alt-client-observations{border-top:1px solid #e2e8f0;margin:20px 0;padding-top:16px}@media (width<=640px){.alt-client-phone{display:none}.alt-client-detail{padding:16px}.alt-client-detail-grid{grid-template-columns:1fr}.alt-client-row{padding:12px}}.alt-modal-overlay{z-index:9999;background:#0f172aa6;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.alt-modal{color:#1e293b;background:#fff;border-radius:18px;width:min(100%,680px);max-height:90vh;padding:28px;overflow-y:auto;box-shadow:0 24px 70px #00000040}.alt-modal-header{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.alt-modal-header h2{margin:8px 0}.alt-modal-close{color:#334155;cursor:pointer;background:#f1f5f9;border:0;border-radius:50%;flex-shrink:0;width:38px;height:38px;font-size:26px}.alt-modal-close:hover{background:#e2e8f0}.alt-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;margin-top:24px;padding:16px 0;display:flex}.alt-pagination-info{color:#64748b;font-size:14px}.alt-pagination-buttons{flex-wrap:wrap;gap:6px;display:flex}.alt-pagination-buttons button{color:#334155;cursor:pointer;background:#fff;border:1px solid #cbd5e1;border-radius:8px;min-width:38px;min-height:38px;padding:7px 12px}.alt-pagination-buttons button:hover:not(:disabled){background:#f1f5f9}.alt-pagination-buttons button.active{color:#fff;background:#1e293b;border-color:#1e293b}.alt-pagination-buttons button:disabled{opacity:.4;cursor:not-allowed}@media (width<=640px){.alt-modal{max-height:95vh;padding:18px}.alt-pagination{flex-direction:column;align-items:stretch}.alt-pagination-buttons{justify-content:center}}.alt-account-form{flex-direction:column;gap:18px;max-width:650px;display:flex}.alt-account-form>label:not(.alt-account-choice){flex-direction:column;gap:8px;display:flex}.alt-account-choice{cursor:pointer;align-items:center;gap:12px;font-weight:600;display:flex}.alt-account-choice input{flex-shrink:0;width:18px;height:18px}.alt-account-hint{color:#64748b;margin:0;font-size:13px}.alt-account-separator{border-top:1px solid #e2e8f0;margin:4px 0}
