
  :root{
    --navy-deep:#0F2136;--navy:#173A5E;--navy-mid:#1F4E78;
    --gold:#C9972E;--gold-light:#E8C876;--green:#2F7D5C;--red:#B33A3A;
    --bg:#F1F3F6;--panel:#FFFFFF;--text:#152033;--muted:#66738A;--line:#E1E5EB;--radius:14px;
  }
  html[data-theme="dark"]{
    --bg:#0B1622;--panel:#132234;--text:#EAF0F7;--muted:#8FA3BE;--line:#22374C;
  }
  *{box-sizing:border-box;}
  html,body{margin:0;padding:0;height:100%;background:var(--bg);}
  body{color:var(--text);font-family:'Inter',system-ui,sans-serif;-webkit-font-smoothing:antialiased;transition:background .2s,color .2s;}
  .page-transition-overlay{position:fixed;inset:0;background:var(--bg);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:18px;z-index:9999;opacity:0;pointer-events:none;transition:opacity .22s ease;}
  .page-transition-overlay.show{opacity:1;pointer-events:all;}
  .page-transition-overlay svg{width:180px;height:180px;color:var(--gold);animation:laptopPulse .9s ease-in-out infinite;}
  .page-transition-overlay .ptext{font-family:'Sora',sans-serif;font-size:15px;font-weight:600;color:var(--text);letter-spacing:.02em;}
  @keyframes laptopPulse{0%,100%{transform:scale(1);opacity:.65;}50%{transform:scale(1.1);opacity:1;}}
  .page-transition-overlay .kpi-icon-big{width:96px;height:96px;border-radius:28px;display:flex;align-items:center;justify-content:center;animation:laptopPulse .8s ease-in-out infinite;}
  .page-transition-overlay .kpi-icon-big svg{width:42px;height:42px;}
  @keyframes cardStackIn{0%{opacity:0;transform:translateY(-18px) scale(.92) rotate(-2.5deg);}100%{opacity:1;transform:translateY(0) scale(1) rotate(0deg);}}
  .stack-in{animation:cardStackIn .45s cubic-bezier(.22,1,.36,1) both;}
  h1,h2,h3,h4,.display{font-family:'Sora',sans-serif;}
  .mono{font-family:'IBM Plex Mono',monospace;font-variant-numeric:tabular-nums;}
  #app{min-height:100vh;display:flex;flex-direction:column;}

  .eyebrow{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--gold-light);font-weight:600;margin-bottom:8px;}
  .login-sub{color:#9FB0C6;font-size:13.5px;margin:0 0 28px;}
  .field{margin-bottom:16px;}
  .field label{display:block;font-size:12px;font-weight:600;color:var(--muted);margin-bottom:6px;}
  .field input,.field select{width:100%;padding:11px 13px;border-radius:10px;border:1.5px solid var(--line);font-size:14px;font-family:inherit;background:#FAFBFC;color:#152033;}
  .field input:focus,.field select:focus{outline:none;border-color:var(--navy-mid);background:#fff;}
  .field input[readonly]{cursor:pointer;background:var(--bg);border-style:dashed;}
  .btn{width:100%;padding:12px;border:none;border-radius:10px;background:var(--navy-deep);color:#fff;font-weight:600;font-size:14px;cursor:pointer;font-family:'Sora',sans-serif;}
  .btn:hover{background:var(--navy);}
  .btn-gold{background:var(--gold);color:var(--navy-deep);}
  .btn-gold:hover{background:var(--gold-light);}
  .login-error{background:#FCEBEA;color:var(--red);font-size:12.5px;padding:9px 12px;border-radius:8px;margin-bottom:14px;display:none;font-weight:500;}

  /* ---------- Écran de connexion (split, fond sombre + illustration) ---------- */
  .login-split{min-height:100vh;display:flex;background:linear-gradient(160deg,#0A1725,#173A5E 70%);}
  .login-illustration{flex:1;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:center;min-height:280px;}
  .login-illustration::before{content:"";position:absolute;inset:0;background:radial-gradient(circle at 75% 15%,rgba(201,151,46,.16),transparent 55%);}
  .orb{position:absolute;border-radius:50%;}
  .orb1{width:380px;height:380px;background:radial-gradient(circle at 32% 30%,#2E5F97,#0F2136 72%);top:-90px;left:-110px;}
  .orb2{width:190px;height:190px;background:radial-gradient(circle at 35% 32%,#F0D9A0,#C9972E 60%,#8A6414 100%);bottom:8%;left:12%;box-shadow:0 0 70px rgba(201,151,46,.4);}
  .orb3{width:70px;height:70px;background:radial-gradient(circle at 35% 32%,#7FA8D6,#1F4E78 100%);top:22%;right:18%;}
  .orb-ring{position:absolute;width:260px;height:260px;border:1.5px solid rgba(232,200,118,.28);border-radius:50%;top:12%;right:-40px;}
  .illustration-stars{position:absolute;inset:0;background-image:radial-gradient(1.5px 1.5px at 20% 30%,rgba(255,255,255,.6),transparent),radial-gradient(1.5px 1.5px at 70% 65%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 85% 25%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 40% 80%,rgba(255,255,255,.4),transparent),radial-gradient(1.5px 1.5px at 55% 15%,rgba(255,255,255,.5),transparent),radial-gradient(1px 1px at 12% 65%,rgba(255,255,255,.4),transparent);}
  .illustration-device{position:absolute;width:520px;height:400px;top:50%;left:50%;transform:translate(-50%,-52%);opacity:.55;pointer-events:none;}
  .illustration-device svg{width:100%;height:100%;}
  .illustration-brand{position:relative;text-align:center;color:#fff;}
  .illustration-logo-glow{position:absolute;left:50%;top:60px;width:190px;height:190px;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,rgba(232,200,118,.32),transparent 70%);animation:logoGlowPulse 2.6s ease-in-out infinite;}
  @keyframes logoGlowPulse{0%,100%{opacity:.6;transform:translate(-50%,-50%) scale(1);}50%{opacity:1;transform:translate(-50%,-50%) scale(1.08);}}
  .illustration-logo{height:130px;width:130px;border-radius:26px;object-fit:cover;box-shadow:0 10px 30px rgba(0,0,0,.35);margin-bottom:16px;position:relative;animation:logoEntrance .7s cubic-bezier(.22,1,.36,1) both;}
  @keyframes logoEntrance{0%{opacity:0;transform:scale(.6) rotate(-8deg);}70%{opacity:1;}100%{opacity:1;transform:scale(1) rotate(0deg);}}
  .illustration-title{font-family:'Sora',sans-serif;font-weight:800;font-size:26px;letter-spacing:.04em;animation:titleFadeUp .6s ease-out .25s both;}
  @keyframes titleFadeUp{0%{opacity:0;transform:translateY(8px);}100%{opacity:1;transform:translateY(0);}}
  .illustration-sub{font-family:'IBM Plex Mono',monospace;font-size:11px;letter-spacing:.18em;text-transform:uppercase;color:#B9C7DB;margin-top:6px;}
  .login-panel{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:center;padding:40px 32px;position:relative;}
  .login-panel-inner{width:100%;max-width:380px;}
  .login-panel-inner h1{font-family:'Playfair Display',serif;font-size:34px;font-weight:700;margin:0 0 8px;color:#fff;letter-spacing:-.01em;}
  .field-dark{margin-bottom:16px;}
  .field-dark label{display:block;font-size:12px;font-weight:600;color:#9FB0C6;margin-bottom:6px;}
  .field-dark .field-dark-wrap{display:flex;align-items:center;border-radius:10px;border:1.5px solid rgba(255,255,255,.16);background:rgba(255,255,255,.06);padding:0 12px;}
  .field-dark .field-dark-wrap:focus-within{border-color:var(--gold);background:rgba(255,255,255,.1);}
  .field-dark .field-dark-wrap svg{flex-shrink:0;color:var(--gold-light);}
  .field-dark .field-dark-wrap input{flex:1;min-width:0;width:auto;border:none;background:none;padding:12px 10px;font-size:14px;font-family:inherit;color:#fff;}
  .field-dark .field-dark-wrap input::placeholder{color:#5F7590;}
  .field-dark .field-dark-wrap input:focus{outline:none;}
  .field-dark .pwd-eye{flex-shrink:0;background:none;border:none;color:#8FA3BE;cursor:pointer;padding:6px;display:flex;align-items:center;justify-content:center;}
  .field-dark .pwd-eye:hover{color:#fff;}
  .login-help-line{text-align:right;margin:-8px 0 18px;}
  .login-help-line span{font-size:12px;color:#8FA3BE;}
  .login-support{text-align:center;font-size:12.5px;color:#8FA3BE;margin-top:16px;}
  .login-support b{color:var(--gold-light);font-weight:600;}
  .login-footer{position:absolute;bottom:22px;left:0;right:0;display:flex;justify-content:center;gap:18px;font-size:11px;color:#4E6180;}
  @media(max-width:760px){
    .login-illustration{display:none;}
    .login-panel{padding:32px 22px;}
    .login-footer{position:static;margin-top:40px;}
  }

  .topbar{background:var(--panel);color:var(--text);padding:10px 20px;display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap;border-bottom:1px solid var(--line);position:sticky;top:0;z-index:50;}
  @media(max-width:1150px){ .header-center{display:none;} }
  @media(max-width:640px){ .topbar .brand .brand-text small{display:none;} }
  .topbar .brand{display:flex;align-items:center;gap:10px;}
  .topbar .brand .dot{width:9px;height:9px;border-radius:50%;background:var(--gold);}
  .topbar .brand .brand-logo{height:34px;width:34px;border-radius:9px;object-fit:cover;flex-shrink:0;}
  .topbar .brand .brand-text{display:flex;flex-direction:column;line-height:1.2;}
  .topbar .brand .brand-text span{font-family:'Sora',sans-serif;font-weight:700;font-size:15px;letter-spacing:.02em;color:var(--text);}
  .topbar .brand .brand-text small{font-size:9.5px;font-weight:700;letter-spacing:.12em;color:var(--muted);text-transform:uppercase;}
  .header-center{display:flex;align-items:center;gap:8px;background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:6px 14px;font-size:12px;font-weight:600;color:var(--muted);}
  .header-center .dot{width:7px;height:7px;border-radius:50%;background:var(--green);}
  .header-right{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
  .theme-toggle{position:relative;width:46px;height:25px;border-radius:20px;border:none;background:linear-gradient(90deg,#FDE9BD,#F5D896);cursor:pointer;flex-shrink:0;padding:0;}
  .theme-toggle .knob{position:absolute;top:2px;left:2px;width:21px;height:21px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.3);display:flex;align-items:center;justify-content:center;font-size:12px;transition:left .18s;}
  html[data-theme="dark"] .theme-toggle{background:linear-gradient(90deg,#2A3A52,#1B2A40);}
  html[data-theme="dark"] .theme-toggle .knob{left:23px;}
  .date-pill{display:flex;align-items:center;gap:7px;background:var(--bg);border:1px solid var(--line);border-radius:20px;padding:6px 12px;font-size:12.5px;font-weight:600;color:var(--text);}
  .date-pill input{border:none;background:none;font-family:inherit;font-size:12.5px;color:var(--text);cursor:pointer;}
  .user-avatar{width:30px;height:30px;border-radius:50%;background:var(--navy-deep);color:#fff;display:flex;align-items:center;justify-content:center;font-size:12.5px;font-weight:700;font-family:'Sora',sans-serif;flex-shrink:0;}
  .user-info{display:flex;flex-direction:column;line-height:1.25;margin-right:2px;}
  .user-info span{font-size:12.5px;font-weight:700;color:var(--text);font-family:'Sora',sans-serif;}
  .user-info small{font-size:10px;color:var(--muted);}
  .topbar .who{display:flex;align-items:center;gap:10px;font-size:13px;color:var(--text);}
  .topbar .who b{color:var(--text);font-weight:600;}
  .logout{background:none;border:1px solid var(--line);color:var(--text);padding:6px 13px;border-radius:8px;font-size:12.5px;cursor:pointer;font-family:'Inter',sans-serif;display:flex;align-items:center;gap:5px;}
  .logout:hover{border-color:var(--gold);color:var(--gold);}
  main{flex:1;padding:26px;max-width:1200px;margin:0 auto;width:100%;}

  .ticker{background:linear-gradient(180deg,var(--navy-deep),#0A1725);border-radius:16px;padding:22px 26px;color:#fff;margin-bottom:22px;position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:16px;}
  .ticker::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% -10%,rgba(201,151,46,.18),transparent 60%);}
  .ticker .col{position:relative;}
  .ticker .label{font-size:10.5px;letter-spacing:.13em;text-transform:uppercase;color:#8FA3BE;font-weight:600;}
  .ticker .amount{font-size:28px;font-weight:700;color:var(--gold-light);margin-top:4px;}
  .ticker .amount.dep{color:#fff;font-size:22px;}

  .section-title{display:flex;align-items:center;gap:10px;margin:26px 0 12px;}
  .section-title h3{margin:0;font-size:14.5px;color:var(--text);}
  .section-title .pillnote{font-size:10.5px;background:var(--bg);color:var(--muted);padding:3px 9px;border-radius:20px;font-weight:600;}
  .section-title.arrivee .pillnote{background:#FBF2DF;color:#8A6414;}
  summary.section-title{cursor:pointer;list-style:none;border-radius:9px;padding:6px 8px;margin-left:-8px;margin-right:-8px;transition:background .2s ease;}
  summary.section-title::-webkit-details-marker{display:none;}
  summary.section-title:hover{background:color-mix(in srgb, var(--text) 5%, transparent);}
  summary.section-title:active{background:color-mix(in srgb, var(--text) 9%, transparent);}
  summary.section-title .chevron{margin-left:auto;display:flex;color:var(--muted);flex-shrink:0;transition:transform .3s ease;}
  details[open] > summary.section-title .chevron{transform:rotate(180deg);}
  details.collapsible-section{transition:height .34s ease;overflow:hidden;}

  .caisse-columns{display:grid;grid-template-columns:1fr 1fr;gap:0;}
  .caisse-columns .col-depart{padding-right:22px;}
  .caisse-columns .col-arrivee{padding-left:22px;border-left:1.5px solid var(--line);}
  @media (max-width:760px){
    .caisse-columns{grid-template-columns:1fr;}
    .caisse-columns .col-depart{padding-right:0;}
    .caisse-columns .col-arrivee{padding-left:0;border-left:none;border-top:1.5px solid var(--line);padding-top:18px;margin-top:8px;}
  }
  .wallet-total-row{display:flex;justify-content:space-between;align-items:center;background:var(--bg);border:1.5px solid var(--line);border-radius:10px;padding:10px 14px;margin-top:12px;font-size:13px;font-weight:700;color:var(--text);}
  .wallet-total-row .wallet-arrivee-total{color:var(--green);font-size:15px;}
  .opgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;}
  .opcard{background:var(--panel);border:1px solid var(--line);border-radius:12px;padding:14px 16px;}
  .opcard h4{margin:0 0 10px;font-size:12.5px;color:var(--text);}
  .opcard label{display:block;font-size:10px;font-weight:600;color:var(--muted);margin-bottom:4px;}
  .opcard input[type=number],.opcard input.montant-input{width:100%;padding:8px 9px;border-radius:8px;border:1.5px solid var(--line);font-family:'IBM Plex Mono',monospace;font-size:13.5px;background:#FAFBFC;color:#152033;}
  .opcard input[type=number]:focus,.opcard input.montant-input:focus{outline:none;border-color:var(--gold);background:#fff;}
  .opcard input[disabled]{background:#EEF1F5;color:var(--muted);}

  .ttable-wrap{background:var(--panel);border:1px solid var(--line);border-radius:14px;overflow:hidden;display:flex;flex-wrap:wrap;align-items:stretch;}
  .ttable-scroll{flex:1;min-width:0;overflow-x:auto;-webkit-overflow-scrolling:touch;}
  .ttable{border-collapse:collapse;width:100%;min-width:480px;}
  .ttable th{font-family:'Sora',sans-serif;font-size:11.5px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;padding:11px 14px;text-align:center;color:#fff;}
  .ttable th.tt-op{text-align:left;background:var(--navy-deep);}
  .ttable th.tt-envoi{background:var(--red);}
  .ttable th.tt-retrait{background:var(--green);}
  .ttable th.tt-annulation{background:#8A93A6;}
  .ttable th.tt-taxe{background:#C9972E;}
  .ttable td{padding:9px 10px;border-top:1px solid var(--line);}
  .ttable td.tt-op{display:flex;align-items:center;gap:8px;font-size:12.5px;font-weight:600;color:var(--text);white-space:nowrap;}
  .ttable td.tt-cell{text-align:center;}
  .ttable input[type=number],.ttable input.montant-input{width:100%;max-width:120px;padding:7px 8px;border-radius:7px;border:1.5px solid var(--line);font-family:'IBM Plex Mono',monospace;font-size:13px;text-align:center;background:#FAFBFC;color:#152033;}
  .ttable input[type=number]:focus,.ttable input.montant-input:focus{outline:none;border-color:var(--gold);background:#fff;}
  .tt-total{flex:0 0 200px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:18px 16px;border-left:1.5px solid var(--line);background:#FAFBFC;}
  .tt-total-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);text-align:center;line-height:1.5;}
  .tt-total-label span{font-weight:500;text-transform:none;letter-spacing:0;font-size:10px;}
  .tt-total-amount{font-size:22px;font-weight:700;}
  @media (max-width:600px){
    .ttable-wrap{flex-direction:column;flex-wrap:nowrap;}
    .tt-total{border-left:none;border-top:1.5px solid var(--line);}
    /* Sur mobile, le tableau devient des blocs empilés (même pattern que .ctable-responsive)
       — sur PC il reste un vrai tableau, comme demandé. */
    .ttable-scroll{overflow-x:visible;}
    .ttable{min-width:0;}
    .ttable thead{display:none;}
    .ttable tbody{display:block;}
    .ttable tbody tr{display:block;border:1.5px solid var(--line);border-radius:10px;padding:8px 10px;margin-bottom:10px;background:var(--panel);}
    .ttable tbody td{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-top:none;}
    .ttable tbody td.tt-op{justify-content:flex-start;border-bottom:1px solid var(--line);padding-bottom:8px;margin-bottom:4px;}
    .ttable tbody td[data-label]:not([data-label=""])::before{content:attr(data-label);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-shrink:0;}
    .ttable tbody td.tt-taxe:empty{display:none;}
    .ttable input[type=number],.ttable input.montant-input{max-width:55%;}
  }

  .wave-wrap{background:#FBF6E9;border:1.5px solid #E8DDB0;border-radius:14px;padding:18px 20px;margin-top:16px;}
  .wave-head{display:flex;align-items:center;gap:10px;margin-bottom:14px;}
  .wave-head img{height:26px;max-width:90px;object-fit:contain;}
  .wave-head h4{margin:0;font-size:13.5px;color:#1B6E4A;font-family:'Sora',sans-serif;}
  .wave-head .pillnote{font-size:10.5px;padding:3px 9px;border-radius:20px;font-weight:600;background:#E8F4EE;color:#1B6E4A;margin-left:auto;}
  .wave-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;align-items:stretch;}
  .wave-field{background:#fff;border:1.5px solid #E8DDB0;border-radius:10px;padding:12px 14px;}
  .wave-field label{display:block;font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;margin-bottom:6px;}
  .wave-field.depot label{color:#C9972E;}
  .wave-field.retrait label{color:#1B6E4A;}
  .wave-field input[type=number],.wave-field input.montant-input{width:100%;padding:8px 9px;border-radius:8px;border:1.5px solid var(--line);font-family:'IBM Plex Mono',monospace;font-size:14px;background:#FAFBFC;color:#152033;}
  .wave-field input[type=number]:focus,.wave-field input.montant-input:focus{outline:none;border-color:var(--gold);background:#fff;}
  .wave-total{background:linear-gradient(135deg,#1B6E4A,#153F2E);color:#fff;border-radius:10px;padding:12px 14px;display:flex;flex-direction:column;justify-content:center;}
  .wave-total .label{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:#BFE3D2;}
  .wave-total .amount{font-size:19px;font-weight:700;margin-top:2px;}

  .card{background:var(--panel);border-radius:var(--radius);padding:22px;border:1px solid var(--line);margin-top:18px;}
  .card h3{margin:0 0 16px;font-size:14px;color:var(--text);}
  .minitrackers-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(320px,1fr));gap:18px;margin-top:18px;}
  .minitrackers-row .card{margin-top:0;}
  .row-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;}
  .row-form .full{grid-column:1/-1;}
  select{width:100%;padding:10px 12px;border-radius:9px;border:1.5px solid var(--line);font-size:13.5px;font-family:inherit;background:#FAFBFC;color:#152033;}
  .badge{font-size:10px;font-weight:600;padding:2px 8px;border-radius:20px;display:inline-block;}
  .badge.envoi{background:#FBECEC;color:var(--red);}
  .badge.retrait{background:#E8F4EE;color:var(--green);}
  .badge.annulation{background:#EFF3FA;color:var(--navy-mid);}
  .badge.credit{background:#FBF2DF;color:#8A6414;}
  .badge.garde{background:#E8F4EE;color:#1B6E4A;}

  .icon-chip{width:38px;height:38px;border-radius:11px;display:flex;align-items:center;justify-content:center;font-size:17px;color:#fff;flex-shrink:0;}
  .icon-chip.purple{background:linear-gradient(135deg,#7C6CF0,#5B4BC4);}
  .icon-chip.blue{background:linear-gradient(135deg,#3FA9F5,#2378C4);}
  .icon-chip.green{background:linear-gradient(135deg,#34B978,#1F8A57);}
  .icon-chip.orange{background:linear-gradient(135deg,#F5A623,#D9820A);}
  .icon-chip.gold{background:linear-gradient(135deg,#E8C876,#C9972E);}
  .icon-chip.red{background:linear-gradient(135deg,#E06B6B,#B33A3A);}
  .ccard-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;}
  .ccard-status{font-size:10.5px;font-weight:700;padding:3px 9px;border-radius:20px;background:#E8F4EE;color:var(--green);display:inline-flex;align-items:center;gap:5px;}
  .ccard-status::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--green);}
  .ccard-status.attention{background:#FCEBEA;color:var(--red);}
  .ccard-status.attention::before{background:var(--red);}

  .hero-banner{background:linear-gradient(120deg,var(--navy-deep),var(--navy));border-radius:16px;padding:24px 26px;color:#fff;position:relative;overflow:hidden;}
  .hero-banner::after{content:"";position:absolute;inset:0;background:radial-gradient(circle at 85% -10%,rgba(201,151,46,.18),transparent 60%);}
  .hero-banner .hero-top{display:flex;justify-content:space-between;align-items:flex-start;position:relative;flex-wrap:wrap;gap:10px;}
  .hero-banner .label{font-size:11px;letter-spacing:.12em;text-transform:uppercase;color:#9FB0C6;font-weight:700;}
  .hero-banner .amount{font-size:34px;font-weight:700;color:var(--gold-light);margin-top:6px;position:relative;}
  .hero-banner .sub{font-size:11.5px;color:#8FA3BE;margin-top:6px;position:relative;}
  .status-pill{font-size:11px;font-weight:700;padding:5px 12px;border-radius:20px;background:rgba(52,185,120,.16);color:#5FE0A0;display:inline-flex;align-items:center;gap:6px;}
  .status-pill::before{content:"";width:6px;height:6px;border-radius:50%;background:#5FE0A0;}
  .status-pill.warn{background:rgba(179,58,58,.18);color:#F29B9B;}
  .status-pill.warn::before{background:#F29B9B;}
  .trend-pill{font-size:11px;font-weight:600;color:#9FB0C6;margin-top:8px;display:flex;align-items:center;gap:4px;justify-content:flex-end;}

  .person-avatar{width:28px;height:28px;border-radius:50%;color:#fff;font-size:10.5px;font-weight:700;display:inline-flex;align-items:center;justify-content:center;flex-shrink:0;font-family:'Sora',sans-serif;}
  .person-cell{display:flex;align-items:center;gap:9px;}
  .dot-indicator{width:8px;height:8px;border-radius:50%;flex-shrink:0;}
  .dtable-summary{display:grid;grid-template-columns:repeat(3,1fr);border-top:1.5px solid var(--line);margin-top:2px;background:var(--bg);border-radius:0 0 10px 10px;}
  .dtable-summary > div{padding:14px 18px;}
  .dtable-summary > div:not(:last-child){border-right:1px solid var(--line);}
  .dtable-summary .foot-label{display:block;font-family:'Inter',sans-serif;font-size:9.5px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--muted);margin-bottom:4px;}
  .dtable-summary span:not(.foot-label){font-family:'IBM Plex Mono',monospace;font-size:16px;font-weight:700;}
  .dtable-summary .credit{color:#B8860B;}
  .dtable-summary .garde{color:var(--green);}
  .dtable-summary .general{color:var(--text);font-size:17px;}
  @media(max-width:600px){
    .dtable-summary{grid-template-columns:1fr;}
    .dtable-summary > div:not(:last-child){border-right:none;border-bottom:1px solid var(--line);}
  }

  .admin-head{display:flex;align-items:center;justify-content:space-between;margin-bottom:20px;flex-wrap:wrap;gap:10px;}
  .admin-head h2{margin:0;font-size:19px;color:var(--text);}
  .datepick{display:flex;align-items:center;gap:10px;}
  .datepick input{padding:8px 11px;border-radius:9px;border:1.5px solid var(--line);font-family:inherit;font-size:13px;background:#FAFBFC;color:#152033;}
  .cardsgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:16px;margin-bottom:20px;}
  .admin-tabs{display:flex;gap:4px;margin-bottom:20px;border-bottom:1.5px solid var(--line);overflow-x:auto;-webkit-overflow-scrolling:touch;position:sticky;top:0;z-index:40;background:var(--bg);}
  .admin-tab{padding:10px 16px;font-size:13px;font-weight:700;color:var(--muted);background:none;border:none;border-radius:9px 9px 0 0;cursor:pointer;font-family:'Sora',sans-serif;white-space:nowrap;display:flex;align-items:center;gap:6px;}
  .admin-tab.active{color:#8A6414;background:#FBF2DF;border-bottom:2.5px solid var(--gold);}
  html[data-theme="dark"] .admin-tab.active{background:rgba(201,151,46,.15);color:var(--gold-light);}
  .admin-tab:hover:not(.active){color:var(--text);}
  html[data-theme="dark"] .admin-tab:hover:not(.active){color:var(--text);}
  .backlink{background:none;border:none;color:var(--muted);font-size:13px;cursor:pointer;margin-bottom:14px;font-weight:600;padding:0;}
  .backlink:hover{color:var(--text);}
  .client-head{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(90deg,#F7DFA0,#F0C868);border-radius:12px;padding:16px 22px;margin-bottom:20px;flex-wrap:wrap;gap:12px;}
  .client-head h2{font-family:'Sora',sans-serif;font-size:18px;font-weight:700;margin:0;color:#1F2937;}
  #clientNameInput:hover{border-color:rgba(31,41,55,.25);}
  #clientNameInput:focus{outline:none;border-color:var(--gold);background:#fff;}
  .client-head .solde-box{background:#fff;border-radius:8px;padding:8px 16px;text-align:center;}
  .client-head .solde-box .lbl{font-size:11px;color:#66738A;font-weight:600;text-transform:uppercase;}
  .client-head .solde-box .val{font-family:'IBM Plex Mono',monospace;font-size:17px;font-weight:700;color:#1F2937;}
  .client-cols{display:grid;grid-template-columns:1.4fr 1fr;gap:18px;align-items:start;}
  @media(max-width:900px){.client-cols{grid-template-columns:1fr;}}
  #dettesExposureRow{display:grid;grid-template-columns:2fr 1fr;gap:16px;margin-top:16px;}
  @media(max-width:700px){#dettesExposureRow{grid-template-columns:1fr;}}
  .ctable{width:100%;border-collapse:collapse;font-size:12.5px;}
  .ctable th{background:var(--navy-deep);color:#fff;padding:8px 7px;text-align:left;font-size:11px;font-weight:700;text-transform:uppercase;}
  .ctable td{padding:7px;border-bottom:1px solid var(--line);}
  .ctable .date-row td{background:var(--navy-deep);color:#fff;font-weight:700;font-size:12px;}
  .ctable input{width:100%;padding:5px 6px;border-radius:6px;border:1.5px solid var(--line);font-family:'IBM Plex Mono',monospace;font-size:12px;background:#FAFBFC;color:#152033;}
  .ctable input:focus{outline:none;border-color:var(--gold);background:#fff;}
  .ctable select{width:100%;padding:5px 6px;border-radius:6px;border:1.5px solid var(--line);font-size:12px;background:#FAFBFC;color:#152033;}
  .ctable .rowdel{background:none;border:none;color:var(--red);cursor:pointer;font-size:15px;padding:0 4px;}
  .pager-btn{min-width:34px;height:34px;padding:0 8px;border-radius:8px;border:1.5px solid var(--line);background:var(--panel);color:var(--text);font-family:'Sora',sans-serif;font-size:13px;font-weight:600;cursor:pointer;}
  .pager-btn:hover:not(:disabled){border-color:var(--gold);color:var(--gold);}
  .pager-btn.active{background:var(--navy-deep);border-color:var(--navy-deep);color:#fff;}
  .pager-btn:disabled{opacity:.35;cursor:default;}
  .pwd-toggle{background:none;border:none;cursor:pointer;font-size:13px;padding:2px 4px;opacity:.6;flex-shrink:0;}
  .pwd-toggle:hover{opacity:1;}
  .ctable tfoot td{font-weight:700;background:#F5F7FA;color:#152033;font-family:'IBM Plex Mono',monospace;}
  @media(max-width:700px){
    .ctable-responsive thead{display:none;}
    .ctable-responsive tbody{display:block;}
    .ctable-responsive tbody tr{display:block;border:1.5px solid var(--line);border-radius:10px;padding:8px 10px;margin-bottom:10px;background:var(--panel);}
    .ctable-responsive tbody td{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:6px 0;border-bottom:none;}
    .ctable-responsive tbody td[data-label]:not([data-label=""])::before{content:attr(data-label);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--muted);flex-shrink:0;}
    .ctable-responsive tbody td:last-child{justify-content:flex-end;}
    .ctable-responsive tbody td input,.ctable-responsive tbody td select{width:auto;flex:1;max-width:60%;}
  }
  .svc-toggle{display:inline-flex;align-items:center;gap:6px;border-radius:20px;padding:6px 12px;font-size:12px;font-weight:600;cursor:pointer;border:1.5px solid var(--line);background:var(--bg);color:var(--muted);}
  .svc-toggle.active{background:#E8F4EE;border-color:var(--green);color:var(--green);}
  .svc-toggle.active.transfer{background:#FBF2DF;border-color:var(--gold);color:#8A6414;}
  .cashier-services-card{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:16px 18px;margin-bottom:14px;}
  .cashier-services-card h4{margin:0 0 10px;font-size:13.5px;color:var(--text);}
  .cashier-services-card .svc-group-label{font-size:10.5px;font-weight:700;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);margin:10px 0 6px;}
  .op-chip{display:inline-flex;align-items:center;gap:6px;background:var(--bg);border:1.5px solid var(--line);border-radius:20px;padding:6px 8px 6px 10px;font-size:12.5px;font-weight:600;color:var(--navy-mid);}
  .op-chip.dragging{opacity:.5;background:#fff;box-shadow:0 4px 12px rgba(15,33,54,.15);}
  .op-chip button{background:none;border:none;color:var(--red);cursor:pointer;font-size:14px;padding:0 4px;line-height:1;}
  .op-drag-handle{cursor:grab;color:var(--muted);font-size:14px;padding:0 2px;user-select:none;touch-action:none;}
  .op-drag-handle:active{cursor:grabbing;}
  .ccard{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px;}
  .ccard .name{font-size:13px;font-weight:600;color:var(--text);margin-bottom:8px;display:flex;justify-content:space-between;align-items:center;}
  .ccard-number{width:26px;height:26px;border-radius:50%;background:var(--bg);color:var(--muted);font-size:12px;font-weight:700;display:flex;align-items:center;justify-content:center;flex-shrink:0;margin-bottom:10px;font-family:'Sora',sans-serif;}
  .ccard-divider{border:none;border-top:1px solid var(--line);margin:0 0 10px;}
  .ccard-link{display:inline-flex;align-items:center;gap:4px;font-size:12px;font-weight:700;color:var(--gold);margin-top:12px;background:none;border:none;cursor:pointer;padding:0;font-family:'Sora',sans-serif;}
  .ccard-link:hover{color:var(--gold-light);}
  .ccard .status{width:7px;height:7px;border-radius:50%;background:var(--green);}
  .ccard .status.off{background:#D8DEE6;}
  .ccard .final{font-size:20px;font-weight:700;color:var(--text);}
  .ccard .subtot{font-size:11px;color:var(--muted);margin-top:2px;}
  .statgrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:16px;margin-bottom:20px;}
  .statbox{background:var(--panel);border:1px solid var(--line);border-radius:14px;padding:18px 20px;}
  .statbox .label{font-size:10.5px;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--muted);}
  .statbox .amount{font-size:24px;font-weight:700;color:var(--text);margin-top:6px;font-family:'IBM Plex Mono',monospace;}
  .total-band{background:linear-gradient(120deg,var(--navy-deep),var(--navy));color:#fff;border-radius:16px;padding:22px 26px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:14px;}
  .total-band .label{font-size:12px;letter-spacing:.1em;text-transform:uppercase;color:#9FB0C6;}
  .total-band .amount{font-size:32px;font-weight:700;color:var(--gold-light);}
  .empty{text-align:center;color:var(--muted);font-size:12.5px;padding:22px 0;}
  ::selection{background:var(--gold-light);}

  .modal-overlay{position:fixed;inset:0;background:rgba(15,33,54,.55);display:flex;align-items:center;justify-content:center;z-index:50;padding:20px;}
  .modal-box{background:var(--panel);border-radius:16px;max-width:640px;width:100%;max-height:85vh;overflow-y:auto;padding:26px 28px;position:relative;}
  .modal-box h3{margin:0 0 4px;font-size:17px;color:var(--text);}
  .modal-box .sub{font-size:12px;color:var(--muted);margin-bottom:18px;}
  .modal-close{position:absolute;top:20px;right:22px;background:none;border:none;font-size:20px;line-height:1;color:var(--muted);cursor:pointer;}
  .modal-close:hover{color:var(--red);}
  .modal-section-title{font-size:11px;font-weight:700;text-transform:uppercase;letter-spacing:.08em;color:var(--navy-mid);margin:18px 0 8px;}
  .modal-section-title:first-of-type{margin-top:0;}
  .dtable{width:100%;border-collapse:collapse;font-size:12.5px;}
  .dtable th{text-align:left;font-size:10px;text-transform:uppercase;letter-spacing:.05em;color:var(--muted);padding:6px 8px;border-bottom:1.5px solid var(--line);}
  .dtable td{padding:7px 8px;border-bottom:1px solid var(--line);}
  .dtable td.num{font-family:'IBM Plex Mono',monospace;text-align:right;white-space:nowrap;}
  .dtable td.op-label{display:flex;align-items:center;gap:8px;}
  .modal-totals{display:flex;gap:12px;margin-top:16px;}
  .modal-totals .mt-box{flex:1;background:var(--bg);border-radius:10px;padding:12px 14px;}
  .modal-totals .mt-box .label{font-size:10px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;}
  .modal-totals .mt-box .val{font-family:'IBM Plex Mono',monospace;font-size:17px;font-weight:700;color:var(--text);margin-top:2px;}
  #printReport{display:none;}
  @media print{
    body > *:not(#printReport){display:none!important;}
    #printReport{display:block!important;padding:20px;font-family:'Sora',sans-serif;color:#111;}
    #printReport h1{font-size:20px;margin:0 0 4px;}
    #printReport .pr-sub{font-size:12px;color:#555;margin-bottom:18px;}
    #printReport .pr-solde{font-size:16px;font-weight:700;margin-bottom:18px;}
    #printReport table{width:100%;border-collapse:collapse;font-size:11.5px;margin-bottom:22px;}
    #printReport th,#printReport td{border:1px solid #999;padding:5px 7px;text-align:left;}
    #printReport th{background:#eee;}
    #printReport h2{font-size:14px;margin:0 0 8px;border-bottom:1.5px solid #999;padding-bottom:4px;}
  }

  /* ============================================================
     REDESIGN V2 (Figma) — bandeau dégradé, cartes KPI, sparklines,
     avatars colorés, page Dettes à deux héros. Le reste des styles
     ci-dessus reste utilisé (badges/logos de service inchangés).
     ============================================================ */
  .avatar-circle{border-radius:50%;display:inline-flex;align-items:center;justify-content:center;color:#fff;font-weight:700;flex-shrink:0;font-family:'Sora',sans-serif;}

  .hero3{position:relative;overflow:hidden;border-radius:24px;color:#fff;background:linear-gradient(135deg,#061528 0%,#0D2456 45%,#113EA0 75%,#0A1F4E 100%);}
  .hero3-rings{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
  .hero3-rings span{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.05);}
  .hero3-glow{position:absolute;width:320px;height:320px;border-radius:50%;opacity:.2;filter:blur(60px);background:radial-gradient(circle,var(--gold),transparent);top:-50px;right:100px;pointer-events:none;}
  .hero3-body{position:relative;z-index:1;padding:28px 32px;}
  @media(max-width:640px){ .hero3-body{padding:22px 20px;} }
  .hero3-row{display:flex;flex-wrap:wrap;align-items:flex-end;justify-content:space-between;gap:20px;}
  .hero3-pill{display:inline-flex;align-items:center;gap:6px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.15);color:rgba(255,255,255,.75);font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.12em;padding:5px 12px;border-radius:20px;margin-bottom:14px;}
  .hero3-pulse{width:6px;height:6px;border-radius:50%;background:#34D399;animation:hero3pulse 1.8s ease-in-out infinite;}
  @keyframes hero3pulse{0%,100%{opacity:1;}50%{opacity:.35;}}
  .hero3-amount{font-size:56px;font-weight:900;letter-spacing:-.01em;line-height:1;color:var(--gold-light);margin:0;}
  @media(max-width:640px){ .hero3-amount{font-size:38px;} }
  .hero3-sub{margin-top:10px;font-size:12px;color:rgba(191,213,255,.6);}
  .hero3-stats{display:flex;flex-wrap:wrap;gap:10px;}
  .hero3-stat{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.1);border-radius:14px;padding:10px 16px;text-align:right;min-width:140px;}
  .hero3-stat.warn{background:rgba(179,58,58,.2);border-color:rgba(211,105,105,.3);}
  .hero3-stat.ok{background:rgba(47,125,92,.2);border-color:rgba(95,224,160,.3);}
  .hero3-stat .l{font-size:10px;color:rgba(191,213,255,.7);text-transform:uppercase;letter-spacing:.08em;margin-bottom:2px;}
  .hero3-stat .v{font-size:15px;font-weight:700;color:#fff;}
  .hero3-stat.warn .v{color:#F29B9B;}
  .hero3-stat.ok .v{color:#6FE3A3;display:flex;align-items:center;gap:5px;justify-content:flex-end;}
  .hero3-coverage{margin-top:26px;padding-top:20px;border-top:1px solid rgba(255,255,255,.1);}
  .hero3-coverage-row{display:flex;justify-content:space-between;margin-bottom:8px;font-size:11.5px;color:rgba(191,213,255,.7);}
  .hero3-coverage-row b{color:var(--gold-light);}
  .hero3-coverage-bar{height:8px;background:rgba(255,255,255,.1);border-radius:20px;overflow:hidden;}
  .hero3-coverage-fill{height:100%;border-radius:20px;background:linear-gradient(90deg,var(--gold-light),var(--gold));transition:width .5s;}

  .kpi-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:14px;}
  .kpi-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .15s,box-shadow .15s;cursor:pointer;}
  .kpi-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,33,54,.1);}
  .kpi-strip{height:4px;width:100%;}
  .kpi-body{padding:16px;}
  .kpi-top{display:flex;align-items:flex-start;justify-content:space-between;margin-bottom:10px;}
  .kpi-icon{width:36px;height:36px;border-radius:11px;display:flex;align-items:center;justify-content:center;color:#fff;flex-shrink:0;}
  .kpi-chip{font-size:9.5px;font-weight:700;padding:3px 8px;border-radius:20px;background:#E8F4EE;color:var(--green);white-space:nowrap;}
  .kpi-chip.warn{background:#FCEBEA;color:var(--red);}
  .kpi-label{font-size:9.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:6px;}
  .kpi-sub{font-size:11px;color:var(--muted);margin-top:6px;}
  .kpi-val{font-size:15px;font-weight:800;color:var(--text);line-height:1.3;}
  .kpi-val.neg{color:var(--red);}
  .kpi-spark{margin-top:6px;margin-bottom:-4px;}

  .pc-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:12px;}
  .pc-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;transition:transform .15s,box-shadow .15s;cursor:pointer;}
  .pc-card:hover{transform:translateY(-2px);box-shadow:0 8px 20px rgba(15,33,54,.1);}
  .pc-strip{height:3px;background:var(--line);}
  .pc-strip.active{background:linear-gradient(90deg,#34D399,#14B8A6);}
  .pc-body{padding:15px;}
  .pc-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;}
  .pc-number{width:28px;height:28px;border-radius:10px;background:linear-gradient(135deg,var(--navy-deep),var(--navy-mid));color:#fff;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:800;font-family:'Sora',sans-serif;}
  .pc-dot{width:9px;height:9px;border-radius:50%;background:var(--line);}
  .pc-dot.on{background:#34D399;}
  .pc-name{font-size:13px;font-weight:700;color:var(--text);margin-bottom:6px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
  .pc-sub{font-size:9.5px;color:var(--muted);text-transform:uppercase;letter-spacing:.04em;}
  .pc-figure{font-size:13px;font-weight:700;color:var(--text);}
  .pc-figure.neg{color:var(--red);}
  .pc-empty{font-size:11.5px;color:var(--muted);margin-top:2px;}
  .pc-link{margin-top:10px;width:100%;display:flex;align-items:center;justify-content:center;gap:5px;font-size:10px;font-weight:700;color:var(--navy-deep);border:1.5px solid rgba(15,33,54,.15);border-radius:8px;padding:6px;background:none;cursor:pointer;}
  .pc-card:hover .pc-link{background:var(--navy-deep);color:#fff;border-color:var(--navy-deep);}
  html[data-theme="dark"] .pc-link{color:var(--gold-light);border-color:rgba(232,200,118,.25);}
  html[data-theme="dark"] .pc-card:hover .pc-link{background:var(--gold);color:var(--navy-deep);border-color:var(--gold);}

  .banner-alert{margin-top:16px;display:flex;align-items:flex-start;gap:12px;background:#FBF2DF;border:1px solid #E8C876;border-radius:16px;padding:14px 18px;}
  html[data-theme="dark"] .banner-alert{background:rgba(201,151,46,.08);border-color:rgba(201,151,46,.3);}
  .banner-alert-icon{width:30px;height:30px;border-radius:10px;background:#F0DDA6;color:#8A6414;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
  html[data-theme="dark"] .banner-alert-icon{background:rgba(201,151,46,.2);color:var(--gold-light);}
  .banner-alert b{font-size:13px;color:#8A6414;display:block;}
  html[data-theme="dark"] .banner-alert b{color:var(--gold-light);}
  .banner-alert p{font-size:11.5px;color:#A98939;margin:2px 0 0;}
  html[data-theme="dark"] .banner-alert p{color:#C9A968;}

  .online-legend{display:flex;gap:14px;font-size:11px;color:var(--muted);align-items:center;}
  .online-legend span{display:inline-flex;align-items:center;gap:5px;}
  .online-legend i{width:8px;height:8px;border-radius:50%;display:inline-block;}

  /* Hero secondaire (Tableau de bord / Transferts / Commission) */
  .hero2{position:relative;overflow:hidden;border-radius:20px;color:#fff;background:linear-gradient(135deg,#0D2456,#163680);padding:26px 30px;}
  .hero2-rings{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
  .hero2-rings span{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.06);}
  .hero2-body{position:relative;z-index:1;}
  .hero2-flex{position:relative;z-index:1;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:16px;}

  /* Dettes : deux héros crédit / gardé */
  .dettes-hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;}
  @media(max-width:760px){ .dettes-hero-grid{grid-template-columns:1fr;} }
  .dettes-hero{position:relative;overflow:hidden;border-radius:20px;padding:24px;color:#fff;cursor:pointer;transition:transform .15s;}
  .dettes-hero:hover{transform:translateY(-2px);}
  .dettes-hero.credit{background:linear-gradient(135deg,#92400E 0%,#B45309 50%,#D97706 100%);}
  .dettes-hero.garde{background:linear-gradient(135deg,#065F46 0%,#047857 50%,#059669 100%);}
  .dettes-hero-rings{position:absolute;inset:0;pointer-events:none;overflow:hidden;}
  .dettes-hero-rings span{position:absolute;border-radius:50%;border:1px solid rgba(255,255,255,.1);}
  .dettes-hero-active{position:absolute;top:12px;right:12px;background:rgba(255,255,255,.2);border-radius:20px;padding:2px 9px;font-size:9.5px;font-weight:700;}
  .dettes-hero-body{position:relative;z-index:1;}
  .dettes-hero-icon{width:36px;height:36px;border-radius:11px;background:rgba(255,255,255,.15);display:flex;align-items:center;justify-content:center;}
  .dettes-hero-top{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
  .dettes-hero-top .l1{font-size:10px;font-weight:700;text-transform:uppercase;letter-spacing:.1em;opacity:.85;}
  .dettes-hero-top .l2{font-size:10px;opacity:.65;}
  .dettes-hero-amount{font-size:32px;font-weight:900;letter-spacing:-.01em;}
  .dettes-hero-count{font-size:11px;opacity:.75;margin-top:2px;}
  .dettes-hero-bar{margin-top:14px;height:6px;background:rgba(255,255,255,.2);border-radius:20px;overflow:hidden;}
  .dettes-hero-bar-fill{height:100%;background:rgba(255,255,255,.65);border-radius:20px;}
  .dettes-hero-pct{font-size:10px;opacity:.75;margin-top:4px;}

  .exposure-card{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;}
  .exposure-label{font-size:10.5px;font-weight:700;color:var(--muted);text-transform:uppercase;letter-spacing:.06em;margin-bottom:14px;}
  .exposure-total{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
  .exposure-total .n{font-size:22px;font-weight:800;color:var(--text);}
  .exposure-total .tag{font-size:11px;color:var(--muted);background:var(--bg);padding:4px 10px;border-radius:20px;}
  .exposure-bar{height:20px;border-radius:20px;overflow:hidden;display:flex;gap:2px;margin-bottom:12px;}
  .exposure-bar .credit{background:linear-gradient(90deg,#B45309,#D97706);}
  .exposure-bar .garde{background:linear-gradient(90deg,#047857,#059669);}
  .exposure-legend{display:flex;gap:22px;font-size:11.5px;flex-wrap:wrap;}
  .exposure-legend span{display:inline-flex;align-items:center;gap:7px;color:var(--muted);}
  .exposure-legend b{font-weight:700;}
  .exposure-legend .sw{width:11px;height:11px;border-radius:3px;display:inline-block;}

  .top-creditors{background:var(--panel);border:1px solid var(--line);border-radius:16px;padding:20px;}
  .tc-row{display:flex;align-items:center;gap:10px;margin-bottom:12px;}
  .tc-row:last-child{margin-bottom:0;}
  .tc-rank{width:18px;height:18px;border-radius:50%;color:#fff;font-size:9.5px;font-weight:900;display:flex;align-items:center;justify-content:center;flex-shrink:0;}
  .tc-name{font-size:12px;font-weight:600;color:var(--text);overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
  .tc-bar{height:4px;background:var(--bg);border-radius:20px;margin-top:4px;overflow:hidden;}
  .tc-bar-fill{height:100%;border-radius:20px;background:linear-gradient(90deg,#B45309,#D97706);}
  .tc-amt{font-size:11.5px;font-weight:700;color:var(--text);white-space:nowrap;flex-shrink:0;}

  .segmented{display:inline-flex;gap:3px;padding:3px;background:var(--bg);border-radius:14px;}
  .segmented button{padding:6px 12px;border-radius:11px;font-size:11.5px;font-weight:700;border:none;background:none;color:var(--muted);cursor:pointer;font-family:'Sora',sans-serif;}
  .segmented button.active.credit{background:linear-gradient(90deg,#D97706,#B45309);color:#fff;}
  .segmented button.active.garde{background:linear-gradient(90deg,#059669,#047857);color:#fff;}
  .segmented button.active.entree{background:linear-gradient(90deg,#059669,#047857);color:#fff;}
  .segmented button.active.sortie{background:linear-gradient(90deg,#B33A3A,#8A2A2A);color:#fff;}

  .section-tabs{display:inline-flex;gap:4px;padding:4px;background:var(--panel);border:1px solid var(--line);border-radius:16px;box-shadow:0 1px 2px rgba(15,33,54,.04);}
  .section-tabs button{padding:10px 20px;border-radius:12px;font-size:13px;font-weight:700;border:none;background:none;color:var(--muted);cursor:pointer;font-family:'Sora',sans-serif;display:flex;align-items:center;gap:6px;}
  .section-tabs button.active.credit{background:linear-gradient(90deg,#D97706,#B45309);color:#fff;}
  .section-tabs button.active.garde{background:linear-gradient(90deg,#059669,#047857);color:#fff;}
  .section-tabs button .cnt{font-size:10.5px;font-weight:900;padding:1px 7px;border-radius:20px;background:var(--bg);color:var(--muted);}
  .section-tabs button.active .cnt{background:rgba(255,255,255,.25);color:#fff;}

  .searchbox{display:flex;align-items:center;gap:8px;background:var(--panel);border:1.5px solid var(--line);border-radius:14px;padding:9px 13px;min-width:220px;color:var(--muted);}
  .searchbox input{flex:1;border:none;background:none;font-size:13px;outline:none;color:var(--text);font-family:inherit;}
  .searchbox svg{flex-shrink:0;}
  .searchbox .clear-x{background:none;border:none;color:var(--muted);cursor:pointer;flex-shrink:0;}

  .ptable{width:100%;border-collapse:collapse;font-size:13px;}
  .ptable th{text-align:left;padding:11px 16px;font-size:9.5px;font-weight:700;text-transform:uppercase;letter-spacing:.06em;}
  .ptable th.credit-head, .ptable.credit thead tr{background:#FBF2DF;}
  .ptable th.credit-head{color:#8A6414;}
  .ptable.credit th{color:#8A6414;}
  .ptable.garde thead tr{background:#E8F4EE;}
  .ptable.garde th{color:#1B6E4A;}
  html[data-theme="dark"] .ptable.credit thead tr{background:rgba(201,151,46,.1);}
  html[data-theme="dark"] .ptable.garde thead tr{background:rgba(47,125,92,.12);}
  .ptable td{padding:11px 16px;border-bottom:1px solid var(--line);}
  .ptable tbody tr:hover{background:var(--bg);}
  .ptable .p-pct-bar{width:120px;height:7px;background:var(--bg);border-radius:20px;overflow:hidden;display:inline-block;vertical-align:middle;margin-right:6px;}
  .ptable .p-pct-fill{height:100%;border-radius:20px;}
  .ptable .p-note{font-size:11px;background:var(--bg);color:var(--muted);padding:3px 9px;border-radius:8px;}
  .ptable tfoot td{font-weight:800;font-size:14px;}
  .ptable.credit tfoot tr{background:#FBF2DF;border-top:2px solid #E8C876;}
  .ptable.credit tfoot td{color:#8A6414;}
  .ptable.garde tfoot tr{background:#E8F4EE;border-top:2px solid #9FD8BC;}
  .ptable.garde tfoot td{color:#1B6E4A;}
  html[data-theme="dark"] .ptable.credit tfoot tr{background:rgba(201,151,46,.1);}
  html[data-theme="dark"] .ptable.garde tfoot tr{background:rgba(47,125,92,.12);}
