/*
 * AZALYS CSS bundle — V20.55.0 Phase 2
 * Cible : index.html
 * Ordre de cascade figé :
 * 1. azalys-design-tokens-v2055.css
 * 2. app.css
 * 3. juridique_formalites.css
 * 4. auth-premium.css
 * 5. premium-suite.css
 * 6. collaborateurs-horizontal-final.css
 * 7. dossier-accordion-final.css
 * 8. client-portal.css
 * 9. azalys-premium.css
 * 10. floating-icons-premium.css
 * 11. internal-floating-global.css
 * 12. ecritures-cockpit.css
 * 13. azalys-dialogs.css
 * 14. azalys-i18n.css
 * 15. azalys-role-menu.css
 * 16. azalys-messages-height-final.css
 * 17. azalys-density-compact.css
 * 18. fiscal-watch.css
 * 19. azalys-web-typography.css
 * 20. azalys-sidebar-ergonomic-v593.css
 * 21. azalys-ui-standard.css
 * 22. auth-maroc-premium-final.css
 * 23. admin-dashboard-premium.css
 * 24. collaborateur-dashboard-premium.css
 * 25. client-portal-premium-v10.css
 * 26. azalys-global-modules-premium-v12.css
 * 27. azalys-erp-shell-v2054.css
 * 28. azalys-erp-tables-v2055.css
 * 29. azalys-erp-inbox-v2055.css
 *
 * Fichier généré par concaténation sans minification.
 */
/* AZALYS_BUNDLE_SOURCE 1/29: azalys-design-tokens-v2055.css | sha256=6946f8e82fbc1c56e4cf5d585ac81a6fe1c78735f4a46989b0195e3422b7121b */
/*
 * AZALYS Design System — V20.55.0
 * Tokens communs et primitives opt-in.
 *
 * Tous les noms sont préfixés `--az-ds-` / `.az-ds-` afin de ne modifier
 * aucun composant historique tant qu'il n'adopte pas explicitement le
 * design system.
 */

:root {
  color-scheme: light;

  --az-ds-color-brand-50: #eff6ff;
  --az-ds-color-brand-100: #dbeafe;
  --az-ds-color-brand-500: #2563eb;
  --az-ds-color-brand-600: #1d4ed8;
  --az-ds-color-brand-700: #1e40af;
  --az-ds-color-accent-500: #0d9488;
  --az-ds-color-success-500: #16a34a;
  --az-ds-color-warning-500: #d97706;
  --az-ds-color-danger-500: #dc2626;
  --az-ds-color-info-500: #0284c7;

  --az-ds-color-canvas: #f4f7fb;
  --az-ds-color-surface: #ffffff;
  --az-ds-color-surface-muted: #f8fafc;
  --az-ds-color-border: #dbe4ef;
  --az-ds-color-border-strong: #cbd5e1;
  --az-ds-color-text: #0f172a;
  --az-ds-color-text-muted: #64748b;
  --az-ds-color-text-soft: #94a3b8;
  --az-ds-color-on-brand: #ffffff;

  --az-ds-font-sans: Inter, "Segoe UI", Roboto, Helvetica, Arial, sans-serif;
  --az-ds-font-mono: "SFMono-Regular", Consolas, "Liberation Mono", monospace;
  --az-ds-text-xs: 0.75rem;
  --az-ds-text-sm: 0.8125rem;
  --az-ds-text-md: 0.9375rem;
  --az-ds-text-lg: 1.125rem;
  --az-ds-text-xl: 1.375rem;
  --az-ds-leading-tight: 1.25;
  --az-ds-leading-normal: 1.5;

  --az-ds-space-1: 0.25rem;
  --az-ds-space-2: 0.5rem;
  --az-ds-space-3: 0.75rem;
  --az-ds-space-4: 1rem;
  --az-ds-space-5: 1.25rem;
  --az-ds-space-6: 1.5rem;
  --az-ds-space-8: 2rem;
  --az-ds-space-10: 2.5rem;
  --az-ds-space-12: 3rem;

  --az-ds-radius-sm: 0.5rem;
  --az-ds-radius-md: 0.75rem;
  --az-ds-radius-lg: 1rem;
  --az-ds-radius-xl: 1.25rem;
  --az-ds-radius-pill: 999px;

  --az-ds-shadow-xs: 0 1px 2px rgba(15, 23, 42, 0.05);
  --az-ds-shadow-sm: 0 4px 14px rgba(15, 23, 42, 0.08);
  --az-ds-shadow-md: 0 14px 36px rgba(15, 23, 42, 0.12);
  --az-ds-focus-ring: 0 0 0 3px rgba(37, 99, 235, 0.24);

  --az-ds-control-height-sm: 2rem;
  --az-ds-control-height-md: 2.5rem;
  --az-ds-control-height-lg: 2.875rem;
  --az-ds-content-max: 100rem;
  --az-ds-sidebar-width: 15.5rem;
  --az-ds-module-rail-width: 5.25rem;
  --az-ds-topbar-height: 4.25rem;

  --az-ds-duration-fast: 120ms;
  --az-ds-duration-normal: 180ms;
  --az-ds-ease-standard: cubic-bezier(0.2, 0, 0, 1);

  --az-ds-z-sticky: 40;
  --az-ds-z-dropdown: 1000;
  --az-ds-z-overlay: 1100;
  --az-ds-z-modal: 1200;
  --az-ds-z-toast: 1300;
}

html[data-theme="dark"] {
  color-scheme: dark;
  --az-ds-color-canvas: #08111f;
  --az-ds-color-surface: #0f1a2e;
  --az-ds-color-surface-muted: #111f35;
  --az-ds-color-border: #26364d;
  --az-ds-color-border-strong: #3b4a61;
  --az-ds-color-text: #e5edf8;
  --az-ds-color-text-muted: #a8b6ca;
  --az-ds-color-text-soft: #7f91aa;
  --az-ds-shadow-xs: 0 1px 2px rgba(0, 0, 0, 0.24);
  --az-ds-shadow-sm: 0 4px 14px rgba(0, 0, 0, 0.28);
  --az-ds-shadow-md: 0 14px 36px rgba(0, 0, 0, 0.34);
}

:where(.az-ds-surface) {
  color: var(--az-ds-color-text);
  background: var(--az-ds-color-surface);
  border: 1px solid var(--az-ds-color-border);
  border-radius: var(--az-ds-radius-lg);
  box-shadow: var(--az-ds-shadow-xs);
}

:where(.az-ds-page-header) {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--az-ds-space-4);
}

:where(.az-ds-toolbar),
:where(.az-ds-cluster) {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: var(--az-ds-space-2);
}

:where(.az-ds-stack) {
  display: flex;
  flex-direction: column;
  gap: var(--az-ds-space-4);
}

:where(.az-ds-button),
:where(.az-ds-icon-button) {
  min-height: var(--az-ds-control-height-md);
  border: 1px solid var(--az-ds-color-border);
  border-radius: var(--az-ds-radius-md);
  color: var(--az-ds-color-text);
  background: var(--az-ds-color-surface);
  font: 700 var(--az-ds-text-sm)/1 var(--az-ds-font-sans);
  cursor: pointer;
  transition:
    border-color var(--az-ds-duration-fast) var(--az-ds-ease-standard),
    background-color var(--az-ds-duration-fast) var(--az-ds-ease-standard),
    box-shadow var(--az-ds-duration-fast) var(--az-ds-ease-standard),
    transform var(--az-ds-duration-fast) var(--az-ds-ease-standard);
}

:where(.az-ds-button) {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: var(--az-ds-space-2);
  padding-inline: var(--az-ds-space-4);
}

:where(.az-ds-icon-button) {
  display: inline-grid;
  place-items: center;
  width: var(--az-ds-control-height-md);
  padding: 0;
}

:where(.az-ds-button[data-variant="primary"]) {
  color: var(--az-ds-color-on-brand);
  background: var(--az-ds-color-brand-500);
  border-color: var(--az-ds-color-brand-500);
}

:where(.az-ds-button, .az-ds-icon-button):hover:not(:disabled) {
  border-color: var(--az-ds-color-brand-500);
  transform: translateY(-1px);
}

:where(.az-ds-button, .az-ds-icon-button):focus-visible,
:where(.az-ds-focus-ring):focus-visible {
  outline: 0;
  box-shadow: var(--az-ds-focus-ring);
}

:where(.az-ds-button, .az-ds-icon-button):disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

:where(.az-ds-badge) {
  display: inline-flex;
  align-items: center;
  min-height: 1.5rem;
  padding-inline: var(--az-ds-space-2);
  border-radius: var(--az-ds-radius-pill);
  color: var(--az-ds-color-brand-700);
  background: var(--az-ds-color-brand-100);
  font: 800 var(--az-ds-text-xs)/1 var(--az-ds-font-sans);
}

@media (max-width: 760px) {
  :where(.az-ds-page-header) {
    flex-direction: column;
    align-items: stretch;
  }
}

@media (prefers-reduced-motion: reduce) {
  :where(.az-ds-button, .az-ds-icon-button) {
    transition: none;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-design-tokens-v2055.css */

/* AZALYS_BUNDLE_SOURCE 2/29: app.css | sha256=6ce2848bcc18f3f2e3964a482c54aa42b9c65636b973f747565a7721945b7382 */
:root{
  --navy:#172b49;--blue:#2563eb;--blue2:#1d4ed8;--green:#16a34a;--red:#dc2626;--gold:#d97706;
  --purple:#7c3aed;--bg:#f3f6fb;--card:#fff;--muted:#64748b;--line:#e2e8f0;--text:#1e293b;
  --shadow:0 12px 30px rgba(15,23,42,.08);--radius:16px;
}
*{box-sizing:border-box}body{margin:0;font-family:Inter,Segoe UI,system-ui,sans-serif;background:var(--bg);color:var(--text);font-size:14px}
button,input,select,textarea{font:inherit}button{cursor:pointer}.hidden{display:none!important}.muted{color:var(--muted);font-size:12px}
.boot-screen,.auth-screen{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:24px;background:linear-gradient(135deg,#172b49,#2563eb)}
.boot-card,.auth-card{background:#fff;border-radius:22px;box-shadow:0 24px 80px rgba(0,0,0,.25);padding:34px;width:100%;max-width:480px}
.brand-mark{font-size:48px}.brand-mark.small{font-size:28px}.auth-brand{text-align:center;margin-bottom:24px}.auth-brand h1,.boot-card h1{color:var(--navy);margin:8px 0 6px}.auth-brand p,.boot-card p{color:var(--muted);margin:0}
label{font-size:12px;font-weight:700;color:#475569;display:flex;flex-direction:column;gap:6px;margin-bottom:12px}.control{width:100%;border:1px solid #cbd5e1;border-radius:11px;padding:10px 12px;background:#fff;color:var(--text);outline:none}.control:focus{border-color:var(--blue);box-shadow:0 0 0 3px rgba(37,99,235,.12)}textarea.control{min-height:84px;resize:vertical}
.btn{border:0;border-radius:11px;padding:10px 14px;font-weight:800;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:.15s}.btn.primary{background:var(--blue);color:#fff}.btn.primary:hover{background:var(--blue2)}.btn.ghost{background:#f1f5f9;color:#334155;border:1px solid #e2e8f0}.btn.danger{color:var(--red)}.btn.full{width:100%}.link-btn{background:none;border:0;color:var(--blue);font-weight:800}
.alert{padding:12px 14px;border-radius:12px;margin-bottom:14px}.alert.info{background:#dbeafe;color:#1e40af}.auth-message{margin-top:14px;color:#dc2626;font-weight:700;font-size:13px}
.main-shell{display:grid;grid-template-columns:248px 1fr;min-height:100vh}.side{background:#172b49;color:#fff;display:flex;flex-direction:column;position:sticky;top:0;height:100vh}.side-brand{display:flex;gap:12px;align-items:center;padding:22px 18px;border-bottom:1px solid rgba(255,255,255,.1)}.side-brand strong{display:block}.side-brand span{font-size:12px;color:rgba(255,255,255,.58)}
.side-nav{padding:12px 10px;display:flex;flex-direction:column;gap:4px}.nav-btn{background:transparent;color:rgba(255,255,255,.72);border:0;text-align:left;padding:11px 12px;border-radius:10px;font-weight:700}.nav-btn:hover,.nav-btn.active{background:rgba(37,99,235,.28);color:#fff}.side-footer{margin-top:auto;padding:14px;display:flex;flex-direction:column;gap:8px}
.main{min-width:0}.topbar{height:auto;min-height:78px;background:#fff;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;gap:20px;align-items:center;padding:16px 26px;position:sticky;top:0;z-index:5}.topbar h2{margin:0;color:var(--navy)}.eyebrow{text-transform:uppercase;letter-spacing:.08em;font-size:11px;font-weight:900;color:#64748b}.top-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.status-pill{background:#f1f5f9;border:1px solid #e2e8f0;padding:7px 10px;border-radius:999px;font-size:12px;font-weight:800;color:#475569}.status-pill.ok{background:#dcfce7;color:#15803d;border-color:#bbf7d0}.status-pill.err{background:#fee2e2;color:#b91c1c;border-color:#fecaca}
.view{display:none;padding:24px 26px}.view.active{display:block}.hero{display:flex;justify-content:space-between;gap:20px;align-items:center;background:linear-gradient(135deg,#fff,#e0f2fe);border:1px solid #dbeafe;border-radius:22px;box-shadow:var(--shadow);padding:26px;margin-bottom:20px}.hero h1{margin:4px 0 8px;color:var(--navy);font-size:26px}.hero p{margin:0;color:#475569;max-width:760px}.hero-actions{display:flex;gap:10px;flex-wrap:wrap}
.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:18px}.kpi{background:#fff;border-radius:16px;box-shadow:var(--shadow);padding:18px;border-left:5px solid var(--blue)}.kpi.green{border-left-color:var(--green)}.kpi.gold{border-left-color:var(--gold)}.kpi.red{border-left-color:var(--red)}.kpi.purple{border-left-color:var(--purple)}.kpi-label{font-size:11px;text-transform:uppercase;color:#64748b;font-weight:900}.kpi-value{font-size:30px;font-weight:900;color:var(--navy);margin-top:4px}.kpi-sub{font-size:12px;color:#94a3b8}
.grid{display:grid;gap:18px;margin-bottom:18px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.card{background:#fff;border-radius:18px;box-shadow:var(--shadow);overflow:hidden}.card-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:16px 18px;border-bottom:1px solid var(--line)}.card-head h3{margin:0;color:var(--navy);font-size:16px}.list{padding:10px 14px}.list.compact{padding:8px 14px}.empty{padding:28px;text-align:center;color:#94a3b8}.item{display:flex;gap:12px;align-items:flex-start;padding:12px;border-radius:13px;border:1px solid #eef2f7;margin:8px 0;background:#fff}.item:hover{background:#f8fafc}.item-icon{font-size:20px}.item-main{flex:1;min-width:0}.item-title{font-weight:900;color:var(--navy)}.item-sub{font-size:12px;color:#64748b;margin-top:3px}.item-actions{display:flex;gap:6px;flex-wrap:wrap}
.badges{display:flex;gap:5px;flex-wrap:wrap}.badge{display:inline-flex;align-items:center;gap:4px;border-radius:999px;padding:4px 9px;font-size:11px;font-weight:900;background:#f1f5f9;color:#475569}.badge.blue{background:#dbeafe;color:#1d4ed8}.badge.green{background:#dcfce7;color:#15803d}.badge.red{background:#fee2e2;color:#b91c1c}.badge.gold{background:#fef3c7;color:#92400e}.badge.purple{background:#ede9fe;color:#6d28d9}
.panel-tools{display:grid;grid-template-columns:1fr 220px 180px auto;gap:12px;margin-bottom:16px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse}th,td{padding:12px 14px;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}th{background:#f8fafc;color:#64748b;text-transform:uppercase;font-size:11px;letter-spacing:.06em}td.actions{min-width:280px}.row-title{font-weight:900;color:var(--navy)}.row-sub{font-size:12px;color:#64748b;margin-top:2px}
.modules-grid{padding:18px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.module-card{border:1px solid #e2e8f0;border-radius:16px;padding:18px;background:linear-gradient(135deg,#fff,#f8fafc)}.module-card .ico{font-size:30px}.module-card h4{margin:10px 0 4px;color:var(--navy)}.module-card p{margin:0;color:#64748b;font-size:12px}.module-usage{padding:16px}.usage-row{display:grid;grid-template-columns:150px 1fr 40px;gap:10px;align-items:center;margin:10px 0}.bar{height:10px;background:#e2e8f0;border-radius:99px;overflow:hidden}.bar span{display:block;height:100%;background:var(--blue);border-radius:99px}.section-title{margin:18px 0 10px;font-weight:900;color:var(--navy)}.module-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.module-check{display:flex;align-items:center;gap:10px;border:1px solid #e2e8f0;border-radius:13px;padding:12px;background:#f8fafc}.module-check input{width:18px;height:18px}
.form-grid{display:grid;gap:12px;padding:18px}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr));padding:0}.span-3{grid-column:1/-1}.stack{display:flex;flex-direction:column;gap:10px;padding:0 18px 18px}.health-box{background:#0f172a;color:#e2e8f0;border-radius:13px;padding:14px;max-height:300px;overflow:auto;margin:12px 18px 18px;font-size:12px}
.modal{position:fixed;inset:0;background:rgba(15,23,42,.55);z-index:50;display:flex;align-items:center;justify-content:center;padding:20px}.modal-card{width:100%;max-width:640px;background:#fff;border-radius:20px;box-shadow:0 30px 80px rgba(0,0,0,.3);padding:20px;max-height:92vh;overflow:auto}.modal-card.wide{max-width:980px}.modal-head{display:flex;justify-content:space-between;align-items:center;margin-bottom:16px}.modal-head h3{margin:0;color:var(--navy)}.icon-btn{width:34px;height:34px;border-radius:10px;border:1px solid #e2e8f0;background:#f8fafc}.modal-actions{display:flex;justify-content:flex-end;gap:10px;margin-top:18px}
.treasury-match-modal{z-index:2150}.treasury-match-card{width:min(980px,calc(100vw - 32px));}.treasury-match-form{display:grid;gap:14px}.treasury-match-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px}.treasury-match-summary>div,.treasury-match-total{padding:10px 12px;border:1px solid #dce6ef;border-radius:11px;background:#f8fbfd;min-width:0}.treasury-match-summary span,.treasury-match-summary strong,.treasury-match-total span,.treasury-match-total strong,.treasury-match-total small{display:block}.treasury-match-summary span,.treasury-match-total span{color:#667085;font-size:11px;font-weight:800;text-transform:uppercase}.treasury-match-summary strong{margin-top:4px;overflow-wrap:anywhere}.treasury-match-description{padding:11px 13px;border-left:4px solid #0f766e;background:#f1fbf8;border-radius:9px;color:#294c4a}.treasury-match-invoices{display:grid;gap:8px;max-height:42vh;overflow:auto;padding-right:3px}.treasury-match-invoice{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(130px,180px);gap:10px;align-items:center;padding:11px;border:1px solid #dbe5ed;border-radius:12px;background:#fff}.treasury-match-invoice.is-client-choice{border-color:#59ad9c;background:#f1fbf8}.treasury-match-invoice>input[type="checkbox"]{width:20px;height:20px}.treasury-match-invoice span,.treasury-match-invoice strong,.treasury-match-invoice small{display:block;min-width:0}.treasury-match-invoice small{margin-top:3px;color:#667085}.treasury-match-total{display:grid;grid-template-columns:1fr auto;gap:3px 12px;align-items:center}.treasury-match-total strong{font-size:18px;color:#0f5f52}.treasury-match-total small{grid-column:1/-1;color:#667085}
@media(max-width:760px){.treasury-match-modal{padding:0}.treasury-match-card{width:100vw;max-width:none;max-height:100dvh;border-radius:0}.treasury-match-summary{grid-template-columns:1fr 1fr}.treasury-match-invoice{grid-template-columns:auto minmax(0,1fr)}.treasury-match-invoice>.control{grid-column:1/-1;min-height:44px!important;font-size:16px!important}.treasury-match-card .modal-actions{display:grid;grid-template-columns:1fr}.treasury-match-card .modal-actions .btn{min-height:44px!important}}
.toast-zone{position:fixed;right:18px;bottom:18px;z-index:80;display:flex;flex-direction:column;gap:10px}.toast{background:#fff;border-left:5px solid var(--blue);border-radius:13px;padding:12px 14px;box-shadow:var(--shadow);max-width:380px;font-weight:700}.toast.ok{border-left-color:var(--green)}.toast.err{border-left-color:var(--red)}.toast.warn{border-left-color:var(--gold)}
@media(max-width:1000px){.main-shell{grid-template-columns:1fr}.side{position:relative;height:auto}.side-nav{flex-direction:row;overflow:auto}.side-footer{display:none}.kpi-grid,.grid.two,.modules-grid{grid-template-columns:1fr 1fr}.panel-tools{grid-template-columns:1fr 1fr}.topbar{align-items:flex-start;flex-direction:column}.form-grid.three{grid-template-columns:1fr}.span-3{grid-column:auto}}
@media(max-width:640px){.kpi-grid,.grid.two,.modules-grid,.module-checks,.panel-tools{grid-template-columns:1fr}.view{padding:16px}.hero{flex-direction:column;align-items:flex-start}.topbar{padding:14px}.top-actions{width:100%}.top-actions .btn{flex:1}}

/* AZALYS 1.1 — micro-interactions et ouverture dossier sans écran parasite */
.btn:disabled,.btn.is-busy{opacity:.68;cursor:not-allowed;transform:none!important}
.btn:not(:disabled):active{transform:translateY(1px) scale(.99)}
.card,.kpi,.item,.module-card,.hero{transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease}
.card:hover,.kpi:hover,.module-card:hover{transform:translateY(-2px);box-shadow:0 18px 42px rgba(15,23,42,.11)}
.item:hover{transform:translateX(2px);border-color:#dbeafe}
.nav-btn{position:relative;overflow:hidden}.nav-btn.active::before{content:"";position:absolute;left:0;top:9px;bottom:9px;width:3px;border-radius:99px;background:#60a5fa}
.opening-overlay{position:fixed;inset:0;z-index:120;background:rgba(15,23,42,.72);backdrop-filter:blur(8px);display:none;align-items:center;justify-content:center;padding:24px}.opening-overlay.show{display:flex}.opening-card{width:min(420px,94vw);background:#fff;border-radius:22px;box-shadow:0 28px 90px rgba(0,0,0,.35);padding:28px;text-align:center;display:flex;flex-direction:column;gap:10px;align-items:center}.opening-card strong{color:var(--navy);font-size:18px}.opening-card span{color:#64748b}.opening-spinner{width:42px;height:42px;border-radius:50%;border:4px solid #dbeafe;border-top-color:var(--blue);animation:az-spin .8s linear infinite}@keyframes az-spin{to{transform:rotate(360deg)}}
@media (prefers-reduced-motion: reduce){.card,.kpi,.item,.module-card,.hero,.btn{transition:none!important}.opening-spinner{animation:none}}

/* ============================================================================
   AZALYS — COCKPIT CABINET · page d'accueil
   Réécriture consolidée v2.0 — remplace les couches 1.2 → 1.5
   Objectif : pilotage vivant + harmonie avec les pages modules (hub legacy)
   ============================================================================ */

/* ---------- 1. Raffinement de la coquille (partagé par toutes les vues) ---------- */
body{background:#eef2f7;color:#0f2544}
.side{background:#173253;box-shadow:inset -1px 0 0 rgba(255,255,255,.08)}
.side-brand{min-height:74px;padding:20px 18px}
.side-brand strong{font-size:17px;letter-spacing:.01em}
.side-brand span{margin-top:4px;display:block;color:rgba(255,255,255,.68)}
.nav-btn{min-height:44px;padding:12px 14px;border-radius:0;font-size:14px;color:rgba(255,255,255,.78)}
.nav-btn:hover{background:rgba(59,130,246,.16)}
.nav-btn.active{background:#244987;color:#fff}
.nav-btn.active::before{left:0;top:0;bottom:0;width:4px;background:#60a5fa;border-radius:0 99px 99px 0}
.topbar{min-height:66px;padding:12px 22px;background:rgba(255,255,255,.96);border-bottom:1px solid #d9e2ef;box-shadow:0 2px 10px rgba(15,23,42,.06);backdrop-filter:blur(12px)}
.topbar h2{font-size:22px;letter-spacing:-.02em}
.top-actions{gap:8px}
.top-actions .btn,.cockpit-actions .btn{min-height:34px;padding:8px 12px;border-radius:10px;font-size:13px}
.status-pill{min-height:32px;display:inline-flex;align-items:center;border-radius:10px;background:#f8fafc;border-color:#dbe3ef}
.btn.primary{background:#2563eb;box-shadow:0 8px 18px rgba(37,99,235,.18)}
.btn.primary:hover{background:#1d4ed8}
.btn.ghost{background:#f8fafc;border-color:#dbe3ef;color:#0f2544}
.btn.ghost:hover{background:#eef4ff;border-color:#c8d7ed}
.btn.soft{background:#eef6ff;color:#1d4ed8;border:1px solid #bfdbfe}
.btn.soft:hover{background:#dbeafe;color:#1e40af}
.badge{padding:4px 8px;font-size:10px}
.link-btn{color:#2563eb;font-size:13px}
.link-btn:hover{color:#1d4ed8;text-decoration:underline}
.bar{height:8px;background:#e8eef6}
.bar span{transition:width .9s cubic-bezier(.2,.7,.2,1)}

/* ---------- 2. Surface de l'accueil ---------- */
.home-view{background:#eef2f7;padding:22px 22px 34px;min-height:calc(100vh - 66px)}
.cockpit{max-width:1280px;margin:0 auto;display:flex;flex-direction:column;gap:18px}

/* ---------- 3. Hero de pilotage — l'élément signature ---------- */
.cockpit-hero{
  position:relative;overflow:hidden;
  display:grid;grid-template-columns:minmax(0,1.5fr) minmax(280px,.82fr);gap:22px;
  padding:24px 26px;border-radius:20px;color:#fff;
  background:
    radial-gradient(130% 150% at 100% 0%,rgba(37,99,235,.20),transparent 55%),
    linear-gradient(135deg,#1a2e4a 0%,#244987 100%);
  box-shadow:0 18px 42px rgba(15,37,68,.28);
}
.cockpit-hero::after{content:"";position:absolute;right:-70px;bottom:-100px;width:260px;height:260px;border-radius:50%;background:rgba(96,165,250,.16);pointer-events:none}
.cockpit-hero-main{position:relative;z-index:1;display:flex;flex-direction:column}
.cockpit-eyebrow{display:inline-flex;align-items:center;gap:8px;text-transform:uppercase;letter-spacing:.13em;font-size:11px;font-weight:900;color:#bfd5f5;margin-bottom:12px}
.cockpit-pulse-dot{width:8px;height:8px;border-radius:50%;background:#4ade80;box-shadow:0 0 0 0 rgba(74,222,128,.55);animation:az-pulse 2.4s ease-out infinite}
.cockpit-hero h1{margin:0;font-size:clamp(24px,3.2vw,34px);line-height:1.08;letter-spacing:-.03em;font-weight:900}
.cockpit-hero h1 span{color:#9ec5ff}
.cockpit-sub{margin:9px 0 0;color:#c7d6ee;font-size:13.5px;font-weight:600;letter-spacing:.01em}
.cockpit-pulse{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.cockpit-chip{display:inline-flex;align-items:center;gap:7px;padding:7px 13px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.16);font-size:12.5px;font-weight:700;backdrop-filter:blur(4px)}
.cockpit-chip b{font-weight:900;font-variant-numeric:tabular-nums}
.cockpit-chip .ic{font-size:13px}
.cockpit-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto;padding-top:22px}
.cockpit-actions .btn.ghost{background:rgba(255,255,255,.12);border-color:rgba(255,255,255,.22);color:#fff}
.cockpit-actions .btn.ghost:hover{background:rgba(255,255,255,.22);border-color:rgba(255,255,255,.34)}
.cockpit-actions .btn.primary{background:#fff;color:#1d3a6b;box-shadow:0 10px 22px rgba(0,0,0,.18)}
.cockpit-actions .btn.primary:hover{background:#eaf1ff}

/* carte verre « pouls du cabinet » (colonne droite) */
.cockpit-aside{position:relative;z-index:1;align-self:stretch;display:flex;flex-direction:column;gap:10px;padding:16px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.16);backdrop-filter:blur(8px)}
.cockpit-aside-top{display:flex;align-items:center;justify-content:space-between;font-size:11px;font-weight:900;color:#bfd5f5;text-transform:uppercase;letter-spacing:.09em}
.cockpit-live{display:inline-flex;align-items:center;gap:5px;font-size:10px;font-weight:900;color:#86efac;letter-spacing:.08em}
.cockpit-live::before{content:"";width:6px;height:6px;border-radius:50%;background:#4ade80;animation:az-pulse 2.4s ease-out infinite}
.cockpit-mini{display:flex;align-items:center;gap:12px;padding:11px 12px;border-radius:13px;background:rgba(255,255,255,.08);margin-bottom:8px}
.cockpit-mini:last-child{margin-bottom:0}
.cockpit-mini .mini-ic{display:grid;place-items:center;min-width:38px;height:38px;border-radius:11px;background:rgba(255,255,255,.16);font-size:17px}
.cockpit-mini .mini-txt{display:flex;flex-direction:column;line-height:1.2}
.cockpit-mini .mini-val{font-size:18px;font-weight:900;font-variant-numeric:tabular-nums}
.cockpit-mini .mini-lbl{font-size:11px;color:#c7d6ee;font-weight:700}

/* ---------- 4. Bandeau KPI ---------- */
.kpi-grid.cockpit-kpis{grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:0}
.home-view .kpi{position:relative;overflow:hidden;min-height:122px;border-left:0;border:1px solid #dbe3ef;border-radius:16px;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.06);padding:18px 20px}
.home-view .kpi::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;border-radius:16px 0 0 16px;background:#2563eb}
.home-view .kpi.green::before{background:#16a34a}
.home-view .kpi.gold::before{background:#d97706}
.home-view .kpi.red::before{background:#dc2626}
.home-view .kpi.purple::before{background:#7c3aed}
.home-view .kpi-label{display:flex;align-items:center;gap:7px;color:#8da0bb;font-size:11px;letter-spacing:.07em;font-weight:900;text-transform:uppercase}
.home-view .kpi-label .ic{font-size:14px}
.home-view .kpi-value{color:#0f2544;font-size:33px;line-height:1.04;margin-top:10px;font-weight:900;font-variant-numeric:tabular-nums;letter-spacing:-.02em}
.home-view .kpi-sub{color:#8da0bb;margin-top:7px;font-size:12px;font-weight:700}
.home-view .kpi:hover{transform:translateY(-3px);box-shadow:0 14px 30px rgba(15,23,42,.1)}
.kpi-meter{margin-top:11px;height:6px;border-radius:99px;background:#e8eef6;overflow:hidden}
.kpi-meter span{display:block;height:100%;border-radius:99px;background:linear-gradient(90deg,#22c55e,#16a34a);width:0;transition:width 1s cubic-bezier(.2,.7,.2,1)}

/* ---------- 5. Grilles de panneaux ---------- */
.cockpit-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;align-items:stretch}
.dashboard-panel{border:1px solid #dbe3ef;border-radius:16px;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.055);display:flex;flex-direction:column;transition:box-shadow .18s ease}
.dashboard-panel:hover{box-shadow:0 12px 26px rgba(15,23,42,.085)}
.dashboard-panel .card-head{min-height:56px;padding:15px 20px;background:#fff;border-bottom:1px solid #dbe3ef}
.dashboard-panel .card-head > div{display:flex;flex-direction:column;gap:3px}
.dashboard-panel .card-head h3{color:#0f2544;font-size:16px;font-weight:900;margin:0}
.dashboard-panel .muted{color:#8da0bb;font-size:12px}
.dashboard-panel .list,.dashboard-panel .module-usage{padding:16px 18px 18px;flex:1}
.panel-tall{min-height:330px}
.dashboard-panel .item{margin:0 0 10px;border:1px solid #e5edf6;border-radius:12px;background:#fff;transition:background .15s,border-color .15s,transform .15s}
.dashboard-panel .item:last-child{margin-bottom:0}
.dashboard-panel .item:hover{background:#f6f9fe;border-color:#cdddf5;transform:translateX(3px)}
.dashboard-panel .empty{min-height:172px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:0;background:#fff;color:#8da0bb;font-weight:600;text-align:center}
.dashboard-panel .empty .empty-ic{font-size:26px;opacity:.7}
.dashboard-panel .module-usage{display:flex;flex-direction:column;gap:13px}
.dashboard-panel .usage-row{display:grid;grid-template-columns:minmax(140px,180px) 1fr 40px;gap:12px;align-items:center;margin:0}
.dashboard-panel .usage-row strong{color:#0f2544;font-size:13px;font-weight:800;display:flex;align-items:center;gap:7px}
.dashboard-panel .usage-row > span:last-child{text-align:right;font-weight:900;color:#0f2544;font-variant-numeric:tabular-nums}

/* ---------- 6. Lanceur de modules — tuiles colorées (harmonisé au hub legacy) ---------- */
.cockpit-modules{border:1px solid #dbe3ef;border-radius:16px;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.055)}
.cockpit-modules .card-head{padding:16px 20px;border-bottom:1px solid #dbe3ef;align-items:center}
.cockpit-modules .card-head h3{margin:0;font-size:16px;font-weight:900;color:#0f2544}
.cockpit-modules .muted{color:#8da0bb;font-size:12px}
.home-module-grid{padding:18px 20px 20px;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.home-module-card{
  --grad-a:#dbeafe;--grad-b:#bfdbfe;--accent:#2563eb;
  position:relative;overflow:hidden;text-align:left;cursor:pointer;
  min-height:160px;padding:16px;border-radius:14px;
  border:2px solid transparent;background:linear-gradient(135deg,var(--grad-a),var(--grad-b));
  display:flex;flex-direction:column;align-items:flex-start;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.home-module-card:hover{transform:translateY(-4px);border-color:var(--accent);box-shadow:0 16px 32px rgba(15,23,42,.16)}
.home-module-card:focus-visible{outline:3px solid rgba(37,99,235,.3);outline-offset:2px}
.home-module-icon{display:grid;place-items:center;width:46px;height:46px;border-radius:13px;background:rgba(255,255,255,.62);font-size:24px;margin-bottom:12px;box-shadow:0 2px 6px rgba(15,23,42,.08)}
.home-module-title{font-size:14.5px;font-weight:900;color:#13294a;margin-bottom:4px;line-height:1.2}
.home-module-desc{font-size:11.5px;color:#3f5778;line-height:1.45;min-height:33px;font-weight:600}
.home-module-footer{margin-top:auto;display:flex;align-items:center;gap:6px;flex-wrap:wrap;padding-top:12px}
.home-module-footer .badge{background:rgba(255,255,255,.72);color:#13294a;box-shadow:inset 0 0 0 1px rgba(255,255,255,.5)}
.home-module-arrow{position:absolute;right:13px;top:13px;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;background:rgba(255,255,255,.68);color:var(--accent);font-weight:900;font-size:14px;opacity:0;transform:translateX(-4px);transition:opacity .2s,transform .2s}
.home-module-card:hover .home-module-arrow{opacity:1;transform:translateX(0)}
.empty.wide{grid-column:1/-1;padding:28px;text-align:center;color:#94a3b8}

/* tonalités alignées sur les dégradés du hub legacy */
.home-module-card.tone-blue{--grad-a:#dbeafe;--grad-b:#bfdbfe;--accent:#2563eb}
.home-module-card.tone-green{--grad-a:#dcfce7;--grad-b:#bbf7d0;--accent:#15803d}
.home-module-card.tone-gold{--grad-a:#fef3c7;--grad-b:#fde68a;--accent:#d97706}
.home-module-card.tone-purple{--grad-a:#ede9fe;--grad-b:#ddd6fe;--accent:#7c3aed}
.home-module-card.tone-orange{--grad-a:#fed7aa;--grad-b:#fdba74;--accent:#ea580c}
.home-module-card.tone-red{--grad-a:#fee2e2;--grad-b:#fecaca;--accent:#dc2626}
.home-module-card.tone-pink{--grad-a:#fce7f3;--grad-b:#fbcfe8;--accent:#db2777}
.home-module-card.tone-indigo{--grad-a:#e0e7ff;--grad-b:#c7d2fe;--accent:#4f46e5}
.home-module-card.tone-teal{--grad-a:#ccfbf1;--grad-b:#99f6e4;--accent:#0d9488}
.home-module-card.tone-slate{--grad-a:#e2e8f0;--grad-b:#cbd5e1;--accent:#475569}

/* ---------- 7. Animations d'entrée (respecte prefers-reduced-motion) ---------- */
@keyframes az-rise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@keyframes az-pulse{0%{box-shadow:0 0 0 0 rgba(74,222,128,.55)}70%{box-shadow:0 0 0 9px rgba(74,222,128,0)}100%{box-shadow:0 0 0 0 rgba(74,222,128,0)}}
[data-rise]{animation:az-rise .5s both;animation-delay:var(--d,0s)}

/* ---------- 8. Responsive ---------- */
@media(max-width:1180px){
  .kpi-grid.cockpit-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}
  .home-module-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:900px){
  .home-view{padding:18px}
  .cockpit-hero{grid-template-columns:1fr;padding:20px}
  .cockpit-aside{order:-1}
  .home-module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .cockpit-grid{grid-template-columns:1fr}
  .dashboard-panel .card-head{align-items:flex-start}
}
@media(max-width:640px){
  .home-view{padding:14px}
  .cockpit-hero{padding:18px;border-radius:16px}
  .cockpit-actions,.cockpit-actions .btn{width:100%}
  .kpi-grid.cockpit-kpis,.home-module-grid{grid-template-columns:1fr}
  .dashboard-panel .usage-row{grid-template-columns:108px 1fr 30px}
  .cockpit-modules .card-head{flex-direction:column;align-items:flex-start;gap:10px}
  .cockpit-modules .card-head .btn{width:100%}
}
@media (prefers-reduced-motion: reduce){
  [data-rise]{animation:none}
  .cockpit-pulse-dot,.cockpit-live::before{animation:none}
  .bar span,.kpi-meter span{transition:none}
  .home-module-card:hover,.home-view .kpi:hover,.dashboard-panel .item:hover{transform:none}
}

/* ---------- 9. Pilotage Missions & tâches ---------- */
.task-setup{border:1px solid #c7d2fe;background:linear-gradient(135deg,#fff,#eef2ff)}
.task-setup .setup-body{padding:18px 20px;color:#334155;line-height:1.55}
.tasks-main .panel-tools{grid-template-columns:1fr 170px 210px auto auto;align-items:center}
.tasks-grid{align-items:start}
.task-list{max-height:560px;overflow:auto}
.project-item .item-actions{min-width:260px;justify-content:flex-end}
.row-danger{background:#fff7f7}
.row-danger td:first-child{border-left:4px solid var(--red)}
#tasks-table .badge{margin-top:4px}
#task-kpi-grid{margin-bottom:16px}
@media(max-width:1180px){.tasks-main .panel-tools{grid-template-columns:1fr 1fr 1fr}.tasks-main .panel-tools .btn{width:100%}}
@media(max-width:900px){.tasks-main .panel-tools{grid-template-columns:1fr}.project-item{flex-direction:column}.project-item .item-actions{min-width:0;width:100%}.project-item .item-actions .btn{flex:1}.tasks-grid{grid-template-columns:1fr}}

/* Assistant AI flottant — robot dynamique */
.ai-floating{position:fixed;right:24px;bottom:24px;z-index:1500;display:block}
.ai-floating.hidden{display:none!important}
.ai-robot-btn{position:relative;min-width:58px;height:58px;padding:0 12px;border:0;border-radius:24px;background:linear-gradient(135deg,#2563eb,#7c3aed);box-shadow:0 18px 42px rgba(37,99,235,.32),0 0 0 1px rgba(255,255,255,.28) inset;cursor:grab;display:flex;align-items:center;justify-content:center;gap:8px;transition:transform .18s ease,box-shadow .18s ease;animation:aiBotFloat 3.4s ease-in-out infinite;touch-action:none;color:#fff;font-weight:900}
.ai-robot-btn:hover{transform:translateY(-3px) scale(1.03);box-shadow:0 24px 54px rgba(37,99,235,.42),0 0 0 1px rgba(255,255,255,.34) inset}
.ai-robot-btn.thinking .ai-robot-face{animation:aiBotThinking .78s ease-in-out infinite}
.ai-robot-glow{position:absolute;inset:-8px;border-radius:30px;background:radial-gradient(circle,rgba(59,130,246,.22),transparent 64%);animation:aiPulseGlow 2.3s ease-in-out infinite;pointer-events:none}
.ai-robot-face{position:relative;font-size:28px;filter:drop-shadow(0 6px 10px rgba(15,23,42,.25))}.ai-robot-text{position:relative;font-size:12px;line-height:1.05;letter-spacing:.01em;max-width:56px;text-align:left}
.ai-robot-badge{position:absolute;top:-6px;right:-6px;min-width:23px;height:23px;border-radius:999px;background:#ef4444;color:#fff;border:3px solid #fff;font-size:11px;font-weight:900;display:flex;align-items:center;justify-content:center;box-shadow:0 8px 20px rgba(239,68,68,.35)}
.ai-robot-badge.hidden{display:none!important}
.ai-floating-panel{position:absolute;right:0;bottom:72px;width:min(380px,calc(100vw - 28px));max-height:min(590px,calc(100vh - 118px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(191,219,254,.92);border-radius:26px;background:rgba(255,255,255,.96);box-shadow:0 28px 80px rgba(15,23,42,.22);backdrop-filter:blur(16px)}
.ai-floating-panel.hidden{display:none!important}
.ai-floating-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 12px 16px;background:linear-gradient(135deg,#eff6ff,#f5f3ff);border-bottom:1px solid #dbeafe}
.ai-head-left{display:flex;align-items:center;gap:12px;min-width:0}.ai-head-left strong{display:block;color:#0f172a;font-size:14px}.ai-head-left span{display:block;color:#64748b;font-size:12px;margin-top:2px}.ai-avatar{width:42px;height:42px;border-radius:16px;display:flex;align-items:center;justify-content:center;background:#fff;box-shadow:0 8px 22px rgba(37,99,235,.15);font-size:23px}.ai-head-actions{display:flex;gap:6px}.ai-head-actions .icon-btn{width:34px;height:34px;border-radius:12px;background:rgba(255,255,255,.75)}
.ai-floating-context{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;padding:12px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.ai-context-chip{background:#fff;border:1px solid #e5e7eb;border-radius:15px;padding:8px 6px;text-align:center}.ai-context-chip strong{display:block;color:#0f172a;font-size:15px}.ai-context-chip span{display:block;color:#64748b;font-size:10px;margin-top:1px;text-transform:uppercase;letter-spacing:.04em}
.ai-floating-chat{padding:14px;overflow:auto;flex:1 1 auto;min-height:0;max-height:none;background:linear-gradient(180deg,#fff,#f8fafc);overscroll-behavior:contain}
.ai-welcome-card{border:1px dashed #bfdbfe;border-radius:20px;background:#eff6ff;padding:14px;color:#1e3a8a}.ai-welcome-card strong{display:block;margin-bottom:6px}.ai-welcome-card p{margin:0;color:#475569;font-size:13px;line-height:1.45}.ai-float-msg{max-width:88%;margin:8px 0;padding:11px 13px;border-radius:18px;font-size:13px;line-height:1.48;white-space:normal}.ai-float-msg.assistant{margin-right:auto;background:#fff;border:1px solid #dbeafe;color:#0f172a;box-shadow:0 8px 22px rgba(15,23,42,.05)}.ai-float-msg.user{margin-left:auto;background:#2563eb;color:#fff;box-shadow:0 10px 24px rgba(37,99,235,.22)}
.ai-floating-quick{display:flex;flex-wrap:wrap;gap:8px;padding:10px 12px;border-top:1px solid #e2e8f0;background:#fff}.ai-floating-quick .btn{padding:8px 10px;border-radius:999px;font-size:12px;min-height:auto}.ai-floating-compose{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;background:#fff;border-top:1px solid #e2e8f0}.ai-floating-compose textarea{resize:none;min-height:46px;border-radius:16px}.ai-floating-note{padding:0 14px 12px;color:#64748b;font-size:11px;background:#fff}
@keyframes aiBotFloat{0%,100%{transform:translateY(0)}50%{transform:translateY(-7px)}}
@keyframes aiPulseGlow{0%,100%{opacity:.55;transform:scale(.98)}50%{opacity:1;transform:scale(1.06)}}
@keyframes aiBotThinking{0%,100%{transform:rotate(0deg) scale(1)}25%{transform:rotate(-8deg) scale(1.05)}75%{transform:rotate(8deg) scale(1.05)}}
@media(max-width:720px){.ai-floating{right:16px;bottom:16px}.ai-robot-btn{min-width:54px;height:54px;padding:0 10px;border-radius:19px}.ai-robot-face{font-size:30px}.ai-robot-text{display:none}.ai-floating-panel{position:fixed;left:10px;right:10px;top:10px;bottom:82px;width:auto;max-width:none;max-height:none;height:auto;border-radius:22px}.ai-floating-head{flex:0 0 auto;padding:11px 12px}.ai-avatar{width:36px;height:36px;border-radius:13px}.ai-head-left strong{font-size:13px}.ai-head-left span{font-size:11px}.ai-head-actions .icon-btn{width:32px;height:32px}.ai-floating-context{flex:0 0 auto;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;padding:10px}.ai-floating-context .ai-agent-strip{grid-column:1/-1}.ai-context-chip{padding:7px 5px}.ai-context-chip strong{font-size:14px}.ai-context-chip span{font-size:9px}.ai-floating-chat{flex:1 1 auto;min-height:0;max-height:none;padding:11px}.ai-float-msg{max-width:100%;font-size:12px;line-height:1.42}.ai-floating-quick{flex:0 0 auto;padding:8px 10px;gap:7px;max-height:76px;overflow:auto}.ai-floating-quick .btn{padding:7px 9px;font-size:11px}.ai-floating-compose{flex:0 0 auto;grid-template-columns:minmax(0,1fr) 88px;padding:10px;gap:8px}.ai-floating-compose textarea{min-height:44px;max-height:84px}.ai-floating-compose .btn{width:100%;min-height:44px;padding:0 10px}.ai-floating-note{display:none}}
@media(prefers-reduced-motion:reduce){.ai-robot-btn,.ai-robot-glow,.ai-robot-btn.thinking .ai-robot-face{animation:none!important}}


.ai-floating.is-dragging,.client-chat-floating.is-dragging,.cabinet-chat-floating.is-dragging{opacity:.96}
.floating-drag-handle{touch-action:none}
.ai-floating-head.floating-drag-handle,.client-chat-head.floating-drag-handle,.cabinet-chat-head.floating-drag-handle{cursor:grab}
.ai-floating.is-dragging .floating-drag-handle,.client-chat-floating.is-dragging .floating-drag-handle,.cabinet-chat-floating.is-dragging .floating-drag-handle{cursor:grabbing}

/* ----- AZALYS v2.4 — Collaborateurs & droits ----- */
.role-collaborateur .admin-only{display:none!important;}
.collab-intro{margin-bottom:18px;}
.stack.horizontal{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.access-note{margin-top:12px;padding:12px 14px;border:1px solid rgba(37,99,235,.14);background:rgba(37,99,235,.05);border-radius:14px;color:#334155;}
.collab-grid{align-items:start;}
.row-selected{background:rgba(37,99,235,.06);}
.collab-rights-zone{display:grid;gap:12px;max-height:640px;overflow:auto;padding-right:4px;}
.collab-rights-zone.empty{display:flex;align-items:center;justify-content:center;gap:10px;min-height:220px;color:#64748b;background:rgba(15,23,42,.03);border:1px dashed rgba(100,116,139,.35);border-radius:16px;}
.rights-card{border:1px solid rgba(148,163,184,.35);border-radius:16px;padding:14px;background:#fff;box-shadow:0 8px 22px rgba(15,23,42,.04);}
.rights-dossier{display:flex;gap:10px;align-items:center;margin-bottom:10px;}
.rights-dossier input{width:18px;height:18px;}
.rights-modules{display:grid;gap:8px;padding:10px 12px;background:#f8fafc;border-radius:12px;}
.rights-modules label{display:inline-flex;align-items:center;gap:8px;margin-right:10px;color:#334155;font-size:.92rem;}
.rights-modules input{width:16px;height:16px;}
@media (max-width: 980px){.collab-grid{grid-template-columns:1fr!important}.rights-card{padding:12px}.rights-modules{grid-template-columns:1fr}}

/* ============================================================================
   AZALYS v2.8 — Refonte EXPERTE de la page Collaborateurs & droits
   Objectif : page compacte, lisible, équilibrée, sans tableau écrasé ni colonnes vides.
   ============================================================================ */
.collab-view-v28{background:#eef2f7;min-height:calc(100vh - 66px);padding:20px 22px 34px;overflow:auto}.collab-command-center{max-width:1440px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.collab-hero-v28{position:relative;overflow:hidden;display:flex;justify-content:space-between;align-items:flex-start;gap:24px;padding:22px 24px;border-radius:22px;background:linear-gradient(135deg,#ffffff 0%,#eff6ff 58%,#f8fafc 100%);border:1px solid #cfe0ff;box-shadow:0 16px 42px rgba(15,23,42,.08)}.collab-hero-v28::after{content:"";position:absolute;right:-70px;top:-80px;width:230px;height:230px;border-radius:999px;background:radial-gradient(circle,rgba(37,99,235,.18),transparent 66%);pointer-events:none}.collab-eyebrow-v28{display:inline-flex;align-items:center;gap:8px;margin-bottom:8px;color:#2563eb;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.12em}.collab-hero-v28 h3{margin:0;color:#0f2544;font-size:28px;line-height:1.05;letter-spacing:-.035em}.collab-hero-v28 p{margin:8px 0 0;color:#475569;font-weight:650;line-height:1.45}.collab-hero-actions-v28{position:relative;z-index:1;display:flex;gap:10px;align-items:center;flex-wrap:wrap;justify-content:flex-end;min-width:260px}.collab-hero-chips-v28{display:flex;flex-wrap:wrap;gap:8px;margin-top:15px}.collab-chip-v28{display:inline-flex;align-items:center;padding:8px 11px;border-radius:999px;background:#fff;border:1px solid #dbeafe;color:#1e3a8a;font-size:12px;font-weight:900;box-shadow:0 8px 18px rgba(37,99,235,.06)}.collab-chip-v28.ok{background:#dcfce7;border-color:#bbf7d0;color:#15803d}.collab-kpi-grid-v28{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.collab-kpi-v28{position:relative;overflow:hidden;background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:16px 18px;box-shadow:0 10px 24px rgba(15,23,42,.06)}.collab-kpi-v28::before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#2563eb}.collab-kpi-v28.green::before{background:#16a34a}.collab-kpi-v28.gold::before{background:#d97706}.collab-kpi-v28.purple::before{background:#7c3aed}.collab-kpi-v28 span{display:block;color:#64748b;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.collab-kpi-v28 strong{display:block;margin-top:7px;color:#0f2544;font-size:30px;line-height:1;font-weight:950;font-variant-numeric:tabular-nums}.collab-kpi-v28 small{display:block;margin-top:8px;color:#64748b;font-weight:700}.collab-layout-v28{display:grid;grid-template-columns:minmax(350px,.88fr) minmax(0,1.62fr);gap:16px;align-items:start}.collab-panel-v28{background:#fff;border:1px solid #dbe3ef;border-radius:22px;box-shadow:0 14px 38px rgba(15,23,42,.07);overflow:hidden}.collab-panel-head-v28{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px;border-bottom:1px solid #e2e8f0}.collab-panel-head-v28 h3{margin:0;color:#0f2544}.btn.compact,.btn.mini{min-height:32px;padding:7px 11px;font-size:12px;border-radius:10px}.collab-filterbar-v28{display:grid;grid-template-columns:1fr 140px;gap:9px;padding:13px 14px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.collab-cards-list-v28{display:grid;gap:10px;padding:14px;max-height:690px;overflow:auto}.collab-person-card-v28{width:100%;text-align:left;display:grid;grid-template-columns:48px 1fr auto;gap:12px;align-items:center;padding:13px;border:1px solid #e2e8f0;border-radius:18px;background:#fff;box-shadow:0 8px 18px rgba(15,23,42,.04);transition:.16s ease;cursor:pointer}.collab-person-card-v28:hover{border-color:#bfdbfe;transform:translateY(-1px);box-shadow:0 12px 28px rgba(37,99,235,.08)}.collab-person-card-v28.selected{border-color:#93c5fd;background:linear-gradient(135deg,#eff6ff,#fff);box-shadow:0 14px 32px rgba(37,99,235,.12)}.collab-person-card-v28.disabled{opacity:.72}.collab-avatar-v28{width:48px;height:48px;border-radius:17px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:950;letter-spacing:.04em;box-shadow:0 12px 24px rgba(37,99,235,.22);flex:0 0 auto}.collab-avatar-v28.big{width:54px;height:54px;border-radius:20px;font-size:18px}.collab-avatar-v28.soft{background:#eff6ff;color:#2563eb;box-shadow:none;border:1px solid #dbeafe}.collab-person-main-v28{min-width:0;display:block}.collab-person-top-v28{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.collab-person-top-v28 strong{color:#0f2544}.collab-email-v28{display:block;color:#64748b;font-size:12px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collab-mini-v28{display:block;margin-top:8px;color:#475569;font-size:12px}.collab-mini-v28 b{color:#0f2544}.collab-person-actions-v28{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-end}.collab-detail-v28{min-height:520px}.collab-detail-sticky-v28{position:sticky;top:66px;z-index:2;background:#fff;border-bottom:1px solid #e2e8f0}.collab-detail-head-v28{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:17px 18px}.collab-selected-profile-v28{display:flex;align-items:center;gap:13px;min-width:0}.collab-selected-profile-v28 h3{margin:0;color:#0f2544}.collab-profile-title-v28{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.collab-profile-title-v28 h3{margin:0;color:#0f2544}.collab-rights-summary-v28{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;padding:0 18px 14px}.collab-rights-summary-v28>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:15px;padding:10px 12px}.collab-rights-summary-v28 strong{display:block;font-size:22px;color:#0f2544;line-height:1;font-variant-numeric:tabular-nums}.collab-rights-summary-v28 span{display:block;margin-top:5px;color:#64748b;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.rights-toolbar-v28{display:grid;grid-template-columns:1fr auto auto;gap:8px;padding:0 18px 16px}.collab-rights-zone-v28{display:grid;gap:12px;padding:16px 18px;background:#f8fafc;max-height:none;overflow:visible}.collab-rights-zone-v28.empty{display:flex;align-items:center;justify-content:center;gap:12px;min-height:320px;text-align:left;color:#64748b}.collab-rights-zone-v28.empty strong{display:block;color:#0f2544;margin-bottom:4px}.rights-card-v28{background:#fff;border:1px solid #e2e8f0;border-radius:19px;overflow:hidden;box-shadow:0 8px 20px rgba(15,23,42,.04);transition:.16s ease}.rights-card-v28.is-on{border-color:#bfdbfe;box-shadow:0 12px 28px rgba(37,99,235,.08)}.rights-card-main-v28{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 16px}.rights-dossier-v28{display:flex!important;align-items:center;gap:11px;margin:0!important;cursor:pointer;color:#0f2544}.rights-dossier-v28 input{width:18px;height:18px}.rights-dossier-v28 span{display:flex;flex-direction:column;gap:3px}.rights-dossier-v28 strong{font-size:14px;color:#0f2544}.rights-dossier-v28 small{font-size:11px;color:#64748b;font-weight:800}.rights-card-status-v28{white-space:nowrap}.rights-card-meta-v28{display:flex;flex-wrap:wrap;gap:8px;padding:0 16px 12px}.rights-card-meta-v28 span{display:inline-flex;align-items:center;padding:6px 9px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:11px;font-weight:850}.rights-modules-v28{display:flex;flex-wrap:wrap;gap:8px;padding:13px 16px;background:#f8fafc;border-top:1px solid #e2e8f0}.module-pill-v28{display:inline-flex!important;flex-direction:row!important;align-items:center!important;gap:7px!important;margin:0!important;padding:8px 10px;border:1px solid #e2e8f0;border-radius:999px;background:#fff;color:#334155;font-size:12px;font-weight:850;cursor:pointer}.module-pill-v28:hover{border-color:#bfdbfe;background:#eff6ff}.module-pill-v28 input{width:15px!important;height:15px!important}.collab-empty-v28{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:24px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px}.collab-empty-v28 strong{color:#0f2544}.collab-empty-v28 p{margin:0}.collab-view-v28 table,.collab-view-v28 .table-wrap{display:none!important}
@media(max-width:1180px){.collab-layout-v28{grid-template-columns:1fr}.collab-cards-list-v28{max-height:none}.collab-detail-sticky-v28{position:relative;top:auto}.collab-kpi-grid-v28{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:720px){.collab-view-v28{padding:14px}.collab-hero-v28{flex-direction:column}.collab-hero-actions-v28,.rights-toolbar-v28,.collab-filterbar-v28{grid-template-columns:1fr;width:100%;min-width:0}.collab-kpi-grid-v28,.collab-rights-summary-v28{grid-template-columns:1fr}.collab-person-card-v28{grid-template-columns:42px 1fr}.collab-person-actions-v28{grid-column:1/-1;justify-content:flex-start}.collab-detail-head-v28{flex-direction:column;align-items:stretch}.collab-detail-head-v28 .btn{width:100%}.rights-card-main-v28{flex-direction:column;align-items:flex-start}.rights-toolbar-v28 .btn{width:100%}}

/* ============================================================================
   AZALYS v3.0 — Collaborateurs & accès · version cabinet professionnelle
   ============================================================================ */
.collab-pro{background:#eef2f7;min-height:calc(100vh - 66px);padding:20px 22px 34px;overflow:auto;color:#334155}.collab-pro *{box-sizing:border-box}.collab-pro-wrap{max-width:1480px;margin:0 auto;display:flex;flex-direction:column;gap:14px}.collab-pro-head{position:relative;overflow:hidden;display:flex;align-items:flex-start;justify-content:space-between;gap:18px;background:#fff;border:1px solid #dbe3ef;border-radius:20px;padding:18px 20px;box-shadow:0 12px 30px rgba(15,23,42,.06)}.collab-pro-head:before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#2563eb,#7c3aed)}.collab-pro-eyebrow{display:inline-flex;align-items:center;gap:8px;color:#2563eb;font-size:11px;font-weight:950;text-transform:uppercase;letter-spacing:.12em}.collab-pro-head h3{margin:6px 0 3px;color:#0f2544;font-size:24px;line-height:1.08;letter-spacing:-.03em}.collab-pro-head p{margin:0;color:#64748b;font-weight:650;line-height:1.45}.collab-pro-actions{position:relative;z-index:1;display:flex;gap:8px;align-items:center;justify-content:flex-end;flex-wrap:wrap}.btn.compact,.btn.mini{min-height:32px;padding:7px 11px;font-size:12px;border-radius:10px}.collab-pro-kpis{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.collab-pro-kpi{position:relative;overflow:hidden;background:#fff;border:1px solid #dbe3ef;border-radius:17px;padding:14px 15px;box-shadow:0 9px 22px rgba(15,23,42,.05)}.collab-pro-kpi:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#2563eb}.collab-pro-kpi.green:before{background:#16a34a}.collab-pro-kpi.gold:before{background:#d97706}.collab-pro-kpi.purple:before{background:#7c3aed}.collab-pro-kpi.red:before{background:#dc2626}.collab-pro-kpi span{display:block;color:#64748b;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.08em}.collab-pro-kpi strong{display:block;margin-top:7px;color:#0f2544;font-size:27px;line-height:1;font-weight:950;font-variant-numeric:tabular-nums}.collab-pro-kpi small{display:block;margin-top:7px;color:#64748b;font-weight:700;font-size:11px}.collab-pro-tabs{display:flex;gap:8px;flex-wrap:wrap;background:#fff;border:1px solid #dbe3ef;border-radius:16px;padding:7px;box-shadow:0 8px 20px rgba(15,23,42,.04)}.collab-pro-tabs button{border:0;background:transparent;color:#64748b;font-weight:900;border-radius:11px;padding:9px 14px;cursor:pointer}.collab-pro-tabs button:hover{background:#f8fafc;color:#0f2544}.collab-pro-tabs button.active{background:#2563eb;color:#fff;box-shadow:0 8px 18px rgba(37,99,235,.18)}.collab-tab-panel{display:none}.collab-tab-panel.active{display:block}.collab-pro-layout{display:grid;grid-template-columns:minmax(330px,.82fr) minmax(0,1.75fr);gap:14px;align-items:start}.collab-pro-panel{background:#fff;border:1px solid #dbe3ef;border-radius:20px;box-shadow:0 12px 32px rgba(15,23,42,.06);overflow:hidden}.collab-pro-panel-head{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:15px 17px;border-bottom:1px solid #e2e8f0}.collab-pro-panel-head h3{margin:0;color:#0f2544;font-size:16px}.collab-pro-filterbar{display:grid;grid-template-columns:1fr 132px;gap:8px;padding:12px 13px;background:#f8fafc;border-bottom:1px solid #e2e8f0}.collab-pro-list{display:grid;gap:9px;padding:13px;max-height:690px;overflow:auto}.collab-pro-person{width:100%;text-align:left;display:grid;grid-template-columns:46px 1fr auto;gap:11px;align-items:center;padding:12px;border:1px solid #e2e8f0;border-radius:16px;background:#fff;box-shadow:0 7px 16px rgba(15,23,42,.035);transition:.16s ease;cursor:pointer}.collab-pro-person:hover{border-color:#bfdbfe;transform:translateY(-1px);box-shadow:0 12px 28px rgba(37,99,235,.08)}.collab-pro-person.selected{border-color:#93c5fd;background:linear-gradient(135deg,#eff6ff,#fff);box-shadow:0 14px 32px rgba(37,99,235,.12)}.collab-pro-person.disabled{opacity:.62}.collab-pro-avatar{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;display:flex;align-items:center;justify-content:center;font-weight:950;letter-spacing:.03em;box-shadow:0 10px 20px rgba(37,99,235,.20);flex:0 0 auto}.collab-pro-avatar.big{width:54px;height:54px;border-radius:18px;font-size:18px}.collab-pro-avatar.soft{background:#eff6ff;color:#2563eb;box-shadow:none;border:1px solid #dbeafe}.collab-person-main{min-width:0}.collab-person-top{display:flex;align-items:center;gap:7px;flex-wrap:wrap}.collab-person-top strong{color:#0f2544;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collab-email{display:block;color:#64748b;font-size:12px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collab-mini{display:flex;flex-wrap:wrap;gap:6px;margin-top:8px}.collab-mini span{display:inline-flex;align-items:center;gap:4px;padding:4px 7px;border-radius:8px;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;font-size:11px;font-weight:850}.collab-mini b{color:#0f2544}.collab-person-actions{display:flex;gap:6px;justify-content:flex-end;flex-wrap:wrap}.collab-pro-detail{min-height:560px}.collab-pro-sticky{position:sticky;top:66px;z-index:3;background:#fff;border-bottom:1px solid #e2e8f0}.collab-pro-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:14px;padding:15px 17px}.collab-pro-selected{display:flex;align-items:center;gap:12px;min-width:0}.collab-pro-selected h3{margin:0;color:#0f2544}.collab-pro-titleline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.collab-pro-detail-actions{display:flex;gap:7px;justify-content:flex-end;flex-wrap:wrap}.collab-save-stack{display:flex;flex-direction:column;align-items:flex-end;gap:5px}.collab-dirty{display:none;color:#d97706;font-size:11px;font-weight:900}.collab-dirty.show{display:block}.collab-pro-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;padding:0 17px 13px}.collab-pro-summary>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:14px;padding:10px 11px}.collab-pro-summary strong{display:block;color:#0f2544;font-size:20px;line-height:1;font-variant-numeric:tabular-nums}.collab-pro-summary span{display:block;margin-top:5px;color:#64748b;font-size:10px;font-weight:950;text-transform:uppercase;letter-spacing:.06em}.collab-pro-meter{height:9px;border-radius:999px;background:#e2e8f0;overflow:hidden;display:flex;border:1px solid #dbe3ef}.collab-pro-meter i{display:block;height:100%}.collab-pro-meter .full{background:#16a34a}.collab-pro-meter .read{background:#0d9488}.collab-pro-meter .restr{background:#7c3aed}.collab-pro-toolbar{display:grid;grid-template-columns:1fr auto auto;gap:8px;padding:0 17px 15px}.collab-pro-rights{display:grid;gap:10px;padding:15px 17px;background:#f8fafc}.collab-pro-rights.empty{display:flex;align-items:center;justify-content:center;gap:12px;min-height:320px;text-align:left;color:#64748b}.collab-pro-rights.empty strong{display:block;color:#0f2544;margin-bottom:4px}.collab-right-row{position:relative;background:#fff;border:1px solid #e2e8f0;border-radius:17px;overflow:hidden;box-shadow:0 7px 18px rgba(15,23,42,.035);transition:.16s ease}.collab-right-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:4px;background:#cbd5e1}.collab-right-row.is-on{border-color:#bfdbfe;box-shadow:0 12px 28px rgba(37,99,235,.07)}.collab-right-row.is-on:before{background:#16a34a}.collab-right-row.is-restricted:before{background:#7c3aed}.collab-right-row.readonly:before{background:#0d9488}.collab-right-row-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:12px;align-items:center;padding:13px 15px 12px 18px}.collab-right-name strong{display:block;color:#0f2544;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.collab-right-name small{display:block;margin-top:4px;color:#64748b;font-weight:750}.collab-row-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.collab-switch{position:relative;width:46px;height:26px;border:1px solid #cbd5e1;border-radius:999px;background:#e2e8f0;cursor:pointer;transition:.18s}.collab-switch:after{content:"";position:absolute;top:2px;left:2px;width:20px;height:20px;border-radius:999px;background:#fff;box-shadow:0 2px 6px rgba(15,23,42,.22);transition:.18s}.collab-switch[aria-checked="true"]{background:#16a34a;border-color:#16a34a}.collab-switch[aria-checked="true"]:after{transform:translateX(20px)}.collab-seg{display:inline-flex;align-items:center;gap:3px;padding:3px;border:1px solid #dbe3ef;border-radius:11px;background:#fff}.collab-seg button{border:0;background:transparent;color:#64748b;font-size:12px;font-weight:900;border-radius:8px;padding:6px 10px;cursor:pointer}.collab-seg button[aria-pressed="true"]{background:#2563eb;color:#fff}.collab-seg button.restr[aria-pressed="true"]{background:#7c3aed}.collab-seg button.read[aria-pressed="true"]{background:#0d9488}.collab-seg[aria-disabled="true"],.collab-modules.locked{opacity:.52;pointer-events:none}.collab-row-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .2s ease}.collab-right-row.is-on .collab-row-body{grid-template-rows:1fr}.collab-row-inner{overflow:hidden;border-top:1px solid #e2e8f0}.collab-row-options{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;padding:12px 15px 12px 18px;background:#f8fafc}.collab-row-options .hint{font-size:12px;font-weight:850;color:#64748b}.collab-modules{display:flex;flex-wrap:wrap;gap:8px;padding:12px 15px 14px 18px;border-top:1px solid #e2e8f0}.collab-module-pill{display:inline-flex!important;align-items:center!important;gap:7px!important;padding:7px 10px;border:1px solid #dbe3ef;border-radius:999px;background:#fff;color:#334155;font-size:12px;font-weight:850;cursor:pointer;user-select:none;margin:0!important}.collab-module-pill input{width:15px!important;height:15px!important}.collab-module-pill.checked{background:#f5f3ff;border-color:#c4b5fd;color:#5b21b6}.collab-empty{min-height:220px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:8px;padding:24px;background:#f8fafc;border:1px dashed #cbd5e1;border-radius:18px}.collab-empty strong{color:#0f2544}.collab-empty p{margin:0}.collab-template-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:13px;padding:16px;background:#f8fafc}.collab-template-card{background:#fff;border:1px solid #dbe3ef;border-radius:18px;padding:15px;box-shadow:0 8px 18px rgba(15,23,42,.035);display:flex;flex-direction:column;gap:10px}.collab-template-card h4{margin:0;color:#0f2544;font-size:15px}.collab-template-card p{margin:0;color:#64748b;font-weight:650;line-height:1.45}.collab-template-tags{display:flex;gap:6px;flex-wrap:wrap}.collab-template-tags span,.collab-chip{display:inline-flex;align-items:center;gap:5px;border-radius:999px;background:#f1f5f9;border:1px solid #e2e8f0;color:#475569;padding:5px 8px;font-size:11px;font-weight:850}.collab-log-list{display:grid;gap:9px;padding:15px;background:#f8fafc}.collab-log-item{display:grid;grid-template-columns:40px 1fr auto;gap:11px;align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:15px;padding:11px 13px}.collab-log-icon{width:40px;height:40px;border-radius:13px;display:flex;align-items:center;justify-content:center;background:#eff6ff;color:#2563eb}.collab-log-main strong{display:block;color:#0f2544}.collab-log-main span{display:block;color:#64748b;font-size:12px;margin-top:2px}.collab-log-date{color:#64748b;font-size:12px;font-weight:850;white-space:nowrap}.collab-copy-list{display:grid;gap:8px;margin-top:13px}.collab-copy-choice{display:grid;grid-template-columns:42px 1fr auto;gap:10px;align-items:center;width:100%;text-align:left;border:1px solid #e2e8f0;background:#fff;border-radius:15px;padding:10px;cursor:pointer}.collab-copy-choice:hover{background:#f8fafc;border-color:#bfdbfe}.collab-preview-zone{display:grid;gap:12px}.collab-preview-head{display:flex;align-items:center;justify-content:space-between;gap:12px;background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:14px}.collab-preview-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.collab-preview-card{border:1px solid #e2e8f0;border-radius:16px;padding:12px;background:#fff}.collab-preview-card strong{display:block;color:#0f2544}.collab-preview-card small{display:block;color:#64748b;margin-top:4px}.collab-preview-mods{display:flex;flex-wrap:wrap;gap:6px;margin-top:10px}.collab-preview-mods span{display:inline-flex;border:1px solid #dbe3ef;border-radius:999px;background:#f8fafc;padding:5px 8px;font-size:11px;font-weight:850;color:#475569}.collab-view-v28 table,.collab-view-v28 .table-wrap,.collab-pro table,.collab-pro .table-wrap{display:none!important}
@media(max-width:1280px){.collab-pro-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}.collab-template-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.collab-pro-layout{grid-template-columns:1fr}.collab-pro-list{max-height:none}.collab-pro-sticky{position:relative;top:auto}}
@media(max-width:760px){.collab-pro{padding:14px}.collab-pro-head,.collab-pro-detail-head,.collab-right-row-head,.collab-row-options,.collab-preview-head{flex-direction:column;display:flex;align-items:stretch}.collab-pro-actions,.collab-pro-detail-actions,.collab-row-actions{justify-content:stretch}.collab-pro-actions .btn,.collab-pro-detail-actions .btn,.collab-pro-toolbar .btn{width:100%}.collab-pro-kpis,.collab-pro-summary,.collab-template-grid,.collab-preview-grid{grid-template-columns:1fr}.collab-pro-filterbar,.collab-pro-toolbar{grid-template-columns:1fr}.collab-pro-person{grid-template-columns:42px 1fr}.collab-person-actions{grid-column:1/-1;justify-content:flex-start}.collab-save-stack{align-items:stretch}.collab-log-item{grid-template-columns:36px 1fr}.collab-log-date{grid-column:2}}
@media(prefers-reduced-motion:reduce){.collab-pro *{transition:none!important;animation:none!important}}

/* ============================================================================
   HOTFIX v3.0.1 — Collaborateurs & accès
   Problème corrigé : la carte dossier était visuellement repoussée / masquée
   sous le bloc d'en-tête des droits. On désactive le sticky interne et on
   compacte le panneau pour rendre les dossiers visibles immédiatement.
   ============================================================================ */
.collab-pro-sticky{
  position:relative!important;
  top:auto!important;
  z-index:1!important;
  border-bottom:1px solid #dbe3ef!important;
}
.collab-pro-detail{
  min-height:0!important;
  overflow:hidden!important;
}
.collab-pro-detail-head{
  align-items:center!important;
  padding:12px 14px!important;
  gap:12px!important;
}
.collab-pro-selected .collab-pro-avatar.big{
  width:44px!important;
  height:44px!important;
  border-radius:15px!important;
  font-size:15px!important;
}
.collab-pro-selected h3{
  font-size:15px!important;
  line-height:1.15!important;
}
.collab-pro-selected .muted{
  font-size:11.5px!important;
}
.collab-pro-detail-actions .btn{
  min-height:34px!important;
  padding:8px 11px!important;
  font-size:12px!important;
}
.collab-pro-summary{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:8px!important;
  padding:0 14px 9px!important;
}
.collab-pro-summary>div{
  padding:8px 10px!important;
  border-radius:13px!important;
}
.collab-pro-summary strong{
  font-size:18px!important;
}
.collab-pro-summary span{
  margin-top:4px!important;
  font-size:9.5px!important;
  line-height:1.2!important;
}
.collab-pro-summary>div[style*="grid-column"]{
  padding:7px 10px!important;
}
.collab-pro-toolbar{
  padding:0 14px 11px!important;
  gap:7px!important;
}
.collab-pro-toolbar .control{
  min-height:38px!important;
}
.collab-pro-rights{
  min-height:230px!important;
  max-height:calc(100vh - 430px)!important;
  overflow:auto!important;
  padding:12px 14px 16px!important;
  border-top:1px solid #e2e8f0!important;
  scroll-padding-top:12px!important;
}
.collab-right-row{
  scroll-margin-top:14px!important;
}
.collab-right-row-head{
  padding:12px 14px 11px 17px!important;
}
.collab-right-name strong{
  font-size:13.5px!important;
}
.collab-right-name small{
  margin-top:3px!important;
  font-size:11px!important;
}
.collab-row-options{
  padding:10px 14px 10px 17px!important;
}
.collab-modules{
  padding:10px 14px 12px 17px!important;
}
@media(max-width:1280px){
  .collab-pro-rights{max-height:none!important;overflow:visible!important;}
}
@media(max-width:760px){
  .collab-pro-detail-head{align-items:stretch!important;}
  .collab-pro-summary{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
  .collab-pro-rights{min-height:180px!important;max-height:none!important;overflow:visible!important;}
}

/* ============================================================================
   HOTFIX v3.0.2 — Collaborateurs & accès
   Correction visuelle : suppression du bloc gris/vidé sous la barre de filtre
   et masquage des modules grisés quand "Tous modules" est sélectionné.
   Les modules ne s'affichent que si l'admin choisit "Modules choisis".
   ============================================================================ */
.collab-pro-panel.collab-pro-detail{
  background:#fff!important;
}
.collab-pro-sticky{
  margin:0!important;
  padding:0!important;
  border-bottom:0!important;
}
.collab-pro-detail-head{
  min-height:0!important;
}
.collab-pro-toolbar{
  padding:0 14px 8px!important;
  margin:0!important;
  border-bottom:0!important;
}
.collab-pro-rights{
  background:#fff!important;
  border-top:0!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  padding:8px 14px 14px!important;
}
.collab-pro-rights.empty{
  background:#f8fafc!important;
  min-height:220px!important;
}
.collab-right-row:first-child{
  margin-top:0!important;
}
.collab-modules.locked{
  display:none!important;
}
.collab-row-options{
  border-bottom:0!important;
}
.collab-row-inner{
  border-top:1px solid #e2e8f0!important;
}
.collab-right-row:not(.is-restricted) .collab-modules.locked + *{
  display:none!important;
}
@media(max-width:760px){
  .collab-pro-rights{padding:8px 12px 14px!important;}
}

/* ============================================================================
   HOTFIX v3.0.3 — Collaborateurs & accès
   Correction définitive du bloc vide sous le filtre et du bloc modules grisés.
   Le bloc modules n'est plus seulement caché par CSS : il n'est plus rendu en JS
   tant que « Modules choisis » n'est pas sélectionné.
   ============================================================================ */
.collab-pro-panel.collab-pro-detail{
  overflow:hidden!important;
}
.collab-pro-sticky{
  border-bottom:0!important;
  box-shadow:none!important;
}
.collab-pro-toolbar{
  padding:0 14px 0!important;
  margin:0!important;
  border-bottom:0!important;
}
.collab-pro-sticky + .collab-pro-rights,
#collab-rights-zone.collab-pro-rights{
  margin:0!important;
  padding:0 14px 14px!important;
  background:#fff!important;
  border-top:0!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  display:grid!important;
  gap:10px!important;
}
#collab-rights-zone.collab-pro-rights.empty{
  padding:18px!important;
  background:#f8fafc!important;
  min-height:220px!important;
}
#collab-rights-zone.collab-pro-rights > .collab-right-row:first-child{
  margin-top:0!important;
}
.collab-row-body,
.collab-row-inner,
.collab-row-options{
  margin:0!important;
}
.collab-right-row:not(.is-restricted) .collab-modules,
.collab-modules.locked{
  display:none!important;
}
@media(max-width:760px){
  #collab-rights-zone.collab-pro-rights{padding:0 12px 12px!important;}
}

/* ============================================================================
   HOTFIX v3.0.4 — Collaborateurs & accès
   Objectif : plus de blocs empilés verticalement.
   - Les actions collaborateur sont alignées horizontalement.
   - Les permissions + choix modules + pastilles modules sont sur une seule ligne.
   ============================================================================ */
#collab-cards-list .collab-pro-person{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr)!important;
  grid-template-areas:
    "avatar main"
    "actions actions"!important;
  align-items:center!important;
}
#collab-cards-list .collab-pro-person .collab-pro-avatar{grid-area:avatar!important;}
#collab-cards-list .collab-pro-person .collab-person-main{grid-area:main!important;}
#collab-cards-list .collab-pro-person .collab-person-actions{
  grid-area:actions!important;
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:8px!important;
  width:100%!important;
  margin-top:4px!important;
  justify-content:stretch!important;
}
#collab-cards-list .collab-pro-person .collab-person-actions .btn{
  width:100%!important;
  justify-content:center!important;
}
#collab-cards-list .collab-pro-person .collab-person-actions .btn:only-child{
  grid-column:1 / -1!important;
}

#collab-rights-zone .collab-right-row-head{
  grid-template-columns:minmax(260px,1fr) auto!important;
}
#collab-rights-zone .collab-row-inner{
  border-top:1px solid #e2e8f0!important;
}
#collab-rights-zone .collab-row-options{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:10px!important;
  flex-wrap:nowrap!important;
  padding:12px 15px 12px 18px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  background:#f8fafc!important;
  scrollbar-width:thin!important;
}
#collab-rights-zone .collab-row-options .hint{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
#collab-rights-zone .collab-row-options .collab-seg{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
#collab-rights-zone .collab-row-options .collab-modules-inline,
#collab-rights-zone .collab-row-options .collab-modules{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  padding:0!important;
  margin:0!important;
  border-top:0!important;
  background:transparent!important;
}
#collab-rights-zone .collab-row-options .collab-module-pill{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
#collab-rights-zone .collab-right-row:not(.is-restricted) .collab-row-options .collab-modules{
  display:none!important;
}
@media(max-width:900px){
  #collab-rights-zone .collab-right-row-head{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
  }
  #collab-rights-zone .collab-row-actions{
    justify-content:space-between!important;
  }
  #collab-rights-zone .collab-row-options{
    flex-wrap:wrap!important;
    overflow-x:visible!important;
  }
  #collab-rights-zone .collab-row-options .collab-modules-inline,
  #collab-rights-zone .collab-row-options .collab-modules{
    flex-wrap:wrap!important;
  }
}

/* ============================================================================
   HOTFIX v3.0.5 — Collaborateurs & droits
   Mission : affichage horizontal pleine largeur.
   - Bloc "Équipe cabinet" sur toute la page, avec cartes collaborateurs horizontales.
   - Bloc collaborateur / cabinet sur toute la page, sans colonne latérale.
   - Dossiers en bas affichés en grille horizontale avec contenu interne aligné.
   Règles métier inchangées : correction CSS uniquement.
   ============================================================================ */
#view-collaborateurs.collab-pro{
  width:100%!important;
  padding:18px 22px 32px!important;
}
#view-collaborateurs .collab-pro-wrap{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
}
#collab-tab-equipe .collab-pro-layout{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
  width:100%!important;
  align-items:stretch!important;
}
#collab-tab-equipe .collab-pro-panel,
#collab-tab-equipe .collab-pro-team,
#collab-tab-equipe .collab-pro-detail{
  width:100%!important;
  max-width:none!important;
  min-width:0!important;
}
#collab-tab-equipe .collab-pro-team{
  grid-column:1 / -1!important;
}
#collab-tab-equipe .collab-pro-detail{
  grid-column:1 / -1!important;
  min-height:0!important;
  overflow:visible!important;
}

/* Équipe cabinet : la liste n'est plus une colonne étroite, elle respire horizontalement. */
#collab-tab-equipe .collab-pro-team .collab-pro-panel-head,
#collab-tab-equipe .collab-pro-detail .collab-pro-detail-head{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
}
#collab-tab-equipe .collab-pro-filterbar{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) minmax(150px,220px)!important;
  gap:10px!important;
}
#collab-cards-list.collab-pro-list{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(360px,1fr))!important;
  gap:10px!important;
  width:100%!important;
  max-height:none!important;
  overflow:visible!important;
  align-items:stretch!important;
}
#collab-cards-list .collab-pro-person{
  display:grid!important;
  grid-template-columns:46px minmax(0,1fr) auto!important;
  grid-template-areas:"avatar main actions"!important;
  align-items:center!important;
  min-height:74px!important;
  width:100%!important;
}
#collab-cards-list .collab-pro-person .collab-pro-avatar{
  grid-area:avatar!important;
}
#collab-cards-list .collab-pro-person .collab-person-main{
  grid-area:main!important;
  min-width:0!important;
}
#collab-cards-list .collab-pro-person .collab-person-actions{
  grid-area:actions!important;
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:7px!important;
  width:auto!important;
  margin-top:0!important;
  white-space:nowrap!important;
}
#collab-cards-list .collab-pro-person .collab-person-actions .btn{
  width:auto!important;
  min-width:92px!important;
  justify-content:center!important;
}

/* Bloc Cabinet / collaborateur sélectionné : pleine largeur, résumé et actions en ligne. */
#collab-tab-equipe .collab-pro-sticky{
  position:relative!important;
  top:auto!important;
  width:100%!important;
}
#collab-tab-equipe .collab-pro-selected{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  min-width:0!important;
}
#collab-tab-equipe .collab-save-stack{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
}
#collab-tab-equipe .collab-pro-detail-actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  flex-wrap:wrap!important;
  gap:7px!important;
}
#collab-tab-equipe .collab-pro-summary{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(160px,1fr))!important;
  gap:10px!important;
  width:100%!important;
}
#collab-tab-equipe .collab-pro-summary>div[style*="grid-column"]{
  grid-column:1 / -1!important;
}
#collab-tab-equipe .collab-pro-toolbar{
  display:grid!important;
  grid-template-columns:minmax(280px,1fr) auto auto!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
}

/* Dossiers : cartes alignées horizontalement en bas, puis contenu interne sur une ligne. */
#collab-rights-zone.collab-pro-rights{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(560px,1fr))!important;
  gap:12px!important;
  width:100%!important;
  padding:0 14px 16px!important;
  overflow:visible!important;
}
#collab-rights-zone.collab-pro-rights.empty{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:220px!important;
}
#collab-rights-zone .collab-right-row{
  display:grid!important;
  grid-template-columns:minmax(230px,.75fr) minmax(360px,1.25fr)!important;
  align-items:stretch!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
#collab-rights-zone .collab-right-row-head{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-width:0!important;
  height:100%!important;
  padding:13px 14px 13px 18px!important;
  border-right:1px solid #e2e8f0!important;
}
#collab-rights-zone .collab-right-name{
  min-width:0!important;
}
#collab-rights-zone .collab-row-actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:nowrap!important;
  flex:0 0 auto!important;
}
#collab-rights-zone .collab-row-body,
#collab-rights-zone .collab-row-inner{
  display:flex!important;
  align-items:stretch!important;
  min-width:0!important;
  width:100%!important;
  height:100%!important;
  border-top:0!important;
}
#collab-rights-zone .collab-row-options{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:nowrap!important;
  gap:10px!important;
  width:100%!important;
  min-width:0!important;
  height:100%!important;
  padding:12px 14px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  background:#f8fafc!important;
  scrollbar-width:thin!important;
}
#collab-rights-zone .collab-row-options .hint,
#collab-rights-zone .collab-row-options .collab-seg,
#collab-rights-zone .collab-row-options .collab-module-pill{
  flex:0 0 auto!important;
  white-space:nowrap!important;
}
#collab-rights-zone .collab-row-options .collab-modules-inline{
  display:inline-flex!important;
  flex:0 0 auto!important;
  align-items:center!important;
  flex-wrap:nowrap!important;
  gap:8px!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  background:transparent!important;
}

@media(max-width:1180px){
  #collab-rights-zone.collab-pro-rights{
    grid-template-columns:1fr!important;
  }
  #collab-rights-zone .collab-right-row{
    grid-template-columns:minmax(220px,.7fr) minmax(330px,1.3fr)!important;
  }
}
@media(max-width:820px){
  #view-collaborateurs.collab-pro{padding:14px!important;}
  #collab-tab-equipe .collab-pro-team .collab-pro-panel-head,
  #collab-tab-equipe .collab-pro-detail .collab-pro-detail-head,
  #collab-tab-equipe .collab-save-stack{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  #collab-tab-equipe .collab-pro-filterbar,
  #collab-tab-equipe .collab-pro-toolbar,
  #collab-tab-equipe .collab-pro-summary,
  #collab-cards-list.collab-pro-list{
    grid-template-columns:1fr!important;
  }
  #collab-cards-list .collab-pro-person{
    grid-template-columns:42px minmax(0,1fr)!important;
    grid-template-areas:"avatar main" "actions actions"!important;
  }
  #collab-cards-list .collab-pro-person .collab-person-actions{
    width:100%!important;
    justify-content:stretch!important;
    flex-wrap:wrap!important;
    margin-top:6px!important;
  }
  #collab-cards-list .collab-pro-person .collab-person-actions .btn{
    flex:1 1 120px!important;
  }
  #collab-rights-zone .collab-right-row{
    grid-template-columns:1fr!important;
  }
  #collab-rights-zone .collab-right-row-head{
    border-right:0!important;
    border-bottom:1px solid #e2e8f0!important;
  }
  #collab-rights-zone .collab-row-options{
    flex-wrap:wrap!important;
    overflow-x:visible!important;
  }
  #collab-rights-zone .collab-row-options .collab-modules-inline{
    flex-wrap:wrap!important;
  }
}


/* ============================================================================
   AZALYS HOTFIX — Collaborateurs & droits : listes en lignes
   Objectif : les blocs "Équipe cabinet" et "Cabinet / droits" ne doivent plus
   afficher les éléments en colonnes/cartes côte à côte. Chaque collaborateur et
   chaque dossier s'affiche sur une ligne horizontale pleine largeur.
   ============================================================================ */
#view-collaborateurs .collab-pro-layout,
#collab-tab-equipe .collab-pro-layout{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:16px!important;
  width:100%!important;
}

/* Bloc Équipe cabinet : une vraie liste en lignes, pas une grille en colonnes. */
#view-collaborateurs #collab-cards-list.collab-pro-list,
#collab-tab-equipe #collab-cards-list.collab-pro-list{
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  width:100%!important;
  max-height:none!important;
  overflow:visible!important;
}
#view-collaborateurs #collab-cards-list .collab-pro-person,
#collab-tab-equipe #collab-cards-list .collab-pro-person{
  display:grid!important;
  grid-template-columns:52px minmax(0,1fr) auto!important;
  grid-template-areas:"avatar main actions"!important;
  align-items:center!important;
  width:100%!important;
  min-height:78px!important;
  padding:14px 16px!important;
}
#view-collaborateurs #collab-cards-list .collab-person-main,
#collab-tab-equipe #collab-cards-list .collab-person-main{
  min-width:0!important;
}
#view-collaborateurs #collab-cards-list .collab-mini,
#collab-tab-equipe #collab-cards-list .collab-mini{
  display:flex!important;
  flex-direction:row!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}
#view-collaborateurs #collab-cards-list .collab-person-actions,
#collab-tab-equipe #collab-cards-list .collab-person-actions{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  width:auto!important;
  margin-top:0!important;
  white-space:nowrap!important;
}

/* Bloc Cabinet / droits : une liste verticale de lignes dossiers pleine largeur. */
#view-collaborateurs #collab-rights-zone.collab-pro-rights,
#collab-tab-equipe #collab-rights-zone.collab-pro-rights{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  width:100%!important;
  padding:0 14px 16px!important;
  overflow:visible!important;
}
#view-collaborateurs #collab-rights-zone.collab-pro-rights.empty,
#collab-tab-equipe #collab-rights-zone.collab-pro-rights.empty{
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  min-height:220px!important;
}
#view-collaborateurs #collab-rights-zone .collab-right-row,
#collab-tab-equipe #collab-rights-zone .collab-right-row{
  display:grid!important;
  grid-template-columns:minmax(260px,.72fr) minmax(420px,1.28fr)!important;
  width:100%!important;
  min-width:0!important;
  margin:0!important;
}
#view-collaborateurs #collab-rights-zone .collab-right-row-head,
#collab-tab-equipe #collab-rights-zone .collab-right-row-head{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:14px!important;
  border-right:1px solid #e2e8f0!important;
  border-bottom:0!important;
}
#view-collaborateurs #collab-rights-zone .collab-row-options,
#collab-tab-equipe #collab-rights-zone .collab-row-options{
  display:flex!important;
  flex-direction:row!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  width:100%!important;
  overflow:visible!important;
}

@media(max-width:900px){
  #view-collaborateurs #collab-cards-list .collab-pro-person,
  #collab-tab-equipe #collab-cards-list .collab-pro-person{
    grid-template-columns:46px minmax(0,1fr)!important;
    grid-template-areas:"avatar main" "actions actions"!important;
  }
  #view-collaborateurs #collab-cards-list .collab-person-actions,
  #collab-tab-equipe #collab-cards-list .collab-person-actions{
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    margin-top:8px!important;
  }
  #view-collaborateurs #collab-rights-zone .collab-right-row,
  #collab-tab-equipe #collab-rights-zone .collab-right-row{
    grid-template-columns:1fr!important;
  }
  #view-collaborateurs #collab-rights-zone .collab-right-row-head,
  #collab-tab-equipe #collab-rights-zone .collab-right-row-head{
    border-right:0!important;
    border-bottom:1px solid #e2e8f0!important;
  }
}


/* AZALYS v3.4 — Portail client dossier */
.role-client-dossier .top-actions .admin-only,
.role-client-dossier .admin-only { display:none !important; }
.role-client-dossier .side-nav .nav-btn.hidden { display:none !important; }
.client-portal{display:flex;flex-direction:column;gap:18px}.client-hero{display:flex;justify-content:space-between;align-items:center;padding:28px;background:linear-gradient(135deg,#ffffff,#eef6ff)}.client-hero h1{margin:6px 0 8px;font-size:30px}.client-hero-badge{padding:10px 14px;border-radius:999px;background:#e0f2fe;color:#075985;font-weight:800}.client-action-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.client-action-card{border:1px solid var(--border,#e5e7eb);background:white;border-radius:18px;padding:18px;text-align:left;display:flex;flex-direction:column;gap:8px;box-shadow:0 12px 30px rgba(15,23,42,.06);cursor:pointer;transition:.18s}.client-action-card:hover{transform:translateY(-2px);box-shadow:0 18px 36px rgba(15,23,42,.10)}.client-action-card span{font-size:28px}.client-action-card strong{font-size:16px;color:#0f172a}.client-action-card small{color:#64748b;line-height:1.45}.client-two-col{display:grid;grid-template-columns:1.15fr .85fr;gap:16px}.client-dossier-row{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:14px;border:1px solid #e5e7eb;border-radius:16px;background:#fff}.client-dossier-row>div{display:flex;flex-direction:column;gap:8px}.client-workflow{display:grid;gap:12px}.client-workflow div{border:1px solid #e5e7eb;border-radius:16px;padding:14px;background:#f8fafc;display:flex;flex-direction:column;gap:6px}.client-workflow span{color:#64748b}@media(max-width:980px){.client-action-grid,.client-two-col{grid-template-columns:1fr}.client-hero{align-items:flex-start;flex-direction:column;gap:14px}.client-dossier-row{align-items:flex-start;flex-direction:column}}


/* AZALYS architecture dossier-centrique — collaborateurs séparés des affectations */
.collab-architecture-note,.dossier-architecture-note{margin:14px 0 0;padding:14px 16px;border:1px solid #d8e4f7;border-radius:16px;background:#f8fbff;color:#163057;font-size:13px;line-height:1.45}
.dossier-config-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:18px 0 12px;padding:8px;background:#f6f8fc;border:1px solid #e1e8f5;border-radius:18px}
.dossier-config-tabs button{border:0;background:transparent;border-radius:13px;padding:10px 14px;font-weight:800;color:#51637d;cursor:default}
.dossier-config-tabs button.active,.dossier-config-tabs button:hover{background:#fff;color:#0b2b5c;box-shadow:0 6px 18px rgba(15,45,90,.08)}
.dossier-access-panel{margin-top:18px}
.dossier-architecture-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px;margin-top:10px}
.dossier-config-card{border:1px solid #dbe5f4;background:#fff;border-radius:20px;padding:16px;box-shadow:0 10px 30px rgba(15,45,90,.06)}
.dossier-config-head{display:flex;justify-content:space-between;gap:14px;align-items:flex-start;margin-bottom:12px}
.dossier-config-head h4{margin:0;color:#0b2b5c}
.dossier-config-head p{margin:4px 0 0}
.dossier-user-list{display:grid;gap:10px;margin:12px 0;max-height:260px;overflow:auto}
.dossier-user-line{display:flex;align-items:center;gap:12px;border:1px solid #e3ebf7;background:#f9fbff;border-radius:14px;padding:10px 12px;cursor:pointer}
.dossier-user-line input{width:18px;height:18px;accent-color:#2563eb}
.dossier-user-line span{display:flex;flex-direction:column;gap:2px}
.dossier-user-line small{color:#667b99;font-weight:600}
.dossier-mode-row{margin:8px 0 10px}.dossier-mode-row label{display:grid;gap:6px;font-weight:800;color:#0b2b5c}
.dossier-module-summary{border-top:1px dashed #d8e4f7;margin-top:12px;padding-top:12px}.dossier-module-summary strong{display:block;margin-bottom:8px;color:#0b2b5c}
.empty.mini{padding:12px;border-radius:14px;background:#f7f9fd;color:#667b99;font-weight:700}
@media(max-width:900px){.dossier-architecture-grid{grid-template-columns:1fr}.dossier-config-head{flex-direction:column}.dossier-config-tabs{display:none}}


/* Correctif onglets fiche dossier - architecture dossier-centrique */
.dossier-config-tabs button{cursor:pointer}
.dossier-config-panel{display:none;margin-top:14px}
.dossier-config-panel.active{display:block}
.dossier-config-panel .dossier-access-panel{display:block}
#dossier-access-panel.hidden{display:none!important}
.dossier-config-card{width:100%}

/* === Accordéon configuration dossier (remplace les onglets) === */
.dossier-acc{display:flex;flex-direction:column;gap:10px;margin:18px 0 6px}
.dossier-acc-item{border:1px solid #e1e8f5;border-radius:16px;background:#fff;overflow:hidden;transition:border-color .2s ease,box-shadow .2s ease}
.dossier-acc-item.is-open{border-color:#c3d4f0;box-shadow:0 10px 26px rgba(15,45,90,.07)}
.dossier-acc-head{width:100%;display:flex;align-items:center;justify-content:space-between;gap:12px;border:0;background:transparent;padding:15px 18px;cursor:pointer;font:inherit;text-align:left;color:#0b2b5c}
.dossier-acc-head:hover{background:#f6f8fc}
.dossier-acc-item.is-open .dossier-acc-head{background:#f6f8fc}
.dossier-acc-title{display:flex;align-items:center;gap:11px;font-weight:800;font-size:15px;line-height:1.2}
.dossier-acc-num{display:inline-flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:50%;background:#eaf0fb;color:#1c4ea8;font-size:13px;font-weight:800;flex:none}
.dossier-acc-item.is-open .dossier-acc-num{background:#1c4ea8;color:#fff}
.dossier-acc-chevron{width:18px;height:18px;color:#7186a6;flex:none;transition:transform .28s ease}
.dossier-acc-item.is-open .dossier-acc-chevron{transform:rotate(180deg);color:#1c4ea8}
.dossier-acc-body{display:grid;grid-template-rows:0fr;transition:grid-template-rows .28s ease}
.dossier-acc-item.is-open .dossier-acc-body{grid-template-rows:1fr}
.dossier-acc-inner{overflow:hidden;min-height:0;padding:2px 18px 20px}
@media (prefers-reduced-motion: reduce){.dossier-acc-body,.dossier-acc-chevron{transition:none}}

/* HOTFIX v3.4.6 — séparation stricte portail client / cockpit cabinet
   .client-portal définissait display:flex et annulait .view{display:none}.
   On force le masquage du portail client tant que sa vue n'est pas active. */
.view.client-portal:not(.active){display:none!important;}
.view.client-portal.active{display:flex!important;flex-direction:column;}
body:not(.role-client-dossier) .side-nav .nav-btn[data-view="client"],
body:not(.role-client-dossier) .side-nav .nav-btn.client-only{display:none!important;}
body.role-client-dossier .side-nav .nav-btn[data-view="client"]{display:flex!important;}
body.role-client-dossier .view:not(#view-client){display:none!important;}

/* HOTFIX v3.4.7 — menu client en plusieurs volets */
body:not(.role-client-dossier) .side-nav .nav-btn[data-view^="client-"]{display:none!important;}
body.role-client-dossier .side-nav .nav-btn[data-view^="client-"]{display:flex!important;}

/* AZALYS v3.5.2 — badges messages cabinet */
.nav-badge{
  position:absolute;
  top:7px;
  right:10px;
  min-width:20px;
  height:20px;
  padding:0 6px;
  border-radius:999px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  background:#ef4444;
  color:#fff;
  font-size:11px;
  font-weight:1000;
  box-shadow:0 8px 18px rgba(239,68,68,.32);
}
.nav-badge.hidden{display:none!important;}
.side-nav .nav-btn{padding-right:42px;}


/* Discussion cabinet flottante */
.client-chat-floating{position:fixed;right:106px;bottom:24px;z-index:1498;display:block}
.client-chat-floating.hidden{display:none!important}
.client-chat-btn{position:relative;width:58px;height:58px;padding:0;border:0;border-radius:24px;cursor:grab;background:linear-gradient(135deg,#06b6d4,#2563eb);box-shadow:0 18px 45px rgba(37,99,235,.34);display:flex;align-items:center;gap:10px;color:#fff;transition:transform .18s ease, box-shadow .18s ease;font-weight:800}
.client-chat-btn:hover{transform:translateY(-2px);box-shadow:0 24px 58px rgba(37,99,235,.42)}
.client-chat-glow{position:absolute;inset:-8px;border-radius:30px;background:linear-gradient(135deg,rgba(34,211,238,.24),rgba(37,99,235,.22));filter:blur(8px);z-index:-1}
.client-chat-face{font-size:25px;line-height:1}
.client-chat-text{display:none}
.client-chat-badge{position:absolute;right:-3px;top:-5px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;border:3px solid #fff;font-size:11px;font-weight:900;box-shadow:0 9px 24px rgba(239,68,68,.35)}
.client-chat-panel{position:absolute;right:0;bottom:72px;width:min(330px,calc(100vw - 28px));max-height:min(520px,calc(100vh - 118px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(191,219,254,.92);border-radius:26px;background:rgba(255,255,255,.97);box-shadow:0 28px 80px rgba(15,23,42,.22);backdrop-filter:blur(16px)}
.client-chat-panel.hidden{display:none!important}
.client-chat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 12px 16px;background:linear-gradient(135deg,#ecfeff,#eff6ff);border-bottom:1px solid #dbeafe}
.client-chat-head-left{display:flex;align-items:center;gap:11px}.client-chat-avatar{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:#dbeafe;border:1px solid #bfdbfe;box-shadow:0 10px 24px rgba(37,99,235,.12)}
.client-chat-head strong{display:block;color:#0f172a;font-size:15px}.client-chat-head span{display:block;color:#64748b;font-size:12px;margin-top:2px}.client-chat-head-actions{display:flex;gap:6px}
.client-chat-thread{padding:14px;overflow:auto;min-height:220px;max-height:330px;background:linear-gradient(180deg,#fff,#f8fafc)}
.client-chat-empty{border:1px dashed #bfdbfe;border-radius:20px;padding:22px;text-align:center;background:#fff}.client-chat-empty strong{display:block;color:#0f172a}.client-chat-empty span{display:block;color:#64748b;font-size:13px;margin-top:5px}
.client-chat-msg{display:flex;margin:10px 0}.client-chat-msg.from-client{justify-content:flex-end}.client-chat-msg.from-cabinet{justify-content:flex-start}.client-chat-msg-bubble{max-width:82%;border:1px solid #dbeafe;border-radius:18px;padding:10px 12px;background:#fff;color:#0f172a;box-shadow:0 10px 26px rgba(15,23,42,.06);font-size:13px;line-height:1.45}.client-chat-msg.from-client .client-chat-msg-bubble{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-color:#2563eb}.client-chat-msg-meta{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:11px}.client-chat-msg-meta span{opacity:.75}.client-chat-compose{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;background:#fff;border-top:1px solid #e2e8f0}.client-chat-compose select{grid-column:1 / -1;min-height:38px;border-radius:14px}.client-chat-compose textarea{resize:none;min-height:48px;border-radius:16px}.client-chat-compose .btn{border-radius:16px}.client-chat-note{padding:0 14px 12px;color:#64748b;font-size:11px;background:#fff}
@media(max-width:720px){.client-chat-floating{right:80px;bottom:16px}.client-chat-btn{width:54px;height:54px;padding:0;border-radius:19px}.client-chat-face{font-size:27px}.client-chat-text{display:none}.client-chat-panel{right:-86px;bottom:74px;width:calc(100vw - 28px);max-height:calc(100vh - 104px);border-radius:22px}.client-chat-compose{grid-template-columns:1fr}.client-chat-compose .btn{width:100%}}


/* Messages clients flottants côté cabinet */
.cabinet-chat-floating{position:fixed;right:106px;bottom:24px;z-index:1498;display:block}
.cabinet-chat-floating.hidden{display:none!important}
.cabinet-chat-btn{position:relative;width:58px;height:58px;padding:0;border:0;border-radius:24px;cursor:grab;background:linear-gradient(135deg,#8b5cf6,#2563eb);box-shadow:0 18px 45px rgba(99,102,241,.34);display:flex;align-items:center;gap:10px;color:#fff;transition:transform .18s ease, box-shadow .18s ease;font-weight:800}
.cabinet-chat-btn:hover{transform:translateY(-2px);box-shadow:0 24px 58px rgba(99,102,241,.42)}
.cabinet-chat-glow{position:absolute;inset:-8px;border-radius:30px;background:linear-gradient(135deg,rgba(139,92,246,.24),rgba(37,99,235,.22));filter:blur(8px);z-index:-1}
.cabinet-chat-face{font-size:25px;line-height:1}
.cabinet-chat-text{display:none}
.cabinet-chat-badge{position:absolute;right:-3px;top:-5px;min-width:22px;height:22px;padding:0 6px;border-radius:999px;display:grid;place-items:center;background:#ef4444;color:#fff;border:3px solid #fff;font-size:11px;font-weight:900;box-shadow:0 9px 24px rgba(239,68,68,.35)}
.cabinet-chat-panel{position:absolute;right:0;bottom:72px;width:min(350px,calc(100vw - 28px));max-height:min(540px,calc(100vh - 118px));display:flex;flex-direction:column;overflow:hidden;border:1px solid rgba(191,219,254,.92);border-radius:26px;background:rgba(255,255,255,.97);box-shadow:0 28px 80px rgba(15,23,42,.22);backdrop-filter:blur(16px)}
.cabinet-chat-panel.hidden{display:none!important}
.cabinet-chat-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px 14px 12px 16px;background:linear-gradient(135deg,#f5f3ff,#eff6ff);border-bottom:1px solid #dbeafe}
.cabinet-chat-head-left{display:flex;align-items:center;gap:11px}.cabinet-chat-avatar{width:42px;height:42px;border-radius:16px;display:grid;place-items:center;background:#ede9fe;border:1px solid #c4b5fd;box-shadow:0 10px 24px rgba(99,102,241,.12)}
.cabinet-chat-head strong{display:block;color:#0f172a;font-size:15px}.cabinet-chat-head span{display:block;color:#64748b;font-size:12px;margin-top:2px}.cabinet-chat-head-actions{display:flex;gap:6px}
.cabinet-chat-toolbar{display:grid;grid-template-columns:1fr auto;gap:8px;padding:10px 12px;border-bottom:1px solid #e2e8f0;background:#fff}
.cabinet-chat-thread{padding:14px;overflow:auto;min-height:240px;max-height:350px;background:linear-gradient(180deg,#fff,#f8fafc)}
.cabinet-chat-empty{border:1px dashed #bfdbfe;border-radius:20px;padding:22px;text-align:center;background:#fff}.cabinet-chat-empty strong{display:block;color:#0f172a}.cabinet-chat-empty span{display:block;color:#64748b;font-size:13px;margin-top:5px}
.cabinet-chat-msg{display:flex;margin:10px 0}.cabinet-chat-msg.from-client{justify-content:flex-start}.cabinet-chat-msg.from-cabinet{justify-content:flex-end}.cabinet-chat-msg-bubble{max-width:86%;border:1px solid #dbeafe;border-radius:18px;padding:10px 12px;background:#fff;color:#0f172a;box-shadow:0 10px 26px rgba(15,23,42,.06);font-size:13px;line-height:1.45}.cabinet-chat-msg.from-cabinet .cabinet-chat-msg-bubble{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;border-color:#2563eb}.cabinet-chat-msg-meta{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:11px}.cabinet-chat-msg-meta span{opacity:.75}.cabinet-chat-msg-subject{font-weight:800;margin-bottom:4px}.cabinet-chat-msg.is-unread .cabinet-chat-msg-bubble{border-color:#f59e0b;box-shadow:0 12px 28px rgba(245,158,11,.16)}
.cabinet-chat-compose{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;background:#fff;border-top:1px solid #e2e8f0}.cabinet-chat-compose textarea{resize:none;min-height:52px;border-radius:16px}.cabinet-chat-compose .btn{border-radius:16px}.cabinet-chat-note{padding:0 14px 12px;color:#64748b;font-size:11px;background:#fff}
@media(max-width:720px){.cabinet-chat-floating{right:80px;bottom:16px}.cabinet-chat-btn{width:54px;height:54px;padding:0;border-radius:19px}.cabinet-chat-face{font-size:27px}.cabinet-chat-text{display:none}.cabinet-chat-panel{right:-86px;bottom:74px;width:calc(100vw - 28px);max-height:calc(100vh - 104px);border-radius:22px}.cabinet-chat-toolbar,.cabinet-chat-compose{grid-template-columns:1fr}.cabinet-chat-compose .btn,.cabinet-chat-toolbar .btn{width:100%}}

@keyframes floatingChatPulse{0%,100%{filter:saturate(1)}50%{filter:saturate(1.18) brightness(1.04)}}
.client-chat-btn,.cabinet-chat-btn{animation:floatingChatPulse 3.8s ease-in-out infinite}


/* AZALYS v3.6.0 — Pièces client à traiter + AI Achats */
.docs-inbox{display:grid;gap:22px}
.docs-inbox-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:26px 28px;border-radius:28px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(239,246,255,.94));border:1px solid rgba(191,219,254,.85);box-shadow:0 20px 55px rgba(15,23,42,.10)}
.docs-inbox-hero h3{margin:5px 0 6px;font-size:28px;color:#0f2a55}
.docs-inbox-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.docs-inbox-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px}
.docs-inbox-kpis .card{padding:20px 22px;border-radius:24px;position:relative;overflow:hidden}
.docs-inbox-kpis .card strong{display:block;font-size:34px;line-height:1;color:#1d4ed8}
.docs-inbox-kpis .card span{display:block;margin-top:10px;font-weight:900;color:#0f172a}
.docs-inbox-kpis .card small{display:block;margin-top:4px;color:#64748b;font-weight:700}
.docs-inbox-workspace{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;align-items:start}
.docs-inbox-filters{padding:18px;border-radius:26px;position:sticky;top:104px}
.docs-inbox-filters h3{margin:0 0 14px;color:#0f2a55}
.docs-filter{width:100%;border:1px solid #dbeafe;background:#fff;border-radius:18px;padding:12px 13px;margin-bottom:9px;display:flex;align-items:center;justify-content:space-between;font-weight:900;color:#334155;cursor:pointer}
.docs-filter:hover,.docs-filter.active{background:#eff6ff;border-color:#60a5fa;color:#1d4ed8}
.docs-filter span{min-width:28px;height:24px;border-radius:999px;display:grid;place-items:center;background:#e0ecff;color:#1d4ed8;font-size:12px}
.docs-ai-note{margin-top:18px;border:1px dashed #bfdbfe;border-radius:20px;padding:14px;background:#f8fbff;color:#475569}
.docs-ai-note strong{display:block;color:#0f172a;margin-bottom:5px}
.docs-ai-note span{font-size:13px;line-height:1.45}
.docs-inbox-list{padding:22px;border-radius:28px;min-height:420px}
.doc-inbox-row{display:grid;grid-template-columns:54px minmax(0,1fr) auto;gap:15px;align-items:start;border:1px solid #dbeafe;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fafc);padding:16px;margin-top:13px;box-shadow:0 10px 28px rgba(15,23,42,.06)}
.doc-inbox-row.is-achats{border-left:5px solid #2563eb}
.doc-inbox-icon{width:48px;height:48px;border-radius:18px;display:grid;place-items:center;background:#eff6ff;border:1px solid #bfdbfe;font-size:23px}
.doc-inbox-title{display:flex;align-items:center;gap:10px;flex-wrap:wrap}
.doc-inbox-title strong{color:#0f172a;font-size:15px}
.doc-inbox-meta{display:flex;gap:8px;flex-wrap:wrap;margin-top:8px;color:#64748b;font-size:12px;font-weight:700}
.doc-inbox-meta span{background:#f1f5f9;border:1px solid #e2e8f0;border-radius:999px;padding:5px 8px}
.doc-inbox-comment,.doc-inbox-note{margin:10px 0 0;color:#475569;font-size:13px;line-height:1.45}
.doc-inbox-note{border-left:3px solid #2563eb;padding-left:10px;color:#1e3a8a;background:#eff6ff;border-radius:10px;padding-top:8px;padding-bottom:8px}
.doc-inbox-actions{display:grid;gap:8px;min-width:180px}
.doc-inbox-actions .btn,.doc-inbox-actions a.btn{text-align:center;justify-content:center}
@media(max-width:1100px){.docs-inbox-kpis{grid-template-columns:repeat(2,1fr)}.docs-inbox-workspace{grid-template-columns:1fr}.docs-inbox-filters{position:static}.doc-inbox-row{grid-template-columns:48px 1fr}.doc-inbox-actions{grid-column:1 / -1;grid-template-columns:repeat(2,1fr);min-width:0}}
@media(max-width:720px){.docs-inbox-hero{flex-direction:column;align-items:flex-start}.docs-inbox-kpis{grid-template-columns:1fr}.doc-inbox-row{grid-template-columns:1fr}.doc-inbox-icon{display:none}.doc-inbox-actions{grid-template-columns:1fr}}


/* AZALYS v3.7.0 — AI Pilotage orchestrateur + assistants métiers */
.ai-agent-strip{grid-column:1/-1;display:flex;align-items:center;gap:8px;flex-wrap:wrap;margin-top:2px}
.ai-agent-chip{border:1px solid #dbeafe;background:#fff;border-radius:999px;padding:7px 10px;display:inline-flex;align-items:center;gap:6px;font-size:11px;font-weight:900;color:#1e293b;cursor:pointer;box-shadow:0 7px 18px rgba(15,23,42,.05);transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease}
.ai-agent-chip:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(15,23,42,.10);border-color:#93c5fd}
.ai-agent-chip span{font-size:14px}.ai-agent-chip strong{font-size:11px;color:inherit}
.ai-agent-chip.pilotage{background:linear-gradient(135deg,#eff6ff,#f5f3ff);color:#1d4ed8;border-color:#bfdbfe}
.ai-agent-chip.achats{background:#fff7ed;color:#c2410c;border-color:#fed7aa}
.ai-agent-chip.finance{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}
.ai-agent-chip.paie{background:#ecfdf5;color:#047857;border-color:#bbf7d0}
.ai-agent-chip.commercial{background:#f0fdf4;color:#15803d;border-color:#bbf7d0}
.ai-agent-chip.documents{background:#ecfeff;color:#0e7490;border-color:#a5f3fc}
.ai-agent-chip.messages{background:#f5f3ff;color:#7c3aed;border-color:#ddd6fe}
.ai-agent-chip.stock{background:#faf5ff;color:#9333ea;border-color:#e9d5ff}
.ai-agent-chip.immos{background:#fef2f2;color:#b91c1c;border-color:#fecaca}
.ai-agent-chip.missions{background:#f8fafc;color:#334155;border-color:#cbd5e1}
.ai-agent-chip.client{background:#eff6ff;color:#1d4ed8;border-color:#bfdbfe}
.ai-welcome-mini{margin-top:12px}.ai-welcome-mini .ai-agent-strip{margin-top:0}
.ai-floating-context{grid-template-columns:repeat(4,1fr)}
@media(max-width:720px){.ai-agent-chip strong{display:none}.ai-agent-strip{gap:6px}.ai-agent-chip{padding:8px 9px}}


/* AZALYS v3.8.0 — visibilité robuste du robot AI compagnon */
.ai-floating{
  position:fixed!important;
  right:24px;
  bottom:24px;
  z-index:99998!important;
  visibility:visible;
}
.ai-floating:not(.hidden){display:block!important}
.ai-robot-btn{
  visibility:visible!important;
  opacity:1!important;
  pointer-events:auto!important;
}
.az-mod-ai{z-index:99998!important}
.az-mod-ai-btn{visibility:visible!important;opacity:1!important;pointer-events:auto!important}


/* AZALYS v3.9.0 — Flux AI opérationnel */
.client-ai-hint{
  border:1px dashed #bfdbfe;
  background:#eff6ff;
  border-radius:16px;
  padding:12px 14px;
  color:#1e3a8a;
  display:flex;
  flex-direction:column;
  gap:4px;
  min-height:62px;
  justify-content:center;
}
.client-ai-hint strong{font-size:12px;text-transform:uppercase;letter-spacing:.04em}
.client-ai-hint span{font-size:12px;line-height:1.35}
.doc-ai-flow{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin:8px 0 6px;
}
.doc-ai-flow span{
  display:inline-flex;
  align-items:center;
  gap:5px;
  padding:5px 9px;
  border-radius:999px;
  background:#f8fafc;
  border:1px solid #dbeafe;
  color:#1e40af;
  font-size:11px;
  font-weight:800;
}


/* AZALYS v3.9.1 — Nettoyage panneau AI Pilotage */
.ai-floating.panel-open ~ #cabinet-chat-floating,
.ai-floating.panel-open ~ #client-chat-floating{
  display:none!important;
}
.ai-floating-panel .ai-welcome-mini{
  display:none!important;
}
.ai-floating-panel .ai-welcome-card{
  margin-bottom:0!important;
}
.ai-floating-panel .ai-agent-strip{
  margin-top:8px;
}
.ai-floating-panel .ai-floating-chat{
  scrollbar-width:thin;
}


/* AZALYS v3.9.2 — Alertes synthétiques messages clients */
.alerts-summary-card{
  border:1px solid #dbeafe;
  background:linear-gradient(135deg,#ffffff,#f8fbff);
  border-radius:22px;
  padding:18px;
  box-shadow:0 18px 50px rgba(15,23,42,.06);
  margin-bottom:14px;
}
.alerts-summary-left{
  display:flex;
  align-items:center;
  gap:12px;
  margin-bottom:14px;
}
.alerts-summary-icon{
  width:44px;
  height:44px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:#eef2ff;
  color:#1d4ed8;
  font-size:22px;
  box-shadow:inset 0 0 0 1px #dbeafe;
}
.alerts-summary-left h3{margin:0;font-size:16px;color:#0f172a}
.alerts-summary-left p{margin:2px 0 0}
.alerts-summary-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin-bottom:12px;
}
.alerts-summary-kpis span{
  border:1px solid #e2e8f0;
  border-radius:16px;
  background:#fff;
  padding:11px 12px;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.alerts-summary-kpis strong{font-size:15px;color:#0f172a}
.alerts-summary-kpis small{text-transform:uppercase;letter-spacing:.06em;color:#64748b;font-size:10px;font-weight:900}
.alerts-message-lines{
  display:grid;
  gap:8px;
  margin-bottom:12px;
}
.alerts-message-line{
  border:1px solid #e2e8f0;
  background:#fff;
  border-radius:14px;
  padding:10px 12px;
  display:grid;
  grid-template-columns:1fr auto auto;
  align-items:center;
  gap:10px;
  cursor:pointer;
  text-align:left;
}
.alerts-message-line:hover{border-color:#bfdbfe;background:#eff6ff}
.alerts-message-line span{font-weight:900;color:#0f172a}
.alerts-message-line strong{color:#1d4ed8;font-size:12px}
.alerts-message-line small{color:#64748b}
.alerts-message-lines.empty-line{
  border:1px dashed #dbeafe;
  background:#f8fafc;
  border-radius:14px;
  padding:12px;
  color:#64748b;
  font-size:13px;
}
.alerts-summary-actions{
  display:flex;
  justify-content:flex-end;
  gap:8px;
  flex-wrap:wrap;
}
@media(max-width:760px){
  .alerts-summary-kpis{grid-template-columns:1fr}
  .alerts-message-line{grid-template-columns:1fr;gap:4px}
}


/* AZALYS v3.9.3 — Dossiers clients premium */
#view-dossiers{
  --dossier-line:#dbe5f3;
  --dossier-soft:#f8fbff;
  --dossier-ink:#0f274d;
}
.dossiers-tools{
  grid-template-columns:minmax(320px,1fr) 220px 220px auto;
  align-items:center;
  background:rgba(255,255,255,.72);
  border:1px solid rgba(219,229,243,.9);
  box-shadow:0 18px 45px rgba(15,23,42,.06);
  backdrop-filter:blur(12px);
}
.dossiers-overview{
  display:grid;
  grid-template-columns:repeat(5,minmax(0,1fr));
  gap:14px;
  margin:18px 0;
}
.dossier-overview-card{
  position:relative;
  overflow:hidden;
  border:1px solid var(--dossier-line);
  background:linear-gradient(145deg,#fff,#f7fbff);
  border-radius:22px;
  padding:16px 18px;
  box-shadow:0 16px 42px rgba(15,23,42,.06);
}
.dossier-overview-card:before{
  content:'';
  position:absolute;
  inset:auto -28px -34px auto;
  width:96px;
  height:96px;
  border-radius:999px;
  background:rgba(37,99,235,.08);
}
.dossier-overview-card.primary{
  color:#fff;
  border-color:transparent;
  background:linear-gradient(135deg,#12356f,#2563eb);
}
.dossier-overview-card.primary:before{background:rgba(255,255,255,.14)}
.dossier-overview-card.warn:before{background:rgba(217,119,6,.13)}
.dossier-overview-card.info:before{background:rgba(13,148,136,.13)}
.dossier-overview-card span{
  display:block;
  text-transform:uppercase;
  letter-spacing:.08em;
  font-size:10px;
  font-weight:900;
  opacity:.72;
}
.dossier-overview-card strong{
  display:block;
  margin:7px 0 2px;
  font-size:26px;
  line-height:1;
  color:inherit;
}
.dossier-overview-card small{
  position:relative;
  display:block;
  color:inherit;
  opacity:.72;
  font-size:12px;
}
.dossiers-card{
  overflow:hidden;
}
.dossiers-card .card-head{
  padding:22px 24px;
  border-bottom:1px solid var(--dossier-line);
  background:linear-gradient(180deg,#fff,#f9fbff);
}
.dossiers-card .table-wrap{
  overflow:auto;
}
.dossiers-card table{
  border-collapse:separate;
  border-spacing:0;
}
.dossiers-card thead th{
  position:sticky;
  top:0;
  z-index:2;
  background:#f4f8fd;
  border-bottom:1px solid var(--dossier-line);
  color:#526783;
  font-size:11px;
  letter-spacing:.08em;
}
.dossier-premium-row{
  transition:transform .16s ease, box-shadow .16s ease, background .16s ease;
}
.dossier-premium-row td{
  vertical-align:middle;
  padding-top:18px!important;
  padding-bottom:18px!important;
  border-bottom:1px solid #edf2f7;
}
.dossier-premium-row:hover{
  background:linear-gradient(90deg,#f8fbff,#fff);
  transform:translateY(-1px);
  box-shadow:inset 4px 0 0 #2563eb;
}
.dossier-name-wrap{
  display:flex;
  align-items:center;
  gap:14px;
  min-width:260px;
}
.dossier-avatar{
  width:46px;
  height:46px;
  flex:0 0 46px;
  border-radius:18px;
  display:grid;
  place-items:center;
  font-weight:1000;
  color:#fff;
  background:linear-gradient(135deg,#2563eb,#7c3aed);
  box-shadow:0 12px 28px rgba(37,99,235,.25);
  letter-spacing:.02em;
}
.dossier-name-cell .row-title{
  font-size:15px;
  letter-spacing:.01em;
  color:#0f274d;
}
.dossier-mini-meta{
  margin-top:7px;
}
.dossier-health{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:4px 9px;
  border-radius:999px;
  font-size:10px;
  font-weight:900;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.dossier-health.ok{background:#dcfce7;color:#166534}
.dossier-health.warn{background:#fef3c7;color:#92400e}
.dossier-health.info{background:#dbeafe;color:#1e40af}
.dossier-health.muted{background:#f1f5f9;color:#64748b}
.dossier-ident-grid{
  display:grid;
  gap:6px;
  min-width:170px;
}
.dossier-ident-grid span{
  display:flex;
  align-items:center;
  gap:8px;
  font-size:12px;
  color:#526783;
}
.dossier-ident-grid b{
  min-width:28px;
  color:#0f274d;
  font-size:10px;
  letter-spacing:.08em;
}
.dossier-ident-grid .is-missing{
  opacity:.58;
}
.dossier-ident-alert{
  display:block;
  margin-top:8px;
  color:#d97706;
  font-weight:800;
}
.dossier-module-list{
  max-width:620px;
  gap:7px!important;
}
.dossier-module-list .badge{
  border:1px solid rgba(37,99,235,.10);
  box-shadow:0 6px 16px rgba(37,99,235,.06);
}
.dossier-more{
  background:#eef2ff!important;
  color:#4f46e5!important;
}
.dossier-date-cell strong{
  display:block;
  color:#0f274d;
  font-size:13px;
}
.dossier-date-cell small{
  display:block;
  margin-top:3px;
  color:#64748b;
  font-size:11px;
}
.dossier-actions{
  min-width:330px;
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:nowrap!important;
}
.dossier-actions .btn{
  height:38px;
  padding:0 14px;
  border-radius:14px;
  box-shadow:none;
}
.dossier-actions .btn.primary{
  box-shadow:0 12px 28px rgba(37,99,235,.22);
}
.dossier-actions .dossier-delete{
  color:#dc2626;
  border-color:#fecaca;
  background:#fff;
}
.dossier-empty{
  padding:30px!important;
}
@media(max-width:1180px){
  .dossiers-overview{grid-template-columns:repeat(3,minmax(0,1fr))}
  .dossiers-tools{grid-template-columns:1fr 1fr}
}
@media(max-width:760px){
  .dossiers-overview{grid-template-columns:1fr}
  .dossiers-tools{grid-template-columns:1fr}
  .dossier-actions{min-width:260px;flex-wrap:wrap!important}
  .dossier-name-wrap{min-width:220px}
}

/* AZALYS v27 — Connecteur moteur IA local FastAPI/Ollama */
#ai-local-config.is-active{
  background:#dcfce7!important;
  color:#166534!important;
  border-color:#86efac!important;
  box-shadow:0 8px 20px rgba(22,101,52,.16);
}

/* AZALYS v3.10.5 — Messagerie interne cabinet */
.internal-messaging{display:grid;gap:18px}
.internal-hero{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;padding:22px;border:1px solid rgba(37,99,235,.12);background:linear-gradient(135deg,rgba(37,99,235,.08),rgba(124,58,237,.06))}
.internal-hero h3{margin:4px 0 6px;font-size:1.35rem}
.internal-hero-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.internal-workspace{display:grid;grid-template-columns:minmax(260px,330px) minmax(0,1fr);gap:18px;align-items:start}
.internal-contacts-panel,.internal-thread-panel{min-height:620px}
.internal-contacts-list{display:flex;flex-direction:column;gap:8px;margin-top:12px;max-height:560px;overflow:auto;padding-right:4px}
.internal-contact{width:100%;border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:18px;padding:12px;display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:10px;align-items:center;text-align:left;cursor:pointer;transition:.18s ease;box-shadow:0 10px 24px rgba(15,23,42,.04)}
.internal-contact:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.22);box-shadow:0 16px 34px rgba(37,99,235,.08)}
.internal-contact.active{border-color:rgba(37,99,235,.45);background:linear-gradient(135deg,#eef6ff,#fff)}
.internal-contact.has-unread{background:linear-gradient(135deg,#fff7ed,#fff)}
.internal-contact-avatar,.internal-avatar{width:42px;height:42px;border-radius:14px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#2563eb,#7c3aed);color:#fff;font-weight:800;box-shadow:0 10px 24px rgba(37,99,235,.22)}
.internal-contact-main{min-width:0;display:flex;flex-direction:column;gap:3px}
.internal-contact-main strong{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#0f172a}
.internal-contact-main small{color:#64748b;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.internal-thread-head{display:flex;align-items:center;gap:12px;border-bottom:1px solid rgba(15,23,42,.08);padding-bottom:14px;margin-bottom:14px}
.internal-thread-head h3{margin:0 0 3px;font-size:1.2rem}
.internal-thread-body{height:330px;overflow:auto;padding:8px 4px 14px;display:flex;flex-direction:column;gap:10px;background:linear-gradient(180deg,rgba(248,250,252,.9),rgba(255,255,255,.6));border-radius:18px;border:1px solid rgba(15,23,42,.06)}
.internal-bubble{max-width:82%;border:1px solid rgba(15,23,42,.08);border-radius:18px;padding:12px 14px;background:#fff;box-shadow:0 10px 24px rgba(15,23,42,.05)}
.internal-bubble.mine{align-self:flex-end;background:linear-gradient(135deg,#eff6ff,#eef2ff);border-color:rgba(37,99,235,.18)}
.internal-bubble.theirs{align-self:flex-start;background:#fff}
.internal-bubble-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;color:#64748b;font-size:.82rem;margin-bottom:6px}
.internal-bubble-meta strong{color:#334155}
.internal-bubble h4{margin:0 0 6px;font-size:.96rem;color:#0f172a}
.internal-bubble p{margin:0;color:#334155;line-height:1.5;white-space:normal}
.internal-dossier-chip{border:1px solid rgba(37,99,235,.16);background:#eff6ff;color:#1d4ed8;border-radius:999px;padding:2px 8px;font-size:.76rem}
.internal-composer{margin-top:14px;display:grid;grid-template-columns:1fr 260px;gap:12px;align-items:end}
.internal-composer .internal-body-label{grid-column:1 / -1}
.internal-composer textarea{resize:vertical;min-height:92px}
.internal-composer-actions{grid-column:1 / -1;display:flex;justify-content:flex-end}
@media (max-width: 980px){.internal-workspace{grid-template-columns:1fr}.internal-contacts-panel,.internal-thread-panel{min-height:auto}.internal-composer{grid-template-columns:1fr}.internal-bubble{max-width:96%}.internal-thread-body{height:360px}.internal-hero{flex-direction:column}.internal-hero-actions{justify-content:flex-start}}

/* AZALYS v3.10.24 — Messagerie interne premium + groupes */
.internal-premium .internal-hero{position:relative;overflow:hidden;background:radial-gradient(circle at top left,rgba(37,99,235,.18),transparent 34%),linear-gradient(135deg,rgba(37,99,235,.09),rgba(124,58,237,.08),rgba(14,165,233,.06));border-color:rgba(37,99,235,.16);box-shadow:0 20px 48px rgba(15,23,42,.08)}
.internal-premium .internal-hero:after{content:"";position:absolute;right:-56px;top:-80px;width:210px;height:210px;border-radius:999px;background:rgba(37,99,235,.09);filter:blur(2px);pointer-events:none}
.internal-premium .internal-workspace{grid-template-columns:minmax(300px,380px) minmax(0,1fr);align-items:stretch}
.internal-premium .internal-contacts-panel,.internal-premium .internal-thread-panel{min-height:680px;border:1px solid rgba(15,23,42,.08);box-shadow:0 18px 44px rgba(15,23,42,.06)}
.internal-toolbar{display:grid;gap:12px;margin-bottom:12px}
.internal-toolbar-row{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;flex-wrap:wrap}
.internal-toolbar-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.internal-premium-compact .internal-workspace{gap:18px}
.internal-premium-compact .internal-contacts-panel{padding-top:16px}
.internal-premium-compact .internal-action-btn-inline{min-height:40px;padding:0 16px;border-radius:12px;font-weight:800;box-shadow:none}
.internal-premium-compact .internal-action-btn-inline span:first-child{font-size:1rem;line-height:1}
.internal-premium-compact .internal-action-btn-inline span:last-child{display:inline-flex;align-items:center}
.internal-toolbar h3{margin:0 0 3px;font-size:1.12rem;color:#0f172a}
.internal-search{height:42px;border-radius:14px;background:#f8fafc}
.internal-section-title{display:flex;align-items:center;justify-content:space-between;margin:12px 2px 7px;padding:0 2px;color:#334155;font-weight:800;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em}
.internal-section-title small{color:#94a3b8;font-size:.76rem;letter-spacing:0;text-transform:none}
.internal-mini-empty{padding:12px;border:1px dashed rgba(100,116,139,.22);border-radius:16px;background:#f8fafc;color:#64748b;font-size:.88rem;text-align:center}
.internal-contact-avatar.group,.internal-avatar.group{background:linear-gradient(135deg,#0f172a,#2563eb);letter-spacing:-.03em}
.internal-contact small b{color:#475569;font-weight:800}
.internal-contact.active{box-shadow:0 18px 38px rgba(37,99,235,.12)}
.internal-group-create{display:grid;gap:10px;margin:12px 0 14px;padding:14px;border:1px solid rgba(37,99,235,.16);border-radius:20px;background:linear-gradient(180deg,#f8fbff,#fff);box-shadow:0 14px 30px rgba(37,99,235,.08)}
.internal-group-create-head{display:flex;align-items:center;justify-content:space-between;gap:12px;color:#0f172a}
.internal-group-create label{display:grid;gap:6px;color:#334155;font-weight:700;font-size:.9rem}
.internal-members-picker{display:grid;gap:8px;max-height:170px;overflow:auto;padding:8px;border-radius:16px;border:1px solid rgba(15,23,42,.07);background:#fff}
.internal-member-check{display:grid!important;grid-template-columns:auto minmax(0,1fr) auto;gap:9px;align-items:center;padding:9px;border-radius:13px;background:#f8fafc;border:1px solid rgba(15,23,42,.05);cursor:pointer;font-size:.9rem;color:#0f172a}
.internal-member-check:hover{background:#eef6ff;border-color:rgba(37,99,235,.16)}
.internal-member-check input{accent-color:#2563eb}
.internal-member-check span{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.internal-member-check small{color:#64748b;font-size:.76rem}
.internal-group-create .full{width:100%;justify-content:center}
.premium-thread-head{padding:0 0 16px;margin-bottom:14px;align-items:flex-start}
.internal-thread-title{min-width:0;display:grid;gap:4px}
.internal-thread-title h3{white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:100%}
.internal-member-chips{display:flex;gap:6px;flex-wrap:wrap;margin-top:6px}
.internal-member-chips span{padding:4px 8px;border-radius:999px;background:#f1f5f9;color:#475569;font-size:.76rem;font-weight:700}
.internal-thread-body{height:390px;padding:14px;background:linear-gradient(180deg,#f8fafc,#ffffff);border-radius:22px;scrollbar-width:thin}
.internal-bubble{border-radius:20px;padding:13px 15px;box-shadow:0 14px 28px rgba(15,23,42,.06)}
.internal-bubble.group-bubble h4{display:none}
.internal-bubble.mine{background:linear-gradient(135deg,#2563eb,#4f46e5);color:#fff;border-color:rgba(37,99,235,.22)}
.internal-bubble.mine .internal-bubble-meta,.internal-bubble.mine .internal-bubble-meta strong,.internal-bubble.mine p,.internal-bubble.mine h4{color:#fff}
.internal-bubble.mine .internal-dossier-chip{background:rgba(255,255,255,.18);border-color:rgba(255,255,255,.28);color:#fff}
.internal-composer{padding-top:2px}
.internal-composer.group-mode{grid-template-columns:1fr}
.internal-composer.group-mode .internal-body-label{grid-column:1}
.internal-composer.group-mode .internal-composer-actions{grid-column:1}
.internal-empty-large{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center}
@media (max-width: 980px){.internal-premium .internal-workspace{grid-template-columns:1fr}.internal-premium .internal-contacts-panel,.internal-premium .internal-thread-panel{min-height:auto}.internal-thread-body{height:420px}.internal-group-create{border-radius:18px}.internal-member-check{grid-template-columns:auto minmax(0,1fr)}}
@media (max-width: 640px){.internal-premium .internal-hero{padding:18px}.internal-hero-actions{width:100%;display:grid;grid-template-columns:1fr 1fr;gap:8px}.internal-hero-actions .badge{grid-column:1/-1;justify-content:center}.internal-contact{grid-template-columns:38px minmax(0,1fr) auto;padding:10px;border-radius:16px}.internal-contact-avatar,.internal-avatar{width:38px;height:38px;border-radius:13px}.internal-thread-body{height:48vh;padding:10px}.internal-bubble{max-width:94%;padding:12px}.internal-composer{gap:10px}.internal-member-chips span{font-size:.72rem}.internal-members-picker{max-height:145px}}

/* V16.7 — Messagerie interne premium : UI SaaS + composer Enter */
.internal-premium-v167{gap:22px}
.internal-premium-v167 .internal-hero{position:relative;overflow:hidden;padding:26px 30px;border-radius:26px;background:linear-gradient(135deg,#fff,rgba(248,251,255,.96));border:1px solid rgba(37,99,235,.12);box-shadow:0 18px 46px rgba(15,23,42,.08)}
.internal-premium-v167 .internal-hero:after{content:"";position:absolute;right:-70px;bottom:-90px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(37,99,235,.18),rgba(37,99,235,0) 66%);pointer-events:none}
.internal-premium-v167 .internal-hero h3{font-size:1.42rem;margin:4px 0 10px;letter-spacing:-.025em;color:#0f172a}
.internal-premium-v167 .internal-hero .muted{margin:0 0 6px;max-width:760px;color:#516585;line-height:1.55}
.internal-premium-v167 .internal-hero-note{font-size:.94rem}
.internal-premium-v167 .internal-hero-actions{position:relative;z-index:1;gap:12px}
.internal-premium-v167 .internal-action-btn{min-height:46px;border-radius:14px;padding:0 20px;font-weight:850;box-shadow:0 12px 26px rgba(15,23,42,.06)}
.internal-premium-v167 .internal-action-btn span{font-size:1.1rem;line-height:1}
.internal-premium-v167 .internal-workspace{grid-template-columns:minmax(310px,370px) minmax(0,1fr);gap:18px;align-items:stretch}
.internal-premium-v167 .internal-contacts-panel,.internal-premium-v167 .internal-thread-panel{border-radius:24px;border:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.94);box-shadow:0 18px 44px rgba(15,23,42,.07)}
.internal-premium-v167 .internal-contacts-panel{padding:18px 16px;display:flex;flex-direction:column;overflow:hidden;min-height:680px}
.internal-premium-v167 .internal-thread-panel{padding:0;overflow:hidden;min-height:680px}
.internal-sidebar-title{display:flex;align-items:center;gap:12px}
.internal-sidebar-title h3{font-size:1.08rem;letter-spacing:-.02em}
.internal-sidebar-icon{width:30px;height:30px;border-radius:12px;display:flex;align-items:center;justify-content:center;background:#f1f5ff;color:#2563eb}
.internal-search-wrap{height:44px;border:1px solid rgba(148,163,184,.32);border-radius:14px;background:#fff;display:grid;grid-template-columns:40px 1fr;align-items:center;box-shadow:inset 0 1px 0 rgba(255,255,255,.8)}
.internal-search-wrap span{color:#8190a7;text-align:center;font-weight:900;font-size:1.05rem}
.internal-search-wrap .internal-search{height:42px;border:0!important;background:transparent!important;box-shadow:none!important;padding-left:0!important;border-radius:14px;color:#0f172a}
.internal-premium-v167 .internal-contacts-list{flex:1;max-height:none;margin-top:14px;padding:0 4px 4px 0;gap:8px;overflow:auto;scrollbar-width:thin}
.internal-premium-v167 .internal-section-title{margin:18px 4px 8px;padding:0;color:#0f172a;font-size:.78rem;letter-spacing:.09em}
.internal-section-plus{width:24px;height:24px;border:0;border-radius:8px;background:#eef2ff;color:#1d4ed8;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:.18s ease}
.internal-section-plus:hover{background:#dbeafe;transform:translateY(-1px)}
.internal-premium-v167 .internal-mini-empty{min-height:64px;display:flex;align-items:center;justify-content:center;gap:10px;border-radius:16px;background:linear-gradient(180deg,#f8fafc,#fff);border:1px dashed rgba(100,116,139,.26);color:#64748b;font-size:.9rem}
.internal-premium-v167 .internal-mini-empty strong{font-weight:650;color:#64748b}
.internal-premium-v167 .internal-contact{position:relative;grid-template-columns:46px minmax(0,1fr) auto;gap:11px;min-height:72px;padding:10px 12px;border-radius:18px;background:#fff;border:1px solid rgba(15,23,42,.08);box-shadow:0 8px 22px rgba(15,23,42,.045);overflow:hidden}
.internal-premium-v167 .internal-contact:before{content:"";position:absolute;left:0;top:14px;bottom:14px;width:3px;border-radius:3px;background:transparent}
.internal-premium-v167 .internal-contact:hover{transform:translateY(-1px);border-color:rgba(37,99,235,.26);box-shadow:0 14px 30px rgba(37,99,235,.08)}
.internal-premium-v167 .internal-contact.active{border-color:rgba(37,99,235,.52);background:linear-gradient(135deg,#eff6ff,#ffffff 74%);box-shadow:0 14px 34px rgba(37,99,235,.13)}
.internal-premium-v167 .internal-contact.active:before{background:#2563eb}
.internal-premium-v167 .internal-contact.has-unread:not(.active){background:linear-gradient(135deg,#fff,#f8fbff)}
.internal-premium-v167 .internal-contact-avatar,.internal-premium-v167 .internal-avatar{width:46px;height:46px;border-radius:15px;background:linear-gradient(135deg,#2563eb,#7c3aed);font-size:1.05rem;box-shadow:0 12px 24px rgba(37,99,235,.25)}
.internal-premium-v167 .internal-contact-avatar.group,.internal-premium-v167 .internal-avatar.group{background:linear-gradient(135deg,#0f172a,#2563eb)}
.internal-premium-v167 .internal-contact-main strong{font-size:.96rem;letter-spacing:-.015em;color:#0f172a}
.internal-premium-v167 .internal-contact-main small{font-size:.82rem;color:#64748b;-webkit-line-clamp:1;line-height:1.4}
.internal-contact-side{display:flex;flex-direction:column;align-items:flex-end;gap:8px;min-width:34px;color:#64748b;font-size:.78rem;white-space:nowrap}
.internal-contact-side time{font-weight:700;color:#64748b}
.internal-thread-shell{height:100%;min-height:680px;display:flex;flex-direction:column;background:linear-gradient(180deg,#fff,#fbfdff)}
.internal-premium-v167 .internal-thread-head{margin:0;padding:20px 24px;border-bottom:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.86);backdrop-filter:blur(8px);gap:14px}
.internal-premium-v167 .internal-thread-title{flex:1;min-width:0;gap:3px}
.internal-premium-v167 .internal-thread-title h3{font-size:1.12rem;letter-spacing:-.02em;color:#0f172a}
.internal-thread-menu{width:36px;height:36px;border:0;background:transparent;border-radius:12px;color:#0f172a;font-size:1.4rem;line-height:1;cursor:pointer}
.internal-thread-menu:hover{background:#f1f5f9}
.internal-premium-v167 .internal-member-chips span{background:#eef2ff;color:#3151a3;border:1px solid rgba(37,99,235,.08)}
.internal-premium-v167 .internal-thread-body{flex:1;height:auto;min-height:420px;overflow:auto;padding:24px 28px;background:radial-gradient(circle at 50% 0,rgba(37,99,235,.045),transparent 34%),linear-gradient(180deg,#fbfdff,#fff);border:0;border-radius:0;display:flex;flex-direction:column;gap:14px;scrollbar-width:thin}
.internal-date-divider{display:flex;align-items:center;gap:14px;margin:2px 0 10px;color:#64748b;font-size:.82rem;font-weight:800}
.internal-date-divider:before,.internal-date-divider:after{content:"";height:1px;background:rgba(148,163,184,.28);flex:1}
.internal-date-divider span{background:#f8fafc;border:1px solid rgba(148,163,184,.15);border-radius:999px;padding:6px 14px;box-shadow:0 4px 12px rgba(15,23,42,.04)}
.internal-premium-v167 .internal-bubble{max-width:min(62%,560px);border-radius:18px;padding:12px 15px;margin:2px 0;border:1px solid rgba(15,23,42,.08);box-shadow:0 14px 28px rgba(15,23,42,.06)}
.internal-premium-v167 .internal-bubble.theirs{background:#fff;align-self:flex-start;border-top-left-radius:8px}
.internal-premium-v167 .internal-bubble.mine{background:linear-gradient(135deg,#2563eb,#4f46e5);align-self:flex-end;border-top-right-radius:8px;color:#fff;border-color:rgba(37,99,235,.25);box-shadow:0 16px 32px rgba(37,99,235,.20)}
.internal-premium-v167 .internal-bubble-meta{margin-bottom:7px;font-size:.78rem;gap:7px;line-height:1.2}
.internal-premium-v167 .internal-bubble-meta strong{letter-spacing:.01em}
.internal-premium-v167 .internal-bubble.theirs .internal-bubble-meta strong{color:#1e293b}
.internal-premium-v167 .internal-bubble.theirs .internal-bubble-meta span{color:#64748b}
.internal-premium-v167 .internal-bubble.mine .internal-bubble-meta,.internal-premium-v167 .internal-bubble.mine .internal-bubble-meta strong,.internal-premium-v167 .internal-bubble.mine .internal-bubble-meta span,.internal-premium-v167 .internal-bubble.mine p{color:#fff}
.internal-premium-v167 .internal-bubble p{font-size:.94rem;line-height:1.55;color:#334155}
.internal-checks{margin-left:auto;color:rgba(255,255,255,.85);font-size:.8rem;font-weight:900}
.internal-premium-v167 .internal-composer{margin:0;padding:16px 22px 18px;border-top:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.92);backdrop-filter:blur(8px);display:block}
.internal-composer-box{display:grid;grid-template-columns:minmax(0,1fr) 38px 48px;align-items:center;gap:8px;min-height:58px;padding:7px 8px;border-radius:20px;border:1px solid rgba(148,163,184,.33);background:#fff;box-shadow:0 12px 32px rgba(15,23,42,.08)}
.internal-composer-box textarea{width:100%;min-height:44px;max-height:132px;height:44px;padding:12px 6px!important;border:0!important;background:transparent!important;box-shadow:none!important;resize:none!important;line-height:1.45;color:#0f172a;font-size:.95rem;overflow:auto}
.internal-composer-box textarea:focus{outline:0!important;border:0!important;box-shadow:none!important}
.internal-compose-icon{width:38px;height:38px;border:0;border-radius:14px;background:transparent;color:#64748b;font-size:1.2rem;display:flex;align-items:center;justify-content:center;cursor:pointer;transition:.18s ease}
.internal-compose-icon:hover{background:#f1f5f9;color:#2563eb}
.internal-send-btn{width:44px;height:44px;border:0;border-radius:14px;background:linear-gradient(135deg,#2563eb,#1d4ed8);color:#fff;font-size:1.12rem;font-weight:900;cursor:pointer;display:flex;align-items:center;justify-content:center;box-shadow:0 14px 26px rgba(37,99,235,.25);transition:.18s ease}
.internal-send-btn:hover{transform:translateY(-1px);box-shadow:0 18px 34px rgba(37,99,235,.32)}
.internal-send-btn.is-busy{font-size:.74rem;width:auto;min-width:72px;padding:0 10px}
.internal-premium-v167 .internal-group-create{border-radius:20px;background:linear-gradient(180deg,#f8fbff,#fff);border-color:rgba(37,99,235,.18);box-shadow:0 16px 34px rgba(37,99,235,.08)}
.internal-premium-v167 .internal-group-create textarea{min-height:82px}
@media (max-width:1100px){.internal-premium-v167 .internal-workspace{grid-template-columns:minmax(280px,330px) minmax(0,1fr)}.internal-premium-v167 .internal-bubble{max-width:76%}}
@media (max-width:980px){.internal-premium-v167 .internal-workspace{grid-template-columns:1fr}.internal-premium-v167 .internal-contacts-panel,.internal-premium-v167 .internal-thread-panel,.internal-thread-shell{min-height:auto}.internal-premium-v167 .internal-thread-body{min-height:48vh}.internal-premium-v167 .internal-hero{padding:22px}.internal-premium-v167 .internal-hero-actions{width:100%;justify-content:flex-start}.internal-premium-v167 .internal-bubble{max-width:88%}.internal-toolbar-row{align-items:stretch}.internal-toolbar-actions{justify-content:flex-start}}
@media (max-width:640px){.internal-premium-v167 .internal-hero-actions{display:grid;grid-template-columns:1fr 1fr}.internal-premium-v167 .internal-hero-actions .badge{grid-column:1/-1;justify-content:center}.internal-premium-v167 .internal-contacts-panel{padding:14px}.internal-premium-v167 .internal-thread-head{padding:16px}.internal-premium-v167 .internal-thread-body{padding:16px 14px;gap:12px}.internal-premium-v167 .internal-bubble{max-width:94%;padding:11px 13px}.internal-premium-v167 .internal-composer{padding:12px}.internal-composer-box{grid-template-columns:minmax(0,1fr) 34px 42px;border-radius:18px}.internal-compose-icon{width:32px;height:32px}.internal-send-btn{width:40px;height:40px}.internal-composer-box textarea{font-size:.92rem}.internal-sidebar-title{gap:9px}.internal-toolbar-actions{width:100%;display:grid;grid-template-columns:1fr 1fr}.internal-toolbar-actions .badge{grid-column:1/-1;justify-self:start}.internal-premium-compact .internal-action-btn-inline{width:100%;justify-content:center}}


/* V16.8 — Messagerie interne : hauteur stable + scroll du fil uniquement */
#view-internal-messages.view.active{
  display:flex!important;
  flex-direction:column;
  height:calc(100dvh - 78px);
  min-height:0;
  overflow:hidden;
}
#internal-messages-root{
  flex:1 1 auto;
  min-height:0;
  width:100%;
  display:flex;
  flex-direction:column;
}
.internal-premium-v168{
  flex:1 1 auto;
  min-height:0;
  height:100%;
  display:flex;
  flex-direction:column;
  overflow:hidden;
}
.internal-premium-v168 .internal-hero{
  flex:0 0 auto;
}
.internal-premium-v168 .internal-workspace{
  flex:1 1 auto;
  min-height:0;
  overflow:hidden;
  align-items:stretch;
}
.internal-premium-v168 .internal-contacts-panel,
.internal-premium-v168 .internal-thread-panel{
  height:100%;
  min-height:0!important;
  max-height:100%;
  overflow:hidden;
}
.internal-premium-v168 .internal-contacts-panel{
  flex:1 1 auto;
}
.internal-premium-v168 .internal-contacts-list{
  flex:1 1 auto;
  min-height:0;
  max-height:none;
  overflow-y:auto;
  overscroll-behavior:contain;
  padding-right:6px;
}
.internal-premium-v168 .internal-thread-shell{
  height:100%;
  min-height:0!important;
  max-height:100%;
  overflow:hidden;
}
.internal-premium-v168 .internal-thread-head,
.internal-premium-v168 .internal-composer{
  flex:0 0 auto;
}
.internal-premium-v168 .internal-thread-body{
  flex:1 1 auto;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scroll-behavior:smooth;
}
.internal-premium-v168 .internal-thread-body::-webkit-scrollbar,
.internal-premium-v168 .internal-contacts-list::-webkit-scrollbar{
  width:8px;
}
.internal-premium-v168 .internal-thread-body::-webkit-scrollbar-track,
.internal-premium-v168 .internal-contacts-list::-webkit-scrollbar-track{
  background:rgba(226,232,240,.55);
  border-radius:999px;
}
.internal-premium-v168 .internal-thread-body::-webkit-scrollbar-thumb,
.internal-premium-v168 .internal-contacts-list::-webkit-scrollbar-thumb{
  background:rgba(100,116,139,.35);
  border-radius:999px;
}
.internal-premium-v168 .internal-thread-body::-webkit-scrollbar-thumb:hover,
.internal-premium-v168 .internal-contacts-list::-webkit-scrollbar-thumb:hover{
  background:rgba(37,99,235,.45);
}
.internal-premium-v168 .internal-composer-box{
  position:relative;
  z-index:1;
}
@media (max-width:1000px){
  #view-internal-messages.view.active{
    height:auto;
    min-height:calc(100dvh - 120px);
    overflow:visible;
  }
  .internal-premium-v168{
    height:auto;
    overflow:visible;
  }
  .internal-premium-v168 .internal-workspace{
    overflow:visible;
  }
  .internal-premium-v168 .internal-thread-panel,
  .internal-premium-v168 .internal-thread-shell{
    height:auto;
    min-height:560px!important;
  }
  .internal-premium-v168 .internal-thread-body{
    min-height:420px!important;
    max-height:55vh!important;
  }
}
@media (max-width:640px){
  .internal-premium-v168 .internal-thread-panel,
  .internal-premium-v168 .internal-thread-shell{
    min-height:520px!important;
  }
  .internal-premium-v168 .internal-thread-body{
    min-height:360px!important;
    max-height:52vh!important;
  }
}

/* AZALYS V17 — Juridique & Corporate interne */
.legal-view { min-height: calc(100vh - 120px); }
.legal-shell { display:flex; flex-direction:column; gap:18px; }
.legal-hero { display:flex; justify-content:space-between; gap:18px; align-items:flex-start; padding:24px; border:1px solid rgba(37,99,235,.12); border-radius:28px; background:linear-gradient(135deg,#ffffff 0%,#f8fbff 48%,#eef6ff 100%); box-shadow:0 18px 50px rgba(15,23,42,.08); }
.legal-eyebrow { display:inline-flex; align-items:center; gap:8px; color:#2563eb; font-weight:800; font-size:.76rem; text-transform:uppercase; letter-spacing:.08em; }
.legal-hero h3, .legal-detail-head h3 { margin:8px 0 6px; font-size:1.55rem; letter-spacing:-.03em; color:#0f172a; }
.legal-hero p, .legal-detail-head p { margin:0; color:#64748b; max-width:760px; line-height:1.55; }
.legal-rules { display:flex; flex-wrap:wrap; gap:8px; margin-top:14px; }
.legal-rules span { display:inline-flex; padding:7px 10px; border-radius:999px; background:#fff; border:1px solid rgba(37,99,235,.12); color:#334155; font-weight:700; font-size:.78rem; }
.legal-hero-actions { display:flex; align-items:center; gap:10px; flex-wrap:wrap; justify-content:flex-end; }
.legal-kpis { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; }
.legal-kpi { padding:16px; border-radius:22px; background:#fff; border:1px solid rgba(148,163,184,.18); box-shadow:0 12px 34px rgba(15,23,42,.06); }
.legal-kpi span { display:block; color:#64748b; font-weight:800; font-size:.78rem; text-transform:uppercase; letter-spacing:.04em; }
.legal-kpi strong { display:block; margin-top:6px; color:#0f172a; font-size:1.35rem; letter-spacing:-.03em; }
.legal-kpi small { display:block; margin-top:4px; color:#94a3b8; font-weight:700; }
.legal-kpi.green { background:linear-gradient(180deg,#fff,#f0fdf4); }
.legal-kpi.blue { background:linear-gradient(180deg,#fff,#eff6ff); }
.legal-kpi.gold { background:linear-gradient(180deg,#fff,#fffbeb); }
.legal-layout { display:grid; grid-template-columns:360px minmax(0,1fr); gap:16px; min-height:650px; }
.legal-sidebar, .legal-detail { min-height:640px; border-radius:26px; border:1px solid rgba(148,163,184,.18); background:#fff; box-shadow:0 16px 44px rgba(15,23,42,.07); overflow:hidden; }
.legal-sidebar { display:flex; flex-direction:column; padding:14px; gap:12px; }
.legal-side-head { display:flex; align-items:center; justify-content:space-between; padding:6px 4px 2px; }
.legal-side-head strong { color:#0f172a; }
.legal-side-head span { background:#eff6ff; color:#2563eb; border-radius:999px; padding:4px 9px; font-weight:900; font-size:.75rem; }
.legal-case-list { overflow:auto; display:flex; flex-direction:column; gap:9px; padding-right:3px; }
.legal-case-item { width:100%; border:1px solid rgba(148,163,184,.18); background:#fff; border-radius:18px; padding:12px; display:grid; grid-template-columns:42px 1fr auto; gap:10px; align-items:center; text-align:left; cursor:pointer; transition:.18s ease; }
.legal-case-item:hover { transform:translateY(-1px); box-shadow:0 12px 25px rgba(15,23,42,.08); }
.legal-case-item.active { border-color:rgba(37,99,235,.34); background:linear-gradient(135deg,#eff6ff,#fff); box-shadow:0 12px 25px rgba(37,99,235,.11); }
.legal-case-avatar { width:42px; height:42px; border-radius:14px; display:grid; place-items:center; background:linear-gradient(135deg,#2563eb,#7c3aed); color:#fff; font-weight:900; }
.legal-case-main { min-width:0; display:flex; flex-direction:column; gap:3px; }
.legal-case-main b { color:#0f172a; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.legal-case-main small, .legal-case-meta em { color:#64748b; font-style:normal; font-size:.78rem; }
.legal-case-meta { display:flex; flex-direction:column; align-items:flex-end; gap:6px; }
.legal-warn { min-width:22px; height:22px; border-radius:999px; display:grid; place-items:center; background:#fef3c7; color:#b45309; font-weight:900; font-style:normal; font-size:.75rem; }
.legal-progress { height:6px; border-radius:999px; background:#e2e8f0; overflow:hidden; display:block; margin-top:5px; }
.legal-progress i { display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,#2563eb,#22c55e); }
.legal-progress.big { height:8px; margin:10px 0 6px; }
.legal-detail { overflow:auto; background:linear-gradient(180deg,#fff,#f8fafc); }
.legal-detail-inner { padding:18px; display:flex; flex-direction:column; gap:16px; }
.legal-detail-head { display:flex; align-items:flex-start; justify-content:space-between; gap:16px; padding:16px; border-radius:22px; background:#fff; border:1px solid rgba(148,163,184,.16); }
.legal-status-stack { display:flex; flex-direction:column; align-items:flex-end; gap:8px; }
.legal-detail-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:12px; }
.legal-summary-card { padding:14px; border-radius:20px; background:#fff; border:1px solid rgba(148,163,184,.16); }
.legal-summary-card span { color:#64748b; font-weight:800; font-size:.76rem; text-transform:uppercase; letter-spacing:.04em; }
.legal-summary-card strong { display:block; margin-top:6px; color:#0f172a; font-size:1.12rem; }
.legal-summary-card small { color:#94a3b8; font-weight:700; }
.legal-alert-row { display:grid; grid-template-columns:1fr 1fr; gap:10px; }
.legal-alert { border-radius:16px; padding:11px 13px; font-weight:800; font-size:.85rem; }
.legal-alert.ok { background:#ecfdf5; color:#047857; border:1px solid rgba(16,185,129,.2); }
.legal-alert.warn { background:#fffbeb; color:#b45309; border:1px solid rgba(245,158,11,.25); }
.legal-actions-bar { display:flex; align-items:center; gap:12px; justify-content:space-between; padding:14px; border-radius:20px; background:#0f172a; color:#fff; }
.legal-actions-bar .muted { color:#cbd5e1; }
.legal-two-cols { display:grid; grid-template-columns:1.08fr .92fr; gap:14px; align-items:start; }
.legal-panel { background:#fff; border:1px solid rgba(148,163,184,.16); border-radius:24px; padding:14px; box-shadow:0 12px 30px rgba(15,23,42,.05); }
.legal-panel-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:12px; }
.legal-panel-head h4 { margin:0; color:#0f172a; }
.legal-panel-head span { background:#f1f5f9; color:#475569; border-radius:999px; padding:4px 9px; font-weight:900; font-size:.75rem; }
.legal-steps { display:flex; flex-direction:column; gap:10px; max-height:720px; overflow:auto; padding-right:4px; }
.legal-step { border:1px solid rgba(148,163,184,.18); border-radius:18px; padding:12px; display:grid; grid-template-columns:minmax(0,1fr) auto auto; gap:10px; align-items:center; background:#fff; }
.legal-step.done { background:linear-gradient(135deg,#f0fdf4,#fff); border-color:rgba(34,197,94,.24); }
.legal-step-main { display:flex; align-items:center; gap:10px; min-width:0; }
.legal-step-no { width:30px; height:30px; border-radius:11px; background:#eff6ff; color:#2563eb; font-weight:900; display:grid; place-items:center; flex:0 0 auto; }
.legal-step-main b { display:block; color:#0f172a; }
.legal-step-main small { color:#64748b; font-weight:700; }
.legal-step-checks { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.legal-step-checks span { border-radius:999px; padding:5px 8px; font-size:.75rem; font-weight:900; }
.legal-step-checks .ok { background:#ecfdf5; color:#047857; }
.legal-step-checks .miss { background:#fef3c7; color:#b45309; }
.legal-step-actions { display:flex; gap:6px; flex-wrap:wrap; justify-content:flex-end; }
.legal-mini-form { display:grid; grid-template-columns:1fr 1fr; gap:8px; padding:12px; border-radius:18px; background:#f8fafc; border:1px solid rgba(148,163,184,.16); margin-bottom:10px; }
.legal-mini-form h5 { grid-column:1/-1; margin:0 0 4px; color:#0f172a; }
.legal-mini-form button { justify-content:center; }
.legal-upload { background:#fff7ed; }
.legal-lists { display:flex; flex-direction:column; gap:8px; }
.legal-lists h5 { margin:10px 2px 2px; color:#334155; }
.legal-line { display:flex; align-items:center; justify-content:space-between; gap:12px; border:1px solid rgba(148,163,184,.14); border-radius:16px; padding:10px 12px; background:#fff; }
.legal-line b { display:block; color:#0f172a; }
.legal-line small { display:block; color:#64748b; margin-top:2px; }
.legal-line strong { white-space:nowrap; }
.legal-line.doc { background:#f8fafc; }
.legal-empty { min-height:520px; display:grid; place-items:center; text-align:center; color:#64748b; }
.legal-empty span { font-size:3rem; }
.legal-empty h3 { margin:.5rem 0 .25rem; color:#0f172a; }
.legal-modal-card .alert.info { background:#eff6ff; border-color:rgba(37,99,235,.18); color:#334155; }
.empty.mini { padding:12px; border-radius:16px; background:#f8fafc; color:#94a3b8; font-weight:700; }
@media (max-width: 1180px) {
  .legal-layout { grid-template-columns:1fr; }
  .legal-sidebar { min-height:auto; max-height:420px; }
  .legal-detail-grid, .legal-kpis { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .legal-two-cols { grid-template-columns:1fr; }
}
@media (max-width: 760px) {
  .legal-hero, .legal-detail-head, .legal-actions-bar { flex-direction:column; align-items:stretch; }
  .legal-kpis, .legal-detail-grid, .legal-alert-row { grid-template-columns:1fr; }
  .legal-step { grid-template-columns:1fr; }
  .legal-step-checks, .legal-step-actions { justify-content:flex-start; }
  .legal-mini-form { grid-template-columns:1fr; }
}

/* AZALYS V17.1 — Juridique : clients internes, externes et sociétés en création */
.legal-party-mode { padding:14px; border:1px solid rgba(37,99,235,.14); border-radius:18px; background:linear-gradient(135deg,#f8fbff,#fff); }
.legal-party-mode .form-label { display:block; margin-bottom:8px; color:#0f172a; font-weight:900; }
.legal-radio-row { display:flex; flex-wrap:wrap; gap:9px; }
.legal-radio-row label { display:inline-flex; align-items:center; gap:7px; padding:9px 11px; border:1px solid rgba(148,163,184,.24); border-radius:999px; background:#fff; color:#334155; font-weight:800; cursor:pointer; }
.legal-radio-row input { accent-color:#2563eb; }
@media (max-width: 760px){ .legal-radio-row { flex-direction:column; align-items:stretch; } .legal-radio-row label { border-radius:14px; } }


/* AZALYS v17.6 — adaptation automatique à l'affichage du PC */
html{-webkit-text-size-adjust:100%;}
body{min-width:320px;overflow-x:hidden;}
.main-shell{
  grid-template-columns:clamp(220px,16vw,280px) minmax(0,1fr);
}
.side{
  width:100%;
  min-width:0;
}
.side-nav{
  gap:6px;
}
.nav-btn{
  min-height:44px;
  display:flex;
  align-items:center;
}
.main{
  min-width:0;
  width:100%;
}
.topbar{
  min-height:72px;
  padding:clamp(12px,1.4vw,20px) clamp(16px,2vw,28px);
  gap:16px;
}
.topbar h2{
  font-size:clamp(20px,1.8vw,28px);
}
.view{
  width:100%;
  max-width:1680px;
  margin:0 auto;
  padding:clamp(16px,1.8vw,28px);
}
.hero{
  padding:clamp(20px,2vw,30px);
}
.hero h1{
  font-size:clamp(24px,2.2vw,34px);
}
.kpi-grid,
.modules-grid{
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr));
}
.grid.two{
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr));
}
.panel-tools{
  grid-template-columns:minmax(220px,1fr) repeat(3,minmax(160px,220px));
}
.form-grid.three{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.module-checks{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.table-wrap{max-width:100%;}
.card,.kpi,.module-card,.hero{max-width:100%;}
@media(min-width:1500px){
  .main-shell{grid-template-columns:clamp(236px,15vw,292px) minmax(0,1fr);}
  .topbar{padding-inline:28px;}
  .view{max-width:1760px;}
  .home-module-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr));}
}
@media(max-width:1200px){
  .panel-tools{grid-template-columns:repeat(2,minmax(220px,1fr));}
}
@media(max-width:1000px){
  .main-shell{grid-template-columns:1fr;}
  .side{position:relative;height:auto;}
  .side-nav{flex-direction:row;overflow:auto;padding-bottom:10px;}
  .nav-btn{white-space:nowrap;}
  .panel-tools{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:640px){
  .panel-tools,
  .grid.two,
  .kpi-grid,
  .modules-grid,
  .module-checks,
  .form-grid.three{grid-template-columns:1fr;}
  .view{padding:16px;}
}


/* AZALYS v17.11 — icône flottante messages client visible + badge non lu */
.client-chat-floating{
  right:96px!important;
  bottom:26px!important;
  z-index:1510!important;
}
.client-chat-btn{
  width:62px!important;
  height:62px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,#0f766e 0%,#2563eb 55%,#4f46e5 100%)!important;
  box-shadow:0 18px 46px rgba(37,99,235,.34),0 0 0 1px rgba(255,255,255,.28) inset!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
.client-chat-btn::after{
  content:"Messages";
  position:absolute;
  right:70px;
  top:50%;
  transform:translateY(-50%);
  padding:7px 10px;
  border-radius:999px;
  background:rgba(15,23,42,.88);
  color:#fff;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.01em;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transition:.18s ease;
  box-shadow:0 12px 26px rgba(15,23,42,.18);
}
.client-chat-btn:hover::after,
.client-chat-floating.has-unread .client-chat-btn::after{
  opacity:1;
}
.client-chat-glow{
  inset:-10px!important;
  border-radius:30px!important;
  background:linear-gradient(135deg,rgba(20,184,166,.28),rgba(79,70,229,.25))!important;
  filter:blur(9px)!important;
}
.client-chat-face{
  width:38px;
  height:38px;
  border-radius:16px;
  display:grid;
  place-items:center;
  font-size:25px!important;
  line-height:1;
  background:rgba(255,255,255,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
}
.client-chat-badge{
  right:-7px!important;
  top:-8px!important;
  min-width:25px!important;
  height:25px!important;
  border:3px solid #fff!important;
  background:#ef4444!important;
  font-size:11px!important;
  box-shadow:0 10px 24px rgba(239,68,68,.44)!important;
}
.client-chat-floating.has-unread .client-chat-btn{
  animation:clientUnreadPulse 1.45s ease-in-out infinite;
}
.client-chat-floating.has-unread .client-chat-glow{
  background:linear-gradient(135deg,rgba(239,68,68,.34),rgba(37,99,235,.30))!important;
}
.client-chat-floating.has-unread .client-chat-btn::before{
  content:"Nouveau";
  position:absolute;
  right:0;
  bottom:68px;
  padding:7px 10px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:11px;
  font-weight:1000;
  box-shadow:0 12px 28px rgba(239,68,68,.32);
  white-space:nowrap;
}
.client-chat-avatar{
  background:linear-gradient(135deg,#ccfbf1,#dbeafe)!important;
  font-size:21px;
}
@keyframes clientUnreadPulse{
  0%,100%{transform:translateY(0) scale(1);box-shadow:0 18px 46px rgba(37,99,235,.34),0 0 0 0 rgba(239,68,68,.42);}
  50%{transform:translateY(-2px) scale(1.04);box-shadow:0 24px 58px rgba(37,99,235,.42),0 0 0 8px rgba(239,68,68,0);}
}
@media(max-width:720px){
  .client-chat-floating{
    right:88px!important;
    bottom:18px!important;
  }
  .client-chat-btn::after,
  .client-chat-floating.has-unread .client-chat-btn::before{
    display:none!important;
  }
}


/* AZALYS v17.38 — AI panel lighter + messages icon premium */
.ai-floating-panel{
  width:min(368px,calc(100vw - 28px))!important;
}
.ai-floating-head{
  padding:12px 14px 10px 14px!important;
}
.ai-head-left strong{font-size:14px!important;}
.ai-head-left span{font-size:11px!important;}
.ai-avatar{
  width:40px!important;height:40px!important;border-radius:14px!important;
}
.ai-floating-context{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:8px!important;
  padding:10px 12px!important;
}
.ai-context-chip{
  padding:8px 6px!important;
  border-radius:14px!important;
}
.ai-context-chip strong{font-size:14px!important;}
.ai-context-chip span{font-size:9px!important;margin-top:2px!important;}
.ai-agent-strip{
  grid-column:1/-1;
  display:flex!important;
  gap:8px;
  overflow:auto;
  padding-top:2px;
  scrollbar-width:thin;
}
.ai-agent-chip{
  flex:0 0 auto;
  min-width:auto!important;
  padding:8px 10px!important;
  border-radius:16px!important;
}
.ai-agent-chip strong{font-size:12px!important;}
.ai-agent-chip span{font-size:15px!important;}
.ai-floating-chat{
  padding:12px!important;
  background:linear-gradient(180deg,#fff,#f8fbff)!important;
}
.ai-welcome-card{
  padding:14px 15px!important;
  border-radius:18px!important;
}
.ai-welcome-card strong{font-size:14px!important;}
.ai-welcome-card p{font-size:13px!important;line-height:1.45!important;margin-top:6px!important;}
.ai-float-msg{
  max-width:92%!important;
  font-size:13px!important;
  line-height:1.55!important;
}
.ai-floating-quick{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px!important;
  padding:10px 12px!important;
}
.ai-floating-quick .btn{
  width:100%;
  justify-content:center;
  padding:9px 10px!important;
  border-radius:14px!important;
  font-size:12px!important;
}
.ai-floating-compose{
  grid-template-columns:minmax(0,1fr) 96px!important;
  padding:10px 12px!important;
}
.ai-floating-compose textarea{
  min-height:44px!important;
  max-height:84px!important;
  font-size:13px!important;
}
.ai-floating-compose .btn{
  min-height:44px!important;
  border-radius:14px!important;
}
.ai-floating-note{
  padding:0 12px 10px!important;
  font-size:10px!important;
  line-height:1.35!important;
}

/* Cabinet messages floating button aligned with client-space style */
.cabinet-chat-floating{
  right:96px!important;
  bottom:26px!important;
  z-index:1510!important;
}
.cabinet-chat-btn{
  width:62px!important;
  height:62px!important;
  border-radius:22px!important;
  background:linear-gradient(135deg,#0f766e 0%,#2563eb 55%,#4f46e5 100%)!important;
  box-shadow:0 18px 46px rgba(37,99,235,.34),0 0 0 1px rgba(255,255,255,.28) inset!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
}
.cabinet-chat-btn::after{
  content:"Messages";
  position:absolute;
  right:70px;
  top:50%;
  transform:translateY(-50%);
  padding:7px 10px;
  border-radius:999px;
  background:rgba(15,23,42,.88);
  color:#fff;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.01em;
  white-space:nowrap;
  opacity:0;
  pointer-events:none;
  transition:.18s ease;
  box-shadow:0 12px 26px rgba(15,23,42,.18);
}
.cabinet-chat-btn:hover::after,
.cabinet-chat-floating.has-unread .cabinet-chat-btn::after{opacity:1;}
.cabinet-chat-glow{
  inset:-10px!important;
  border-radius:30px!important;
  background:linear-gradient(135deg,rgba(20,184,166,.28),rgba(79,70,229,.25))!important;
  filter:blur(9px)!important;
}
.cabinet-chat-face{
  width:38px;
  height:38px;
  border-radius:16px;
  display:grid;
  place-items:center;
  font-size:25px!important;
  line-height:1;
  background:rgba(255,255,255,.16);
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.22);
}
.cabinet-chat-badge{
  right:-7px!important;
  top:-8px!important;
  min-width:25px!important;
  height:25px!important;
  border:3px solid #fff!important;
  background:#ef4444!important;
  font-size:11px!important;
  box-shadow:0 10px 24px rgba(239,68,68,.44)!important;
}
.cabinet-chat-avatar{
  background:linear-gradient(135deg,#ccfbf1,#dbeafe)!important;
  font-size:21px;
}
.cabinet-chat-floating.has-unread .cabinet-chat-btn{animation:clientUnreadPulse 1.45s ease-in-out infinite;}
.cabinet-chat-floating.has-unread .cabinet-chat-glow{background:linear-gradient(135deg,rgba(239,68,68,.34),rgba(37,99,235,.30))!important;}
.cabinet-chat-floating.has-unread .cabinet-chat-btn::before{
  content:"Nouveau";
  position:absolute;
  right:0;
  bottom:68px;
  padding:7px 10px;
  border-radius:999px;
  background:#ef4444;
  color:#fff;
  font-size:11px;
  font-weight:1000;
  box-shadow:0 12px 28px rgba(239,68,68,.32);
  white-space:nowrap;
}

@media(max-width:720px){
  .ai-floating{right:16px!important;bottom:16px!important;}
  .ai-floating-panel{
    left:8px!important;
    right:8px!important;
    top:8px!important;
    bottom:82px!important;
    width:auto!important;
    border-radius:20px!important;
  }
  .ai-floating-head{padding:10px 11px 9px 11px!important;}
  .ai-avatar{width:34px!important;height:34px!important;border-radius:12px!important;}
  .ai-head-left strong{font-size:13px!important;}
  .ai-head-left span{font-size:10px!important;}
  .ai-head-actions .icon-btn{width:30px!important;height:30px!important;}
  .ai-floating-context{padding:8px 10px!important;gap:7px!important;}
  .ai-context-chip{padding:7px 4px!important;}
  .ai-context-chip strong{font-size:13px!important;}
  .ai-context-chip span{font-size:8px!important;}
  .ai-agent-strip{gap:7px!important; padding-top:0!important;}
  .ai-agent-chip{padding:7px 9px!important;border-radius:14px!important;}
  .ai-agent-chip strong{font-size:11px!important;}
  .ai-floating-chat{padding:10px!important;}
  .ai-welcome-card{padding:12px 13px!important;}
  .ai-welcome-card p{font-size:12px!important;}
  .ai-float-msg{font-size:12.5px!important;line-height:1.5!important;max-width:96%!important;}
  .ai-floating-quick{grid-template-columns:repeat(2,minmax(0,1fr))!important;max-height:none!important;overflow:visible!important;}
  .ai-floating-quick .btn{font-size:11px!important;min-height:36px!important;}
  .ai-floating-quick #ai-supervise-current,
  .ai-floating-quick #ai-audit-current{display:none!important;}
  .ai-floating-compose{grid-template-columns:minmax(0,1fr) 82px!important;padding:9px 10px!important;}
  .ai-floating-compose textarea{min-height:42px!important;max-height:74px!important;}
  .ai-floating-note{display:none!important;}

  .cabinet-chat-floating{right:88px!important;bottom:18px!important;}
  .cabinet-chat-btn::after,
  .cabinet-chat-floating.has-unread .cabinet-chat-btn::before{display:none!important;}
}


/* AZALYS v17.39 — Dashboard uses same Missions & tâches source */
.dashboard-task-item.has-risk{
  border-left:4px solid #ef4444;
}
.dashboard-task-item .item-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.dashboard-user-load.has-risk{
  border:1px solid #fecaca;
  background:linear-gradient(180deg,#fff,#fff7f7);
  border-radius:14px;
  padding:9px 10px;
}


/* ============================================================================
   AZALYS v17.40 — AI Pilotage flottant minimaliste lisible
   ============================================================================ */

.ai-floating-panel{
  width:min(360px,calc(100vw - 20px))!important;
  max-height:min(620px,calc(100vh - 96px))!important;
  border-radius:22px!important;
}
.ai-floating-head{padding:10px 12px!important;min-height:58px!important;}
.ai-avatar{width:36px!important;height:36px!important;border-radius:13px!important;}
.ai-head-left strong{font-size:13.5px!important;line-height:1.15!important;}
.ai-head-left span{font-size:10.5px!important;line-height:1.25!important;}
.ai-head-actions .icon-btn{width:32px!important;height:32px!important;border-radius:12px!important;}

.ai-floating-context{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:7px 10px!important;
  min-height:0!important;
  max-height:44px!important;
  overflow:hidden!important;
  border-bottom:1px solid #e2e8f0!important;
}
.ai-context-chip{
  flex:0 0 auto!important;
  min-width:auto!important;
  padding:5px 8px!important;
  border-radius:999px!important;
}
.ai-context-chip strong{
  display:inline!important;
  font-size:12px!important;
  margin-right:3px!important;
}
.ai-context-chip span{
  display:inline!important;
  font-size:9px!important;
  margin:0!important;
}
.ai-agent-strip{
  flex:1 1 auto!important;
  display:flex!important;
  gap:6px!important;
  min-width:0!important;
  overflow:auto!important;
  padding:0!important;
  scrollbar-width:none!important;
}
.ai-agent-strip::-webkit-scrollbar{display:none!important;}
.ai-agent-chip{
  flex:0 0 auto!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  min-height:28px!important;
  box-shadow:none!important;
}
.ai-agent-chip span{font-size:13px!important;}
.ai-agent-chip strong{font-size:10.5px!important;white-space:nowrap!important;}

.ai-floating-chat{
  flex:1 1 auto!important;
  min-height:260px!important;
  max-height:none!important;
  padding:10px!important;
  overflow:auto!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
}
.ai-welcome-card{
  padding:12px 13px!important;
  border-radius:16px!important;
  border-style:solid!important;
}
.ai-welcome-card strong{font-size:13.5px!important;}
.ai-welcome-card p{font-size:12.5px!important;line-height:1.45!important;margin:5px 0 0!important;}
.ai-float-msg{
  max-width:96%!important;
  padding:10px 12px!important;
  border-radius:15px!important;
  font-size:13px!important;
  line-height:1.55!important;
  margin-bottom:8px!important;
}

.ai-floating-quick{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  padding:8px 10px!important;
  max-height:48px!important;
  overflow:hidden!important;
  border-top:1px solid #e2e8f0!important;
}
.ai-floating-quick .btn{
  min-height:32px!important;
  padding:6px 5px!important;
  border-radius:11px!important;
  font-size:10.5px!important;
  line-height:1!important;
}
.ai-floating-quick #ai-supervise-current,
.ai-floating-quick #ai-audit-current{
  display:none!important;
}

.ai-floating-compose{
  grid-template-columns:minmax(0,1fr) 82px!important;
  padding:8px 10px!important;
  gap:7px!important;
}
.ai-floating-compose textarea{
  min-height:42px!important;
  max-height:82px!important;
  border-radius:13px!important;
  font-size:12.5px!important;
}
.ai-floating-compose .btn{
  min-height:42px!important;
  border-radius:13px!important;
  font-size:12px!important;
  padding:0 8px!important;
}
.ai-floating-note{display:none!important;}

@media(max-width:720px){
  .ai-floating{right:12px!important;bottom:12px!important;}
  .ai-floating-panel{
    left:8px!important;
    right:8px!important;
    top:8px!important;
    bottom:78px!important;
    width:auto!important;
    max-height:none!important;
    height:auto!important;
    border-radius:20px!important;
  }
  .ai-floating-head{padding:9px 10px!important;min-height:52px!important;}
  .ai-avatar{width:32px!important;height:32px!important;border-radius:12px!important;}
  .ai-head-left strong{font-size:13px!important;}
  .ai-head-left span{font-size:10px!important;}
  .ai-head-actions .icon-btn{width:30px!important;height:30px!important;}
  .ai-floating-context{padding:6px 8px!important;max-height:36px!important;}
  .ai-context-chip{display:none!important;}
  .ai-agent-strip{width:100%!important;}
  .ai-agent-chip{padding:5px 8px!important;min-height:26px!important;}
  .ai-agent-chip strong{font-size:10px!important;}
  .ai-floating-chat{min-height:0!important;flex:1 1 auto!important;padding:9px!important;}
  .ai-welcome-card{padding:11px 12px!important;}
  .ai-welcome-card p{font-size:12px!important;}
  .ai-floating-quick{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    max-height:42px!important;
    padding:6px 8px!important;
    gap:5px!important;
  }
  .ai-floating-quick .btn{min-height:30px!important;padding:5px 3px!important;font-size:10px!important;}
  .ai-floating-compose{grid-template-columns:minmax(0,1fr) 76px!important;padding:8px!important;}
  .ai-floating-compose textarea{min-height:40px!important;max-height:72px!important;}
  .ai-floating-compose .btn{min-height:40px!important;}
}


/* V17.50 — Demandes IA : cockpit de suivi ultra premium */
.ai-tasks-view{min-height:calc(100vh - 140px)}
.ai-monitor-shell{display:grid;gap:18px;animation:premiumFadeUp .35s ease both}
.ai-monitor-hero{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:22px;padding:28px;border:1px solid rgba(34,211,238,.22);border-radius:28px;background:radial-gradient(circle at 10% 0%,rgba(34,211,238,.18),transparent 36%),radial-gradient(circle at 100% 20%,rgba(124,58,237,.18),transparent 34%),linear-gradient(135deg,rgba(15,23,42,.98),rgba(17,24,39,.94));box-shadow:0 24px 70px rgba(15,23,42,.18);color:#f8fafc}
.ai-monitor-hero h2{margin:4px 0 8px;font-size:clamp(1.6rem,3vw,2.55rem);letter-spacing:-.04em;color:#fff}
.ai-monitor-hero p{max-width:820px;margin:0;color:rgba(226,232,240,.82);line-height:1.65}
.ai-monitor-orb{width:92px;height:92px;border-radius:28px;display:grid;place-items:center;font-size:40px;background:linear-gradient(135deg,rgba(103,232,249,.95),rgba(191,219,254,.95));box-shadow:0 18px 55px rgba(34,211,238,.28),inset 0 1px 0 rgba(255,255,255,.55)}
.ai-monitor-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.ai-monitor-kpis article{padding:18px 20px;border-radius:22px;border:1px solid rgba(148,163,184,.22);background:linear-gradient(180deg,rgba(255,255,255,.95),rgba(248,250,252,.9));box-shadow:0 16px 45px rgba(15,23,42,.08)}
.ai-monitor-kpis strong{display:block;font-size:2rem;letter-spacing:-.04em;color:#0f172a}.ai-monitor-kpis span{display:block;font-weight:800;color:#334155}.ai-monitor-kpis small{color:#64748b}
.ai-monitor-toolbar{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px;border-radius:22px;border:1px solid rgba(148,163,184,.2);background:rgba(255,255,255,.78);backdrop-filter:blur(18px)}
.ai-monitor-chips{display:flex;gap:8px;flex-wrap:wrap}.ai-monitor-chips button{border:1px solid rgba(148,163,184,.28);background:#fff;border-radius:999px;padding:9px 13px;font-weight:800;color:#334155;cursor:pointer}.ai-monitor-chips button.active{background:#0f172a;color:#fff;border-color:#0f172a;box-shadow:0 10px 30px rgba(15,23,42,.18)}.ai-monitor-chips b{margin-left:6px;opacity:.8}
.ai-monitor-flow{display:flex;align-items:center;gap:10px;flex-wrap:wrap;padding:13px 16px;border-radius:20px;background:linear-gradient(90deg,rgba(34,211,238,.09),rgba(124,58,237,.08));border:1px dashed rgba(14,165,233,.28);color:#334155;font-weight:800}.ai-monitor-flow span{padding:8px 12px;border-radius:999px;background:#fff;box-shadow:0 8px 25px rgba(15,23,42,.06)}.ai-monitor-flow i{color:#0284c7;font-style:normal}
.ai-task-list{display:grid;grid-template-columns:repeat(auto-fit,minmax(330px,1fr));gap:16px}.ai-task-card{position:relative;overflow:hidden;display:grid;gap:14px;padding:18px;border-radius:24px;background:rgba(255,255,255,.94);border:1px solid rgba(148,163,184,.22);box-shadow:0 18px 50px rgba(15,23,42,.09)}.ai-task-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:#94a3b8}.ai-task-card.status-pending:before{background:#f59e0b}.ai-task-card.status-processing:before{background:#0ea5e9}.ai-task-card.status-done:before{background:#10b981}.ai-task-card.status-error:before{background:#ef4444}.ai-task-card-top,.ai-task-main,.ai-task-foot{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}.ai-task-status{display:inline-flex;gap:8px;align-items:center;padding:8px 11px;border-radius:999px;font-size:.86rem;background:#f1f5f9;color:#334155}.ai-task-status.pending{background:#fffbeb;color:#92400e}.ai-task-status.processing{background:#eff6ff;color:#1d4ed8}.ai-task-status.done{background:#ecfdf5;color:#047857}.ai-task-status.error{background:#fef2f2;color:#b91c1c}.ai-task-ref{font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.72rem;color:#94a3b8;max-width:135px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.ai-task-main h3{margin:0;color:#0f172a;letter-spacing:-.02em}.ai-task-main p,.ai-task-dates{margin:3px 0 0;color:#64748b}.ai-task-dates{display:grid;text-align:right;font-size:.78rem}.ai-task-body{max-height:190px;overflow:auto;padding:13px 14px;border-radius:18px;background:#f8fafc;color:#334155;line-height:1.55;border:1px solid rgba(226,232,240,.8)}.ai-task-attempts{min-width:140px}.ai-task-progress{height:8px;border-radius:999px;background:#e2e8f0;overflow:hidden;margin-bottom:5px}.ai-task-progress span{display:block;height:100%;background:linear-gradient(90deg,#22d3ee,#2563eb);border-radius:inherit}.ai-task-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.ai-monitor-loading{padding:22px;border-radius:22px;background:#fff;border:1px solid rgba(148,163,184,.18);color:#64748b;font-weight:700}
@media(max-width:900px){.ai-monitor-hero,.ai-monitor-toolbar,.ai-task-card-top,.ai-task-main,.ai-task-foot{flex-direction:column}.ai-monitor-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.ai-task-list{grid-template-columns:1fr}.ai-task-dates{text-align:left}.ai-monitor-orb{width:72px;height:72px}}

/* AZALYS V5.3 — Poste de travail opérationnel */
.azalys-simple-nav .nav-advanced {
  opacity: .72;
  font-size: .9rem;
}
.workbox-view { display: none; }
.workbox-view.active { display: block; }
.workbox-hero {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 18px;
  margin-bottom: 18px;
  overflow: hidden;
  position: relative;
}
.workbox-hero::after {
  content: '';
  position: absolute;
  width: 220px;
  height: 220px;
  right: -70px;
  top: -90px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(37,99,235,.16), transparent 64%);
  pointer-events: none;
}
.workbox-hero h3 { margin: 4px 0 6px; font-size: clamp(1.35rem, 2vw, 2rem); }
.workbox-hero-actions { display: flex; gap: 10px; flex-wrap: wrap; justify-content: flex-end; position: relative; z-index: 1; }
.workbox-kpis {
  display: grid;
  grid-template-columns: repeat(5, minmax(0, 1fr));
  gap: 12px;
  margin-bottom: 14px;
}
.workbox-kpi {
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 18px;
  background: rgba(255,255,255,.78);
  box-shadow: 0 18px 42px rgba(15,23,42,.06);
  padding: 14px;
  display: grid;
  gap: 3px;
}
.workbox-kpi span { font-size: 1.25rem; }
.workbox-kpi strong { font-size: 1.6rem; line-height: 1; color: #0f172a; }
.workbox-kpi small { font-weight: 800; color: #334155; }
.workbox-kpi em { font-style: normal; color: #64748b; font-size: .82rem; }
.workbox-toolbar {
  display: grid;
  grid-template-columns: minmax(220px, 1fr) 180px 180px;
  gap: 12px;
  margin-bottom: 14px;
}
.workbox-list { display: grid; gap: 12px; }
.workbox-item {
  display: grid;
  grid-template-columns: 50px minmax(0, 1fr) auto;
  align-items: center;
  gap: 14px;
  border: 1px solid rgba(148,163,184,.26);
  border-radius: 20px;
  background: rgba(255,255,255,.92);
  box-shadow: 0 16px 42px rgba(15,23,42,.07);
  padding: 14px;
  position: relative;
  overflow: hidden;
}
.workbox-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 5px;
  background: #94a3b8;
}
.workbox-item.priority-danger::before { background: #dc2626; }
.workbox-item.priority-warning::before { background: #d97706; }
.workbox-item.priority-normal::before { background: #2563eb; }
.workbox-item.priority-muted::before { background: #64748b; }
.workbox-item-icon {
  width: 46px;
  height: 46px;
  border-radius: 16px;
  background: #f8fafc;
  display: grid;
  place-items: center;
  font-size: 1.35rem;
  box-shadow: inset 0 0 0 1px rgba(148,163,184,.22);
}
.workbox-item-main { min-width: 0; }
.workbox-item-top { display: flex; align-items: start; justify-content: space-between; gap: 12px; }
.workbox-item h3 { margin: 0; font-size: 1rem; color: #0f172a; }
.workbox-item p { margin: 5px 0 8px; color: #475569; line-height: 1.35; }
.workbox-status {
  border-radius: 999px;
  padding: 5px 9px;
  background: #eef2ff;
  color: #3730a3;
  font-size: .75rem;
  font-weight: 800;
  white-space: nowrap;
}
.workbox-meta { display: flex; gap: 7px; flex-wrap: wrap; align-items: center; }
.workbox-meta span, .workbox-priority {
  border-radius: 999px;
  padding: 4px 8px;
  background: #f1f5f9;
  color: #475569;
  font-size: .75rem;
  font-weight: 700;
}
.workbox-priority.danger { background: #fee2e2; color: #991b1b; }
.workbox-priority.warning { background: #fef3c7; color: #92400e; }
.workbox-priority.normal { background: #dbeafe; color: #1d4ed8; }
.workbox-actions { display: flex; gap: 8px; align-items: center; }
.btn.compact { padding: 8px 12px; border-radius: 12px; }
@media (max-width: 1100px) {
  .workbox-kpis { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .workbox-toolbar { grid-template-columns: 1fr; }
  .workbox-item { grid-template-columns: 44px minmax(0, 1fr); }
  .workbox-actions { grid-column: 1 / -1; justify-content: flex-end; }
}
@media (max-width: 720px) {
  .workbox-hero { align-items: stretch; flex-direction: column; }
  .workbox-hero-actions { justify-content: stretch; }
  .workbox-hero-actions .btn { flex: 1 1 auto; }
  .workbox-kpis { grid-template-columns: 1fr; }
  .workbox-item { grid-template-columns: 1fr; }
  .workbox-item-icon { width: 42px; height: 42px; }
}

/* AZALYS V5.1.1 - interface simplifiée : fonctions techniques masquées, mais les icônes flottantes messages clients et internes restent visibles. */
.top-actions #btn-import-json,
.top-actions #btn-export,
.top-actions #btn-new-dossier,
.side-footer #btn-health,
.side-nav .nav-advanced,
.side-nav .admin-technical-only,
#ai-local-config,
#ai-floating-go-dashboard,
#ai-supervise-current,
#ai-audit-current,
.cockpit-modules{
  display:none!important;
}

.azalys-simple-nav .nav-btn{min-height:44px;}
.workbox-hero-actions{justify-content:flex-end;}
.workbox-toolbar{grid-template-columns:minmax(280px,1fr) 180px 180px;}
.ai-floating{right:22px!important;bottom:22px!important;}
.ai-floating-quick{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
@media(max-width:860px){.workbox-toolbar{grid-template-columns:1fr}.ai-floating-quick{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
.side-nav .client-only[data-view="client-advanced"]{display:none!important;}

/* V5.2 — Poste de travail opérationnel AZALYS */
.workstation-hero {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:24px 26px;
  border:1px solid rgba(37,99,235,.14);
  background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,246,255,.94));
  box-shadow:0 22px 65px rgba(15,23,42,.08);
  position:relative;
  overflow:hidden;
}
.workstation-hero::after {
  content:"";
  position:absolute;
  inset:auto -80px -120px auto;
  width:260px;
  height:260px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,.16),transparent 68%);
}
.workstation-hero h3 { margin:4px 0 6px; font-size:clamp(1.35rem,2vw,2rem); color:#0f172a; }
.workstation-shell {
  display:grid;
  grid-template-columns:minmax(280px,360px) minmax(420px,1fr) minmax(260px,330px);
  gap:16px;
  align-items:start;
  margin-top:16px;
}
.workstation-queue,
.workstation-desk,
.workstation-console {
  border:1px solid rgba(148,163,184,.28);
  box-shadow:0 22px 60px rgba(15,23,42,.07);
}
.workstation-queue,
.workstation-console { position:sticky; top:86px; max-height:calc(100vh - 110px); overflow:auto; }
.workstation-queue-head { display:flex; justify-content:space-between; align-items:flex-start; gap:10px; margin-bottom:12px; }
.workstation-queue-head strong { display:block; font-size:1rem; color:#0f172a; }
.workstation-queue-head span { display:block; margin-top:3px; font-size:.82rem; }
.workstation-toolbar {
  display:grid !important;
  grid-template-columns:1fr 108px 108px !important;
  gap:8px;
  padding:0;
  background:transparent;
  border:0;
  box-shadow:none;
  margin-bottom:12px;
}
.workstation-toolbar .control { min-height:42px; border-radius:13px; font-size:.9rem; }
.workbox-queue-list { gap:10px; }
.workbox-queue-item {
  grid-template-columns:42px minmax(0,1fr);
  padding:13px;
  border-radius:18px;
  cursor:pointer;
  box-shadow:none;
  border:1px solid rgba(148,163,184,.24);
}
.workbox-queue-item:hover { transform:translateY(-1px); border-color:rgba(37,99,235,.28); box-shadow:0 14px 34px rgba(15,23,42,.08); }
.workbox-queue-item.is-selected { border-color:rgba(37,99,235,.55); background:linear-gradient(135deg,#fff,#eff6ff); box-shadow:0 16px 38px rgba(37,99,235,.12); }
.workbox-queue-item .workbox-item-icon { width:40px; height:40px; font-size:1rem; }
.workbox-queue-item h3 { font-size:.94rem; line-height:1.2; }
.workbox-queue-item p { font-size:.84rem; max-height:2.45em; overflow:hidden; }
.workbox-queue-item .workbox-status { font-size:.68rem; white-space:nowrap; }
.workstation-desk { min-height:640px; padding:22px; }
.workstation-desk-head { display:flex; justify-content:space-between; align-items:flex-start; gap:16px; margin-bottom:16px; }
.workstation-desk-head h2 { margin:8px 0 0; color:#0f172a; font-size:1.45rem; line-height:1.18; }
.workstation-pill { display:inline-flex; align-items:center; gap:6px; border-radius:999px; padding:7px 11px; font-weight:900; font-size:.75rem; letter-spacing:.04em; text-transform:uppercase; }
.workstation-pill.danger { background:#fee2e2; color:#991b1b; }
.workstation-pill.warning { background:#fef3c7; color:#92400e; }
.workstation-pill.normal { background:#dbeafe; color:#1d4ed8; }
.workstation-pill.muted { background:#f1f5f9; color:#475569; }
.workbox-status.big { font-size:.8rem; padding:8px 10px; }
.workstation-context-grid { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:10px; margin:12px 0 18px; }
.workstation-context-grid article { border:1px solid rgba(148,163,184,.25); border-radius:16px; padding:12px; background:#f8fafc; min-width:0; }
.workstation-context-grid span { display:block; font-size:.72rem; color:#64748b; font-weight:900; text-transform:uppercase; letter-spacing:.04em; }
.workstation-context-grid strong { display:block; margin-top:5px; color:#0f172a; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.workstation-preview { border:1px solid rgba(148,163,184,.28); border-radius:20px; overflow:hidden; background:#fff; margin:16px 0; }
.workstation-preview-head { display:flex; justify-content:space-between; align-items:center; padding:11px 14px; background:#f8fafc; border-bottom:1px solid rgba(148,163,184,.22); }
.workstation-preview-head a { color:#2563eb; font-weight:900; text-decoration:none; }
.workstation-preview iframe { width:100%; height:440px; border:0; background:#f8fafc; display:block; }
.workstation-note { border:1px solid rgba(148,163,184,.28); border-radius:18px; padding:16px; margin:16px 0; background:#f8fafc; }
.workstation-note.danger { background:#fff7ed; border-color:rgba(217,119,6,.25); }
.workstation-note strong { display:block; color:#0f172a; margin-bottom:8px; }
.workstation-note p { margin:0; color:#334155; line-height:1.5; }
.workstation-steps { margin-top:18px; padding:16px; border-radius:18px; background:linear-gradient(135deg,#f8fafc,#eef2ff); border:1px solid rgba(148,163,184,.22); }
.workstation-steps strong { display:block; color:#0f172a; margin-bottom:8px; }
.workstation-steps ol { margin:0; padding-left:20px; color:#334155; }
.workstation-steps li { margin:6px 0; line-height:1.38; }
.workstation-console { padding:18px; }
.workstation-console h3 { margin:0 0 8px; color:#0f172a; }
.workstation-action-stack { display:grid; gap:9px; margin:14px 0; }
.workstation-action-stack .btn { width:100%; justify-content:center; }
.btn.success { background:#16a34a; color:#fff; border-color:#16a34a; }
.btn.success:hover { filter:brightness(.96); }
.workstation-reply { margin:14px 0; }
.workstation-reply label { display:block; font-size:.78rem; font-weight:900; color:#475569; margin-bottom:6px; }
.workstation-reply textarea { width:100%; border:1px solid rgba(148,163,184,.38); border-radius:14px; padding:10px; resize:vertical; font:inherit; min-height:96px; }
.workstation-ai-nudge { margin-top:16px; padding:14px; border-radius:18px; background:#f8fafc; border:1px solid rgba(148,163,184,.25); display:grid; gap:8px; }
.workstation-ai-nudge strong { color:#0f172a; }
.workstation-ai-nudge span { color:#64748b; font-size:.86rem; line-height:1.35; }
.workstation-empty { min-height:420px; display:flex; flex-direction:column; justify-content:center; align-items:center; text-align:center; gap:8px; color:#64748b; }
.workstation-empty div { font-size:3rem; }
.workstation-empty strong { color:#0f172a; font-size:1.15rem; }
@media(max-width:1320px){
  .workstation-shell { grid-template-columns:330px minmax(0,1fr); }
  .workstation-console { grid-column:2; position:static; max-height:none; }
  .workstation-queue { max-height:calc(100vh - 110px); }
}
@media(max-width:980px){
  .workstation-shell { grid-template-columns:1fr; }
  .workstation-queue,.workstation-console { position:static; max-height:none; }
  .workstation-context-grid { grid-template-columns:repeat(2,minmax(0,1fr)); }
  .workstation-preview iframe { height:360px; }
  .workstation-toolbar { grid-template-columns:1fr !important; }
}
@media(max-width:620px){
  .workstation-hero { flex-direction:column; align-items:stretch; }
  .workstation-context-grid { grid-template-columns:1fr; }
  .workstation-desk { min-height:420px; padding:16px; }
  .workstation-preview iframe { height:300px; }
}

/* V5.3 — Poste de travail réinventé : couloirs, prise en charge, timeline */
.workstation-lanes{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:8px;
  margin:10px 0 12px;
}
.workstation-lane{
  border:1px solid rgba(148,163,184,.24);
  background:linear-gradient(135deg,#fff,#f8fafc);
  border-radius:15px;
  padding:9px 10px;
  min-height:62px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  align-items:center;
  gap:7px;
  cursor:pointer;
  box-shadow:0 10px 22px rgba(15,23,42,.04);
  transition:.16s ease;
  text-align:left;
}
.workstation-lane:hover{ transform:translateY(-1px); border-color:rgba(37,99,235,.28); }
.workstation-lane.is-active{ border-color:rgba(37,99,235,.58); background:linear-gradient(135deg,#eff6ff,#fff); box-shadow:0 14px 30px rgba(37,99,235,.12); }
.workstation-lane span{ font-size:1.1rem; }
.workstation-lane strong{ display:block; min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:.78rem; color:#0f172a; }
.workstation-lane em{ font-style:normal; min-width:24px; min-height:24px; display:inline-grid; place-items:center; border-radius:999px; background:#e2e8f0; color:#0f172a; font-weight:900; font-size:.72rem; }
.workstation-lane.is-active em{ background:#2563eb; color:#fff; }
.workbox-nextline{ display:flex; flex-wrap:wrap; gap:7px; align-items:center; margin:5px 0 8px; }
.workbox-nextline>span,.workbox-claim{ display:inline-flex; align-items:center; border-radius:999px; padding:4px 8px; font-size:.72rem; font-weight:900; }
.workbox-nextline>span{ background:#f1f5f9; color:#475569; }
.workbox-claim.free{ background:#ecfdf5; color:#047857; }
.workbox-claim.mine{ background:#dbeafe; color:#1d4ed8; }
.workbox-claim.busy{ background:#fef3c7; color:#92400e; }
.workstation-mission-strip{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:10px;
  margin:12px 0 16px;
}
.workstation-mission-strip article{
  border:1px solid rgba(148,163,184,.24);
  border-radius:18px;
  padding:13px;
  background:linear-gradient(135deg,#f8fafc,#fff);
  min-width:0;
}
.workstation-mission-strip span{ font-size:1.25rem; display:block; margin-bottom:5px; }
.workstation-mission-strip strong{ display:block; color:#0f172a; font-size:.86rem; margin-bottom:3px; }
.workstation-mission-strip em{ display:block; color:#64748b; font-size:.78rem; line-height:1.32; font-style:normal; }
.workstation-decision-card{
  border:1px solid rgba(37,99,235,.18);
  border-radius:18px;
  padding:13px;
  background:linear-gradient(135deg,#eff6ff,#fff);
  margin:12px 0;
}
.workstation-decision-card span{ display:block; color:#64748b; font-weight:900; text-transform:uppercase; letter-spacing:.04em; font-size:.68rem; margin-bottom:5px; }
.workstation-decision-card strong{ display:block; color:#0f172a; line-height:1.35; }
.workstation-timeline{
  margin-top:16px;
  border:1px solid rgba(148,163,184,.24);
  border-radius:20px;
  background:#fff;
  padding:14px;
}
.workstation-timeline>strong{ display:block; color:#0f172a; margin-bottom:10px; }
.workstation-timeline article{
  position:relative;
  padding:10px 0 10px 16px;
  border-left:2px solid rgba(37,99,235,.18);
}
.workstation-timeline article::before{
  content:'';
  position:absolute;
  left:-5px;
  top:16px;
  width:8px;
  height:8px;
  border-radius:999px;
  background:#2563eb;
}
.workstation-timeline article+article{ border-top:1px solid rgba(148,163,184,.16); }
.workstation-timeline span{ display:block; color:#94a3b8; font-size:.72rem; font-weight:800; }
.workstation-timeline b{ display:block; color:#0f172a; margin:2px 0; }
.workstation-timeline p{ margin:0; color:#475569; line-height:1.38; font-size:.86rem; }
.workstation-timeline em{ display:block; margin-top:4px; color:#64748b; font-size:.75rem; font-style:normal; }
.workstation-timeline.empty p{ margin:0; }
.workstation-console .workstation-reply textarea#workbox-action-note{ min-height:118px; }
@media(max-width:1280px){
  .workstation-lanes{grid-template-columns:1fr;}
  .workstation-mission-strip{grid-template-columns:1fr;}
}

/* AZALYS V5.4 — Accueil poste de travail journalisé */
.journal-workstation-view{display:none;}
.journal-workstation-view.active{display:block;}
.journal-workstation-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:18px;padding:4px 0 2px;}
.journal-workstation-head h1{margin:4px 0 5px;font-size:clamp(1.6rem,2.7vw,2.35rem);letter-spacing:-.045em;color:#0f172a;}
.journal-workstation-actions{display:flex;gap:10px;align-items:center;flex-wrap:wrap;}
.journal-kpi-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:12px;margin:0 0 18px;}
.journal-kpi{display:flex;align-items:center;gap:12px;padding:15px;border:1px solid rgba(148,163,184,.24);border-radius:18px;background:rgba(255,255,255,.94);box-shadow:0 12px 30px rgba(15,23,42,.045);min-width:0;}
.journal-kpi>span{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;font-size:1.25rem;background:#eff6ff;color:#2563eb;flex:0 0 auto;}
.journal-kpi small,.journal-kpi em{display:block;color:#64748b;font-size:.76rem;line-height:1.2;}
.journal-kpi strong{display:block;color:#0f172a;font-size:1.5rem;line-height:1;font-weight:950;margin:4px 0 3px;}
.journal-kpi.purple>span{background:#f3e8ff;color:#7c3aed}.journal-kpi.orange>span{background:#ffedd5;color:#ea580c}.journal-kpi.gold>span{background:#fef3c7;color:#d97706}.journal-kpi.green>span{background:#dcfce7;color:#16a34a}.journal-kpi.red>span{background:#fee2e2;color:#dc2626}
.journal-imperative{padding:18px;margin-bottom:18px;border-radius:22px;}
.journal-card-head{display:flex;justify-content:space-between;align-items:flex-start;gap:14px;margin-bottom:14px;}
.journal-card-head h3{margin:0;color:#0f172a;font-size:1.1rem;letter-spacing:-.02em;}
.journal-card-head p{margin:4px 0 0;}
.journal-urgent-strip{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px;}
.journal-urgent-card{border:1px solid rgba(148,163,184,.28);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fafc);padding:14px;min-height:160px;display:grid;gap:8px;cursor:pointer;transition:.18s ease;}
.journal-urgent-card:hover{transform:translateY(-2px);border-color:rgba(37,99,235,.35);box-shadow:0 16px 36px rgba(15,23,42,.08);}
.journal-urgent-top{display:flex;justify-content:space-between;align-items:center;gap:8px;}
.journal-urgent-top span{font-size:.68rem;font-weight:950;text-transform:uppercase;color:#2563eb;background:#dbeafe;border-radius:999px;padding:4px 7px;}
.journal-urgent-top em{font-style:normal;font-size:.68rem;color:#64748b;font-weight:800;white-space:nowrap;}
.journal-urgent-card strong{color:#0f172a;font-size:.92rem;line-height:1.25;}
.journal-urgent-card small{color:#334155;font-weight:800;line-height:1.25;}
.journal-urgent-card b{font-size:1.12rem;color:#dc2626;text-align:center;margin-top:2px;}
.btn.tiny{min-height:30px;padding:6px 10px;font-size:.76rem;border-radius:10px;}
.journal-main-grid{display:grid;grid-template-columns:minmax(350px,1fr) minmax(560px,1.55fr) minmax(270px,.72fr);gap:16px;align-items:start;}
.journal-lines-card,.journal-detail-card,.journal-day-panel{padding:18px;border-radius:22px;}
.journal-category-lines{display:grid;gap:10px;}
.journal-category-row{width:100%;display:grid;grid-template-columns:54px minmax(0,1fr) auto 26px;align-items:center;gap:13px;text-align:left;border:1px solid rgba(148,163,184,.24);background:#fff;border-radius:18px;padding:13px 13px;cursor:pointer;transition:.18s ease;color:#0f172a;}
.journal-category-row:hover{border-color:rgba(37,99,235,.28);transform:translateY(-1px);box-shadow:0 14px 30px rgba(15,23,42,.06);}
.journal-category-row.is-active{border-color:var(--cat,#2563eb);box-shadow:0 16px 38px rgba(37,99,235,.13);background:linear-gradient(135deg,#fff,#eff6ff);}
.journal-category-icon{width:48px;height:48px;border-radius:16px;display:grid;place-items:center;background:color-mix(in srgb,var(--cat,#2563eb) 14%,white);color:var(--cat,#2563eb);font-size:1.25rem;}
.journal-category-row strong{display:block;font-size:.98rem;color:#0f172a;}
.journal-category-row small{display:block;margin-top:3px;color:#64748b;font-size:.82rem;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.journal-category-row em{font-style:normal;color:#475569;font-size:.82rem;white-space:nowrap;}
.journal-category-row em b{color:#2563eb}.journal-category-row em b.danger,.danger{color:#dc2626!important}.journal-category-row em b.warning,.warning{color:#d97706!important}
.journal-category-row i{font-style:normal;font-size:1.45rem;color:#64748b;text-align:right;}
.journal-tip{margin-top:8px;border:1px dashed rgba(148,163,184,.35);border-radius:14px;padding:11px 12px;color:#64748b;background:#f8fafc;font-size:.84rem;}
.journal-detail-actions{display:flex;gap:8px;align-items:center;}
.journal-table-wrap{overflow:auto;border:1px solid rgba(148,163,184,.24);border-radius:18px;}
.journal-detail-table{width:100%;border-collapse:collapse;min-width:760px;background:#fff;}
.journal-detail-table th{font-size:.72rem;color:#64748b;text-align:left;text-transform:uppercase;letter-spacing:.04em;background:#f8fafc;padding:10px;border-bottom:1px solid rgba(148,163,184,.22);}
.journal-detail-table td{padding:11px 10px;border-bottom:1px solid rgba(148,163,184,.18);vertical-align:middle;color:#334155;font-size:.86rem;}
.journal-detail-table tr:last-child td{border-bottom:0;}
.journal-detail-row{cursor:pointer;transition:.15s ease;}
.journal-detail-row:hover{background:#f8fafc;}
.journal-detail-row.is-selected{background:#eff6ff;}
.journal-detail-table td strong{display:block;color:#0f172a;font-size:.88rem;line-height:1.2;}
.journal-detail-table td small{display:block;color:#64748b;margin-top:3px;line-height:1.2;}
.journal-status{display:inline-flex;align-items:center;justify-content:center;white-space:nowrap;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:900;background:#dbeafe;color:#1d4ed8;}
.journal-status.danger{background:#fee2e2;color:#991b1b!important}.journal-status.warning{background:#fef3c7;color:#92400e}.journal-status.muted{background:#f1f5f9;color:#475569}.journal-status.normal{background:#dbeafe;color:#1d4ed8}.journal-status.success{background:#dcfce7;color:#166534}
.journal-priority{display:inline-flex;align-items:center;gap:6px;font-weight:850;color:#334155;white-space:nowrap;}
.journal-priority i{width:8px;height:8px;border-radius:50%;background:#2563eb;display:inline-block;}.journal-priority.danger i{background:#dc2626}.journal-priority.warning i{background:#d97706}.journal-priority.success i{background:#16a34a}.journal-priority.normal i{background:#2563eb}
.journal-detail-foot{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-top:12px;color:#64748b;font-size:.85rem;}
.journal-detail-foot a{font-weight:900;color:#2563eb;text-decoration:none;}
.journal-day-list{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.journal-day-list li{display:grid;grid-template-columns:30px minmax(0,1fr) auto;gap:8px;align-items:center;padding:10px;border-radius:14px;border:1px solid rgba(148,163,184,.18);background:#fff;cursor:pointer;}
.journal-day-list li:hover{background:#f8fafc;}
.journal-day-list span{width:26px;height:26px;border-radius:50%;background:#f1f5f9;display:grid;place-items:center;font-weight:900;color:#475569;}
.journal-day-list strong{font-size:.82rem;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.journal-day-list em{display:block;grid-column:2;color:#64748b;font-size:.72rem;font-style:normal;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.journal-day-list b{grid-row:1 / span 2;grid-column:3;color:#dc2626;font-size:.78rem;white-space:nowrap;}
.journal-console-sep{height:1px;background:rgba(148,163,184,.24);margin:15px 0;}
.journal-selection{display:grid;gap:8px;}
.journal-selection>strong{color:#0f172a;line-height:1.25;}
.journal-selection>span{color:#64748b;font-size:.82rem;}
.journal-selection textarea{width:100%;border:1px solid rgba(148,163,184,.35);border-radius:14px;padding:10px;resize:vertical;font:inherit;min-height:72px;}
.journal-action-stack{display:grid;grid-template-columns:1fr;gap:8px;}
.journal-mini-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;}
.journal-quickbar{margin-top:16px;border-radius:22px;padding:14px;display:grid;grid-template-columns:minmax(180px,1fr) repeat(5,auto);align-items:center;gap:10px;}
.journal-quickbar strong{display:block;color:#0f172a}.journal-quickbar span{display:block;color:#64748b;font-size:.82rem;margin-top:2px}.btn.purple{background:#7c3aed;color:white;border-color:#7c3aed}.btn.warning{background:#f97316;color:white;border-color:#f97316}.btn.success{background:#16a34a;color:white;border-color:#16a34a}.badge.red{background:#fee2e2;color:#991b1b;}
@media(max-width:1250px){.journal-kpi-grid{grid-template-columns:repeat(3,minmax(0,1fr));}.journal-urgent-strip{grid-template-columns:repeat(2,minmax(0,1fr));}.journal-main-grid{grid-template-columns:1fr;}.journal-day-panel{position:static}.journal-quickbar{grid-template-columns:1fr 1fr;}.journal-quickbar>div{grid-column:1/-1;}}
@media(max-width:760px){.journal-workstation-head{flex-direction:column}.journal-kpi-grid{grid-template-columns:1fr}.journal-urgent-strip{grid-template-columns:1fr}.journal-category-row{grid-template-columns:44px minmax(0,1fr) 22px}.journal-category-row em{grid-column:2 / 4;white-space:normal}.journal-quickbar{grid-template-columns:1fr}.journal-detail-card{padding:12px}.journal-lines-card{padding:12px}.journal-day-panel{padding:12px}}

/* AZALYS V5.4.1 — Densité poste journalisé : police et espacements réduits */
.journal-workstation-view{font-size:13px;}
.journal-workstation-head{margin-bottom:14px;}
.journal-workstation-head h1{font-size:clamp(1.35rem,2.05vw,1.85rem);letter-spacing:-.035em;}
.journal-workstation-head p{font-size:.9rem;}
.journal-kpi-grid{gap:10px;margin-bottom:14px;}
.journal-kpi{gap:10px;padding:11px 12px;border-radius:15px;}
.journal-kpi>span{width:36px;height:36px;border-radius:13px;font-size:1.05rem;}
.journal-kpi small,.journal-kpi em{font-size:.68rem;}
.journal-kpi strong{font-size:1.22rem;margin:2px 0 2px;}
.journal-imperative{padding:14px;margin-bottom:14px;border-radius:18px;}
.journal-card-head{margin-bottom:10px;}
.journal-card-head h3{font-size:.98rem;}
.journal-card-head p{font-size:.82rem;}
.journal-urgent-strip{gap:9px;}
.journal-urgent-card{padding:11px;min-height:132px;border-radius:15px;gap:6px;}
.journal-urgent-top span,.journal-urgent-top em{font-size:.6rem;}
.journal-urgent-card strong{font-size:.8rem;}
.journal-urgent-card small{font-size:.72rem;}
.journal-urgent-card b{font-size:.94rem;}
.journal-main-grid{grid-template-columns:minmax(330px,.9fr) minmax(560px,1.45fr) minmax(250px,.65fr);gap:13px;}
.journal-lines-card,.journal-detail-card,.journal-day-panel{padding:14px;border-radius:18px;}
.journal-category-lines{gap:8px;}
.journal-category-row{grid-template-columns:44px minmax(0,1fr) auto 22px;gap:10px;padding:10px 11px;border-radius:15px;}
.journal-category-icon{width:40px;height:40px;border-radius:13px;font-size:1.05rem;}
.journal-category-row strong{font-size:.86rem;}
.journal-category-row small{font-size:.73rem;margin-top:2px;}
.journal-category-row em{font-size:.72rem;}
.journal-category-row i{font-size:1.15rem;}
.journal-tip{font-size:.74rem;padding:9px 10px;border-radius:12px;}
.journal-detail-table{min-width:700px;}
.journal-detail-table th{font-size:.62rem;padding:8px;}
.journal-detail-table td{font-size:.76rem;padding:9px 8px;}
.journal-detail-table td strong{font-size:.78rem;}
.journal-detail-table td small{font-size:.68rem;margin-top:2px;}
.journal-status{font-size:.64rem;padding:5px 7px;}
.journal-priority{font-size:.72rem;gap:5px;}
.journal-detail-foot{font-size:.74rem;margin-top:10px;}
.journal-day-list{gap:7px;}
.journal-day-list li{grid-template-columns:26px minmax(0,1fr) auto;padding:8px;border-radius:12px;}
.journal-day-list span{width:23px;height:23px;font-size:.72rem;}
.journal-day-list strong{font-size:.72rem;}
.journal-day-list em{font-size:.64rem;}
.journal-day-list b{font-size:.68rem;}
.journal-selection>strong{font-size:.86rem;}
.journal-selection>span{font-size:.72rem;}
.journal-selection textarea{min-height:58px;font-size:.78rem;border-radius:12px;padding:8px;}
.journal-mini-actions{gap:7px;margin-top:10px;}
.journal-action-stack{gap:7px;}
.journal-quickbar{margin-top:13px;border-radius:18px;padding:11px;gap:8px;}
.journal-quickbar strong{font-size:.9rem;}
.journal-quickbar span{font-size:.72rem;}
.journal-workstation-view .btn{min-height:34px;padding:8px 11px;font-size:.78rem;border-radius:11px;}
.journal-workstation-view .btn.tiny{min-height:27px;padding:5px 8px;font-size:.68rem;border-radius:9px;}
@media(max-width:1250px){.journal-main-grid{grid-template-columns:1fr;}}

/* AZALYS V5.4.2 — Poste journalisé avec grande fenêtre de traitement */
.journal-main-grid{grid-template-columns:minmax(360px,.85fr) minmax(420px,1.05fr) minmax(260px,.62fr);}
.journal-focus-preview{min-height:100%;display:grid;grid-template-columns:58px 1fr;gap:14px;align-items:start;border:1px solid color-mix(in srgb,var(--cat,#2563eb) 28%,#e2e8f0);border-radius:18px;background:linear-gradient(135deg,#fff,color-mix(in srgb,var(--cat,#2563eb) 7%,white));padding:16px;}
.journal-focus-icon{width:50px;height:50px;border-radius:17px;display:grid;place-items:center;background:color-mix(in srgb,var(--cat,#2563eb) 14%,white);color:var(--cat,#2563eb);font-size:1.35rem;}
.journal-focus-preview h3{margin:0 0 4px;color:#0f172a;font-size:1rem;}
.journal-focus-preview p{margin:0 0 10px;color:#64748b;font-size:.8rem;}
.journal-focus-metrics{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:10px;}
.journal-focus-metrics span{border:1px solid rgba(148,163,184,.25);background:rgba(255,255,255,.75);border-radius:999px;padding:5px 8px;font-size:.72rem;color:#475569;font-weight:800;}
.journal-focus-metrics b{color:var(--cat,#2563eb);}
.journal-focus-preview ul{margin:0 0 12px;padding:0;list-style:none;display:grid;gap:7px;}
.journal-focus-preview li{border-bottom:1px solid rgba(148,163,184,.18);padding-bottom:7px;}
.journal-focus-preview li strong{display:block;color:#0f172a;font-size:.78rem;}
.journal-focus-preview li span{display:block;color:#64748b;font-size:.68rem;margin-top:2px;}
.workbox-task-modal.hidden{display:none;}
.workbox-task-modal{position:fixed;inset:0;z-index:1200;display:grid;place-items:center;padding:24px;}
.workbox-task-backdrop{position:absolute;inset:0;background:rgba(15,23,42,.52);backdrop-filter:blur(8px);}
.workbox-task-dialog{position:relative;width:min(1360px,96vw);max-height:min(860px,92vh);overflow:hidden;border-radius:26px;background:#fff;box-shadow:0 34px 90px rgba(15,23,42,.34);border:1px solid rgba(255,255,255,.55);display:flex;flex-direction:column;}
.workbox-modal-open{overflow:hidden;}
.workbox-modal-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;padding:20px 22px;border-bottom:1px solid rgba(148,163,184,.22);background:linear-gradient(135deg,color-mix(in srgb,var(--cat,#2563eb) 10%,white),#fff);}
.workbox-modal-head span{display:inline-flex;align-items:center;gap:7px;color:var(--cat,#2563eb);font-weight:950;font-size:.78rem;text-transform:uppercase;letter-spacing:.04em;}
.workbox-modal-head h2{margin:4px 0;color:#0f172a;font-size:1.45rem;letter-spacing:-.035em;}
.workbox-modal-head p{margin:0;color:#64748b;font-size:.86rem;}
.workbox-modal-grid{display:grid;grid-template-columns:minmax(620px,1.25fr) minmax(360px,.75fr);gap:0;min-height:0;}
.workbox-modal-list{padding:16px 18px 18px;min-width:0;overflow:auto;max-height:calc(92vh - 110px);border-right:1px solid rgba(148,163,184,.2);}
.workbox-modal-detail{padding:18px;overflow:auto;max-height:calc(92vh - 110px);background:#f8fafc;}
.workbox-modal-toolbar{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;}
.workbox-modal-toolbar strong{color:#0f172a;font-size:.9rem;}
.workbox-modal-toolbar .btn{min-height:30px;padding:6px 9px;font-size:.72rem;}
.workbox-selected-card{display:grid;gap:13px;}
.workbox-selected-top{display:flex;justify-content:space-between;align-items:center;gap:10px;}
.workbox-selected-top>span{font-size:.7rem;color:#2563eb;background:#dbeafe;border-radius:999px;padding:5px 8px;font-weight:950;}
.workbox-selected-card h3{margin:0;color:#0f172a;font-size:1.12rem;line-height:1.2;}
.workbox-selected-card p{margin:0;color:#475569;font-size:.84rem;line-height:1.45;}
.workbox-selected-card dl{display:grid;grid-template-columns:1fr 1fr;gap:9px;margin:0;}
.workbox-selected-card dl div{border:1px solid rgba(148,163,184,.24);border-radius:14px;padding:10px;background:white;}
.workbox-selected-card dt{font-size:.66rem;text-transform:uppercase;color:#64748b;font-weight:900;letter-spacing:.04em;}
.workbox-selected-card dd{margin:4px 0 0;color:#0f172a;font-weight:850;font-size:.78rem;}
.workbox-next{border:1px solid rgba(37,99,235,.18);border-radius:16px;background:#eff6ff;padding:12px;}
.workbox-next strong{display:block;color:#1d4ed8;margin-bottom:6px;}
.workbox-next ol{margin:0;padding-left:18px;color:#334155;font-size:.78rem;line-height:1.6;}
.workbox-selected-card textarea{width:100%;min-height:92px;border:1px solid rgba(148,163,184,.34);border-radius:14px;padding:11px;font:inherit;font-size:.82rem;resize:vertical;background:#fff;}
.modal-actions{grid-template-columns:1fr 1fr;}
@media(max-width:1100px){.workbox-modal-grid{grid-template-columns:1fr}.workbox-modal-list{border-right:0;border-bottom:1px solid rgba(148,163,184,.2);max-height:46vh}.workbox-modal-detail{max-height:38vh}.modal-actions{grid-template-columns:1fr}.workbox-task-modal{padding:12px}.workbox-task-dialog{border-radius:20px}}
@media(max-width:760px){.journal-main-grid{grid-template-columns:1fr}.workbox-modal-head{padding:16px}.workbox-modal-head h2{font-size:1.2rem}.workbox-selected-card dl{grid-template-columns:1fr}.workbox-modal-list{padding:12px}.workbox-modal-detail{padding:12px}}


/* V5.6 — poste concentré + supervision admin simple */
.workbox-focus-card{padding:0;overflow:hidden;border:1px solid rgba(37,99,235,.18);box-shadow:0 18px 45px rgba(15,23,42,.08);}
.workbox-focus-wrap{display:grid;grid-template-columns:160px minmax(0,1fr) 220px;gap:18px;align-items:center;padding:20px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,250,252,.98));border-left:6px solid var(--cat,#2563eb);}
.workbox-focus-badge{display:grid;place-items:center;text-align:center;border-radius:22px;background:color-mix(in srgb,var(--cat,#2563eb) 10%,white);padding:18px 12px;min-height:120px;}
.workbox-focus-badge span{font-size:2rem;line-height:1;}
.workbox-focus-badge small{margin-top:8px;font-weight:900;text-transform:uppercase;letter-spacing:.04em;color:#475569;font-size:.72rem;}
.workbox-focus-main h2{margin:8px 0 8px;color:#0f172a;font-size:1.25rem;line-height:1.18;}
.workbox-focus-main p{margin:0;color:#475569;line-height:1.45;max-width:850px;}
.workbox-focus-main ol{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0 0;padding:0;list-style:none;}
.workbox-focus-main ol li{border:1px solid rgba(148,163,184,.25);background:#fff;border-radius:999px;padding:7px 10px;font-size:.82rem;color:#334155;font-weight:800;}
.workbox-focus-meta{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.workbox-focus-meta>span:not(.journal-priority){border-radius:999px;background:#f8fafc;border:1px solid rgba(148,163,184,.25);padding:5px 9px;font-size:.78rem;font-weight:900;color:#475569;}
.workbox-focus-actions{display:grid;gap:10px;}
.workbox-focus-actions .btn{width:100%;justify-content:center;}
.workbox-focus-empty{display:flex;gap:16px;align-items:center;padding:22px;}
.workbox-focus-empty>span{font-size:2rem;}.workbox-focus-empty strong{display:block;color:#0f172a}.workbox-focus-empty small{display:block;color:#64748b;margin-top:4px;}
.focus-quickbar{opacity:.92;}
.supervision-view{display:none;}.supervision-view.active{display:block;}
.supervision-head{display:flex;justify-content:space-between;gap:18px;align-items:flex-start;margin-bottom:18px;padding:20px;}
.supervision-head h1{margin:4px 0 6px;font-size:1.4rem;color:#0f172a;}
.supervision-grid{display:grid;grid-template-columns:2fr 1fr;gap:16px;align-items:start;}
.supervision-panel{padding:18px;}.supervision-panel.wide{grid-column:span 1;}
.supervision-cards{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;}
.supervision-card{display:grid;grid-template-columns:44px minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid rgba(148,163,184,.22);border-left:4px solid var(--cat,#2563eb);border-radius:16px;padding:11px;background:#fff;}
.supervision-card>span{width:38px;height:38px;border-radius:14px;display:grid;place-items:center;background:color-mix(in srgb,var(--cat,#2563eb) 10%,white);}
.supervision-card strong{display:block;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}.supervision-card em{display:block;color:#64748b;font-style:normal;font-size:.82rem;margin-top:2px;}
.supervision-lanes,.supervision-owners{list-style:none;margin:0;padding:0;display:grid;gap:8px;}
.supervision-lanes li,.supervision-owners li{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(148,163,184,.22);border-radius:14px;padding:10px;background:#f8fafc;}
.supervision-lanes li span{font-size:1.1rem}.supervision-lanes li strong,.supervision-owners li strong{color:#0f172a}.supervision-lanes li b,.supervision-owners li span{color:#2563eb;font-weight:900;}
@media(max-width:1100px){.workbox-focus-wrap{grid-template-columns:1fr}.workbox-focus-badge{min-height:auto}.supervision-grid{grid-template-columns:1fr}.supervision-cards{grid-template-columns:1fr}}

/* V5.7 — Timeline et génération mensuelle, sans surcharger le collaborateur */
.supervision-actions{display:flex;gap:.65rem;align-items:center;flex-wrap:wrap}
.workbox-timeline{margin:1rem 0;padding:.85rem;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:rgba(248,250,252,.82)}
.workbox-timeline strong{display:block;margin-bottom:.45rem;font-size:.86rem;color:#0f172a}
.workbox-timeline ol{list-style:none;margin:0;padding:0;display:grid;gap:.5rem}
.workbox-timeline li{display:grid;gap:.12rem;padding-left:.85rem;border-left:3px solid rgba(37,99,235,.25)}
.workbox-timeline li span{font-weight:800;font-size:.84rem;color:#0f172a}
.workbox-timeline li small{font-size:.76rem;color:#64748b}
.workbox-timeline li em{font-style:normal;font-size:.78rem;color:#475569}

/* V10.2 — Accueil ultra simple : IA automatique + décisions Valider/Rejeter */
.simple-workstation-view {
  max-width: 1180px;
  margin: 0 auto;
  padding-bottom: 24px;
}
.simple-workstation-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 14px;
  padding: 8px 0 10px;
}
.simple-workstation-head h1 {
  margin: 2px 0 6px;
  font-size: clamp(24px, 3.2vw, 34px);
  letter-spacing: -0.035em;
}
.simple-workstation-actions { display:flex; gap:10px; align-items:center; }
.simple-kpi-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 10px;
  margin: 4px 0 10px;
}
.simple-kpi-card {
  border: 1px solid rgba(148, 163, 184, .24);
  background: rgba(255,255,255,.92);
  border-radius: 14px;
  padding: 12px 14px;
  min-height: 86px;
  display:flex;
  align-items:center;
  gap: 12px;
  box-shadow: 0 8px 18px rgba(15,23,42,.04);
}
.simple-kpi-card > span {
  width: 36px;
  height: 36px;
  border-radius: 12px;
  display:grid;
  place-items:center;
  background: #eef4ff;
  font-size: 17px;
  flex: 0 0 auto;
}
.simple-kpi-card small {
  display:block;
  color:#475569;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.05em;
  font-size:10px;
}
.simple-kpi-card strong {
  display:block;
  color:#0f172a;
  font-size:22px;
  line-height:1;
  margin:3px 0;
}
.simple-kpi-card em {
  display:block;
  color:#64748b;
  font-size:12px;
  font-style:normal;
}
.simple-process-card {
  margin-bottom: 10px;
  padding: 12px 14px;
}
.simple-process-wrap {
  display:grid;
  grid-template-columns:auto minmax(0, 1fr);
  gap: 12px;
  align-items:center;
}
.simple-process-icon {
  width: 42px;
  height: 42px;
  border-radius: 14px;
  display:grid;
  place-items:center;
  background: linear-gradient(135deg, #dbeafe, #f5f3ff);
  font-size: 20px;
}
.simple-process-body { min-width: 0; }
.simple-process-title-row { display:flex; align-items:center; justify-content:space-between; gap:12px; margin-bottom:4px; }
.simple-process-wrap h2 { margin:0; font-size:18px; }
.simple-process-wrap p { margin:0; color:#475569; font-size:13px; }
.simple-process-flow { display:flex; flex-wrap:wrap; gap:6px; align-items:center; margin-top:8px; color:#334155; font-weight:800; }
.simple-process-flow span { border:1px solid rgba(148,163,184,.28); background:#fff; border-radius:999px; padding:5px 9px; font-size:12px; }
.simple-process-flow i { color:#94a3b8; font-style:normal; font-size:12px; }
.simple-process-flow b { display:inline-flex; border-radius:999px; padding:5px 9px; background:#fee2e2; color:#991b1b; font-size:12px; }
.simple-process-flow b.ok { background:#dcfce7; color:#166534; }
.simple-process-status { display:flex; align-items:baseline; gap:4px; white-space:nowrap; }
.simple-process-status strong { display:block; font-size:22px; line-height:1; color:#0f172a; }
.simple-process-status small { display:block; color:#64748b; }
.simple-validation-card { padding: 0; overflow:hidden; }
.simple-validation-head {
  display:flex;
  justify-content:space-between;
  align-items:center;
  gap:12px;
  padding:14px 16px;
  border-bottom:1px solid rgba(148,163,184,.18);
  background: rgba(248,250,252,.72);
}
.simple-validation-head h3 { margin:0 0 3px; font-size:18px; }
.simple-validation-head p { margin:0; font-size:13px; }
.simple-count-badge {
  min-width: 36px;
  height: 30px;
  border-radius: 999px;
  background: #eff6ff;
  color:#1d4ed8;
  display:grid;
  place-items:center;
  font-weight:900;
  border:1px solid #bfdbfe;
}
.simple-validation-list { display:flex; flex-direction:column; }
.simple-decision-row {
  display:grid;
  grid-template-columns: minmax(0, 1fr) auto;
  gap:12px;
  align-items:center;
  padding:12px 16px;
  border-bottom:1px solid rgba(148,163,184,.16);
  background:#fff;
}
.simple-decision-row:hover { background:#f8fbff; }
.simple-decision-row:last-child { border-bottom:none; }
.simple-decision-top { display:flex; flex-wrap:wrap; align-items:center; gap:6px; margin-bottom:6px; }
.simple-kind {
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:4px 8px;
  background:#eef2ff;
  color:#3730a3;
  font-size:11px;
  font-weight:900;
}
.simple-kind.client { background:#fff7ed; color:#9a3412; }
.simple-kind.doc { background:#ecfeff; color:#155e75; }
.simple-kind.entry { background:#f0fdf4; color:#166534; }
.simple-kind.workflow { background:#f5f3ff; color:#6d28d9; }
.simple-kind.ai { background:#eff6ff; color:#1d4ed8; }
.simple-decision-top small { color:#64748b; font-weight:700; }
.simple-decision-main h3 { margin:0 0 4px; font-size:16px; color:#0f172a; }
.simple-decision-main p { margin:0 0 8px; color:#475569; line-height:1.35; font-size:13px; }
.simple-decision-meta { display:flex; flex-wrap:wrap; gap:6px 10px; color:#64748b; font-size:12px; }
.simple-decision-meta b { color:#334155; }
.simple-decision-actions { display:flex; gap:8px; align-items:center; }
.simple-decision-actions .btn { min-width:96px; padding:10px 12px; }
.simple-empty { padding:28px 16px; text-align:center; color:#475569; }
.simple-empty span { font-size:28px; display:block; margin-bottom:6px; }
.simple-empty strong { display:block; color:#0f172a; font-size:18px; margin-bottom:4px; }
.simple-empty p { margin:0; }
.simple-list-limit { padding:12px 16px; color:#64748b; background:#f8fafc; font-weight:700; font-size:13px; }
@media (max-width: 900px) {
  .simple-workstation-head, .simple-process-wrap, .simple-decision-row { grid-template-columns:1fr; display:grid; }
  .simple-kpi-grid { grid-template-columns:1fr; }
  .simple-process-title-row { align-items:flex-start; flex-direction:column; }
  .simple-decision-actions { width:100%; }
  .simple-decision-actions .btn { flex:1; }
}


/* V10.5 — Accueil direct : suppression des cartes hautes et du bandeau process */
.simple-workstation-view[data-azalys-page="accueil-direct-validations-v10-5"] {
  max-width: 1180px;
  padding-top: 10px;
  padding-bottom: 20px;
}
.direct-validation-card {
  margin-top: 0;
}
.direct-validation-head {
  padding: 14px 16px !important;
}
.direct-validation-head .eyebrow {
  margin-bottom: 3px;
  font-size: 10px;
}
.direct-validation-head h3 {
  margin: 0 0 4px !important;
  font-size: 22px !important;
}
.direct-validation-head p {
  font-size: 13px !important;
}
.direct-validation-actions {
  display: flex;
  align-items: center;
  gap: 10px;
}
.compact-btn {
  min-height: 34px;
  padding: 8px 12px !important;
  font-size: 13px;
}
.simple-workstation-view[data-azalys-page="accueil-direct-validations-v10-5"] .simple-decision-row {
  padding: 12px 16px;
}
.simple-workstation-view[data-azalys-page="accueil-direct-validations-v10-5"] .simple-empty {
  padding: 28px 16px;
}
@media (max-width: 700px) {
  .direct-validation-head {
    align-items: flex-start;
    flex-direction: column;
  }
  .direct-validation-actions {
    width: 100%;
    justify-content: space-between;
  }
}


/* V10.6 — Accueil = inbox intelligente de validation */
.inbox-workstation-view {
  max-width: 1360px;
  margin: 0 auto;
  padding: 12px 18px 22px;
}
.inbox-shell {
  padding: 0;
  overflow: hidden;
  border-radius: 18px;
}
.inbox-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 16px;
  padding: 14px 16px 12px;
  border-bottom: 1px solid rgba(148, 163, 184, .18);
  background: rgba(248, 250, 252, .76);
}
.inbox-head h3 {
  margin: 0 0 4px;
  font-size: 24px;
  letter-spacing: -.03em;
}
.inbox-head p { margin: 0; font-size: 13px; }
.inbox-head-actions {
  display: flex;
  align-items: center;
  gap: 10px;
  flex: 0 0 auto;
}
.inbox-count-badge {
  min-width: 42px;
  height: 34px;
  display: grid;
  place-items: center;
  padding: 0 12px;
  border-radius: 999px;
  background: #eff6ff;
  color: #1d4ed8;
  border: 1px solid #bfdbfe;
  font-weight: 950;
}
.inbox-filters {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  padding: 10px 16px;
  border-bottom: 1px solid rgba(148, 163, 184, .16);
  background: #fff;
}
.inbox-filter {
  border: 1px solid rgba(148, 163, 184, .28);
  background: #fff;
  color: #334155;
  border-radius: 999px;
  padding: 7px 10px;
  font-weight: 850;
  display: inline-flex;
  align-items: center;
  gap: 7px;
  cursor: pointer;
}
.inbox-filter b {
  min-width: 22px;
  height: 22px;
  display: grid;
  place-items: center;
  padding: 0 6px;
  border-radius: 999px;
  background: #f1f5f9;
  color: #475569;
  font-size: 12px;
}
.inbox-filter.is-active {
  border-color: rgba(37, 99, 235, .42);
  background: #eff6ff;
  color: #1d4ed8;
}
.inbox-filter.is-active b { background: #dbeafe; color: #1d4ed8; }
.inbox-layout {
  display: grid;
  grid-template-columns: minmax(0, 1.15fr) minmax(360px, .85fr);
  min-height: 560px;
}
.inbox-list {
  min-width: 0;
  border-right: 1px solid rgba(148, 163, 184, .16);
  background: #fff;
}
.inbox-row {
  display: grid;
  grid-template-columns: minmax(230px, .95fr) minmax(260px, 1fr) auto;
  gap: 14px;
  align-items: center;
  padding: 13px 16px;
  border-bottom: 1px solid rgba(148, 163, 184, .14);
  cursor: pointer;
}
.inbox-row:hover { background: #f8fbff; }
.inbox-row.is-selected {
  background: #eff6ff;
  box-shadow: inset 4px 0 0 #2563eb;
}
.inbox-row-top {
  display: flex;
  align-items: center;
  gap: 7px;
  margin-bottom: 6px;
  flex-wrap: wrap;
}
.inbox-kind, .inbox-priority {
  display: inline-flex;
  align-items: center;
  border-radius: 999px;
  padding: 4px 8px;
  font-size: 11px;
  font-weight: 950;
  background: #eef2ff;
  color: #3730a3;
}
.inbox-kind.client { background:#fff7ed; color:#9a3412; }
.inbox-kind.bank { background:#ecfeff; color:#155e75; }
.inbox-kind.sales { background:#f0fdf4; color:#166534; }
.inbox-kind.buy { background:#f5f3ff; color:#6d28d9; }
.inbox-kind.stock { background:#fef9c3; color:#854d0e; }
.inbox-kind.immo { background:#eff6ff; color:#1d4ed8; }
.inbox-kind.alert { background:#fee2e2; color:#991b1b; }
.inbox-priority.haute, .inbox-priority.warning { background:#fff7ed; color:#c2410c; }
.inbox-priority.critique, .inbox-priority.danger { background:#fee2e2; color:#b91c1c; }
.inbox-row h4 {
  margin: 0 0 3px;
  font-size: 15px;
  color: #0f172a;
}
.inbox-row p {
  margin: 0;
  font-size: 13px;
  color: #334155;
  line-height: 1.34;
}
.inbox-row small {
  display: block;
  margin-top: 5px;
  color: #64748b;
  font-weight: 700;
}
.inbox-ai-result {
  min-width: 0;
  display: grid;
  gap: 4px;
  color: #475569;
  font-size: 13px;
  line-height: 1.35;
}
.inbox-ai-result b {
  color: #1d4ed8;
  font-size: 11px;
  text-transform: uppercase;
  letter-spacing: .08em;
}
.inbox-row-actions {
  display: flex;
  gap: 8px;
  align-items: center;
}
.inbox-row-actions .btn, .inbox-detail-actions .btn {
  min-width: 94px;
  padding: 10px 12px;
}
.inbox-detail {
  min-width: 0;
  background: #f8fafc;
  padding: 16px;
  overflow: auto;
  max-height: calc(100vh - 210px);
}
.inbox-detail-inner {
  display: grid;
  gap: 12px;
}
.inbox-detail-head {
  display: flex;
  gap: 8px;
  align-items: center;
  flex-wrap: wrap;
}
.inbox-detail h3 {
  margin: 0;
  font-size: 20px;
  color: #0f172a;
  line-height: 1.25;
}
.inbox-detail-meta {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 8px;
}
.inbox-detail-meta div, .inbox-analysis-box, .inbox-alert-box, .inbox-entry-lines {
  border: 1px solid rgba(148, 163, 184, .2);
  background: #fff;
  border-radius: 14px;
  padding: 10px;
}
.inbox-detail-meta small {
  display: block;
  color: #64748b;
  font-weight: 800;
  font-size: 10px;
  text-transform: uppercase;
  letter-spacing: .06em;
}
.inbox-detail-meta b { color: #0f172a; font-size: 13px; }
.inbox-analysis-box strong, .inbox-alert-box strong, .inbox-entry-lines strong {
  display: block;
  margin-bottom: 6px;
  color: #0f172a;
}
.inbox-analysis-box p, .inbox-alert-box p {
  margin: 0;
  color: #475569;
  line-height: 1.42;
  white-space: pre-wrap;
}
.inbox-alert-box { background: #fff7ed; border-color: #fed7aa; }
.inbox-entry-lines { display: grid; gap: 6px; }
.inbox-entry-lines div {
  display: grid;
  grid-template-columns: 70px minmax(0, 1fr) auto;
  gap: 8px;
  align-items: center;
  padding-top: 6px;
  border-top: 1px solid rgba(148,163,184,.16);
  font-size: 12px;
}
.inbox-entry-lines span { font-weight: 900; color: #334155; }
.inbox-entry-lines em { font-style: normal; color: #64748b; min-width: 0; }
.inbox-entry-lines b { color: #0f172a; }
.inbox-doc-preview {
  width: 100%;
  height: 280px;
  border: 1px solid rgba(148, 163, 184, .22);
  border-radius: 14px;
  background: #fff;
}
.inbox-detail-actions {
  display: flex;
  gap: 8px;
  padding-top: 4px;
}
.inbox-empty, .inbox-detail-empty {
  padding: 34px 16px;
  text-align: center;
  color: #64748b;
}
.inbox-empty span, .inbox-detail-empty span {
  display: block;
  font-size: 30px;
  margin-bottom: 8px;
}
.inbox-empty strong, .inbox-detail-empty strong {
  display: block;
  color: #0f172a;
  font-size: 18px;
  margin-bottom: 4px;
}
.inbox-list-limit {
  padding: 12px 16px;
  color: #64748b;
  background: #f8fafc;
  font-weight: 800;
  font-size: 13px;
}
@media (max-width: 1180px) {
  .inbox-layout { grid-template-columns: 1fr; }
  .inbox-list { border-right: 0; }
  .inbox-detail { max-height: none; border-top: 1px solid rgba(148,163,184,.16); }
}
@media (max-width: 780px) {
  .inbox-workstation-view { padding: 8px; }
  .inbox-head { align-items: flex-start; flex-direction: column; }
  .inbox-head-actions { width: 100%; justify-content: space-between; }
  .inbox-row { grid-template-columns: 1fr; gap: 8px; }
  .inbox-row-actions { width: 100%; }
  .inbox-row-actions .btn { flex: 1; }
  .inbox-detail-meta { grid-template-columns: 1fr; }
}


/* V10.7 — Fenêtre professionnelle pour motif / complément */
body.modal-open { overflow: hidden; }
.action-note-modal-card { max-width: 620px; border-radius: 24px; padding: 22px; }
.action-note-modal-head { align-items: flex-start; gap: 14px; margin-bottom: 18px; }
.action-note-modal-head .eyebrow { margin-bottom: 4px; }
.action-note-modal-head h3 { margin: 0 0 6px; font-size: 1.35rem; letter-spacing: -0.02em; }
.action-note-modal-body { display: grid; gap: 14px; }
.action-note-modal-body .field span { display:block; margin-bottom:8px; font-weight:800; color:#334155; }
.action-note-modal-body textarea { width:100%; min-height:132px; resize:vertical; border:1px solid #dbe3f0; border-radius:16px; padding:14px 16px; font:inherit; color:#0f172a; background:#fbfdff; box-shadow: inset 0 1px 2px rgba(15,23,42,.03); }
.action-note-modal-body textarea:focus { outline:none; border-color:#93c5fd; box-shadow:0 0 0 4px rgba(59,130,246,.12); background:#fff; }
.action-note-help { border:1px solid rgba(148,163,184,.22); background:#f8fafc; color:#475569; border-radius:14px; padding:10px 12px; font-size:.92rem; }
.action-note-modal-actions { margin-top: 18px; }
.action-note-modal-actions .btn { min-width: 150px; }
@media (max-width: 700px) {
  .action-note-modal-card { padding: 18px; border-radius: 20px; }
  .action-note-modal-actions { flex-direction: column-reverse; }
  .action-note-modal-actions .btn { width: 100%; }
}

.inbox-related-box { border:1px solid #dbeafe; background:#eff6ff; border-radius:16px; padding:12px; display:grid; gap:8px; }
.inbox-related-box strong { font-size:12px; text-transform:uppercase; letter-spacing:.04em; color:#1d4ed8; }
.inbox-related-box div { display:grid; grid-template-columns:110px 1fr auto; gap:8px; align-items:center; font-size:12px; padding:6px 0; border-top:1px solid rgba(29,78,216,.12); }
.inbox-related-box span { font-weight:900; color:#1e40af; }
.inbox-related-box em { font-style:normal; color:#475569; min-width:0; }
.inbox-related-box b { color:#0f172a; font-size:11px; }
.inbox-related-box p { margin:0; color:#475569; font-size:12px; }


/* V10.15 — Bouton reset environnement de test */
.btn.danger,
.btn.ghost.danger {
  border-color: rgba(220, 38, 38, .35);
  color: #b91c1c;
}
.btn.ghost.danger:hover {
  background: rgba(220, 38, 38, .08);
  border-color: rgba(220, 38, 38, .55);
}
.inbox-head-actions {
  gap: .5rem;
  flex-wrap: wrap;
}


/* V10.17 — Actions anomalie : éviter la fausse validation */
.inbox-row-actions .btn.ghost.danger,
.inbox-detail-actions .btn.ghost.danger {
  border-color: rgba(220, 38, 38, .35);
  color: #b91c1c;
}
.inbox-row-actions .btn.ghost.danger:hover,
.inbox-detail-actions .btn.ghost.danger:hover {
  background: rgba(220, 38, 38, .08);
}


/* V10.18 — Correction guidée facture achat */
.purchase-correction-card {
  width: min(980px, 96vw);
  max-height: 92vh;
  overflow: auto;
}
.purchase-correction-form {
  display: grid;
  gap: 1rem;
}
.correction-file-banner {
  display: flex;
  justify-content: space-between;
  gap: .75rem;
  align-items: center;
  padding: .85rem 1rem;
  border: 1px solid rgba(148,163,184,.28);
  background: rgba(241,245,249,.72);
  border-radius: 16px;
}
.purchase-correction-form .form-grid,
.tva-breakdown-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: .85rem;
}
.purchase-correction-form .wide {
  grid-column: 1 / -1;
}
.purchase-correction-form label {
  display: grid;
  gap: .35rem;
  font-weight: 700;
  color: #172554;
}
.correction-tva-details {
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 16px;
  padding: .9rem 1rem;
  background: rgba(255,255,255,.78);
}
.correction-tva-details summary {
  cursor: pointer;
  font-weight: 800;
  color: #172554;
  margin-bottom: .75rem;
}
.mini {
  font-size: .82rem;
}
@media (max-width: 760px) {
  .purchase-correction-form .form-grid,
  .tva-breakdown-grid {
    grid-template-columns: 1fr;
  }
  .correction-file-banner {
    align-items: flex-start;
    flex-direction: column;
  }
}


/* V10.21 — Modification écriture + aperçu facture */
.inbox-preview-wrap {
  margin: 1rem 0;
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 18px;
  overflow: hidden;
  background: #fff;
}
.inbox-preview-head {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: .5rem;
  padding: .65rem .8rem;
  background: rgba(241,245,249,.86);
  border-bottom: 1px solid rgba(148,163,184,.22);
}
.inbox-preview-head strong {
  color: #172554;
}
.inbox-doc-preview {
  width: 100%;
  min-height: 360px;
  border: 0;
  display: block;
  background: #f8fafc;
}
.entry-edit-card {
  width: min(980px, 96vw);
  max-height: 92vh;
  overflow: auto;
}
.entry-edit-form {
  display: grid;
  gap: 1rem;
}
.entry-edit-lines {
  display: grid;
  gap: .55rem;
}
.entry-edit-line {
  display: grid;
  grid-template-columns: 120px 1fr 130px 130px 42px;
  gap: .5rem;
  align-items: center;
}
.entry-edit-balance {
  display: flex;
  flex-wrap: wrap;
  gap: .75rem;
  padding: .75rem 1rem;
  border-radius: 14px;
  background: rgba(241,245,249,.72);
  border: 1px solid rgba(148,163,184,.25);
}
.entry-edit-balance span {
  font-weight: 700;
  color: #172554;
}
.entry-edit-balance .danger {
  color: #dc2626;
}
@media (max-width: 820px) {
  .entry-edit-line {
    grid-template-columns: 1fr;
    border: 1px solid rgba(148,163,184,.25);
    border-radius: 14px;
    padding: .65rem;
  }
}


/* V10.22 — Grande fenêtre de contrôle écriture + facture */
.entry-control-card {
  width: min(1380px, 98vw);
  max-height: 94vh;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.entry-control-head {
  flex: 0 0 auto;
}
.entry-control-grid {
  flex: 1 1 auto;
  min-height: 0;
  display: grid;
  grid-template-columns: minmax(420px, 1.05fr) minmax(520px, .95fr);
  gap: 1rem;
  padding-top: .5rem;
}
.entry-control-preview,
.entry-control-editor {
  min-height: 0;
  border: 1px solid rgba(148,163,184,.28);
  border-radius: 18px;
  background: #fff;
  overflow: hidden;
  display: flex;
  flex-direction: column;
}
.entry-control-section-head {
  flex: 0 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: .5rem;
  padding: .75rem .9rem;
  border-bottom: 1px solid rgba(148,163,184,.24);
  background: rgba(241,245,249,.82);
}
.entry-control-section-head strong {
  color: #172554;
}
.entry-edit-preview-frame {
  flex: 1 1 auto;
  min-height: 640px;
  width: 100%;
  border: 0;
  background: #f8fafc;
}
.entry-preview-empty {
  flex: 1 1 auto;
  display: grid;
  place-items: center;
  text-align: center;
  color: #64748b;
  padding: 2rem;
}
.entry-preview-empty span {
  font-size: 2rem;
}
.entry-control-editor .entry-edit-form {
  padding: .9rem;
  overflow: auto;
}
.entry-control-actions {
  position: sticky;
  bottom: 0;
  background: rgba(255,255,255,.94);
  border-top: 1px solid rgba(148,163,184,.2);
  padding-top: .75rem;
}
@media (max-width: 1050px) {
  .entry-control-card {
    overflow: auto;
  }
  .entry-control-grid {
    grid-template-columns: 1fr;
  }
  .entry-edit-preview-frame {
    min-height: 460px;
  }
}

/* V10.25 — Validation unique intelligente */
.global-validation-card{max-width:min(1240px,96vw);}
.global-validation-head{border-bottom:1px solid rgba(15,23,42,.08);}
.global-validation-body{padding:18px 22px;max-height:72vh;overflow:auto;}
.global-validation-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-bottom:14px;}
.global-validation-summary>div{background:#f8fafc;border:1px solid #e2e8f0;border-radius:16px;padding:12px;}
.global-validation-summary small{display:block;color:#64748b;font-weight:700;font-size:11px;text-transform:uppercase;letter-spacing:.04em;margin-bottom:4px;}
.global-validation-summary b{display:block;color:#0f172a;font-size:13px;line-height:1.3;}
.global-checks-grid{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:8px 0 16px;}
.global-check{border:1px solid #e2e8f0;border-radius:16px;padding:12px;background:#fff;box-shadow:0 8px 24px rgba(15,23,42,.04);}
.global-check span{display:block;font-size:12px;color:#475569;font-weight:800;margin-bottom:7px;}
.global-check b{display:inline-flex;border-radius:999px;padding:4px 9px;font-size:11px;margin-bottom:7px;}
.global-check small{display:block;color:#64748b;font-size:11px;line-height:1.35;}
.global-check.ok b{background:#dcfce7;color:#166534;}
.global-check.ready b{background:#dbeafe;color:#1d4ed8;}
.global-check.blocked{border-color:#fecaca;background:#fff7f7;}
.global-check.blocked b{background:#fee2e2;color:#b91c1c;}
.global-check.na b{background:#f1f5f9;color:#475569;}
.global-validation-blockers,.global-validation-warnings{border-radius:16px;padding:13px 14px;margin:12px 0;}
.global-validation-blockers{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239;}
.global-validation-warnings{background:#fffbeb;border:1px solid #fde68a;color:#92400e;}
.global-validation-blockers strong,.global-validation-warnings strong{display:block;margin-bottom:8px;}
.global-validation-blockers p,.global-validation-warnings p{margin:5px 0;font-size:13px;line-height:1.4;}
.global-validation-grid{display:grid;grid-template-columns:minmax(360px,1fr) minmax(360px,1fr);gap:16px;align-items:start;}
.global-validation-grid section{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:12px;min-height:280px;}
.global-section-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:10px;}
.global-section-head>div{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;}
.global-validation-preview{width:100%;height:480px;border:1px solid #e2e8f0;border-radius:14px;background:#f8fafc;}
.global-validation-preview.empty{display:flex;align-items:center;justify-content:center;flex-direction:column;color:#64748b;}
.global-entry-lines{border:1px solid #e2e8f0;border-radius:14px;overflow:hidden;background:#fff;}
.global-entry-lines>strong{display:block;padding:10px 12px;background:#f8fafc;border-bottom:1px solid #e2e8f0;}
.global-entry-lines>div{display:grid;grid-template-columns:90px 1fr 110px;gap:8px;padding:9px 12px;border-bottom:1px solid #f1f5f9;align-items:center;}
.global-entry-lines>div:last-child{border-bottom:0;}
.global-entry-lines span{font-weight:800;color:#0f172a;}
.global-entry-lines em{font-style:normal;color:#475569;}
.global-entry-lines b{text-align:right;color:#0f172a;}
.global-entry-lines.empty{padding:14px;}
.global-entry-lines.empty p{margin:8px 0 0;}
.global-validation-note{margin-top:12px;padding:12px;border-radius:14px;background:#f8fafc;border:1px solid #e2e8f0;}
.global-validation-note p{margin:6px 0 0;color:#475569;font-size:13px;line-height:1.45;}
.global-validation-actions{border-top:1px solid rgba(15,23,42,.08);padding:14px 22px 18px;}
@media (max-width: 980px){.global-validation-summary{grid-template-columns:1fr 1fr}.global-checks-grid{grid-template-columns:1fr 1fr}.global-validation-grid{grid-template-columns:1fr}.global-validation-preview{height:360px}}
@media (max-width: 620px){.global-validation-summary,.global-checks-grid{grid-template-columns:1fr}.global-validation-body{padding:14px}.global-validation-actions{padding:12px;display:grid;grid-template-columns:1fr}.global-validation-preview{height:300px}}


/* V10.25.2 — correction pièce dans le contexte de validation globale */
.purchase-correction-global-context {
  margin: 14px 0 18px;
  padding: 14px;
  border: 1px solid rgba(37, 99, 235, .18);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(248,250,252,.95), rgba(255,255,255,.98));
}
.purchase-correction-global-title {
  display: grid;
  gap: 4px;
  margin-bottom: 12px;
}
.purchase-correction-global-title span {
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: #2563eb;
}
.purchase-correction-global-title strong {
  font-size: 16px;
  color: #0f172a;
}
.purchase-correction-global-title em {
  font-style: normal;
  color: #64748b;
  font-size: 13px;
}
.purchase-correction-edit-title {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  align-items: flex-end;
  margin: 20px 0 12px;
  padding-top: 16px;
  border-top: 1px dashed rgba(15,23,42,.16);
}
.purchase-correction-edit-title strong {
  font-size: 15px;
  color: #0f172a;
}
.purchase-correction-edit-title span {
  color: #64748b;
  font-size: 13px;
}
.purchase-correction-card .global-validation-summary,
.purchase-correction-card .global-checks-grid,
.purchase-correction-card .global-validation-grid {
  margin-top: 10px;
}
.purchase-correction-card .global-validation-preview {
  min-height: 260px;
}
@media (max-width: 760px) {
  .purchase-correction-edit-title { align-items: flex-start; flex-direction: column; }
  .purchase-correction-global-context { padding: 10px; }
}

/* V10.25.4 — Validation unique globale + révision historisée */
.global-validation-state{
  border:1px solid rgba(37,99,235,.18);
  background:linear-gradient(135deg, rgba(37,99,235,.08), rgba(16,185,129,.08));
  border-radius:18px;
  padding:14px 16px;
  margin:12px 0 14px;
}
.global-validation-state.revision{
  border-color:rgba(245,158,11,.32);
  background:linear-gradient(135deg, rgba(245,158,11,.12), rgba(251,191,36,.08));
}
.global-validation-state strong{display:block;font-size:1rem;margin-bottom:4px;color:#0f172a;}
.global-validation-state p{margin:0 0 10px;color:#475569;}
.global-validation-state div{display:flex;gap:8px;flex-wrap:wrap;}
.global-validation-state span{display:flex;align-items:center;gap:6px;border:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.72);border-radius:999px;padding:6px 10px;font-size:.82rem;}
.global-validation-state span b{font-weight:700;color:#1e293b;}
.global-validation-state span em{font-style:normal;color:#64748b;text-transform:capitalize;}

/* V10.25.5 — Interface traitement simplifiée : détails internes repliés */
.global-validation-card{max-width:min(1080px,96vw);}
.global-validation-body{padding:16px 22px;}
.global-simple-layout{display:grid;grid-template-columns:minmax(420px,1.15fr) minmax(320px,.85fr);gap:16px;align-items:start;}
.global-simple-preview,.global-simple-panel{background:#fff;border:1px solid #e2e8f0;border-radius:18px;padding:12px;}
.global-simple-preview .global-validation-preview{height:560px;}
.global-simple-panel h4{margin:2px 0 12px;font-size:1.05rem;color:#0f172a;}
.global-simple-decision{border-radius:16px;padding:14px 15px;margin-bottom:10px;}
.global-simple-decision strong{display:block;margin-bottom:5px;font-size:.98rem;}
.global-simple-decision p{margin:0;color:inherit;line-height:1.45;font-size:.9rem;}
.global-simple-decision.ok{background:#ecfdf5;border:1px solid #bbf7d0;color:#166534;}
.global-simple-decision.blocked{background:#fff1f2;border:1px solid #fecdd3;color:#9f1239;}
.global-simple-issue{margin:8px 0 12px;padding:10px 12px;border-radius:12px;background:#f8fafc;border:1px solid #e2e8f0;color:#475569;font-size:.86rem;line-height:1.45;max-height:96px;overflow:auto;}
.global-simple-status{list-style:none;margin:0 0 12px;padding:0;display:grid;gap:8px;}
.global-simple-status li{display:flex;justify-content:space-between;align-items:center;gap:12px;border:1px solid #e2e8f0;border-radius:12px;padding:10px 12px;background:#f8fafc;}
.global-simple-status span{font-weight:800;color:#334155;}
.global-simple-status b{border-radius:999px;padding:4px 9px;font-size:.76rem;white-space:nowrap;}
.global-simple-status li.ok b{background:#dcfce7;color:#166534;}
.global-simple-status li.ready b{background:#dbeafe;color:#1d4ed8;}
.global-simple-status li.blocked b{background:#fee2e2;color:#b91c1c;}
.global-simple-status li.na b{background:#f1f5f9;color:#64748b;}
.global-simple-details{margin-top:12px;border:1px dashed #cbd5e1;border-radius:14px;padding:10px 12px;background:#fff;}
.global-simple-details summary{cursor:pointer;font-weight:800;color:#334155;}
.global-simple-details[open] summary{margin-bottom:10px;}
.global-validation-summary.compact{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:8px;}
.global-entry-lines.compact{margin-top:12px;}
.global-entry-lines.compact>div{grid-template-columns:80px 1fr 90px;font-size:.84rem;}
@media (max-width: 980px){.global-simple-layout{grid-template-columns:1fr}.global-simple-preview .global-validation-preview{height:420px}}
@media (max-width: 620px){.global-simple-preview .global-validation-preview{height:320px}.global-validation-body{padding:14px}.global-validation-summary.compact{grid-template-columns:1fr}}


/* V10.25.6 - interface simplifiee et agrandie */
.global-validation-card{max-width:min(1380px,98vw)!important;width:min(1380px,98vw);max-height:94vh;display:flex;flex-direction:column;}
.global-validation-head{padding:20px 24px 14px;}
.global-validation-head h3{font-size:1.9rem;line-height:1.1;}
.global-validation-body{flex:1;max-height:none;padding:20px 24px 18px;}
.global-validation-actions{padding:16px 24px 20px;display:flex;justify-content:flex-end;gap:12px;position:sticky;bottom:0;background:#fff;}
.global-simple-layout{grid-template-columns:minmax(720px,1.45fr) minmax(420px,.85fr);gap:18px;align-items:stretch;}
.global-simple-preview,.global-simple-panel{padding:16px;border-radius:20px;}
.global-simple-preview .global-validation-preview{height:700px;border-radius:16px;}
.global-simple-panel{display:flex;flex-direction:column;gap:12px;}
.global-simple-panel h4{font-size:1.12rem;margin:0;}
.global-simple-decision{margin-bottom:0;padding:16px 18px;}
.global-simple-decision strong{font-size:1.06rem;}
.global-simple-status{gap:10px;margin-bottom:0;}
.global-simple-status li{padding:12px 14px;}
.global-simple-details{margin-top:2px;}
.global-simple-details .global-validation-summary.compact{margin-top:10px;}
@media (max-width: 1180px){.global-simple-layout{grid-template-columns:1fr}.global-simple-preview .global-validation-preview{height:520px}}
@media (max-width: 760px){.global-validation-head{padding:16px 16px 12px}.global-validation-body{padding:14px 16px}.global-validation-actions{padding:12px 16px 16px;display:grid;grid-template-columns:1fr}.global-simple-preview .global-validation-preview{height:360px}}


/* V10.26.0 - Travaux à traiter organisés par onglets */
.inbox-head h3{font-size:1.55rem;}
.inbox-filters{display:flex;gap:10px;flex-wrap:wrap;padding:14px 18px;border-bottom:1px solid rgba(15,23,42,.08);background:#fff;}
.inbox-filter.workbox-main-tab{min-height:42px;padding:9px 13px;border-radius:999px;font-weight:900;}
.inbox-filter.workbox-main-tab span{white-space:nowrap;}
.inbox-filter.workbox-main-tab b{min-width:24px;height:24px;display:inline-flex;align-items:center;justify-content:center;border-radius:999px;background:#eef4ff;color:#2563eb;margin-left:6px;}
.inbox-filter.workbox-main-tab.is-active{background:#eff6ff;border-color:#93c5fd;color:#1d4ed8;box-shadow:0 8px 20px rgba(37,99,235,.10);}
.inbox-filter.workbox-main-tab.is-active b{background:#2563eb;color:#fff;}
.inbox-layout{min-height:620px;}
.inbox-row-top{display:flex;gap:8px;align-items:center;flex-wrap:wrap;}
.inbox-empty{min-height:320px;display:flex;align-items:center;justify-content:center;flex-direction:column;text-align:center;color:#64748b;gap:8px;}
.inbox-empty span{font-size:2rem;}
.inbox-empty strong{font-size:1.05rem;color:#0f172a;}
@media(max-width:760px){.inbox-filters{overflow-x:auto;flex-wrap:nowrap}.inbox-filter.workbox-main-tab span{white-space:nowrap}.inbox-layout{min-height:unset}}

/* V10.26.1 — ouverture inline des travaux */
.inbox-layout{grid-template-columns:1fr !important; min-height:auto;}
.inbox-list{border-right:0; background:transparent;}
.inbox-detail{display:none;}
.workbox-list{display:grid; gap:12px;}
.inbox-item-block{border:1px solid rgba(148,163,184,.16); border-radius:20px; background:#fff; overflow:hidden; box-shadow:0 10px 28px rgba(15,23,42,.05);}
.inbox-item-block.is-open{box-shadow:0 14px 34px rgba(37,99,235,.10); border-color:rgba(59,130,246,.24);}
.inbox-row{border-bottom:0;}
.inbox-item-block.is-open .inbox-row{border-bottom:1px solid rgba(148,163,184,.16);}
.inbox-inline-expand{padding:18px; background:linear-gradient(180deg,#fff,#f8fbff); display:grid; gap:16px;}
.inbox-inline-head{display:flex; align-items:flex-start; justify-content:space-between; gap:14px;}
.inbox-inline-head h3{margin:0 0 6px; font-size:26px; color:#0f172a; line-height:1.2;}
.inbox-inline-head p{margin:0; color:#475569; line-height:1.5; white-space:pre-wrap;}
.inbox-inline-head-actions{display:flex; gap:8px; flex-wrap:wrap;}
.inbox-inline-grid{display:grid; grid-template-columns:minmax(340px,.95fr) minmax(420px,1.05fr); gap:18px; align-items:start;}
.inbox-inline-left{display:grid; gap:12px;}
.inline-section{border:1px solid rgba(148,163,184,.18); border-radius:18px; background:#fff; overflow:hidden;}
.inline-section summary{list-style:none; display:flex; align-items:center; justify-content:space-between; gap:8px; padding:15px 16px; cursor:pointer; font-weight:900; color:#0f172a;}
.inline-section summary::-webkit-details-marker{display:none;}
.inline-section summary i{font-style:normal; color:#64748b; transition:transform .18s ease;}
.inline-section[open] summary i{transform:rotate(180deg);}
.inline-section-body{padding:0 16px 16px; color:#475569;}
.inline-section.ok summary{background:#f0fdf4; color:#166534;}
.inline-section.warning summary{background:#fff7ed; color:#b45309;}
.inline-section.neutral summary{background:#f8fafc; color:#0f172a;}
.inline-bullets{margin:0; padding-left:18px; display:grid; gap:8px;}
.inline-bullets li{line-height:1.45;}
.inline-entry-lines{display:grid; gap:8px;}
.inline-entry-lines div{display:grid; grid-template-columns:90px minmax(0,1fr) auto; gap:8px; align-items:center; padding:8px 0; border-top:1px solid rgba(148,163,184,.15); font-size:13px;}
.inline-entry-lines div:first-child{border-top:0; padding-top:0;}
.inline-entry-lines span{font-weight:900; color:#334155;}
.inline-entry-lines em{font-style:normal; color:#64748b;}
.inline-entry-lines b{color:#0f172a;}
.inbox-inline-preview{display:grid; gap:12px; border:1px solid rgba(148,163,184,.18); border-radius:20px; background:#fff; padding:16px;}
.inline-preview-head{display:flex; align-items:center; justify-content:space-between; gap:12px;}
.inline-preview-head strong{font-size:18px; color:#0f172a;}
.inline-preview-head > div{display:flex; gap:8px; flex-wrap:wrap;}
.inline-doc-preview{width:100%; height:min(72vh,860px); border:1px solid rgba(148,163,184,.20); border-radius:18px; background:#fff;}
.inline-doc-preview.empty{display:grid; place-items:center; color:#64748b; min-height:420px;}
.inline-doc-preview.empty span{font-size:34px; display:block; margin-bottom:8px;}
.inline-grow-btn{justify-self:start;}
.inbox-detail-empty.compact{padding:18px;}
@media(max-width:1200px){.inbox-inline-grid{grid-template-columns:1fr;}.inline-doc-preview{height:66vh;}}
@media(max-width:780px){.inbox-inline-head{flex-direction:column;}.inbox-inline-head-actions,.inbox-inline-head-actions .btn{width:100%;}.inline-preview-head{flex-direction:column; align-items:flex-start;}.inline-entry-lines div{grid-template-columns:1fr;}}

/* V10.26.2 — force ouverture sous la ligne, aucune colonne detail */
#workbox-detail{display:none!important;}
#workbox-list.inline-workbox-list{display:grid!important;gap:12px!important;width:100%!important;}
.inbox-layout{display:block!important;width:100%!important;}
.inbox-list{width:100%!important;border-right:0!important;}


/* V10.26.3 — correction aperçu pièce rattachée */
.inbox-inline-preview{position:relative;}
.inline-doc-preview{min-height:520px;}
.inline-doc-preview.empty small{display:block;margin-top:8px;color:#64748b;font-size:13px;}
.inline-grow-btn{margin-bottom:76px;}

/* V10.26.4 — aperçu plus compact + champs métier visibles */
.inbox-inline-grid{grid-template-columns:minmax(420px,1fr) minmax(360px,.82fr)!important;gap:16px!important;}
.inbox-inline-preview{align-self:start;position:sticky;top:12px;padding:12px!important;}
.inline-doc-preview{height:520px!important;min-height:360px!important;max-height:560px!important;}
.inline-grow-btn{margin-bottom:0!important;}
.inline-preview-head strong{font-size:16px!important;}
.inbox-inline-head h3{font-size:23px!important;}
.inbox-inline-head p{max-width:980px;font-size:13px;line-height:1.42;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.inline-fields-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:8px;}
.inline-field{border:1px solid rgba(148,163,184,.20);background:#fff;border-radius:14px;padding:10px 11px;min-width:0;}
.inline-field small{display:block;color:#64748b;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.055em;margin-bottom:4px;}
.inline-field strong{display:block;color:#0f172a;font-size:13px;line-height:1.25;word-break:break-word;}
.inline-field em{display:block;margin-top:5px;color:#64748b;font-size:11px;font-style:normal;line-height:1.25;}
.inline-field.is-empty{background:#fff7ed;border-color:#fed7aa;}
.inline-field.is-empty strong{color:#b45309;}
.inline-field.is-required small{color:#1d4ed8;}
.inline-module-status{display:inline-flex;align-items:center;gap:8px;border:1px solid rgba(148,163,184,.22);background:#f8fafc;border-radius:999px;padding:6px 10px;margin:0 0 10px;font-size:12px;}
.inline-module-status span{color:#64748b;font-weight:900;text-transform:uppercase;letter-spacing:.05em;font-size:10px;}
.inline-module-status b{color:#0f172a;text-transform:capitalize;}
.inline-entry-lines{margin-top:10px;border-top:1px solid rgba(148,163,184,.18);padding-top:8px;}
@media(max-width:1100px){.inbox-inline-grid{grid-template-columns:1fr!important}.inbox-inline-preview{position:static}.inline-doc-preview{height:440px!important}.inline-fields-grid{grid-template-columns:1fr}}

/* V20.1 — Accueil : champs métier éditables */
.inline-field.is-editable strong{display:none}
.inline-field-control{width:100%;min-height:34px;font-size:13px;border-radius:12px;border:1px solid rgba(148,163,184,.45);background:#fff;padding:8px 10px;color:#0f172a;box-shadow:inset 0 1px 0 rgba(15,23,42,.03)}
.inline-field-control:focus{outline:2px solid rgba(37,99,235,.18);border-color:rgba(37,99,235,.65)}
.inline-business-save{position:sticky;bottom:0;z-index:2;margin-top:12px;padding:12px;border:1px solid rgba(22,163,74,.22);border-radius:18px;background:linear-gradient(180deg,rgba(240,253,244,.98),rgba(255,255,255,.98));box-shadow:0 -8px 24px rgba(15,23,42,.06);display:flex;gap:10px;align-items:center;justify-content:space-between;flex-wrap:wrap}
.inline-business-save small{color:#475569;max-width:360px;line-height:1.35}
.inline-fields-grid .inline-field.is-editable{background:rgba(248,250,252,.85);border-style:solid}


/* V20.8 — Poste de travail en vraie barre compacte */
#workbox-list .inbox-row{min-height:52px!important;padding:9px 12px!important;display:grid!important;grid-template-columns:minmax(0,1fr) minmax(170px,auto) 44px!important;gap:12px!important;align-items:center!important;background:#fff!important;}
#workbox-list .inbox-row.is-selected{background:#eff6ff!important;box-shadow:inset 4px 0 0 #2563eb!important;}
#workbox-list .inbox-ai-result{display:none!important;}
#workbox-list .inbox-row-main{min-width:0!important;}
#workbox-list .inbox-row h4{font-size:13px!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
#workbox-list .inbox-row p{font-size:12px!important;margin:2px 0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
#workbox-list .inbox-row small{font-size:11px!important;margin:0!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
#workbox-list .inbox-row-summary{display:grid!important;gap:3px!important;justify-items:end!important;color:#475569!important;font-size:12px!important;min-width:0!important;}
#workbox-list .inbox-row-summary span{display:inline-flex!important;border-radius:999px!important;background:#f1f5f9!important;color:#334155!important;padding:3px 8px!important;font-weight:900!important;white-space:nowrap!important;}
#workbox-list .inbox-row-summary b{font-size:11px!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;max-width:160px!important;}
#workbox-list .inbox-row-actions{display:flex!important;justify-content:flex-end!important;align-items:center!important;}
#workbox-list .inbox-row-actions .btn:not(.inbox-row-toggle),
#workbox-list .inbox-inline-head,
#workbox-list .inline-preview-head a[href*="action=preview"],
#global-validation-body .global-section-head a[href*="action=preview"]{display:none!important;}
#workbox-list .inbox-row-toggle{width:36px!important;height:36px!important;border-radius:12px!important;border:1px solid rgba(148,163,184,.35)!important;background:#fff!important;color:#2563eb!important;display:grid!important;place-items:center!important;box-shadow:none!important;}
#workbox-list .inbox-row-toggle span{font-size:20px!important;line-height:1!important;transition:transform .18s ease!important;}
#workbox-list .inbox-item-block.is-open .inbox-row-toggle span{transform:rotate(180deg)!important;}
#workbox-list .inline-business-save small{display:none!important;}
@media(max-width:900px){#workbox-list .inbox-row{grid-template-columns:minmax(0,1fr) 44px!important;}#workbox-list .inbox-row-summary{display:none!important;}#workbox-list .inbox-row-actions{grid-column:2!important;grid-row:1!important;}}



/* V20.14 — lignes comptables modifiables dans le poste de traitement */
.inline-entry-editor{display:grid;gap:8px;margin-top:10px;border-top:1px solid rgba(148,163,184,.18);padding-top:10px;}
.inline-entry-editor-head{display:flex;align-items:center;justify-content:space-between;gap:10px;}
.inline-entry-editor-head strong{font-size:13px;color:#0f172a;}
.inline-entry-edit-head,.inline-entry-edit-line{display:grid;grid-template-columns:92px minmax(0,1fr) 110px 110px 34px;gap:8px;align-items:center;}
.inline-entry-edit-head{font-size:10px;text-transform:uppercase;letter-spacing:.055em;color:#64748b;font-weight:900;padding:0 2px;}
.inline-entry-edit-line{padding:6px 0;border-top:1px solid rgba(148,163,184,.12);}
.inline-entry-edit-line:first-child{border-top:0;}
.inline-entry-edit-line .control{min-height:34px;border-radius:10px;font-size:12px;padding:7px 9px;}
.inline-entry-edit-line .control[readonly],.entry-edit-line .control[readonly]{background:#f1f5f9!important;color:#334155!important;border-color:#cbd5e1!important;cursor:not-allowed;}
.inline-entry-locked{display:inline-flex;align-items:center;justify-content:center;min-width:34px;min-height:34px;color:#475569;font-size:14px;}
.inline-entry-edit-total{display:flex;flex-wrap:wrap;gap:8px;justify-content:flex-end;border-top:1px solid rgba(148,163,184,.16);padding-top:8px;font-size:12px;color:#334155;}
.inline-entry-edit-total span{background:#f8fafc;border:1px solid rgba(148,163,184,.18);border-radius:999px;padding:5px 8px;font-weight:800;}
.inline-entry-edit-total b{color:#0f172a;}
.inline-entry-edit-total b.danger{color:#dc2626;}
@media(max-width:900px){
  .inline-entry-edit-head{display:none;}
  .inline-entry-edit-line{grid-template-columns:1fr 1fr;border:1px solid rgba(148,163,184,.18);border-radius:14px;padding:8px;}
  .inline-entry-edit-line .inline-entry-libelle{grid-column:1/-1;}
}


/* V20.15 — Comptes comptables rattachés au plan comptable */
.inline-entry-compte-wrap{display:flex;flex-direction:column;gap:4px;min-width:0}
.inline-entry-account-status{font-size:10px;font-weight:800;color:#64748b;line-height:1.15;min-height:12px}
.inline-entry-account-status.danger{color:#dc2626}
.inline-entry-edit-line.is-account-invalid .inline-entry-compte{border-color:#f97316!important;background:#fff7ed!important}
.inline-entry-edit-line.is-account-valid .inline-entry-compte{border-color:#22c55e!important;background:#f0fdf4!important}
.inline-entry-editor-head small{font-size:11px;color:#64748b;font-weight:800;margin-left:auto;margin-right:8px}

/* V20.18 — écriture comptable toujours visible */
.compact-note{margin:0 0 10px;font-size:12px;font-weight:700;color:#64748b}
.inline-entry-editor{margin-top:8px}

/* V20.40 — Relais métier : détail/historique uniquement, sans formulaire pièce */
.relay-only-expand{background:linear-gradient(180deg,#f8fbff,#fff)!important;}
.relay-detail-card{border:1px solid rgba(148,163,184,.22);border-radius:20px;background:#fff;padding:18px;display:grid;gap:16px;box-shadow:0 10px 28px rgba(15,23,42,.05)}
.relay-detail-head span{display:inline-flex;align-items:center;border-radius:999px;background:#eff6ff;color:#1d4ed8;padding:5px 10px;font-size:11px;font-weight:900;text-transform:uppercase;letter-spacing:.05em;margin-bottom:8px}
.relay-detail-head h3{margin:0 0 8px;color:#0f172a;font-size:20px;line-height:1.25}
.relay-detail-head p{margin:0;color:#475569;white-space:pre-wrap;line-height:1.45}
.relay-detail-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.relay-detail-row{border:1px solid rgba(148,163,184,.20);border-radius:14px;background:#f8fafc;padding:10px;min-width:0}
.relay-detail-row span{display:block;color:#64748b;font-size:10px;font-weight:900;text-transform:uppercase;letter-spacing:.055em;margin-bottom:4px}
.relay-detail-row strong{display:block;color:#0f172a;font-size:13px;line-height:1.3;word-break:break-word}
.relay-history-block{border-top:1px solid rgba(148,163,184,.18);padding-top:14px;display:grid;gap:10px}
.relay-history-block>strong{color:#0f172a;font-size:15px}
.relay-history-list{margin:0;padding:0;list-style:none;display:grid;gap:8px}
.relay-history-list li{border-left:3px solid rgba(37,99,235,.35);padding:8px 10px;background:#f8fafc;border-radius:0 12px 12px 0}
.relay-history-list b{display:block;color:#0f172a;font-size:13px}
.relay-history-list small,.relay-history-list em{display:inline-block;margin-right:8px;color:#64748b;font-size:11px;font-style:normal}
.relay-history-list p{margin:4px 0 0;color:#475569;line-height:1.35;white-space:pre-wrap}
.relay-action-bar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;justify-content:flex-start;border-top:1px solid rgba(148,163,184,.18);padding-top:14px}
@media(max-width:900px){.relay-detail-grid{grid-template-columns:1fr}.relay-action-bar .btn{width:100%}}


.relay-auto-close-note{display:inline-flex;align-items:center;min-height:38px;padding:0 12px;border-radius:999px;background:#ecfdf5;color:#047857;font-size:12px;font-weight:800;border:1px solid rgba(16,185,129,.25)}

/* V5.30 — Allègement global des pages : barres compactes au lieu des grands blocs d'introduction */
.compact-page-bar{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0 0 14px;
  padding:12px 14px;
  border:1px solid rgba(148,163,184,.22);
  border-radius:18px;
  background:rgba(255,255,255,.92);
  box-shadow:0 10px 28px rgba(15,23,42,.045);
}
.compact-page-bar > div:first-child{
  min-width:0;
  display:flex;
  flex-direction:column;
  gap:2px;
}
.compact-page-bar strong{
  color:#0f172a;
  font-size:1rem;
  letter-spacing:-.015em;
}
.compact-page-bar span{
  color:#64748b;
  font-size:.86rem;
  line-height:1.35;
}
.compact-page-actions{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:10px;
  flex-wrap:wrap;
}
.compact-page-actions .btn{
  min-height:38px;
  border-radius:12px;
  padding:0 14px;
  font-weight:800;
}
.cabinet-inbox-v3 .cabinet-inbox-kpis,
.docs-inbox .docs-inbox-kpis,
.ai-monitor-shell .ai-monitor-kpis{
  margin-top:0!important;
}
@media (max-width:720px){
  .compact-page-bar{align-items:stretch;flex-direction:column;padding:12px;margin-bottom:12px}
  .compact-page-actions{justify-content:flex-start}
  .compact-page-actions .btn{flex:1;justify-content:center}
}


/* V5.30 — Messageries compactes : suppression des grands blocs d'en-tête inutiles */
.internal-premium-compact .internal-hero,
.cabinet-inbox-compact .compact-page-bar,
.cabinet-inbox-compact .cabinet-inbox-kpis,
.cabinet-inbox-compact .cabinet-inbox-kpis-compact {
  display: none !important;
}

.cabinet-inbox-compact {
  display: flex;
  flex-direction: column;
  min-height: 0;
}

.cabinet-inbox-compact .cabinet-inbox-workspace-v3 {
  margin-top: 0 !important;
}

.cabinet-conversation-list-head-compact {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
}

.cabinet-conversation-actions {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  gap: 8px;
  flex-wrap: wrap;
}

.client-mode-tabs-no-hero {
  margin-top: 0 !important;
}

@media (max-width: 720px) {
  .cabinet-conversation-actions {
    width: 100%;
    display: grid;
    grid-template-columns: 1fr 1fr;
  }
  .cabinet-conversation-actions .badge {
    grid-column: 1 / -1;
    justify-self: start;
  }
}


/* V5.31 — Messageries adaptées à la hauteur utile de la page */
.internal-premium-v168,
.cabinet-inbox-compact{
  min-height:calc(var(--az-screen-vh, 100vh) - 132px);
}

.internal-premium-v168 .internal-workspace{
  min-height:calc(var(--az-screen-vh, 100vh) - 160px);
}

.cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  display:grid;
  grid-template-columns:minmax(280px,320px) minmax(0,1fr) minmax(240px,280px);
  gap:16px;
  align-items:stretch;
  min-height:calc(var(--az-screen-vh, 100vh) - 160px);
}

.cabinet-conversation-list-panel,
.cabinet-thread-focus-panel,
.cabinet-inbox-side-v3,
.cabinet-side-card,
.cabinet-thread-focus-shell{
  min-height:0;
}

.cabinet-conversation-list-panel,
.cabinet-thread-focus-panel{
  height:100%;
  overflow:hidden;
}

.cabinet-conversation-list-panel{
  display:flex;
  flex-direction:column;
}

.cabinet-conversation-list{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
  padding-right:4px;
}

.cabinet-thread-focus-panel{
  display:flex;
  flex-direction:column;
  padding:0;
}

.cabinet-thread-focus-shell{
  display:flex;
  flex-direction:column;
  flex:1 1 auto;
  height:100%;
}

.cabinet-thread-focus-head,
.cabinet-thread-focus-compose{
  flex:0 0 auto;
}

.cabinet-thread-focus-body{
  flex:1 1 auto;
  min-height:0;
  overflow:auto;
}

.cabinet-inbox-side-v3{
  display:flex;
  flex-direction:column;
  gap:16px;
  height:100%;
}

.cabinet-side-card{
  display:flex;
  flex-direction:column;
}

.cabinet-side-card.soft{
  flex:1 1 auto;
}

@media (max-width: 1180px){
  .cabinet-inbox-compact .cabinet-inbox-workspace-v3{
    grid-template-columns:minmax(260px,300px) minmax(0,1fr);
  }
  .cabinet-inbox-side-v3{
    grid-column:1 / -1;
    height:auto;
  }
}

@media (max-width: 980px){
  .internal-premium-v168,
  .cabinet-inbox-compact{
    min-height:auto;
  }
  .cabinet-inbox-compact .cabinet-inbox-workspace-v3{
    grid-template-columns:1fr;
    min-height:auto;
  }
  .cabinet-conversation-list-panel,
  .cabinet-thread-focus-panel,
  .cabinet-inbox-side-v3{
    height:auto;
  }
  .cabinet-conversation-list{
    max-height:42vh;
  }
  .cabinet-thread-focus-body{
    min-height:320px;
    max-height:52vh;
  }
}


/* V5.39 — Fix position langue + messageries mieux alignées */
#view-cabinet-messages.view.active{
  display:flex!important;
  flex-direction:column;
  height:calc(100dvh - 78px);
  min-height:0;
  overflow:hidden;
}
#cabinet-messages-root{
  flex:1 1 auto;
  min-height:0;
  width:100%;
  display:flex;
  flex-direction:column;
}
.cabinet-inbox-compact{
  flex:1 1 auto;
  min-height:0;
  height:100%;
  overflow:hidden;
}
.cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  align-items:stretch;
}
.cabinet-thread-focus-head,
.cabinet-conversation-list-head-compact{
  align-items:flex-start;
}
.cabinet-thread-focus-compose-actions{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  flex-wrap:wrap;
}
@media (max-width:1000px){
  #view-cabinet-messages.view.active{
    height:auto;
    min-height:calc(100dvh - 120px);
    overflow:visible;
  }
  #cabinet-messages-root,
  .cabinet-inbox-compact{
    height:auto;
    overflow:visible;
  }
}
@media (max-width:720px){
  .cabinet-thread-focus-compose-actions{
    align-items:stretch;
  }
  .cabinet-thread-focus-compose-actions .btn{
    width:100%;
  }
}

/* V5.32 — Banque / Rapprochement automatique */
.bank-reco-layout{
  display:grid;
  grid-template-columns:minmax(0,1.2fr) minmax(280px,.8fr);
  gap:16px;
  align-items:stretch;
}
.bank-reco-state-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
}
.bank-reco-state-grid > div{
  padding:14px;
  border:1px solid rgba(148,163,184,.24);
  border-radius:16px;
  background:#fff;
  box-shadow:0 10px 24px rgba(15,23,42,.045);
}
.bank-reco-state-grid span{
  display:block;
  color:#64748b;
  font-size:12px;
  font-weight:700;
  text-transform:uppercase;
  letter-spacing:.04em;
}
.bank-reco-state-grid strong{
  display:block;
  margin-top:6px;
  font-size:20px;
  color:#0f172a;
}
.bank-reco-state-grid small{
  display:block;
  color:#94a3b8;
  margin-top:3px;
}
.bank-reco-state-grid .is-ok{border-color:rgba(16,185,129,.35);background:#ecfdf5}
.bank-reco-state-grid .is-bad{border-color:rgba(239,68,68,.35);background:#fef2f2}
@media(max-width:980px){
  .bank-reco-layout{grid-template-columns:1fr}
  .bank-reco-state-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:640px){
  .bank-reco-state-grid{grid-template-columns:1fr}
}

/* AZALYS V5.34 — Menu collaborateur strict
   Les collaborateurs ne voient que : Accueil, Dossiers, Interne, Clients, Alertes. */
body.role-collaborateur .side-nav .nav-btn,
body.role-collaborateur .side-footer #btn-health{
  display:none!important;
}
body.role-collaborateur .side-nav .nav-btn[data-view="workbox"],
body.role-collaborateur .side-nav .nav-btn[data-view="dossiers"],
body.role-collaborateur .side-nav .nav-btn[data-view="internal-messages"],
body.role-collaborateur .side-nav .nav-btn[data-view="cabinet-messages"],
body.role-collaborateur .side-nav .nav-btn[data-view="alerts"]{
  display:flex!important;
}
body.role-collaborateur .side-nav .nav-btn[data-view="supervision"],
body.role-collaborateur .side-nav .nav-btn[data-view="ai-tasks"],
body.role-collaborateur .side-nav .nav-btn[data-view="collaborateurs"],
body.role-collaborateur .side-nav .nav-btn[data-view="settings"],
body.role-collaborateur .side-nav .nav-btn[data-view="modules"],
body.role-collaborateur .side-nav .nav-btn[data-view="legal-internal"]{
  display:none!important;
}

/* V5.40 — Messageries : étirer les 2 grands blocs vers le bas */
#view-internal-messages.view.active,
#view-cabinet-messages.view.active{
  padding-bottom:12px;
}

.internal-premium-v168 .internal-workspace,
.cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  min-height:calc(100dvh - 150px);
}

.internal-premium-v168 .internal-contacts-panel,
.internal-premium-v168 .internal-thread-panel,
.internal-premium-v168 .internal-thread-shell,
.cabinet-conversation-list-panel,
.cabinet-thread-focus-panel,
.cabinet-thread-focus-shell,
.cabinet-inbox-side-v3{
  min-height:calc(100dvh - 190px)!important;
}

.internal-premium-v168 .internal-contacts-list,
.internal-premium-v168 .internal-thread-body,
.cabinet-conversation-list,
.cabinet-thread-focus-body{
  min-height:0!important;
}

@media (max-width:1000px){
  .internal-premium-v168 .internal-workspace,
  .cabinet-inbox-compact .cabinet-inbox-workspace-v3,
  .internal-premium-v168 .internal-contacts-panel,
  .internal-premium-v168 .internal-thread-panel,
  .internal-premium-v168 .internal-thread-shell,
  .cabinet-conversation-list-panel,
  .cabinet-thread-focus-panel,
  .cabinet-thread-focus-shell,
  .cabinet-inbox-side-v3{
    min-height:auto!important;
  }
}


/* V5.41 — Messagerie interne : les 2 blocs descendent jusqu'en bas utile */
#view-internal-messages.view.active{
  display:flex!important;
  flex-direction:column!important;
  height:calc(100dvh - 66px)!important;
  min-height:calc(100dvh - 66px)!important;
  padding-top:24px!important;
  padding-bottom:18px!important;
  overflow:hidden!important;
}

#internal-messages-root{
  flex:1 1 auto!important;
  min-height:0!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
}

.internal-premium-v168{
  flex:1 1 auto!important;
  height:100%!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}

.internal-premium-v168 .internal-workspace{
  flex:1 1 auto!important;
  height:100%!important;
  min-height:0!important;
  align-items:stretch!important;
  overflow:hidden!important;
}

.internal-premium-v168 .internal-contacts-panel,
.internal-premium-v168 .internal-thread-panel{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}

.internal-premium-v168 .internal-thread-shell{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
}

.internal-premium-v168 .internal-contacts-list,
.internal-premium-v168 .internal-thread-body{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
}

/* Même logique de hauteur pour Messages clients */
#view-cabinet-messages.view.active{
  display:flex!important;
  flex-direction:column!important;
  height:calc(100dvh - 66px)!important;
  min-height:calc(100dvh - 66px)!important;
  padding-top:24px!important;
  padding-bottom:18px!important;
  overflow:hidden!important;
}

#cabinet-messages-root,
.cabinet-inbox-compact{
  flex:1 1 auto!important;
  min-height:0!important;
  height:100%!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}

.cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  flex:1 1 auto!important;
  height:100%!important;
  min-height:0!important;
  align-items:stretch!important;
  overflow:hidden!important;
}

.cabinet-conversation-list-panel,
.cabinet-thread-focus-panel,
.cabinet-thread-focus-shell,
.cabinet-inbox-side-v3{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
}

.cabinet-conversation-list,
.cabinet-thread-focus-body{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
}

@media (max-width:1000px){
  #view-internal-messages.view.active,
  #view-cabinet-messages.view.active{
    height:auto!important;
    min-height:calc(100dvh - 110px)!important;
    overflow:visible!important;
  }

  #internal-messages-root,
  #cabinet-messages-root,
  .internal-premium-v168,
  .cabinet-inbox-compact,
  .internal-premium-v168 .internal-workspace,
  .cabinet-inbox-compact .cabinet-inbox-workspace-v3{
    height:auto!important;
    overflow:visible!important;
  }
}

/* V5.53 — Messagerie interne : pièces jointes, images collées et emojis */
.internal-composer-box{grid-template-columns:38px minmax(0,1fr) 38px 48px;}
.internal-composer-help{font-size:.78rem;color:#64748b;margin:7px 8px 0;line-height:1.35;}
.internal-emoji-picker{display:flex;flex-wrap:wrap;gap:6px;margin:8px 6px 0;padding:8px;border:1px solid rgba(148,163,184,.25);background:#fff;border-radius:16px;box-shadow:0 14px 28px rgba(15,23,42,.08);max-width:360px;}
.internal-emoji-picker.hidden{display:none!important;}
.internal-emoji-picker button{width:34px;height:34px;border:0;border-radius:11px;background:#f8fafc;cursor:pointer;font-size:1.15rem;display:flex;align-items:center;justify-content:center;transition:.16s ease;}
.internal-emoji-picker button:hover{background:#e0ecff;transform:translateY(-1px);}
.internal-attachment-preview{display:flex;flex-wrap:wrap;gap:8px;margin:9px 6px 0;}
.internal-attachment-preview.hidden{display:none!important;}
.internal-pending-file{display:inline-flex;align-items:center;gap:7px;max-width:100%;padding:7px 9px;border:1px solid rgba(37,99,235,.18);background:#eff6ff;border-radius:999px;color:#1e3a8a;font-size:.8rem;font-weight:800;}
.internal-pending-file span{max-width:220px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.internal-pending-file small{color:#64748b;font-weight:700;}
.internal-pending-file button{width:22px;height:22px;border:0;border-radius:50%;background:#dbeafe;color:#1d4ed8;cursor:pointer;font-size:1rem;line-height:1;display:flex;align-items:center;justify-content:center;}
.internal-pending-file button:hover{background:#bfdbfe;}
.internal-attachments{display:grid;grid-template-columns:minmax(0,1fr);gap:8px;margin-top:9px;}
.internal-attachments.compact{gap:6px;margin-top:7px;}
.internal-attachment{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-width:min(340px,100%);padding:9px 10px;border-radius:14px;border:1px solid rgba(148,163,184,.28);background:rgba(255,255,255,.86);text-decoration:none;color:#0f172a;box-shadow:0 8px 18px rgba(15,23,42,.05);}
.internal-attachment:hover{border-color:rgba(37,99,235,.35);box-shadow:0 12px 22px rgba(37,99,235,.10);}
.internal-attachment span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:850;font-size:.84rem;}
.internal-attachment small{color:#64748b;font-size:.72rem;font-weight:800;}
.internal-attachment-image{grid-template-columns:54px minmax(0,1fr) auto;}
.internal-attachment-image img{width:54px;height:42px;object-fit:cover;border-radius:10px;border:1px solid rgba(148,163,184,.25);background:#f8fafc;}
.internal-attachment.compact{min-width:0;padding:7px 8px;border-radius:12px;font-size:12px;}
.internal-attachment-image.compact{grid-template-columns:42px minmax(0,1fr);}
.internal-attachment-image.compact img{width:42px;height:34px;border-radius:8px;}
.internal-attachment.compact small{display:none;}
.internal-bubble.mine .internal-attachment{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.24);color:#fff;}
.internal-bubble.mine .internal-attachment small,.internal-bubble.mine .internal-attachment span{color:#fff;}
@media (max-width:640px){.internal-composer-box{grid-template-columns:34px minmax(0,1fr) 34px 42px}.internal-composer-help{font-size:.72rem}.internal-emoji-picker{max-width:none}.internal-pending-file span{max-width:150px}.internal-attachment{min-width:0}.internal-attachment-image{grid-template-columns:48px minmax(0,1fr)}}

/* AZALYS V5.54 — Messages internes : réponses citées + stabilité visuelle */
.internal-reply-btn{
  border:0;
  background:rgba(15,23,42,.06);
  color:#475569;
  border-radius:999px;
  padding:4px 8px;
  font-size:.72rem;
  font-weight:700;
  cursor:pointer;
  transition:.16s ease;
}
.internal-reply-btn:hover{background:rgba(37,99,235,.12);color:#1d4ed8;transform:translateY(-1px)}
.internal-bubble.mine .internal-reply-btn{background:rgba(255,255,255,.16);color:#fff}
.internal-bubble.mine .internal-reply-btn:hover{background:rgba(255,255,255,.26);color:#fff}
.internal-reply-preview{margin:0 0 8px 0}
.internal-reply-preview.hidden{display:none!important}
.internal-reply-preview-card{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
  border:1px solid rgba(37,99,235,.18);
  border-left:4px solid rgba(37,99,235,.72);
  background:linear-gradient(135deg,rgba(239,246,255,.96),rgba(248,250,252,.96));
  border-radius:14px;
  padding:9px 10px;
  box-shadow:0 10px 22px rgba(15,23,42,.06);
}
.internal-reply-preview-card span{display:block;font-size:.75rem;font-weight:800;color:#1d4ed8;margin-bottom:2px}
.internal-reply-preview-card p{margin:0;color:#334155;font-size:.86rem;line-height:1.35;max-height:38px;overflow:hidden}
.internal-reply-cancel{
  flex:0 0 auto;
  width:26px;
  height:26px;
  border:0;
  border-radius:10px;
  background:rgba(15,23,42,.07);
  color:#475569;
  cursor:pointer;
  font-size:1rem;
}
.internal-reply-cancel:hover{background:rgba(239,68,68,.12);color:#b91c1c}
.internal-bubble-reply{
  border-left:3px solid rgba(37,99,235,.55);
  background:rgba(15,23,42,.04);
  border-radius:10px;
  padding:7px 9px;
  margin:0 0 8px;
  display:grid;
  gap:2px;
}
.internal-bubble-reply strong{font-size:.74rem;color:#1d4ed8}
.internal-bubble-reply span{font-size:.82rem;color:#475569;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.internal-bubble.mine .internal-bubble-reply{background:rgba(255,255,255,.16);border-left-color:rgba(255,255,255,.70)}
.internal-bubble.mine .internal-bubble-reply strong,.internal-bubble.mine .internal-bubble-reply span{color:#fff}
.internal-chat-msg-meta .internal-reply-btn.compact{
  padding:2px 6px;
  font-size:.72rem;
  line-height:1;
}
.internal-chat-reply-preview .internal-reply-preview-card{padding:8px 9px;border-radius:12px;margin:2px 0 6px}
.internal-chat-reply-preview .internal-reply-preview-card p{font-size:.78rem;max-height:32px}
.internal-chat-msg .internal-bubble-reply{margin:5px 0 6px;padding:6px 8px}
.internal-chat-msg .internal-bubble-reply strong{font-size:.68rem}
.internal-chat-msg .internal-bubble-reply span{font-size:.76rem}
@media (max-width:640px){
  .internal-reply-btn{font-size:.68rem;padding:3px 7px}
  .internal-reply-preview-card{border-radius:12px;padding:8px 9px}
}

/* AZALYS V5.69 — droits globaux collaborateurs */
.collab-pro-rights-panel{margin-top:16px;overflow:visible!important;}
.collab-selected-profile{display:flex;align-items:center;gap:12px;min-width:0;}
.collab-selected-profile h3{margin:0;color:#0f2544;}
#collab-dirty{display:none;}
#collab-dirty.show{display:inline-flex;}
.collab-global-modules-zone{padding:14px 18px;border-bottom:1px solid #e2e8f0;background:#fff;}
.global-modules-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:10px;}
.global-modules-head strong{color:#0f2544;}
.global-modules-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));gap:10px;}
.global-module-card{display:grid!important;grid-template-columns:auto 34px 1fr auto;gap:10px;align-items:center;margin:0!important;padding:11px 12px;border:1px solid #e2e8f0;border-radius:16px;background:#f8fafc;cursor:pointer;transition:.14s ease;}
.global-module-card:hover{border-color:#bfdbfe;background:#eff6ff;}
.global-module-card.checked{background:#ecfeff;border-color:#99f6e4;box-shadow:0 8px 20px rgba(15,118,110,.08);}
.global-module-card.locked{cursor:not-allowed;opacity:.92;}
.global-module-card input{width:17px;height:17px;margin:0;}
.global-module-icon{width:34px;height:34px;border-radius:12px;display:inline-flex;align-items:center;justify-content:center;background:#fff;border:1px solid #e2e8f0;}
.global-module-text{display:flex;flex-direction:column;gap:3px;min-width:0;}
.global-module-text strong{color:#0f2544;font-size:13px;}
.global-module-text small{color:#64748b;font-size:11px;line-height:1.25;}
.collab-rights-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:14px 18px;border-bottom:1px solid #e2e8f0;background:#f8fafc;}
.collab-rights-summary>div{background:#fff;border:1px solid #e2e8f0;border-radius:14px;padding:10px 12px;}
.collab-rights-summary strong{display:block;color:#0f2544;font-size:22px;line-height:1;font-variant-numeric:tabular-nums;}
.collab-rights-summary span{display:block;margin-top:4px;color:#64748b;font-size:11px;font-weight:800;text-transform:uppercase;letter-spacing:.04em;}
.collab-pro-filterbar:has(#search-collab-dossiers){grid-template-columns:1fr auto auto;}
.collab-templates-zone{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;padding:14px 18px;background:#fff;border-top:1px solid #e2e8f0;}
.collab-template-card{border:1px solid #e2e8f0;border-radius:15px;padding:12px;background:#f8fafc;display:flex;flex-direction:column;gap:8px;}
.collab-template-card h4{margin:0;color:#0f2544;}
.collab-template-card p{margin:0;color:#64748b;font-size:12px;line-height:1.35;}
.collab-template-tags{display:flex;flex-wrap:wrap;gap:5px;}
.collab-template-tags span{font-size:10px;font-weight:800;color:#475569;background:#fff;border:1px solid #e2e8f0;border-radius:999px;padding:4px 7px;}
.collab-preview-card.wide{grid-column:1/-1;}
@media(max-width:900px){.global-modules-head{align-items:flex-start;flex-direction:column}.collab-rights-summary{grid-template-columns:repeat(2,minmax(0,1fr));}.collab-pro-filterbar:has(#search-collab-dossiers){grid-template-columns:1fr}.global-modules-grid{grid-template-columns:1fr}.collab-templates-zone{grid-template-columns:1fr}}

/* AZALYS V5.72 — UX/Product reorganisation : menus par rôle, pilotage et libellés métier */
.ux-role-nav{
  gap: 6px;
}
.nav-section-label{
  margin: 14px 10px 4px;
  font-size: 10.5px;
  letter-spacing: .08em;
  text-transform: uppercase;
  color: rgba(100,116,139,.86);
  font-weight: 800;
}
.side-nav .nav-section-label:first-child{
  margin-top: 4px;
}
body.role-client-dossier .cabinet-nav-section{
  display: none !important;
}
body:not(.role-client-dossier) .client-nav-section{
  display: none !important;
}
body.role-collaborateur .admin-only.nav-section-label,
body.role-collaborateur .admin-technical-only{
  display: none !important;
}
body.role-admin .admin-technical-only{
  display: none !important;
}
.ux-maintenance-only{
  display: none !important;
}
#btn-import-json.admin-technical-only,
#btn-export.admin-technical-only,
#btn-health.admin-technical-only{
  display:none !important;
}
.inbox-head-actions{
  align-items:center;
  flex-wrap:wrap;
}
#btn-validate-clean-workbox{
  white-space:nowrap;
}
.pilotage-cabinet-layout{
  display:flex;
  flex-direction:column;
  gap:18px;
}
.pilotage-today-panel{
  padding:20px;
}
.pilotage-stats-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:12px;
  margin-top:14px;
}
.pilotage-stat{
  border:1px solid rgba(148,163,184,.28);
  border-radius:18px;
  padding:14px;
  background:linear-gradient(180deg,rgba(255,255,255,.96),rgba(248,250,252,.92));
  display:flex;
  flex-direction:column;
  gap:5px;
  min-height:132px;
}
.pilotage-stat small{
  color:#64748b;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.06em;
  font-size:10px;
}
.pilotage-stat strong{
  font-size:30px;
  line-height:1;
  color:#0f172a;
}
.pilotage-stat span{
  color:#64748b;
  font-size:12px;
  min-height:30px;
}
.pilotage-stat .btn{
  margin-top:auto;
  align-self:flex-start;
}
.pilotage-stat.danger{border-color:rgba(239,68,68,.25);background:linear-gradient(180deg,#fff,#fff7f7)}
.pilotage-stat.warning{border-color:rgba(245,158,11,.28);background:linear-gradient(180deg,#fff,#fffbeb)}
.pilotage-stat.success{border-color:rgba(34,197,94,.24);background:linear-gradient(180deg,#fff,#f0fdf4)}
.pilotage-grid{
  align-items:start;
}
.pilotage-settings-card{
  padding:0;
  overflow:hidden;
}
.pilotage-settings-card > summary{
  cursor:pointer;
  list-style:none;
  padding:18px 20px;
  display:flex;
  justify-content:space-between;
  gap:12px;
  align-items:center;
}
.pilotage-settings-card > summary::-webkit-details-marker{display:none}
.pilotage-settings-card > summary strong{
  font-size:16px;
  color:#0f172a;
}
.pilotage-settings-card > summary span{
  color:#64748b;
  font-size:12px;
}
.pilotage-settings-grid{
  border-top:1px solid rgba(148,163,184,.2);
  padding:16px;
  display:grid;
  grid-template-columns:minmax(240px,.8fr) minmax(300px,1.2fr);
  gap:14px;
}
.supervision-owners li{
  gap:10px;
}
.supervision-owners li .btn{
  margin-left:auto;
}
@media (max-width: 980px){
  .pilotage-stats-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
  .pilotage-settings-grid{grid-template-columns:1fr;}
}
@media (max-width: 640px){
  .pilotage-stats-grid{grid-template-columns:1fr;}
  .pilotage-stat{min-height:auto;}
  .nav-section-label{margin-left:8px;}
}

/* AZALYS v5.73 — Appels audio intégrés */
.audio-meetings-view,
.audio-meetings-shell{width:100%;}
.audio-meetings-shell{display:flex;flex-direction:column;gap:18px;}
.audio-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;overflow:hidden;position:relative;}
.audio-hero:before{content:"";position:absolute;inset:-80px auto auto -60px;width:220px;height:220px;border-radius:999px;background:radial-gradient(circle, rgba(20,184,166,.15), transparent 68%);pointer-events:none;}
.audio-hero h2{margin:4px 0 6px;font-size:1.45rem;letter-spacing:-.02em;}
.audio-hero-kpis{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;position:relative;z-index:1;}
.audio-hero-kpis span{min-width:94px;border:1px solid rgba(15,23,42,.08);background:rgba(255,255,255,.82);border-radius:18px;padding:12px 14px;text-align:center;box-shadow:0 10px 24px rgba(15,23,42,.06);}
.audio-hero-kpis strong{display:block;font-size:1.45rem;line-height:1;color:#0f766e;}
.audio-hero-kpis small{display:block;margin-top:4px;color:#64748b;font-size:.78rem;}
.audio-layout{display:grid;grid-template-columns:minmax(290px,.86fr) minmax(360px,1.25fr);gap:18px;align-items:start;}
.audio-create-card,.audio-room-card,.audio-list-card,.audio-notes-card{padding:18px;}
.audio-create-form{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px;}
.audio-create-form label{display:flex;flex-direction:column;gap:7px;font-weight:700;color:#334155;font-size:.88rem;}
.audio-create-form .wide{grid-column:1/-1;}
.audio-form-info{display:flex;flex-wrap:wrap;gap:8px;align-items:center;}
.audio-form-info span{border:1px solid rgba(15,118,110,.15);background:rgba(240,253,250,.82);color:#0f766e;border-radius:999px;padding:7px 10px;font-weight:700;font-size:.78rem;}
.audio-room-box{border:1px solid rgba(15,23,42,.08);border-radius:22px;overflow:hidden;background:linear-gradient(180deg,#f8fafc,#fff);min-height:420px;display:flex;flex-direction:column;}
.audio-room-empty{min-height:420px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:28px;color:#64748b;gap:8px;}
.audio-room-empty strong{color:#0f172a;font-size:1.05rem;}
.audio-room-empty span{max-width:360px;line-height:1.5;}
.audio-room-visual{width:74px;height:74px;border-radius:24px;display:grid;place-items:center;font-size:2rem;background:linear-gradient(135deg,#ccfbf1,#dbeafe);box-shadow:0 18px 40px rgba(13,148,136,.18);margin-bottom:8px;}
.audio-room-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border-bottom:1px solid rgba(15,23,42,.08);background:#fff;}
.audio-room-toolbar strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.audio-room-frame{height:420px;min-height:420px;background:#111827;}
.audio-room-frame iframe{border:0!important;width:100%!important;height:100%!important;display:block;border-radius:0;}
.audio-room-loading,.audio-room-error{height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;color:#fff;gap:8px;padding:24px;}
.audio-room-error span{max-width:440px;color:#fecaca;}
.audio-meeting-list{display:flex;flex-direction:column;gap:10px;margin-top:12px;}
.audio-meeting-card{display:flex;align-items:center;justify-content:space-between;gap:14px;border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:18px;padding:13px;transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease;}
.audio-meeting-card:hover{transform:translateY(-1px);box-shadow:0 12px 28px rgba(15,23,42,.07);}
.audio-meeting-card.selected{border-color:rgba(13,148,136,.55);box-shadow:0 0 0 3px rgba(13,148,136,.12);}
.audio-meeting-card.status-live{background:linear-gradient(90deg, rgba(240,253,250,.85), #fff);}
.audio-meeting-main{display:flex;align-items:center;gap:12px;min-width:0;}
.audio-meeting-icon{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#ecfeff;font-size:1.25rem;flex:0 0 auto;}
.audio-meeting-main h3{margin:0;font-size:1rem;line-height:1.2;color:#0f172a;}
.audio-meeting-main p{margin:3px 0 0;color:#64748b;font-size:.86rem;}
.audio-meeting-main small{display:block;margin-top:2px;color:#94a3b8;font-size:.76rem;}
.audio-meeting-actions{display:flex;align-items:center;justify-content:flex-end;gap:8px;flex-wrap:wrap;}
.audio-notes-card{display:flex;flex-direction:column;gap:10px;}
.audio-notes-card textarea{min-height:92px;}
.danger-text{color:#dc2626!important;}
.client-audio-shell .audio-layout{grid-template-columns:1fr;}
.client-audio-shell .audio-hero{padding:18px;}
@media (max-width: 980px){
  .audio-hero{align-items:flex-start;flex-direction:column;}
  .audio-hero-kpis{justify-content:flex-start;width:100%;}
  .audio-layout{grid-template-columns:1fr;}
  .audio-create-form{grid-template-columns:1fr;}
  .audio-meeting-card{align-items:flex-start;flex-direction:column;}
  .audio-meeting-actions{justify-content:flex-start;width:100%;}
  .audio-room-frame,.audio-room-empty,.audio-room-box{min-height:360px;}
  .audio-room-frame{height:360px;}
}
@media (max-width: 560px){
  .audio-hero-kpis span{min-width:0;flex:1 1 30%;}
  .audio-create-card,.audio-room-card,.audio-list-card,.audio-notes-card{padding:14px;}
  .audio-room-frame,.audio-room-empty,.audio-room-box{min-height:320px;}
  .audio-room-frame{height:320px;}
  .audio-meeting-actions .btn{width:100%;justify-content:center;}
}

/* V5.74 — Flux collaborateur automatisé */
.inbox-owner{
  display:inline-flex;
  align-items:center;
  gap:4px;
  padding:2px 8px;
  border-radius:999px;
  background:#eef2ff;
  color:#3730a3;
  font-size:11px;
  font-weight:800;
  max-width:160px;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.inbox-owner::before{content:'👤';font-size:10px;}
.inbox-kind.workflow{background:#ecfeff;color:#0e7490;border-color:#a5f3fc;}
.inbox-kind.alert{background:#fff7ed;color:#c2410c;border-color:#fed7aa;}
.workbox-main-tab[data-workbox-simple-filter="flux"] span::before{content:'🧭 ';}

/* V5.75 — Mes flux calculés : synthèse sans création de tâches supplémentaires */
.flow-digest-expand{padding:14px 16px;background:#f8fafc;border-top:1px solid rgba(15,23,42,.08)}
.flow-digest-head{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:14px;align-items:start;margin-bottom:12px}
.flow-digest-head h4{margin:0 0 4px;font-size:15px;color:#0f172a}
.flow-digest-head p{margin:0;color:#64748b;font-size:13px;line-height:1.45}
.flow-digest-chips{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end;max-width:360px}
.flow-digest-chips span{display:inline-flex;align-items:center;gap:5px;border:1px solid rgba(15,23,42,.09);background:#fff;border-radius:999px;padding:5px 8px;font-size:12px;color:#475569;white-space:nowrap}
.flow-digest-chips b{color:#0f172a}
.flow-digest-list{border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:14px;padding:12px}
.flow-digest-list>strong{display:block;margin-bottom:8px;font-size:13px;color:#0f172a}
.flow-digest-list ul{display:grid;gap:7px;margin:0;padding:0;list-style:none}
.flow-digest-list li{display:flex;align-items:center;justify-content:space-between;gap:10px;border:1px solid rgba(15,23,42,.06);border-radius:12px;padding:8px 10px;background:#fbfdff}
.flow-digest-list li strong{display:block;font-size:13px;color:#0f172a}
.flow-digest-list li small{display:block;color:#64748b;font-size:12px;margin-top:2px}
@media (max-width: 760px){.flow-digest-head{grid-template-columns:1fr}.flow-digest-chips{justify-content:flex-start;max-width:none}.flow-digest-list li{align-items:flex-start;flex-direction:column}}

/* V5.76 — action de relance réellement cliquable dans la ligne du poste */
.workbox-inline-action{
  appearance:none;
  border:1px solid #fed7aa;
  background:#fff7ed;
  color:#9a3412;
  border-radius:999px;
  padding:6px 10px;
  font-size:12px;
  font-weight:900;
  cursor:pointer;
  white-space:nowrap;
}
.workbox-inline-action:hover{background:#ffedd5;border-color:#fdba74;color:#7c2d12;}

/* V5.78 — éditeurs structurés TVA / Stock dans le poste de traitement */
.wb-lines-editor{width:100%;display:flex;flex-direction:column;gap:6px}
.wb-lines-head,.wb-lines-row{display:grid;grid-template-columns:1fr 0.7fr 0.7fr auto;gap:6px;align-items:center}
.wb-stock-head,.wb-stock-row{grid-template-columns:1.4fr .55fr .45fr .7fr .85fr .75fr auto auto}
.wb-lines-head{font-size:11px;color:#6b7280;font-weight:700;text-transform:uppercase;letter-spacing:.02em}
.wb-lines-row .control{min-width:0;width:100%}
@media(max-width:800px){.wb-lines-head{display:none}.wb-lines-row,.wb-stock-row{grid-template-columns:1fr}.wb-lines-row .btn{width:100%}}

/* V5.80 — traitement pièce : TVA/stock lisibles et stock masqué si non suivi */
.inline-fields-grid .inline-field.is-wide{grid-column:1 / -1;}
.inline-field.is-stock-hidden,[data-wb-stock-dependent][hidden]{display:none!important;}
.wb-lines-editor{width:100%;border:1px solid rgba(148,163,184,.28);background:#fff;border-radius:16px;padding:10px;display:flex;flex-direction:column;gap:10px;overflow:hidden;}
.wb-lines-head,.wb-lines-row{display:grid;gap:8px;align-items:center;}
.wb-tva-head,.wb-tva-row{grid-template-columns:minmax(130px,1fr) minmax(110px,.65fr) minmax(130px,.75fr) auto;}
.wb-stock-head,.wb-stock-row{grid-template-columns:minmax(240px,1.8fr) minmax(75px,.5fr) minmax(115px,.7fr) minmax(75px,.45fr) minmax(95px,.6fr) minmax(130px,.8fr) minmax(100px,.65fr) auto;}
.wb-invoice-lines-editor{overflow-x:auto;overscroll-behavior-inline:contain;}
.wb-invoice-head,.wb-invoice-row{grid-template-columns:minmax(180px,1.35fr) minmax(150px,1fr) minmax(230px,1.45fr) minmax(70px,.45fr) minmax(70px,.45fr) minmax(100px,.65fr) minmax(85px,.55fr) minmax(80px,.5fr) minmax(110px,.65fr) auto;min-width:1260px;}
.wb-lines-head{font-size:11px;color:#475569;font-weight:900;text-transform:uppercase;letter-spacing:.035em;border-bottom:1px solid rgba(148,163,184,.22);padding-bottom:6px;}
.wb-lines-body{display:flex;flex-direction:column;gap:8px;}
.wb-lines-row .control{min-width:0;width:100%;}
.wb-stock-article-cell{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:8px;align-items:center;min-width:0;}
.wb-stock-article-cell .btn{white-space:nowrap;}
.wb-invoice-stock-meta{grid-column:1/-1;border:1px solid rgba(14,116,144,.2);background:#f0fdfa;border-radius:12px;padding:0 10px;min-width:0;}
.wb-invoice-stock-meta[hidden]{display:none!important;}
.wb-invoice-stock-meta summary{cursor:pointer;min-height:42px;display:flex;align-items:center;gap:8px;color:#0f766e;font-size:12px;font-weight:900;list-style-position:inside;}
.wb-invoice-stock-meta summary span{color:#64748b;font-size:11px;font-weight:700;}
.wb-invoice-stock-meta-fields{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;padding:0 0 10px;}
.wb-invoice-stock-meta-fields label{display:grid;gap:5px;min-width:0;color:#475569;font-size:11px;font-weight:800;}
.wb-lines-actions{display:flex;justify-content:flex-start;gap:8px;}
.wb-tva-control{border:1px solid rgba(59,130,246,.18);background:#eff6ff;border-radius:12px;padding:8px 10px;color:#1e3a8a;font-size:12px;font-weight:800;line-height:1.35;}
.wb-tva-control.is-ok{border-color:rgba(34,197,94,.25);background:#f0fdf4;color:#166534;}
.wb-tva-control.is-error{border-color:rgba(239,68,68,.25);background:#fef2f2;color:#991b1b;}
.wb-stock-mode-notice{margin-top:8px;border:1px solid rgba(148,163,184,.24);background:#f8fafc;border-radius:14px;padding:9px 11px;color:#334155;font-size:12px;line-height:1.35;font-weight:700;}
.wb-stock-mode-notice.non_suivi{border-color:rgba(34,197,94,.22);background:#f0fdf4;color:#166534;}
.wb-stock-mode-notice.a_controler{border-color:rgba(245,158,11,.28);background:#fffbeb;color:#92400e;}
.wb-stock-mode-notice.entree_stock,.wb-stock-mode-notice.sortie_stock{border-color:rgba(37,99,235,.22);background:#eff6ff;color:#1d4ed8;}
.btn.danger-soft{background:#fff7ed;border-color:#fed7aa;color:#9a3412;}
.btn.danger-soft:hover{background:#ffedd5;border-color:#fdba74;color:#7c2d12;}
@media(max-width:1050px){
  .wb-tva-head,.wb-tva-row,.wb-stock-head,.wb-stock-row,.wb-invoice-head,.wb-invoice-row{grid-template-columns:1fr;min-width:0;}
  .wb-invoice-lines-editor{overflow-x:hidden;}
  .wb-lines-head{display:none;}
  .wb-stock-article-cell{grid-template-columns:1fr;}
  .wb-lines-row .btn,.wb-stock-article-cell .btn{width:100%;}
  .wb-invoice-row{border:1px solid rgba(148,163,184,.24);border-radius:14px;padding:10px;background:#f8fafc;}
  .wb-invoice-stock-meta-fields{grid-template-columns:1fr;}
  .wb-invoice-stock-meta summary{min-height:44px;}
  .wb-invoice-lines-editor .wb-invoice-row .control,.wb-invoice-lines-editor .wb-invoice-row .btn,.wb-invoice-lines-editor [data-wb-add-invoice-line]{min-height:44px!important;}
  .wb-invoice-lines-editor .wb-invoice-row .control{font-size:16px!important;}
}

/* V5.81 — visibilité Maintenance / Reset all */
#maintenance-card.maintenance-focus{outline:3px solid rgba(245,158,11,.45); box-shadow:0 0 0 8px rgba(245,158,11,.12), var(--shadow, 0 12px 30px rgba(15,23,42,.08));}
#btn-reset-all{font-weight:900;}

/* V5.84 — Charge temps / compteur tâche */
.work-timer-box{
  display:flex; align-items:center; justify-content:space-between; gap:12px;
  margin:10px 0 12px; padding:12px 14px; border:1px solid rgba(59,130,246,.22);
  border-radius:16px; background:linear-gradient(135deg, rgba(239,246,255,.95), rgba(255,255,255,.95));
}
.work-timer-box strong{display:block;font-size:13px;color:#0f1f44;letter-spacing:.02em}
.work-timer-box small{display:block;margin-top:3px;color:#64748b;font-size:12px;line-height:1.35}
.work-timer-box>div:last-child{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.workload-list li.workload-owner{display:flex;flex-direction:column;gap:3px;border-left:4px solid rgba(59,130,246,.35);padding-left:10px}
.workload-list li.workload-owner.ok{border-left-color:#22c55e}
.workload-list li.workload-owner.normal{border-left-color:#3b82f6}
.workload-list li.workload-owner.warning{border-left-color:#f59e0b}
.workload-list li.workload-owner.danger{border-left-color:#ef4444}
.workload-list li.workload-owner em{font-style:normal;color:#64748b;font-size:12px}


/* V5.86 — curseur menu gauche + volet rentabilité collaborateurs */
.side-nav{position:relative;}
.side-nav .nav-cursor{position:absolute;left:4px;top:0;width:5px;height:42px;border-radius:0 999px 999px 0;background:linear-gradient(180deg,#93c5fd,#2563eb);box-shadow:0 0 0 4px rgba(59,130,246,.12),0 12px 26px rgba(37,99,235,.35);transition:transform .22s ease,height .22s ease,opacity .18s ease;z-index:0;pointer-events:none;}
.side-nav .nav-cursor.hidden{opacity:0;}
.side-nav .nav-btn{position:relative;z-index:1;}
.side-nav .nav-btn.active{box-shadow:inset 0 0 0 1px rgba(255,255,255,.08),0 12px 32px rgba(15,23,42,.12);}
.profitability-view{display:none;}
.profitability-view.active{display:block;}
.profitability-head{padding:24px;display:flex;align-items:center;justify-content:space-between;gap:18px;margin-bottom:18px;background:linear-gradient(135deg,#ffffff,#f8fbff);}
.profitability-head h1{margin:4px 0 8px;color:var(--navy);font-size:30px;letter-spacing:-.04em;}
.profitability-actions{display:flex;gap:10px;align-items:center;}
.profitability-root{display:flex;flex-direction:column;gap:16px;}
.profitability-layout{display:flex;flex-direction:column;gap:16px;}
.profitability-filter-card{padding:18px;}
.profitability-filter-grid{display:grid;grid-template-columns:180px minmax(220px,1fr) minmax(260px,1.2fr) auto;gap:12px;align-items:end;}
.profitability-filter-grid label{font-size:12px;font-weight:900;color:#475569;display:flex;flex-direction:column;gap:6px;}
.profitability-kpi-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:14px;}
.profitability-kpi{background:#fff;border:1px solid rgba(148,163,184,.22);border-radius:18px;padding:18px;box-shadow:0 16px 42px rgba(15,23,42,.06);display:flex;flex-direction:column;gap:6px;}
.profitability-kpi small{color:#64748b;text-transform:uppercase;letter-spacing:.07em;font-size:11px;font-weight:900;}
.profitability-kpi strong{font-size:28px;color:#0f172a;letter-spacing:-.04em;}
.profitability-kpi span{font-size:12px;color:#64748b;}
.profitability-kpi.success{border-color:rgba(34,197,94,.25);background:linear-gradient(135deg,#fff,#f0fdf4);}
.profitability-kpi.warning{border-color:rgba(245,158,11,.28);background:linear-gradient(135deg,#fff,#fffbeb);}
.profitability-kpi.danger{border-color:rgba(239,68,68,.28);background:linear-gradient(135deg,#fff,#fef2f2);}
.profitability-panel{padding:0;overflow:hidden;}
.profitability-panel.wide{width:100%;}
.profitability-split{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start;}
.profitability-table td strong{display:block;color:#0f172a;}
.profitability-table td small{display:block;color:#64748b;margin-top:2px;}
.profitability-badge{display:inline-flex;align-items:center;gap:6px;border-radius:999px;padding:5px 9px;font-weight:900;font-size:11px;white-space:nowrap;background:#f1f5f9;color:#475569;}
.profitability-badge.ok{background:#dcfce7;color:#166534;}
.profitability-badge.warning{background:#fef3c7;color:#92400e;}
.profitability-badge.danger{background:#fee2e2;color:#991b1b;}
.profitability-badge.neutral{background:#f1f5f9;color:#475569;}
.profitability-mini-bar{height:9px;background:#e2e8f0;border-radius:999px;overflow:hidden;min-width:120px;margin-bottom:4px;}
.profitability-mini-bar span{display:block;height:100%;background:linear-gradient(90deg,#60a5fa,#2563eb);border-radius:999px;}
.profitability-loading{padding:24px;}
@media(max-width:1100px){.profitability-kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.profitability-split{grid-template-columns:1fr;}.profitability-filter-grid{grid-template-columns:1fr 1fr;}.profitability-filter-grid .btn{grid-column:1/-1;}}
@media(max-width:700px){.profitability-head{flex-direction:column;align-items:flex-start;}.profitability-kpi-grid,.profitability-filter-grid{grid-template-columns:1fr;}.side-nav .nav-cursor{display:none;}}

/* ==========================================================================
   AZALYS V5.89 — Permissions collaborateurs : lecture claire et anti-ambiguïté
   ========================================================================== */
.collab-right-row.is-ambiguous{border-color:#fed7aa!important;background:linear-gradient(180deg,#fff,#fff7ed)!important;}
.collab-right-row.is-ambiguous:before{background:#f97316!important;}
.collab-right-row.is-invalid{border-color:#fecaca!important;background:linear-gradient(180deg,#fff,#fef2f2)!important;}
.collab-right-row.is-invalid:before{background:#dc2626!important;}
.badge.warning{background:#ffedd5!important;color:#9a3412!important;border-color:#fdba74!important;}
.badge.danger{background:#fee2e2!important;color:#991b1b!important;border-color:#fecaca!important;}
.collab-permission-warning{margin:0 14px 10px 18px;padding:9px 11px;border:1px solid #fdba74;border-radius:12px;background:#fff7ed;color:#9a3412;font-size:12px;font-weight:750;line-height:1.35;}
.collab-permission-warning.danger{border-color:#fecaca;background:#fef2f2;color:#991b1b;}
.collab-scope-alert{grid-column:1/-1;display:flex;align-items:center;justify-content:space-between;gap:10px;padding:9px 11px;border:1px solid #fdba74;border-radius:13px;background:#fff7ed;color:#9a3412;}
.collab-scope-alert strong{font-size:13px!important;color:#9a3412!important;}
.collab-scope-alert span{font-size:11px!important;margin:0!important;color:#9a3412!important;}
#collab-rights-zone .collab-right-row.is-ambiguous .collab-row-options,
#collab-rights-zone .collab-right-row.is-invalid .collab-row-options{background:#fff!important;}
#collab-rights-zone .collab-right-row.is-ambiguous .collab-module-pill.checked{background:#ffedd5!important;border-color:#fdba74!important;color:#9a3412!important;}

/* V20.53.5 — circuit Note de frais distinct, sans sections stock/immo */
.wb-expense-lines-editor,.wb-expense-payments-editor{background:linear-gradient(180deg,#fff,#f8fafc);}
.wb-expense-row{border:1px solid #dbeafe;border-radius:14px;background:#fff;padding:10px 12px;}
.wb-expense-row>summary{cursor:pointer;display:flex;justify-content:space-between;gap:12px;color:#1e3a8a;}
.wb-expense-row>summary span{font-size:12px;color:#64748b;font-weight:700;}
.wb-expense-grid{display:grid;grid-template-columns:repeat(3,minmax(150px,1fr));gap:10px;margin:12px 0;}
.wb-expense-grid label{display:flex;flex-direction:column;gap:5px;font-size:11px;font-weight:850;color:#475569;}
.wb-expense-payment-row{display:grid;grid-template-columns:1.15fr 1fr .8fr .8fr .9fr 1fr 1.1fr 1.2fr auto;gap:8px;align-items:center;border:1px solid #e2e8f0;border-radius:12px;padding:9px;background:#fff;}
.wb-expense-control{font-size:12px;font-weight:850;color:#1e3a8a;background:#eff6ff;border-radius:10px;padding:8px 10px;}
@media(max-width:1000px){.wb-expense-grid{grid-template-columns:repeat(2,minmax(150px,1fr));}.wb-expense-payment-row{grid-template-columns:1fr 1fr;}}
@media(max-width:650px){.wb-expense-grid,.wb-expense-payment-row{grid-template-columns:1fr;}.wb-expense-row>summary{flex-direction:column;}}

/* 20.63 — cibles fiables de l’éditeur canonique, après tous les styles .btn.tiny */
.wb-invoice-lines-editor button.btn.tiny{min-height:44px!important;height:auto!important;}
/* AZALYS_BUNDLE_SOURCE_END: app.css */

/* AZALYS_BUNDLE_SOURCE 3/29: juridique_formalites.css | sha256=8b2624bed3e29d24c4d91f4223ca96660a28db8e83f4c91cff1aed4cd1515a62 */
/* AZALYS V5.98 - Formalités juridiques avec modèles cabinet */
.azj-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.azj-head h3{margin:4px 0 6px;font-size:24px}.azj-head p{margin:0;color:var(--muted,#64748b)}.azj-actions{display:flex;gap:10px;flex-wrap:wrap}.azj-board{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:14px}.azj-card,.azj-form section,.azj-detail-grid section{background:#fff;border:1px solid #e5e7eb;border-radius:18px;padding:16px;box-shadow:0 10px 30px rgba(15,23,42,.05)}.azj-card-top{display:flex;justify-content:space-between;gap:10px}.azj-card-top span{font-size:12px;border-radius:999px;background:#eef2ff;color:#3730a3;padding:4px 9px}.azj-meta{color:#64748b;font-size:13px;margin-top:8px}.azj-foot{display:flex;align-items:center;justify-content:space-between;gap:10px}.azj-form{display:grid;gap:14px}.azj-form h4,.azj-detail-grid h4{margin:0 0 12px}.azj-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}.azj-grid label{font-size:12px;color:#64748b;display:grid;gap:6px}.azj-associe{display:grid;grid-template-columns:1.2fr 1fr 1fr 1.5fr .7fr auto;gap:8px;margin-bottom:8px}.azj-save{display:flex;justify-content:flex-end;gap:10px}.azj-detail-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:14px;margin-top:16px}.azj-line{display:flex;justify-content:space-between;gap:10px;border-bottom:1px solid #f1f5f9;padding:9px 0}.azj-line b{font-size:12px;color:#475569}.azj-gen-one{display:block;width:100%;margin:8px 0;text-align:left}.azj-gen-one small{float:right;color:#64748b}.muted{color:#64748b}.empty.mini{padding:10px;min-height:auto}@media(max-width:760px){.azj-head{display:block}.azj-actions{margin-top:12px}.azj-associe{grid-template-columns:1fr}.azj-save{justify-content:stretch;flex-direction:column}.azj-save .btn{width:100%}}
/* AZALYS_BUNDLE_SOURCE_END: juridique_formalites.css */

/* AZALYS_BUNDLE_SOURCE 4/29: auth-premium.css | sha256=08225276abf8357a64637f9ae5a453bae613434555b2b9ba65050aca8a7691d3 */
/* ============================================================================
   AZALYS Cabinet — Login premium v3.1.3
   Refonte visuelle uniquement : aucun changement métier / API.
   ============================================================================ */

.premium-auth-surface{
  position:relative;
  min-height:100vh;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:34px 22px;
  overflow:hidden;
  background:
    radial-gradient(1050px 700px at 10% 0%, rgba(37,99,235,.45), transparent 58%),
    radial-gradient(850px 620px at 90% 100%, rgba(37,99,235,.35), transparent 60%),
    linear-gradient(135deg,#051a3b 0%,#061536 42%,#021027 100%);
  isolation:isolate;
}

.premium-auth-surface::before,
.premium-auth-surface::after{
  content:"";
  position:absolute;
  z-index:-1;
  width:860px;
  height:860px;
  border-radius:50%;
  border:1px solid rgba(50,126,255,.42);
  pointer-events:none;
}

.premium-auth-surface::before{
  left:-430px;
  bottom:-500px;
  transform:rotate(-18deg);
  box-shadow:0 0 70px rgba(37,99,235,.18);
}

.premium-auth-surface::after{
  right:-390px;
  top:145px;
  transform:rotate(16deg);
  box-shadow:0 0 90px rgba(37,99,235,.16);
}

.auth-orb{
  position:absolute;
  z-index:-1;
  border-radius:999px;
  filter:blur(34px);
  opacity:.42;
  pointer-events:none;
}

.orb-one{
  width:360px;
  height:360px;
  top:-90px;
  left:110px;
  background:#2377ff;
}

.orb-two{
  width:440px;
  height:440px;
  right:120px;
  bottom:-160px;
  background:#1554d8;
}

.auth-dots{
  position:absolute;
  width:120px;
  height:92px;
  opacity:.24;
  background-image:radial-gradient(rgba(126,170,255,.9) 2px, transparent 2.8px);
  background-size:18px 18px;
  pointer-events:none;
}

.dots-top{top:92px;right:140px}
.dots-bottom{left:108px;bottom:110px}

.premium-auth-card{
  width:min(690px,94vw);
  max-width:690px;
  padding:44px 60px 34px;
  border-radius:34px;
  color:#eaf2ff;
  background:
    linear-gradient(155deg,rgba(22,65,130,.52) 0%,rgba(8,30,73,.74) 52%,rgba(3,17,45,.82) 100%);
  border:1px solid rgba(112,166,255,.36);
  box-shadow:
    0 34px 120px rgba(0,0,0,.42),
    inset 0 1px 0 rgba(255,255,255,.12),
    inset 0 0 70px rgba(37,99,235,.12);
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}

.boot-card.premium-auth-card{
  text-align:center;
  max-width:520px;
}

.azalys-building{
  position:relative;
  width:86px;
  height:86px;
  margin:0 auto 18px;
  filter:drop-shadow(0 18px 28px rgba(0,0,0,.28));
}

.azalys-building::before{
  content:"";
  position:absolute;
  left:12px;
  bottom:16px;
  width:62px;
  height:8px;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,rgba(87,151,255,.78),transparent);
}

.azalys-building::after{
  content:"";
  position:absolute;
  right:17px;
  bottom:18px;
  width:28px;
  height:54px;
  clip-path:polygon(0 12%,62% 0,100% 17%,100% 100%,0 100%);
  background:linear-gradient(145deg,#e9f2ff 0%,#77b1ff 50%,#195de8 100%);
}

.azalys-building span:nth-child(1){
  position:absolute;
  left:20px;
  bottom:18px;
  width:20px;
  height:58px;
  clip-path:polygon(0 17%,100% 0,100% 100%,0 100%);
  background:linear-gradient(160deg,#4d99ff,#0d52d9);
}

.azalys-building span:nth-child(2){
  position:absolute;
  left:30px;
  bottom:24px;
  width:5px;
  height:43px;
  border-radius:3px;
  background:rgba(219,235,255,.82);
  box-shadow:11px 0 0 rgba(219,235,255,.72),22px 0 0 rgba(219,235,255,.64);
}

.azalys-building span:nth-child(3){
  position:absolute;
  right:24px;
  bottom:26px;
  width:5px;
  height:5px;
  border-radius:1px;
  background:#dbeafe;
  box-shadow:10px 0 0 rgba(219,234,254,.85),0 12px 0 rgba(219,234,254,.82),10px 12px 0 rgba(219,234,254,.72),0 24px 0 rgba(219,234,254,.78),10px 24px 0 rgba(219,234,254,.70);
}

.premium-auth-card .auth-brand{
  text-align:center;
  margin-bottom:30px;
}

.premium-auth-card .auth-brand h1,
.boot-card.premium-auth-card h1{
  margin:0;
  color:#fff;
  font-size:clamp(34px,4vw,48px);
  line-height:1.08;
  font-weight:900;
  letter-spacing:-.04em;
  text-shadow:0 8px 24px rgba(0,0,0,.30);
}

.premium-auth-card .auth-brand p,
.boot-card.premium-auth-card p{
  margin:13px 0 0;
  color:#b9c8e6;
  font-size:17px;
  font-weight:500;
}

.auth-brand-line{
  width:72px;
  height:2px;
  margin:30px auto 0;
  border-radius:999px;
  background:linear-gradient(90deg,transparent,#2f82ff,transparent);
  box-shadow:0 0 18px rgba(47,130,255,.85);
}

.premium-auth-form{
  display:block;
}

.premium-auth-form label:not(.remember-check){
  display:block;
  margin:0 0 10px;
  color:#f3f7ff;
  font-size:15px;
  font-weight:800;
  letter-spacing:-.01em;
}

.premium-input-wrap{
  position:relative;
  margin-bottom:22px;
}

.premium-input-wrap .input-icon{
  position:absolute;
  left:20px;
  top:50%;
  transform:translateY(-50%);
  z-index:1;
  width:22px;
  text-align:center;
  color:#b9c8e6;
  font-size:18px;
  line-height:1;
  opacity:.9;
}

.premium-auth-form .control{
  width:100%;
  height:64px;
  padding:0 22px 0 58px;
  border-radius:13px;
  border:1px solid rgba(139,174,229,.38);
  color:#eef6ff;
  background:rgba(6,22,55,.38);
  outline:none;
  font-size:17px;
  font-weight:600;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
  transition:border-color .18s ease, box-shadow .18s ease, background .18s ease;
}

.premium-auth-form .control::placeholder{color:rgba(185,200,230,.58);font-weight:500}
.premium-auth-form .control:focus{
  border-color:rgba(91,154,255,.95);
  background:rgba(10,31,76,.58);
  box-shadow:0 0 0 4px rgba(47,130,255,.16), inset 0 1px 0 rgba(255,255,255,.07);
}

.password-wrap .control{padding-right:68px}
.password-toggle{
  position:absolute;
  right:16px;
  top:50%;
  transform:translateY(-50%);
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:0;
  background:transparent;
  color:#cddcff;
  font-size:22px;
  border-radius:12px;
}
.password-toggle:hover{background:rgba(255,255,255,.08);color:#fff}

.auth-options-row{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:-2px 0 28px;
}

.remember-check{
  display:flex!important;
  flex-direction:row!important;
  align-items:center;
  gap:10px;
  margin:0!important;
  color:#d9e5ff!important;
  font-size:15px!important;
  font-weight:500!important;
  cursor:pointer;
}
.remember-check input{
  appearance:none;
  width:20px;
  height:20px;
  margin:0;
  border-radius:5px;
  border:1px solid rgba(139,174,229,.65);
  background:rgba(8,26,62,.44);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05);
}
.remember-check input:checked{
  border-color:#2f82ff;
  background:linear-gradient(135deg,#2f82ff,#1558f0);
  box-shadow:0 0 0 3px rgba(47,130,255,.18);
}
.remember-check input:checked::after{
  content:"✓";
  display:block;
  color:#fff;
  font-size:14px;
  line-height:18px;
  text-align:center;
  font-weight:900;
}

.forgot-link{
  padding:0;
  border:0;
  background:transparent;
  color:#3b8bff;
  font-size:15px;
  font-weight:700;
}
.forgot-link:hover{color:#78b3ff;text-decoration:underline}

.premium-submit{
  position:relative;
  min-height:66px;
  border-radius:13px!important;
  background:linear-gradient(135deg,#2f8cff 0%,#1558ff 100%)!important;
  color:#fff!important;
  font-size:21px;
  font-weight:900;
  letter-spacing:-.02em;
  box-shadow:0 18px 36px rgba(21,88,255,.34), inset 0 1px 0 rgba(255,255,255,.22)!important;
}
.premium-submit:hover{
  background:linear-gradient(135deg,#56a4ff 0%,#1f65ff 100%)!important;
  transform:translateY(-1px);
  box-shadow:0 22px 42px rgba(21,88,255,.42), inset 0 1px 0 rgba(255,255,255,.24)!important;
}
.premium-submit .submit-arrow,
.premium-submit > span:last-child:not(:first-child){
  position:absolute;
  right:28px;
  font-size:30px;
  line-height:1;
}

.premium-alert{
  color:#dbeafe!important;
  background:rgba(37,99,235,.16)!important;
  border:1px solid rgba(96,165,250,.30);
  border-radius:14px!important;
  line-height:1.5;
}

.premium-auth-card .auth-message{
  min-height:0;
  margin:16px 0 0;
  padding:0;
  color:#ffb4b4;
  font-size:13px;
  font-weight:800;
  text-align:center;
}
.premium-auth-card .auth-message:not(:empty){
  padding:11px 14px;
  border-radius:12px;
  background:rgba(239,68,68,.12);
  border:1px solid rgba(248,113,113,.22);
}
.premium-auth-card .auth-message:empty{display:none}

.auth-secure-note{
  margin-top:30px;
  padding-top:22px;
  border-top:1px solid rgba(139,174,229,.18);
  display:flex;
  justify-content:center;
  align-items:center;
  gap:10px;
  color:#aebfdd;
  font-size:16px;
  font-weight:500;
}

@media(max-width:760px){
  .premium-auth-surface{padding:22px 14px;align-items:flex-start}
  .premium-auth-card{padding:34px 22px 26px;border-radius:26px;width:min(100%,560px);margin-top:22px}
  .premium-auth-card .auth-brand h1,.boot-card.premium-auth-card h1{font-size:34px}
  .premium-auth-card .auth-brand p,.boot-card.premium-auth-card p{font-size:14px;line-height:1.45}
  .azalys-building{transform:scale(.88);margin-bottom:10px}
  .premium-auth-form .control{height:58px;font-size:15px;padding-left:52px}
  .premium-input-wrap .input-icon{left:17px}
  .auth-options-row{align-items:flex-start;flex-direction:column;gap:12px;margin-bottom:22px}
  .premium-submit{min-height:60px;font-size:18px}
  .auth-secure-note{font-size:14px;margin-top:24px}
  .auth-dots{display:none}
}
/* AZALYS_BUNDLE_SOURCE_END: auth-premium.css */

/* AZALYS_BUNDLE_SOURCE 5/29: premium-suite.css | sha256=f2218f7386da5c829aba99638dc913fc3e6eecb31cf548b8c39c5e34b46a2405 */
/* ============================================================================
   AZALYS Cabinet — Premium suite v3.2.0
   Mise à niveau visuelle globale : login, cockpit, dossiers, modules,
   missions, collaborateurs, paramètres, modales et assistant.
   Aucun changement métier / API.
   ============================================================================ */
:root{
  --az-bg-0:#020b1f;
  --az-bg-1:#04183a;
  --az-bg-2:#082764;
  --az-glass:rgba(255,255,255,.86);
  --az-glass-strong:rgba(255,255,255,.94);
  --az-glass-dark:rgba(6,20,50,.72);
  --az-border:rgba(148,188,255,.24);
  --az-border-soft:rgba(203,213,225,.70);
  --az-text:#0d2345;
  --az-text-soft:#526985;
  --az-accent:#2f86ff;
  --az-accent-2:#1558ff;
  --az-cyan:#39c7ff;
  --az-shadow-lg:0 30px 90px rgba(2,8,23,.18);
  --az-shadow-md:0 18px 48px rgba(2,8,23,.13);
  --az-radius-xl:28px;
  --az-radius-lg:22px;
}

html{background:var(--az-bg-0)}
body{
  background:
    radial-gradient(900px 680px at 7% -7%,rgba(37,99,235,.42),transparent 58%),
    radial-gradient(900px 700px at 105% 92%,rgba(21,88,255,.34),transparent 62%),
    linear-gradient(135deg,var(--az-bg-0) 0%,var(--az-bg-1) 46%,#031126 100%)!important;
  color:var(--az-text);
  min-height:100vh;
}
body::before,
body::after{
  content:"";
  position:fixed;
  z-index:-1;
  pointer-events:none;
  border-radius:50%;
  border:1px solid rgba(47,130,255,.24);
}
body::before{width:780px;height:780px;left:-410px;bottom:-470px;box-shadow:0 0 70px rgba(47,130,255,.12)}
body::after{width:820px;height:820px;right:-430px;top:110px;box-shadow:0 0 90px rgba(47,130,255,.10)}

/* Login + chargement */
.boot-screen,.auth-screen{
  position:relative;
  overflow:hidden;
  min-height:100vh;
  padding:34px 22px!important;
  background:
    radial-gradient(1050px 700px at 10% 0%, rgba(37,99,235,.45), transparent 58%),
    radial-gradient(850px 620px at 90% 100%, rgba(37,99,235,.35), transparent 60%),
    linear-gradient(135deg,#051a3b 0%,#061536 42%,#021027 100%)!important;
}
.boot-screen::before,.auth-screen::before,
.boot-screen::after,.auth-screen::after{
  content:"";
  position:absolute;
  border-radius:50%;
  border:1px solid rgba(64,139,255,.35);
  pointer-events:none;
}
.boot-screen::before,.auth-screen::before{width:860px;height:860px;left:-430px;bottom:-500px;box-shadow:0 0 70px rgba(37,99,235,.18)}
.boot-screen::after,.auth-screen::after{width:860px;height:860px;right:-390px;top:145px;box-shadow:0 0 90px rgba(37,99,235,.16)}
.boot-card,.auth-card{
  position:relative;
  z-index:1;
  width:min(690px,94vw)!important;
  max-width:690px!important;
  padding:44px 60px 34px!important;
  border-radius:34px!important;
  color:#eaf2ff!important;
  background:linear-gradient(155deg,rgba(22,65,130,.52) 0%,rgba(8,30,73,.74) 52%,rgba(3,17,45,.82) 100%)!important;
  border:1px solid rgba(112,166,255,.36)!important;
  box-shadow:0 34px 120px rgba(0,0,0,.42),inset 0 1px 0 rgba(255,255,255,.12),inset 0 0 70px rgba(37,99,235,.12)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.auth-card .auth-brand h1,.boot-card h1{color:#fff!important;font-size:clamp(34px,4vw,48px)!important;line-height:1.08;font-weight:900;letter-spacing:-.04em;text-shadow:0 8px 24px rgba(0,0,0,.30)}
.auth-card .auth-brand p,.boot-card p{color:#b9c8e6!important;font-size:17px;font-weight:500}
.auth-card .brand-mark,.boot-card .brand-mark{display:grid;place-items:center;width:86px;height:86px;margin:0 auto 18px;border-radius:24px;background:linear-gradient(145deg,rgba(233,242,255,.24),rgba(47,130,255,.16));border:1px solid rgba(139,174,229,.26);filter:drop-shadow(0 18px 28px rgba(0,0,0,.28))}
.auth-card label{color:#f3f7ff!important;font-size:15px!important;font-weight:800!important;gap:10px!important;margin-bottom:18px!important}
.auth-card .control{
  height:62px!important;
  border-radius:14px!important;
  border:1px solid rgba(139,174,229,.38)!important;
  color:#eef6ff!important;
  background:rgba(6,22,55,.38)!important;
  font-size:17px!important;
  font-weight:600;
  padding:0 18px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.05)!important;
}
.auth-card .control::placeholder{color:rgba(185,200,230,.58)!important}
.auth-card .control:focus{border-color:rgba(91,154,255,.95)!important;background:rgba(10,31,76,.58)!important;box-shadow:0 0 0 4px rgba(47,130,255,.16), inset 0 1px 0 rgba(255,255,255,.07)!important}
.auth-card .btn.primary.full{min-height:66px;border-radius:14px!important;background:linear-gradient(135deg,#2f8cff 0%,#1558ff 100%)!important;color:#fff!important;font-size:21px;font-weight:900;box-shadow:0 18px 36px rgba(21,88,255,.34), inset 0 1px 0 rgba(255,255,255,.22)!important}
.auth-card .auth-message:not(:empty){padding:11px 14px;border-radius:12px;background:rgba(239,68,68,.12);border:1px solid rgba(248,113,113,.22);color:#ffb4b4!important;text-align:center}

/* Shell premium */
.main-shell{
  grid-template-columns:270px 1fr!important;
  background:transparent!important;
}
.side{
  background:linear-gradient(180deg,rgba(7,24,58,.94),rgba(3,14,35,.96))!important;
  border-right:1px solid rgba(112,166,255,.20)!important;
  box-shadow:18px 0 70px rgba(0,0,0,.22)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.side-brand{
  padding:24px 20px!important;
  border-bottom:1px solid rgba(139,174,229,.16)!important;
}
.side-brand .brand-mark.small{
  width:46px;height:46px;border-radius:16px;display:grid;place-items:center;font-size:25px!important;background:linear-gradient(145deg,#2f86ff,#113f9e);box-shadow:0 14px 32px rgba(47,130,255,.28)
}
.side-brand strong{font-size:20px;letter-spacing:-.04em;color:#fff}
.side-brand span{color:#9fb5d8!important;font-weight:650}
.nav-btn{
  margin:2px 0!important;
  padding:12px 14px!important;
  border-radius:14px!important;
  color:#aebfdd!important;
  font-weight:850!important;
  letter-spacing:-.01em;
}
.nav-btn:hover{background:rgba(47,130,255,.14)!important;color:#fff!important;transform:translateX(3px)}
.nav-btn.active{background:linear-gradient(135deg,rgba(47,130,255,.42),rgba(21,88,255,.24))!important;color:#fff!important;box-shadow:0 12px 30px rgba(21,88,255,.18),inset 0 1px 0 rgba(255,255,255,.10)!important}
.nav-btn.active::before{background:#61a4ff!important;box-shadow:0 0 20px rgba(97,164,255,.86)}
.side-footer .btn.ghost{background:rgba(255,255,255,.08)!important;color:#dbeafe!important;border-color:rgba(139,174,229,.16)!important}
.side-footer .btn.danger{color:#ffb4b4!important}

.main{
  position:relative;
  min-height:100vh;
  background:
    radial-gradient(850px 520px at 50% -10%,rgba(47,130,255,.14),transparent 62%),
    linear-gradient(180deg,rgba(238,244,255,.92),rgba(232,240,250,.96))!important;
}
.topbar{
  min-height:86px!important;
  padding:18px 28px!important;
  background:rgba(255,255,255,.78)!important;
  border-bottom:1px solid rgba(203,213,225,.72)!important;
  box-shadow:0 12px 42px rgba(15,23,42,.08)!important;
  backdrop-filter:blur(18px);
  -webkit-backdrop-filter:blur(18px);
}
.eyebrow{color:#516b90!important;letter-spacing:.10em!important}
.topbar h2{color:#0d2345!important;font-size:25px!important;letter-spacing:-.04em;font-weight:950}
.status-pill{border-radius:999px!important;border-color:rgba(203,213,225,.80)!important;background:rgba(255,255,255,.74)!important;color:#29415f!important;box-shadow:inset 0 1px 0 rgba(255,255,255,.70)}
.status-pill.ok{background:#dcfce7!important;color:#15803d!important;border-color:#bbf7d0!important}
.status-pill.err{background:#fee2e2!important;color:#b91c1c!important;border-color:#fecaca!important}
.view{padding:28px 30px!important}

/* Hero cockpit */
.cockpit-hero,.hero{
  position:relative;
  overflow:hidden;
  border-radius:32px!important;
  border:1px solid rgba(112,166,255,.30)!important;
  background:
    radial-gradient(620px 360px at 15% 10%,rgba(59,130,246,.45),transparent 60%),
    radial-gradient(460px 360px at 92% 0%,rgba(56,189,248,.20),transparent 58%),
    linear-gradient(135deg,#061b43 0%,#0b2a69 48%,#041229 100%)!important;
  color:#eaf2ff!important;
  box-shadow:0 32px 90px rgba(7,24,58,.24),inset 0 1px 0 rgba(255,255,255,.12)!important;
}
.cockpit-hero::before,.hero::before{content:"";position:absolute;inset:0;background:linear-gradient(110deg,rgba(255,255,255,.10),transparent 42%);pointer-events:none}
.cockpit-hero h1,.hero h1{color:#fff!important;font-size:clamp(28px,4vw,46px)!important;letter-spacing:-.055em;text-shadow:0 14px 30px rgba(0,0,0,.22)}
.cockpit-sub,.hero p,.cockpit-eyebrow{color:#c1d1ee!important}
.cockpit-aside{background:rgba(255,255,255,.10)!important;border-color:rgba(148,188,255,.20)!important;color:#eaf2ff!important;backdrop-filter:blur(12px)}
.cockpit-live{background:rgba(34,197,94,.18)!important;color:#86efac!important;border-color:rgba(134,239,172,.30)!important}

/* Cartes, KPIs, listes */
.card,.kpi,.module-card,.dashboard-panel,.collab-pro-panel,.collab-template-card,.modal-card,.modal{
  border:1px solid rgba(203,213,225,.72)!important;
  border-radius:var(--az-radius-lg)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,251,255,.86))!important;
  box-shadow:var(--az-shadow-md)!important;
  backdrop-filter:blur(16px);
  -webkit-backdrop-filter:blur(16px);
}
.card:hover,.kpi:hover,.module-card:hover,.dashboard-panel:hover,.collab-pro-panel:hover{box-shadow:var(--az-shadow-lg)!important;transform:translateY(-2px)}
.card-head,.collab-pro-panel-head,.modal-head{
  background:linear-gradient(180deg,rgba(255,255,255,.72),rgba(248,251,255,.70))!important;
  border-bottom:1px solid rgba(203,213,225,.70)!important;
}
.card-head h3,.card-title,.collab-pro-panel-head h3,.modal-head h3{color:#0d2345!important;font-weight:950!important;letter-spacing:-.025em}
.muted,.item-sub,.row-sub{color:#5f7390!important}
.kpi{position:relative;overflow:hidden;border-left:0!important;padding:20px 20px 18px!important}
.kpi::before{content:"";position:absolute;inset:0 auto 0 0;width:5px;background:linear-gradient(180deg,#2f86ff,#1558ff);border-radius:0 999px 999px 0}
.kpi.green::before{background:linear-gradient(180deg,#22c55e,#15803d)}
.kpi.gold::before{background:linear-gradient(180deg,#f59e0b,#d97706)}
.kpi.red::before{background:linear-gradient(180deg,#ef4444,#dc2626)}
.kpi.purple::before{background:linear-gradient(180deg,#8b5cf6,#7c3aed)}
.kpi-label{color:#526985!important;letter-spacing:.09em!important;font-weight:950!important}
.kpi-value{color:#0d2345!important;font-size:32px!important;letter-spacing:-.04em}
.item,.project-item,.collab-log-item,.collab-copy-choice,.collab-preview-card{
  border:1px solid rgba(203,213,225,.78)!important;
  border-radius:17px!important;
  background:rgba(255,255,255,.74)!important;
  box-shadow:0 8px 24px rgba(2,8,23,.045)!important;
}
.item:hover,.project-item:hover{background:#fff!important;border-color:rgba(47,130,255,.34)!important}
.item-title,.row-title{color:#0d2345!important;font-weight:950!important}

/* Actions + contrôles */
.btn{border-radius:13px!important;font-weight:900!important;min-height:40px;letter-spacing:-.01em;box-shadow:0 8px 18px rgba(2,8,23,.05)}
.btn.primary,.btn-primary{background:linear-gradient(135deg,#2f8cff,#1558ff)!important;color:#fff!important;box-shadow:0 14px 30px rgba(21,88,255,.24), inset 0 1px 0 rgba(255,255,255,.18)!important}
.btn.primary:hover,.btn-primary:hover{background:linear-gradient(135deg,#56a4ff,#1f65ff)!important;transform:translateY(-1px)}
.btn.ghost,.btn-ghost{background:rgba(255,255,255,.70)!important;color:#0d2345!important;border:1px solid rgba(203,213,225,.88)!important}
.btn.ghost:hover,.btn-ghost:hover{background:#fff!important;border-color:rgba(47,130,255,.34)!important;transform:translateY(-1px)}
.btn.danger,.btn-danger{color:#dc2626!important}
.link-btn{color:#1558ff!important;font-weight:950!important}
.control,.form-control{
  border-radius:14px!important;
  border:1px solid rgba(187,199,217,.95)!important;
  background:rgba(255,255,255,.82)!important;
  min-height:42px;
  color:#0d2345!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.72)!important;
}
.control:focus,.form-control:focus{border-color:rgba(47,130,255,.84)!important;box-shadow:0 0 0 4px rgba(47,130,255,.14),inset 0 1px 0 rgba(255,255,255,.72)!important;background:#fff!important}
.panel-tools{background:rgba(255,255,255,.60);border:1px solid rgba(203,213,225,.70);border-radius:20px;padding:12px;box-shadow:0 14px 35px rgba(2,8,23,.06);backdrop-filter:blur(12px)}

/* Tableaux */
.table-wrap{border-radius:0 0 var(--az-radius-lg) var(--az-radius-lg);background:rgba(255,255,255,.50)}
table{border-collapse:separate!important;border-spacing:0!important}
th{background:linear-gradient(180deg,#f8fbff,#eef4fb)!important;color:#526985!important;font-weight:950!important;letter-spacing:.08em!important;border-bottom:1px solid rgba(203,213,225,.78)!important}
td{background:rgba(255,255,255,.74);border-bottom:1px solid rgba(226,232,240,.82)!important}
tr:hover td{background:#fff!important}
.badge{box-shadow:inset 0 0 0 1px rgba(255,255,255,.35);font-weight:950!important}

/* Modules */
.modules-grid,.home-module-grid{gap:18px!important}
.module-card,.home-module-card{
  position:relative;
  overflow:hidden;
  border-radius:22px!important;
  border:1px solid rgba(203,213,225,.74)!important;
  background:linear-gradient(145deg,rgba(255,255,255,.93),rgba(239,246,255,.84))!important;
  box-shadow:0 18px 46px rgba(2,8,23,.09)!important;
}
.module-card::before,.home-module-card::before{content:"";position:absolute;left:0;right:0;top:0;height:4px;background:linear-gradient(90deg,#2f86ff,#39c7ff,#7c3aed)}
.module-card .ico,.home-module-icon{filter:drop-shadow(0 10px 18px rgba(37,99,235,.16))}
.module-card h4,.home-module-title{color:#0d2345!important;font-weight:950!important}

/* Collaborateurs premium, sans casser le layout horizontal final */
.collab-pro-wrap{max-width:none!important}
.collab-pro-head{
  border-radius:30px!important;
  border:1px solid rgba(112,166,255,.30)!important;
  background:
    radial-gradient(520px 320px at 16% 0%,rgba(59,130,246,.34),transparent 62%),
    linear-gradient(135deg,#061b43,#0b2a69 55%,#041229)!important;
  color:#eaf2ff!important;
  box-shadow:0 32px 90px rgba(7,24,58,.18), inset 0 1px 0 rgba(255,255,255,.10)!important;
}
.collab-pro-head h3{color:#fff!important;font-size:27px!important;letter-spacing:-.04em}
.collab-pro-head p,.collab-pro-eyebrow{color:#c1d1ee!important}
.collab-pro-kpi,.collab-pro-summary>div{
  border-radius:18px!important;
  border:1px solid rgba(203,213,225,.76)!important;
  background:rgba(255,255,255,.78)!important;
  box-shadow:0 12px 30px rgba(2,8,23,.06)!important;
}
.collab-pro-tabs{border-radius:18px!important;background:rgba(255,255,255,.78)!important;border:1px solid rgba(203,213,225,.76)!important;box-shadow:0 14px 36px rgba(2,8,23,.06)!important}
.collab-pro-tabs button{border-radius:13px!important;color:#526985!important;font-weight:950!important}
.collab-pro-tabs button.active{background:linear-gradient(135deg,#2f8cff,#1558ff)!important;color:#fff!important;box-shadow:0 12px 26px rgba(21,88,255,.22)!important}
.collab-person-card,.collab-right-row{background:rgba(255,255,255,.82)!important;border:1px solid rgba(203,213,225,.78)!important;border-radius:19px!important;box-shadow:0 10px 25px rgba(2,8,23,.05)!important}
.collab-person-card.active,.collab-right-row.is-on{border-color:rgba(47,130,255,.45)!important;box-shadow:0 18px 40px rgba(47,130,255,.12)!important}
.collab-pro-avatar,.collab-person-avatar{background:linear-gradient(135deg,#2f8cff,#7c3aed)!important;color:#fff!important;box-shadow:0 12px 28px rgba(47,130,255,.24)!important}
.collab-seg{background:rgba(255,255,255,.82)!important;border-color:rgba(203,213,225,.88)!important;border-radius:14px!important}
.collab-seg button[aria-pressed="true"]{background:linear-gradient(135deg,#2f8cff,#1558ff)!important;color:#fff!important}
.collab-module-pill{background:rgba(255,255,255,.78)!important;border-color:rgba(203,213,225,.84)!important}
.collab-module-pill.checked{background:#eef2ff!important;border-color:#c4b5fd!important;color:#4c1d95!important}

/* Paramètres, alertes, modales */
.modal{border-radius:26px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 34px 110px rgba(2,8,23,.30)!important}
.modal-card{border-radius:26px!important;background:rgba(255,255,255,.96)!important;box-shadow:0 34px 110px rgba(2,8,23,.30)!important}
.modal{backdrop-filter:blur(6px)}
.modal:has(.modal-card),.modal-overlay{background:rgba(3,13,31,.62)!important;backdrop-filter:blur(8px)}
.toast{border-radius:16px!important;background:rgba(255,255,255,.94)!important;box-shadow:0 18px 50px rgba(2,8,23,.18)!important}
.alert{border-radius:16px!important;border:1px solid rgba(203,213,225,.72)}

/* Assistant AI premium */
.ai-robot-btn{border-radius:25px!important;background:linear-gradient(135deg,#2f8cff,#7c3aed)!important;box-shadow:0 22px 58px rgba(47,130,255,.38),0 0 0 1px rgba(255,255,255,.28) inset!important}
.ai-floating-panel{border-radius:28px!important;border-color:rgba(148,188,255,.36)!important;background:rgba(255,255,255,.92)!important;box-shadow:0 34px 96px rgba(2,8,23,.26)!important}
.ai-floating-head{background:linear-gradient(135deg,#061b43,#0b2a69)!important;color:#eaf2ff!important;border-bottom-color:rgba(148,188,255,.24)!important}
.ai-head-left strong{color:#fff!important}.ai-head-left span{color:#b9c8e6!important}.ai-head-actions .icon-btn{background:rgba(255,255,255,.12)!important;color:#fff!important;border-color:rgba(255,255,255,.14)!important}

/* Responsive */
@media(max-width:1100px){
  .main-shell{grid-template-columns:1fr!important}
  .side{height:auto!important;position:relative!important}
  .side-nav{display:flex!important;flex-direction:row!important;overflow:auto;padding:12px!important}
  .nav-btn{white-space:nowrap}
  .view{padding:20px!important}
}
@media(max-width:760px){
  .boot-card,.auth-card{padding:34px 22px 26px!important;border-radius:26px!important}
  .topbar{padding:16px!important}
  .topbar h2{font-size:22px!important}
  .view{padding:14px!important}
  .panel-tools{grid-template-columns:1fr!important}
}
@media(prefers-reduced-motion:reduce){
  .card:hover,.kpi:hover,.module-card:hover,.dashboard-panel:hover,.collab-pro-panel:hover,.btn.primary:hover,.btn.ghost:hover{transform:none!important}
}
/* AZALYS_BUNDLE_SOURCE_END: premium-suite.css */

/* AZALYS_BUNDLE_SOURCE 6/29: collaborateurs-horizontal-final.css | sha256=11e29866d2cdc0d804342cf1d77c727ee518cf81b5319db7305212438872283e */
/* AZALYS — Collaborateurs & droits : affichage final en lignes horizontales
   Correctif unique chargé en dernier. Ne modifie aucune règle métier. */

/* Equipe cabinet : chaque collaborateur = une ligne pleine largeur, contenu horizontal. */
html body #view-collaborateurs #collab-cards-list.collab-pro-list,
html body #collab-tab-equipe #collab-cards-list.collab-pro-list{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
  max-height:none !important;
  overflow:visible !important;
  padding:14px !important;
}

html body #view-collaborateurs #collab-cards-list .collab-pro-person,
html body #collab-tab-equipe #collab-cards-list .collab-pro-person{
  display:grid !important;
  grid-template-columns:52px minmax(260px,1fr) auto !important;
  grid-template-areas:"avatar main actions" !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  padding:14px 16px !important;
  border-radius:18px !important;
}

html body #view-collaborateurs #collab-cards-list .collab-pro-avatar,
html body #collab-tab-equipe #collab-cards-list .collab-pro-avatar{
  grid-area:avatar !important;
}
html body #view-collaborateurs #collab-cards-list .collab-person-main,
html body #collab-tab-equipe #collab-cards-list .collab-person-main{
  grid-area:main !important;
  min-width:0 !important;
}
html body #view-collaborateurs #collab-cards-list .collab-person-actions,
html body #collab-tab-equipe #collab-cards-list .collab-person-actions{
  grid-area:actions !important;
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-end !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  width:auto !important;
  min-width:max-content !important;
  margin:0 !important;
}
html body #view-collaborateurs #collab-cards-list .collab-person-actions .btn,
html body #collab-tab-equipe #collab-cards-list .collab-person-actions .btn{
  white-space:nowrap !important;
}

/* Cabinet / droits : chaque dossier = une ligne horizontale, modules alignés à droite. */
html body #view-collaborateurs #collab-rights-zone.collab-pro-rights,
html body #collab-tab-equipe #collab-rights-zone.collab-pro-rights{
  display:flex !important;
  flex-direction:column !important;
  gap:12px !important;
  width:100% !important;
  max-height:none !important;
  overflow:visible !important;
  padding:14px !important;
}
html body #view-collaborateurs #collab-rights-zone.collab-pro-rights.empty,
html body #collab-tab-equipe #collab-rights-zone.collab-pro-rights.empty{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  min-height:220px !important;
}
html body #view-collaborateurs #collab-rights-zone .collab-right-row,
html body #collab-tab-equipe #collab-rights-zone .collab-right-row{
  display:grid !important;
  grid-template-columns:minmax(280px,.72fr) minmax(420px,1.28fr) !important;
  align-items:stretch !important;
  gap:0 !important;
  width:100% !important;
  min-width:0 !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:18px !important;
}
html body #view-collaborateurs #collab-rights-zone .collab-right-row-head,
html body #collab-tab-equipe #collab-rights-zone .collab-right-row-head{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:14px !important;
  min-width:0 !important;
  border-right:1px solid #e2e8f0 !important;
  border-bottom:0 !important;
}
html body #view-collaborateurs #collab-rights-zone .collab-row-body,
html body #view-collaborateurs #collab-rights-zone .collab-row-inner,
html body #collab-tab-equipe #collab-rights-zone .collab-row-body,
html body #collab-tab-equipe #collab-rights-zone .collab-row-inner{
  min-width:0 !important;
  width:100% !important;
}
html body #view-collaborateurs #collab-rights-zone .collab-row-options,
html body #collab-tab-equipe #collab-rights-zone .collab-row-options{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:nowrap !important;
  gap:10px !important;
  width:100% !important;
  min-width:0 !important;
  height:100% !important;
  padding:12px 14px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  background:#f8fafc !important;
  scrollbar-width:thin !important;
}
html body #view-collaborateurs #collab-rights-zone .collab-row-options .hint,
html body #view-collaborateurs #collab-rights-zone .collab-row-options .collab-seg,
html body #view-collaborateurs #collab-rights-zone .collab-row-options .collab-module-pill,
html body #collab-tab-equipe #collab-rights-zone .collab-row-options .hint,
html body #collab-tab-equipe #collab-rights-zone .collab-row-options .collab-seg,
html body #collab-tab-equipe #collab-rights-zone .collab-row-options .collab-module-pill{
  flex:0 0 auto !important;
  white-space:nowrap !important;
}
html body #view-collaborateurs #collab-rights-zone .collab-row-options .collab-modules-inline,
html body #view-collaborateurs #collab-rights-zone .collab-row-options .collab-modules,
html body #collab-tab-equipe #collab-rights-zone .collab-row-options .collab-modules-inline,
html body #collab-tab-equipe #collab-rights-zone .collab-row-options .collab-modules{
  display:inline-flex !important;
  flex:0 0 auto !important;
  flex-direction:row !important;
  align-items:center !important;
  flex-wrap:nowrap !important;
  gap:8px !important;
  padding:0 !important;
  margin:0 !important;
  border:0 !important;
  background:transparent !important;
}

@media (max-width:980px){
  html body #view-collaborateurs #collab-cards-list .collab-pro-person,
  html body #collab-tab-equipe #collab-cards-list .collab-pro-person{
    grid-template-columns:46px minmax(0,1fr) !important;
    grid-template-areas:"avatar main" "actions actions" !important;
  }
  html body #view-collaborateurs #collab-cards-list .collab-person-actions,
  html body #collab-tab-equipe #collab-cards-list .collab-person-actions{
    justify-content:flex-start !important;
    flex-wrap:wrap !important;
    min-width:0 !important;
    width:100% !important;
  }
  html body #view-collaborateurs #collab-rights-zone .collab-right-row,
  html body #collab-tab-equipe #collab-rights-zone .collab-right-row{
    grid-template-columns:1fr !important;
  }
  html body #view-collaborateurs #collab-rights-zone .collab-right-row-head,
  html body #collab-tab-equipe #collab-rights-zone .collab-right-row-head{
    border-right:0 !important;
    border-bottom:1px solid #e2e8f0 !important;
  }
  html body #view-collaborateurs #collab-rights-zone .collab-row-options,
  html body #collab-tab-equipe #collab-rights-zone .collab-row-options,
  html body #view-collaborateurs #collab-rights-zone .collab-row-options .collab-modules-inline,
  html body #view-collaborateurs #collab-rights-zone .collab-row-options .collab-modules,
  html body #collab-tab-equipe #collab-rights-zone .collab-row-options .collab-modules-inline,
  html body #collab-tab-equipe #collab-rights-zone .collab-row-options .collab-modules{
    flex-wrap:wrap !important;
    overflow-x:visible !important;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: collaborateurs-horizontal-final.css */

/* AZALYS_BUNDLE_SOURCE 7/29: dossier-accordion-final.css | sha256=bfa38019996f33939bb0e235d7de8e7541bc47ecb9be2e33d5015b95827cd1b2 */

/* =========================================================
   AZALYS - Correctif final Accordéon Fiche Dossier
   Objectif : remplacer le rendu HTML brut par un vrai accordéon premium
   Chargé en dernier volontairement.
   ========================================================= */

#dossier-modal .modal-card.wide{
  max-width: 1080px !important;
  width: min(1080px, calc(100vw - 44px)) !important;
  border-radius: 26px !important;
  overflow: hidden !important;
}

#dossier-modal .dossier-acc{
  display: flex !important;
  flex-direction: column !important;
  gap: 14px !important;
  margin: 18px 0 10px !important;
  width: 100% !important;
}

#dossier-modal .dossier-acc-item{
  display: block !important;
  width: 100% !important;
  border: 1px solid rgba(196, 210, 232, .95) !important;
  border-radius: 18px !important;
  background: rgba(255,255,255,.94) !important;
  overflow: hidden !important;
  box-shadow: 0 10px 28px rgba(15, 45, 90, .045) !important;
}

#dossier-modal .dossier-acc-item.is-open{
  border-color: rgba(47, 120, 255, .28) !important;
  box-shadow: 0 16px 38px rgba(15, 45, 90, .075) !important;
}

#dossier-modal .dossier-acc-head{
  appearance: none !important;
  -webkit-appearance: none !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  width: 100% !important;
  min-height: 64px !important;
  padding: 18px 24px !important;
  margin: 0 !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, #ffffff 0%, #f8fbff 100%) !important;
  color: #0b2b5c !important;
  font-family: inherit !important;
  font-size: 18px !important;
  line-height: 1.2 !important;
  font-weight: 800 !important;
  text-align: left !important;
  cursor: pointer !important;
  box-shadow: none !important;
}

#dossier-modal .dossier-acc-head:hover{
  background: #f3f7ff !important;
}

#dossier-modal .dossier-acc-title{
  display: inline-flex !important;
  align-items: center !important;
  gap: 12px !important;
  color: #0b2b5c !important;
  font-size: 18px !important;
  font-weight: 800 !important;
}

#dossier-modal .dossier-acc-num{
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 30px !important;
  height: 30px !important;
  min-width: 30px !important;
  border-radius: 11px !important;
  background: linear-gradient(135deg, #eaf2ff, #edf4ff) !important;
  color: #1d5dff !important;
  font-size: 14px !important;
  font-weight: 900 !important;
}

#dossier-modal .dossier-acc-item.is-open .dossier-acc-num{
  background: linear-gradient(135deg, #2f8cff, #1558ff) !important;
  color: #fff !important;
}

#dossier-modal .dossier-acc-chevron{
  display: block !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  max-width: 22px !important;
  max-height: 22px !important;
  color: #0b2b5c !important;
  transform: rotate(0deg) !important;
  transition: transform .22s ease !important;
  flex: 0 0 22px !important;
}

#dossier-modal .dossier-acc-item.is-open .dossier-acc-chevron{
  transform: rotate(180deg) !important;
}

#dossier-modal .dossier-acc-body{
  display: none !important;
  width: 100% !important;
  border-top: 1px solid rgba(210, 221, 238, .9) !important;
  background: #fff !important;
}

#dossier-modal .dossier-acc-item.is-open .dossier-acc-body{
  display: block !important;
}

#dossier-modal .dossier-acc-inner{
  display: block !important;
  padding: 22px 24px 26px !important;
  overflow: visible !important;
  min-height: 0 !important;
}

#dossier-modal .module-checks{
  display: grid !important;
  grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
  gap: 16px !important;
  width: 100% !important;
}

#dossier-modal .module-checks label,
#dossier-modal .module-check{
  min-height: 92px !important;
  border: 1px solid rgba(210, 221, 238, .95) !important;
  border-radius: 16px !important;
  background: #fbfdff !important;
  box-shadow: 0 8px 20px rgba(15, 45, 90, .035) !important;
}

#dossier-modal .modal-actions{
  display: flex !important;
  justify-content: flex-end !important;
  gap: 12px !important;
  padding-top: 18px !important;
}

@media (max-width: 760px){
  #dossier-modal .module-checks{grid-template-columns: 1fr !important}
  #dossier-modal .dossier-acc-head{padding: 16px 18px !important}
}

/* AZALYS - Correctif final contenu accordéon équipe/client */
#dossier-modal .dossier-empty-note{
  display:block !important;
  padding:18px !important;
  border:1px dashed rgba(151,168,196,.85) !important;
  border-radius:16px !important;
  background:#f8fbff !important;
  color:#30415f !important;
}
#dossier-modal .dossier-empty-note strong{display:block !important;color:#0b2b5c !important;margin-bottom:6px !important;font-weight:800 !important;}
#dossier-modal .dossier-empty-note p{margin:0 0 12px !important;color:#63708a !important;font-weight:500 !important;}
#dossier-modal .dossier-access-panel:empty::before{
  content:'Chargement…';
  display:block;
  padding:18px;
  border:1px dashed rgba(151,168,196,.85);
  border-radius:16px;
  background:#f8fbff;
  color:#63708a;
}


/* === HOTFIX final - affichage propre des comptes client dans l'accordéon === */
#dossier-client-panel .dossier-client-cards,
#dossier-team-panel .dossier-client-cards{
  display:grid;
  grid-template-columns:1fr;
  gap:12px;
  margin:14px 0;
}
#dossier-client-panel .dossier-client-card,
#dossier-team-panel .dossier-client-card{
  display:flex!important;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  width:100%;
  padding:14px 16px;
  border:1px solid #dbe7f5;
  border-radius:18px;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%);
  box-shadow:0 10px 26px rgba(15,35,75,.06);
}
#dossier-client-panel .dossier-client-main,
#dossier-team-panel .dossier-client-main{
  display:flex;
  align-items:center;
  gap:12px;
  min-width:0;
}
#dossier-client-panel .dossier-client-main input,
#dossier-team-panel .dossier-client-main input{
  width:20px!important;
  height:20px!important;
  accent-color:#2563eb;
  flex:0 0 auto;
}
#dossier-client-panel .dossier-client-avatar,
#dossier-team-panel .dossier-client-avatar{
  width:42px;
  height:42px;
  border-radius:14px;
  display:grid;
  place-items:center;
  color:#fff;
  font-weight:800;
  background:linear-gradient(135deg,#2f80ff,#694cf6);
  flex:0 0 auto;
}
#dossier-client-panel .dossier-client-text,
#dossier-team-panel .dossier-client-text{
  display:flex;
  flex-direction:column;
  gap:3px;
  min-width:0;
}
#dossier-client-panel .dossier-client-text strong,
#dossier-team-panel .dossier-client-text strong{
  color:#0b2346;
  font-size:14px;
  line-height:1.2;
}
#dossier-client-panel .dossier-client-text small,
#dossier-team-panel .dossier-client-text small{
  color:#60738f;
  font-size:12px;
  font-weight:600;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
#dossier-client-panel .dossier-client-actions,
#dossier-team-panel .dossier-client-actions{
  display:flex;
  align-items:center;
  gap:8px;
  flex:0 0 auto;
}
#dossier-client-panel .dossier-client-badge,
#dossier-team-panel .dossier-client-badge{
  display:inline-flex;
  align-items:center;
  padding:5px 10px;
  border-radius:999px;
  background:#eaf2ff;
  color:#1d4ed8;
  font-size:11px;
  font-weight:800;
}
@media (max-width:760px){
  #dossier-client-panel .dossier-client-card,
  #dossier-team-panel .dossier-client-card{align-items:flex-start;flex-direction:column}
  #dossier-client-panel .dossier-client-actions,
  #dossier-team-panel .dossier-client-actions{width:100%;justify-content:flex-start}
}

/* =========================================================
   AZALYS - Refonte premium fiche dossier / accordéon
   Objectif : sections empilées propres, une section ouverte,
   scroll interne du formulaire, actions stables en bas.
   ========================================================= */
#dossier-modal.modal{
  align-items:center !important;
  justify-content:center !important;
  padding:18px !important;
  background:rgba(10,22,44,.68) !important;
  backdrop-filter:blur(8px) !important;
}
#dossier-modal .modal-card.wide{
  width:min(1180px, calc(100vw - 36px)) !important;
  max-width:1180px !important;
  max-height:calc(100vh - 36px) !important;
  border-radius:28px !important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%) !important;
  box-shadow:0 30px 90px rgba(5,18,40,.35) !important;
  overflow:hidden !important;
  display:flex !important;
  flex-direction:column !important;
}
#dossier-modal .modal-head{
  flex:0 0 auto !important;
  min-height:62px !important;
  padding:18px 24px !important;
  border-bottom:1px solid rgba(205,216,232,.85) !important;
  background:rgba(255,255,255,.92) !important;
}
#dossier-modal .modal-head h3{
  color:#08264f !important;
  font-size:18px !important;
  font-weight:800 !important;
  letter-spacing:-.01em !important;
}
#dossier-modal #dossier-form{
  flex:1 1 auto !important;
  min-height:0 !important;
  overflow-y:auto !important;
  overflow-x:hidden !important;
  padding:22px 24px 0 !important;
  scrollbar-width:thin !important;
  scrollbar-color:#91a4c0 #eef4fb !important;
}
#dossier-modal #dossier-form::-webkit-scrollbar{width:10px !important;}
#dossier-modal #dossier-form::-webkit-scrollbar-track{background:#eef4fb !important;border-radius:999px !important;}
#dossier-modal #dossier-form::-webkit-scrollbar-thumb{background:#91a4c0 !important;border-radius:999px !important;border:2px solid #eef4fb !important;}
#dossier-modal .dossier-acc{
  gap:16px !important;
  margin:0 0 20px !important;
}
#dossier-modal .dossier-acc-item{
  border:1px solid rgba(190,205,226,.88) !important;
  border-radius:18px !important;
  background:#fff !important;
  box-shadow:0 12px 34px rgba(12,35,72,.055) !important;
  overflow:hidden !important;
}
#dossier-modal .dossier-acc-item.is-open{
  border-color:rgba(47,120,255,.32) !important;
  box-shadow:0 18px 48px rgba(12,35,72,.075) !important;
}
#dossier-modal .dossier-acc-head{
  min-height:74px !important;
  padding:18px 24px !important;
  background:#fff !important;
  border:0 !important;
}
#dossier-modal .dossier-acc-head:hover{background:#f8fbff !important;}
#dossier-modal .dossier-acc-title{
  gap:16px !important;
  align-items:center !important;
}
#dossier-modal .dossier-acc-text{
  display:flex !important;
  flex-direction:column !important;
  gap:4px !important;
}
#dossier-modal .dossier-acc-text strong{
  font-size:20px !important;
  line-height:1.1 !important;
  font-weight:800 !important;
  color:#08264f !important;
}
#dossier-modal .dossier-acc-text small{
  display:block !important;
  font-size:13px !important;
  line-height:1.35 !important;
  font-weight:500 !important;
  color:#657590 !important;
}
#dossier-modal .dossier-acc-num{
  width:34px !important;
  height:34px !important;
  min-width:34px !important;
  border-radius:12px !important;
  background:#eef5ff !important;
  color:#1d64ff !important;
  box-shadow:0 4px 12px rgba(30,100,255,.08) !important;
}
#dossier-modal .dossier-acc-item.is-open .dossier-acc-num{
  background:linear-gradient(135deg,#3b8bff 0%,#1559ff 100%) !important;
  color:#fff !important;
}
#dossier-modal .dossier-acc-chevron{
  width:20px !important;
  height:20px !important;
  color:#08264f !important;
}
#dossier-modal .dossier-acc-body{
  background:#fff !important;
  border-top:1px solid rgba(205,216,232,.85) !important;
}
#dossier-modal .dossier-acc-inner{
  padding:24px 28px 30px !important;
}
#dossier-modal .form-grid.three{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:20px 24px !important;
}
#dossier-modal .form-grid label{
  color:#33425a !important;
  font-size:13px !important;
  font-weight:700 !important;
}
#dossier-modal .control,
#dossier-modal input.control,
#dossier-modal select.control,
#dossier-modal textarea.control{
  min-height:52px !important;
  border:1px solid #cbd8ea !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#09254e !important;
  font-size:14px !important;
  font-weight:600 !important;
  box-shadow:0 4px 16px rgba(12,35,72,.035) !important;
}
#dossier-modal textarea.control{
  min-height:98px !important;
}
#dossier-modal .module-checks{
  grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  gap:16px 20px !important;
}
#dossier-modal .module-checks label,
#dossier-modal .module-check{
  min-height:96px !important;
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  padding:18px 20px !important;
  border:1px solid #d8e4f2 !important;
  border-radius:17px !important;
  background:linear-gradient(180deg,#ffffff 0%,#fbfdff 100%) !important;
  box-shadow:0 10px 28px rgba(12,35,72,.045) !important;
}
#dossier-modal .module-checks input[type="checkbox"]{
  width:22px !important;
  height:22px !important;
  accent-color:#2378ff !important;
  flex:0 0 auto !important;
}
#dossier-modal .dossier-config-card{
  border:1px solid #d8e4f2 !important;
  border-radius:18px !important;
  padding:20px !important;
  background:#fbfdff !important;
  box-shadow:0 12px 28px rgba(12,35,72,.04) !important;
}
#dossier-modal .dossier-user-list{
  margin:16px 0 !important;
  display:grid !important;
  gap:12px !important;
}
#dossier-modal .dossier-user-line{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  padding:14px 16px !important;
  border:1px solid #d8e4f2 !important;
  border-radius:16px !important;
  background:#fff !important;
}
#dossier-modal .dossier-user-line input[type="checkbox"]{
  width:20px !important;
  height:20px !important;
  accent-color:#2378ff !important;
}
#dossier-modal .dossier-client-card{
  padding:16px !important;
  border-radius:18px !important;
}
#dossier-modal .modal-actions{
  position:sticky !important;
  bottom:0 !important;
  z-index:5 !important;
  margin:0 -24px !important;
  padding:18px 24px !important;
  background:linear-gradient(180deg,rgba(248,251,255,.72) 0%,#ffffff 35%) !important;
  border-top:1px solid rgba(205,216,232,.85) !important;
  box-shadow:0 -12px 32px rgba(12,35,72,.06) !important;
}
#dossier-modal .btn.primary{
  min-height:46px !important;
  border-radius:14px !important;
  padding:0 22px !important;
  background:linear-gradient(135deg,#2f8cff,#1558ff) !important;
  box-shadow:0 12px 24px rgba(21,88,255,.22) !important;
}
#dossier-modal .btn.ghost{
  min-height:46px !important;
  border-radius:14px !important;
  padding:0 20px !important;
  background:#fff !important;
}
@media (max-width:900px){
  #dossier-modal .form-grid.three{grid-template-columns:1fr !important;}
  #dossier-modal .span-3{grid-column:auto !important;}
  #dossier-modal .module-checks{grid-template-columns:1fr !important;}
}
@media (max-width:620px){
  #dossier-modal.modal{padding:8px !important;}
  #dossier-modal .modal-card.wide{width:calc(100vw - 16px) !important; max-height:calc(100vh - 16px) !important; border-radius:22px !important;}
  #dossier-modal #dossier-form{padding:16px 14px 0 !important;}
  #dossier-modal .dossier-acc-head{padding:16px !important;}
  #dossier-modal .dossier-acc-inner{padding:18px 16px 22px !important;}
  #dossier-modal .dossier-acc-text small{display:none !important;}
  #dossier-modal .modal-actions{margin:0 -14px !important; padding:14px !important;}
}

/* V20.57 — fiscalité explicite à la création du dossier */
#dossier-modal .dossier-fiscal-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}
#dossier-modal .dossier-fiscal-head .section-title{margin:0 0 4px}
#dossier-modal .dossier-fiscal-head .muted{margin:0;max-width:760px}
#dossier-modal .dossier-fiscal-check{
  display:flex;
  align-items:flex-start;
  gap:10px;
  min-height:44px;
  padding:11px 13px;
  border:1px solid #dbe5f2;
  border-radius:12px;
  background:#f8fbff;
  line-height:1.4;
}
#dossier-modal .dossier-fiscal-check input{
  width:18px;
  height:18px;
  margin:1px 0 0;
  flex:0 0 auto;
}
#dossier-modal .dossier-fiscal-confirm{
  border-color:#b9ddcf;
  background:#f2fbf7;
}
#dossier-modal #dossier-tva-suggestion{margin:14px 0 0}
#dossier-modal #dossier-tva-fields[data-editable="false"]{opacity:.72}
#dossier-modal .dossier-tva-review{
  display:grid;
  gap:14px;
  margin-top:18px;
  padding:18px;
  border:1px solid #cbdcf0;
  border-radius:16px;
  background:linear-gradient(180deg,#f8fbff 0%,#fff 100%);
}
#dossier-modal .dossier-tva-review.hidden{display:none!important}
#dossier-modal .dossier-tva-review-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
#dossier-modal .dossier-tva-review-head strong{display:block;color:#08264f;font-size:17px}
#dossier-modal .dossier-tva-review-head p{margin:4px 0 0;color:#657590;font-size:12px;line-height:1.45}
#dossier-modal .dossier-tva-review-decision{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
  min-height:46px;
  padding:10px 12px;
  border:1px solid #c8e5d8;
  border-radius:12px;
  background:#f3fbf7;
}
#dossier-modal .dossier-tva-review-decision span:last-child{color:#52647e;font-size:12px}
#dossier-modal .dossier-tva-review-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:14px;
}
#dossier-modal .dossier-tva-review-form .span-2{grid-column:1/-1}
#dossier-modal .dossier-tva-review-result{
  display:grid;
  gap:10px;
  padding:15px;
  border:1px solid #d8e4f2;
  border-radius:14px;
  background:#fff;
}
#dossier-modal .dossier-tva-review-result>strong{color:#08264f;font-size:18px}
#dossier-modal .dossier-tva-review-result>p{margin:0;color:#52647e;line-height:1.45}
#dossier-modal .dossier-tva-review-actions{display:flex;align-items:center;flex-wrap:wrap;gap:9px}
#dossier-modal .dossier-tva-review-actions .btn{min-height:44px!important}
#dossier-modal .dossier-tva-review-law{margin:0;color:#52647e;font-size:12px;line-height:1.45}
#dossier-modal .tva-option-request-panel{
  display:grid;
  gap:12px;
  padding:15px;
  border:1px solid #bedfd7;
  border-radius:14px;
  background:linear-gradient(180deg,#f2fbf8 0%,#fff 100%);
}
#dossier-modal .tva-option-request-panel[hidden]{display:none!important}
#dossier-modal .tva-option-request-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
#dossier-modal .tva-option-request-head h4{margin:0;color:#083c46;font-size:16px}
#dossier-modal .tva-option-request-head p{margin:4px 0 0;color:#52647e;font-size:12px;line-height:1.45}
#dossier-modal .tva-option-status{white-space:nowrap}
#dossier-modal .tva-option-request-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
#dossier-modal .tva-option-request-form .span-2{grid-column:1/-1}
#dossier-modal .tva-option-mandate[hidden]{display:none!important}
#dossier-modal .tva-option-request-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
}
#dossier-modal .tva-option-request-actions .btn,
#dossier-modal .tva-option-request-actions .control{min-height:44px!important}
#dossier-modal .tva-option-request-note{
  margin:0;
  padding:10px 12px;
  border:1px solid #f0d293;
  border-radius:11px;
  background:#fff9e9;
  color:#725319;
  font-size:12px;
  line-height:1.45;
}
#dossier-modal .tva-option-request-card{
  display:grid;
  gap:10px;
  padding:13px;
  border:1px solid #d7e5e1;
  border-radius:12px;
  background:#fff;
}
#dossier-modal .tva-option-request-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0;
}
#dossier-modal .tva-option-request-meta>div{padding:9px;border-radius:10px;background:#f7fafb}
#dossier-modal .tva-option-request-meta dt{color:#6a7a8e;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
#dossier-modal .tva-option-request-meta dd{margin:3px 0 0;color:#163246;font-size:12px;font-weight:700;overflow-wrap:anywhere}
#dossier-modal .tva-option-artifacts{display:grid;gap:7px;margin:0;padding:0;list-style:none}
#dossier-modal .tva-option-artifacts li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
  padding:9px 10px;
  border:1px solid #e1e8ee;
  border-radius:10px;
  background:#fbfcfd;
}
#dossier-modal .tva-option-artifacts li>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#41556d;font-size:12px}
#dossier-modal .tva-option-artifacts a{min-height:44px!important;display:inline-flex;align-items:center}
#dossier-modal .tva-option-upload-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;
  gap:9px;
  align-items:end;
}
#dossier-modal .tva-option-upload-grid .btn{min-height:44px!important}
/* V20.61 — profil fiscal versionné et moteur de règles consultatif */
#dossier-modal .dossier-fiscal-profile{
  display:grid;
  gap:14px;
  margin-top:18px;
  padding:18px;
  border:1px solid #c9d9ee;
  border-radius:16px;
  background:linear-gradient(180deg,#f7faff 0%,#fff 100%);
}
#dossier-modal .dossier-fiscal-profile.hidden{display:none!important}
#dossier-modal .fiscal-profile-head,
#dossier-modal .fiscal-profile-evaluation-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
#dossier-modal .fiscal-profile-head strong{display:block;color:#08264f;font-size:17px}
#dossier-modal .fiscal-profile-head p{margin:4px 0 0;color:#657590;font-size:12px;line-height:1.45}
#dossier-modal .fiscal-profile-safety{margin:0!important}
#dossier-modal .fiscal-profile-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:13px;
}
#dossier-modal .fiscal-profile-grid .span-3{grid-column:1/-1}
#dossier-modal .fiscal-profile-grid textarea{min-height:76px;resize:vertical}
#dossier-modal .fiscal-profile-grid [hidden]{display:none!important}
#dossier-modal .fiscal-profile-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
}
#dossier-modal .fiscal-profile-actions .btn{min-height:44px!important}
#dossier-modal .fiscal-profile-evaluation{display:grid;gap:9px}
#dossier-modal .fiscal-profile-evaluation-head{
  padding-top:3px;
  align-items:center;
}
#dossier-modal .fiscal-rule-result{
  border:1px solid #dce5f1;
  border-radius:12px;
  background:#fff;
  overflow:hidden;
}
#dossier-modal .fiscal-rule-result.needs-review{border-color:#ecd49f;background:#fffdf8}
#dossier-modal .fiscal-rule-result>summary{
  display:flex;
  align-items:center;
  gap:9px;
  min-height:48px;
  padding:10px 12px;
  cursor:pointer;
  list-style:none;
}
#dossier-modal .fiscal-rule-result>summary::-webkit-details-marker{display:none}
#dossier-modal .fiscal-rule-result>summary strong{color:#17365f;font-size:13px}
#dossier-modal .fiscal-rule-result>p,
#dossier-modal .fiscal-rule-result>ul,
#dossier-modal .fiscal-rule-result>small{margin:0 12px 10px;color:#52647e;font-size:12px;line-height:1.5}
#dossier-modal .fiscal-rule-result>ul{padding-left:20px}
#dossier-modal .fiscal-rule-result>small{display:block;color:#75849a}
#dossier-modal .fiscal-rule-source a{color:#075f67;text-decoration:underline;text-underline-offset:2px}
@media (max-width:620px){
  #dossier-modal .dossier-fiscal-head{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}
  #dossier-modal .dossier-fiscal-head .badge{justify-self:start}
  #dossier-modal .dossier-tva-review{padding:14px}
  #dossier-modal .dossier-tva-review-head{display:grid;grid-template-columns:minmax(0,1fr)}
  #dossier-modal .dossier-tva-review-head .badge{justify-self:start}
  #dossier-modal .dossier-tva-review-form{grid-template-columns:minmax(0,1fr)}
  #dossier-modal .dossier-tva-review-form .span-2{grid-column:auto}
  #dossier-modal .dossier-tva-review-actions{display:grid;grid-template-columns:minmax(0,1fr)}
  #dossier-modal .dossier-tva-review-actions .btn{width:100%!important}
  #dossier-modal .tva-option-request-head{display:grid;grid-template-columns:minmax(0,1fr)}
  #dossier-modal .tva-option-status{justify-self:start}
  #dossier-modal .tva-option-request-form{grid-template-columns:minmax(0,1fr)}
  #dossier-modal .tva-option-request-form .span-2{grid-column:auto}
  #dossier-modal .tva-option-request-actions{display:grid;grid-template-columns:minmax(0,1fr)}
  #dossier-modal .tva-option-request-actions .btn,
  #dossier-modal .tva-option-request-actions .control{width:100%!important}
  #dossier-modal .tva-option-request-meta{grid-template-columns:minmax(0,1fr)}
  #dossier-modal .tva-option-artifacts li{align-items:flex-start;flex-direction:column}
  #dossier-modal .tva-option-artifacts a{width:100%;justify-content:center}
  #dossier-modal .tva-option-upload-grid{grid-template-columns:minmax(0,1fr)}
  #dossier-modal .tva-option-upload-grid .btn{width:100%!important}
  #dossier-modal .dossier-fiscal-profile{padding:14px}
  #dossier-modal .fiscal-profile-head,
  #dossier-modal .fiscal-profile-evaluation-head{display:grid;grid-template-columns:minmax(0,1fr)}
  #dossier-modal .fiscal-profile-head .badge,
  #dossier-modal .fiscal-profile-evaluation-head .badge{justify-self:start}
  #dossier-modal .fiscal-profile-grid{grid-template-columns:minmax(0,1fr)}
  #dossier-modal .fiscal-profile-grid .span-3{grid-column:auto}
  #dossier-modal .fiscal-profile-grid .control{min-height:44px!important;font-size:16px!important}
  #dossier-modal .fiscal-profile-actions{display:grid;grid-template-columns:minmax(0,1fr)}
  #dossier-modal .fiscal-profile-actions .btn{width:100%!important}
}

/* =========================================================
   AZALYS R5 - Fiche dossier compacte à onglets horizontaux
   ========================================================= */
#dossier-modal.modal{z-index:2000 !important;}
#dossier-modal .dossier-acc{
  display:block !important;
  margin:0 0 20px !important;
}
#dossier-modal .dossier-acc-tabs{
  position:sticky !important;
  top:-22px !important;
  z-index:6 !important;
  display:grid !important;
  grid-template-columns:repeat(5,minmax(0,1fr)) !important;
  gap:8px !important;
  margin:0 0 14px !important;
  padding:6px 0 !important;
  background:linear-gradient(180deg,#f8fbff 78%,rgba(248,251,255,.94) 100%) !important;
}
#dossier-modal .dossier-acc-tab{
  width:100% !important;
  min-width:0 !important;
  min-height:56px !important;
  padding:9px 13px !important;
  border:1px solid #d5e1f0 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:#52647e !important;
  justify-content:flex-start !important;
  box-shadow:0 5px 16px rgba(12,35,72,.035) !important;
  transform:none !important;
  transition:border-color .16s ease,background .16s ease,color .16s ease,box-shadow .16s ease !important;
}
#dossier-modal .dossier-acc-tab:hover{
  border-color:#a9c5ef !important;
  background:#f6faff !important;
}
#dossier-modal .dossier-acc-tab.is-active,
#dossier-modal .dossier-acc-tab[aria-selected="true"]{
  border-color:#2f78ff !important;
  background:#edf5ff !important;
  color:#0b50d4 !important;
  box-shadow:0 7px 20px rgba(25,100,230,.11) !important;
}
#dossier-modal .dossier-acc-tab:focus-visible{
  outline:3px solid rgba(37,119,255,.28) !important;
  outline-offset:2px !important;
}
#dossier-modal .dossier-acc-tab .dossier-acc-title{
  width:100% !important;
  min-width:0 !important;
  gap:10px !important;
}
#dossier-modal .dossier-acc-tab .dossier-acc-num{
  width:30px !important;
  height:30px !important;
  min-width:30px !important;
  border-radius:10px !important;
}
#dossier-modal .dossier-acc-tab.is-active .dossier-acc-num,
#dossier-modal .dossier-acc-tab[aria-selected="true"] .dossier-acc-num{
  background:linear-gradient(135deg,#3b8bff 0%,#1559ff 100%) !important;
  color:#fff !important;
}
#dossier-modal .dossier-acc-tab .dossier-acc-text{
  min-width:0 !important;
  gap:1px !important;
  text-align:left !important;
}
#dossier-modal .dossier-acc-tab .dossier-acc-text strong{
  overflow:hidden !important;
  color:inherit !important;
  font-size:14px !important;
  line-height:1.2 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
#dossier-modal .dossier-acc-tab .dossier-acc-text small{
  overflow:hidden !important;
  color:#70819a !important;
  font-size:11px !important;
  line-height:1.2 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}
#dossier-modal .dossier-acc-item[hidden]{display:none !important;}
#dossier-modal .dossier-acc-item.is-open{
  display:block !important;
  border-color:#cfdded !important;
  box-shadow:0 12px 34px rgba(12,35,72,.055) !important;
}
#dossier-modal .dossier-acc-item.is-open .dossier-acc-body{
  display:block !important;
  border-top:0 !important;
}
#dossier-modal .dossier-acc-item .dossier-acc-inner{
  padding:22px 24px 26px !important;
}
@media (max-width:900px){
  #dossier-modal .dossier-acc-tab .dossier-acc-text small{display:none !important;}
  #dossier-modal .dossier-acc-tab{padding:9px 10px !important;}
}
@media (max-width:620px){
  #dossier-modal .dossier-acc-tabs{
    top:-16px !important;
    display:flex !important;
    gap:7px !important;
    margin:0 -2px 10px !important;
    padding:6px 2px 7px !important;
    overflow-x:auto !important;
    overflow-y:hidden !important;
    scroll-snap-type:x proximity !important;
    scrollbar-width:none !important;
  }
  #dossier-modal .dossier-acc-tabs::-webkit-scrollbar{display:none !important;}
  #dossier-modal .dossier-acc-tab{
    flex:0 0 142px !important;
    width:142px !important;
    min-height:48px !important;
    padding:7px 10px !important;
    scroll-snap-align:start !important;
  }
  #dossier-modal .dossier-acc-tab .dossier-acc-num{
    width:28px !important;
    height:28px !important;
    min-width:28px !important;
  }
  #dossier-modal .dossier-acc-item .dossier-acc-inner{padding:17px 14px 20px !important;}
  #dossier-modal .control,
  #dossier-modal input.control,
  #dossier-modal select.control,
  #dossier-modal textarea.control{font-size:16px !important;}
  #dossier-modal .modal-actions{
    display:grid !important;
    grid-template-columns:minmax(76px,.72fr) minmax(0,1.45fr) !important;
    gap:8px !important;
  }
  #dossier-modal .modal-actions .btn{
    width:100% !important;
    min-width:0 !important;
    padding:0 8px !important;
    font-size:12px !important;
    white-space:nowrap !important;
  }
}

/* Demande d'option TVA — espace collaborateur depuis Mon travail. */
body.tva-option-modal-open{overflow:hidden!important}
#tva-option-modal{z-index:2150!important}
#tva-option-modal .tva-option-modal-card{
  display:flex!important;
  flex-direction:column!important;
  width:min(980px,calc(100vw - 32px))!important;
  max-height:min(92vh,920px)!important;
  overflow:hidden!important;
}
#tva-option-modal .tva-option-modal-head{flex:0 0 auto}
#tva-option-modal .tva-option-modal-body{
  flex:1 1 auto;
  min-height:0;
  display:grid;
  gap:12px;
  padding:18px 20px;
  overflow:auto;
  overscroll-behavior:contain;
  border-block:1px solid #dce7ee;
  background:linear-gradient(180deg,#f2fbf8 0%,#fff 42%);
}
#tva-option-modal .tva-option-modal-actions{flex:0 0 auto}
#tva-option-modal .tva-option-request-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:12px;
}
#tva-option-modal .tva-option-request-head h4{margin:0;color:#083c46;font-size:18px}
#tva-option-modal .tva-option-request-head p{margin:4px 0 0;color:#52647e;font-size:13px;line-height:1.45}
#tva-option-modal .tva-option-status{white-space:nowrap}
#tva-option-modal .tva-option-request-form{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:12px;
}
#tva-option-modal .tva-option-request-form .span-2{grid-column:1/-1}
#tva-option-modal .tva-option-mandate.hidden{display:none!important}
#tva-option-modal .tva-option-request-actions{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:9px;
}
#tva-option-modal .tva-option-request-actions .btn,
#tva-option-modal .tva-option-request-actions .control,
#tva-option-modal .tva-option-upload-grid .btn,
#tva-option-modal .tva-option-artifacts a{min-height:44px!important}
#tva-option-modal .tva-option-request-note{
  margin:0;
  padding:10px 12px;
  border:1px solid #f0d293;
  border-radius:11px;
  background:#fff9e9;
  color:#725319;
  font-size:12px;
  line-height:1.45;
}
#tva-option-modal .tva-option-request-card{
  display:grid;
  gap:12px;
  padding:14px;
  border:1px solid #d7e5e1;
  border-radius:12px;
  background:#fff;
}
#tva-option-modal .tva-option-request-meta{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:8px;
  margin:0;
}
#tva-option-modal .tva-option-request-meta>div{padding:9px;border-radius:10px;background:#f7fafb}
#tva-option-modal .tva-option-request-meta dt{color:#6a7a8e;font-size:10px;font-weight:800;text-transform:uppercase;letter-spacing:.04em}
#tva-option-modal .tva-option-request-meta dd{margin:3px 0 0;color:#163246;font-size:12px;font-weight:700;overflow-wrap:anywhere}
#tva-option-modal .tva-option-artifacts{display:grid;gap:7px;margin:0;padding:0;list-style:none}
#tva-option-modal .tva-option-artifacts li{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  min-width:0;
  padding:9px 10px;
  border:1px solid #e1e8ee;
  border-radius:10px;
  background:#fbfcfd;
}
#tva-option-modal .tva-option-artifacts li>span{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#41556d;font-size:12px}
#tva-option-modal .tva-option-artifacts a{display:inline-flex;align-items:center}
#tva-option-modal .tva-option-upload-grid{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(0,1.4fr) auto;
  gap:9px;
  align-items:end;
}
@media (max-width:620px){
  #tva-option-modal.modal{padding:0!important;align-items:stretch!important}
  #tva-option-modal .tva-option-modal-card{
    width:100vw!important;
    max-width:none!important;
    height:100dvh!important;
    max-height:100dvh!important;
    border-radius:0!important;
  }
  #tva-option-modal .tva-option-modal-body{padding:14px;font-size:14px}
  #tva-option-modal .tva-option-request-head{display:grid;grid-template-columns:minmax(0,1fr)}
  #tva-option-modal .tva-option-status{justify-self:start}
  #tva-option-modal .tva-option-request-form,
  #tva-option-modal .tva-option-request-meta,
  #tva-option-modal .tva-option-upload-grid{grid-template-columns:minmax(0,1fr)}
  #tva-option-modal .tva-option-request-form .span-2{grid-column:auto}
  #tva-option-modal .tva-option-request-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%}
  #tva-option-modal .tva-option-request-actions .btn,
  #tva-option-modal .tva-option-request-actions .control,
  #tva-option-modal .tva-option-upload-grid .btn{width:100%!important}
  #tva-option-modal .tva-option-artifacts li{align-items:flex-start;flex-direction:column}
  #tva-option-modal .tva-option-artifacts a{width:100%;justify-content:center}
  #tva-option-modal .control,
  #tva-option-modal input.control,
  #tva-option-modal select.control,
  #tva-option-modal textarea.control{min-height:44px!important;font-size:16px!important}
  #tva-option-modal .tva-option-modal-head .icon-btn,
  #tva-option-modal .tva-option-modal-actions .btn{min-width:44px!important;min-height:44px!important}
}


/* AZALYS 20.108 — assistant dossier et accès client multi-profils */
#dossier-modal .dossier-acc-tabs{
  display:flex !important;
  grid-template-columns:none !important;
  gap:8px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  scrollbar-width:thin !important;
  scroll-snap-type:x proximity !important;
}
#dossier-modal .dossier-acc-tab{
  flex:0 0 154px !important;
  width:154px !important;
  scroll-snap-align:start !important;
}
#dossier-modal .dossier-guided-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
#dossier-modal .dossier-guided-choices>label{
  display:flex;gap:11px;min-height:104px;padding:15px;border:1px solid #d5e1f0;border-radius:16px;background:#fff;cursor:pointer;
}
#dossier-modal .dossier-guided-choices>label:has(input:checked){border-color:#2876f6;background:#eef6ff;box-shadow:0 8px 22px rgba(31,103,224,.12)}
#dossier-modal .dossier-guided-choices input{margin-top:3px}
#dossier-modal .dossier-guided-choices span{display:grid;gap:5px}
#dossier-modal .dossier-guided-choices strong{color:#14365a;font-size:14px}
#dossier-modal .dossier-guided-choices small{color:#667892;line-height:1.4}
#dossier-modal .dossier-opening-checklist{display:grid;gap:9px}
#dossier-modal .dossier-opening-row{
  display:grid;grid-template-columns:minmax(0,1fr) minmax(150px,210px);align-items:center;gap:16px;
  padding:12px 14px;border:1px solid #dce6f1;border-radius:14px;background:#fbfdff;
}
#dossier-modal .dossier-opening-row>div{display:grid;gap:3px}
#dossier-modal .dossier-opening-row strong{color:#173959;font-size:13px}
#dossier-modal .dossier-opening-row small{color:#718198;font-size:11px}
#dossier-modal .dossier-responsibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:12px 0}
#dossier-modal .dossier-extra-team{margin:12px 0;padding:10px 12px;border:1px solid #e0e8f2;border-radius:12px;background:#fbfcfe}
#dossier-modal .dossier-extra-team summary{cursor:pointer;color:#244666;font-weight:800}
#dossier-modal .dossier-client-card.is-draft{border-style:dashed;background:#f6fbff}
#dossier-modal .dossier-client-actions{flex-wrap:wrap}
#dossier-modal .dossier-onboarding-summary{display:grid;gap:16px}
#dossier-modal .dossier-onboarding-progress{display:grid;gap:9px;padding:16px;border:1px solid #cfdfef;border-radius:15px;background:linear-gradient(135deg,#f7fbff,#fff)}
#dossier-modal .dossier-onboarding-progress strong{color:#123b60}
#dossier-modal .dossier-onboarding-progress .bar{height:9px;overflow:hidden;border-radius:999px;background:#dce8f3}
#dossier-modal .dossier-onboarding-progress .bar span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#16a085,#2f78ff)}
#dossier-modal .dossier-onboarding-checks{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
#dossier-modal .dossier-onboarding-checks>div{display:grid;grid-template-columns:30px minmax(0,1fr);gap:2px 8px;align-items:center;padding:11px;border:1px solid #dce6f0;border-radius:12px;background:#fff}
#dossier-modal .dossier-onboarding-checks>div>span{grid-row:1/3;display:grid;place-items:center;width:28px;height:28px;border-radius:50%;font-weight:900}
#dossier-modal .dossier-onboarding-checks .is-ok>span{background:#dcf7e9;color:#087348}
#dossier-modal .dossier-onboarding-checks .is-missing>span{background:#fff0d5;color:#996000}
#dossier-modal .dossier-onboarding-checks strong{color:#193a59;font-size:12px}
#dossier-modal .dossier-onboarding-checks small{color:#75849a;font-size:10px}
#collab-modal .client-access-config{display:grid;gap:15px;margin-top:14px;padding:15px;border:1px solid #d7e3f0;border-radius:16px;background:#f8fbff}
#collab-modal .client-access-config.hidden{display:none!important}
#collab-modal .client-access-checks{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}
#collab-modal .client-access-checks label,#collab-modal .client-access-actions label{display:flex;align-items:flex-start;gap:8px;padding:9px;border:1px solid #dde7f1;border-radius:10px;background:#fff}
#collab-modal .client-access-actions{display:grid;gap:10px;margin-top:8px;max-height:330px;overflow:auto}
#collab-modal .client-access-actions fieldset{display:grid;gap:7px;margin:0;padding:10px;border:1px solid #d8e4ef;border-radius:12px}
#collab-modal .client-access-actions legend{padding:0 6px;color:#17476f;font-size:12px;font-weight:900}
#collab-modal .client-access-actions label span{display:grid;gap:2px}
#collab-modal .client-access-actions label strong{color:#243f5b;font-size:12px}
#collab-modal .client-access-actions label small{color:#708097;font-size:10px;line-height:1.35}
@media(max-width:760px){
  #dossier-modal .dossier-guided-choices,#dossier-modal .dossier-responsibility-grid,#dossier-modal .dossier-onboarding-checks{grid-template-columns:minmax(0,1fr)}
  #dossier-modal .dossier-opening-row{grid-template-columns:minmax(0,1fr)}
  #collab-modal .client-access-checks{grid-template-columns:minmax(0,1fr)}
}

/* AZALYS 20.109 — gestion autonome ou déléguée de l’espace client */
#dossier-modal .dossier-client-operating{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin:14px 0;padding:14px;border:1px solid #cfe0ef;border-radius:14px;background:linear-gradient(135deg,#f5fbff,#fff)}
#dossier-modal .dossier-client-operating>label{display:grid;align-content:start;gap:7px;color:#173d60;font-size:12px;font-weight:850}
#dossier-modal .dossier-client-operating small{color:#6d7f94;font-size:10px;font-weight:500;line-height:1.45}
#dossier-modal .dossier-client-operating .hidden{display:none!important}
@media(max-width:760px){#dossier-modal .dossier-client-operating{grid-template-columns:minmax(0,1fr)}}

/* AZALYS 20.110 — intégrité juridique et preuves de reprise */
#dossier-modal .dossier-opening-controls{display:grid;grid-template-columns:minmax(145px,190px) minmax(210px,1fr);gap:9px;align-items:center}
#dossier-modal .dossier-conditional-check{display:flex;align-items:center;gap:9px;min-height:42px;padding:9px 11px;border:1px solid #d8e5ef;border-radius:11px;background:#f8fbff;color:#31506c;font-size:12px;font-weight:750}
#dossier-modal .dossier-conditional-check input{flex:0 0 auto}
#dossier-modal [data-fiscal-taxpayer-override]{padding:11px;border:1px solid #f0d59a;border-radius:12px;background:#fffaf0}
@media(max-width:900px){#dossier-modal .dossier-opening-controls{grid-template-columns:minmax(0,1fr)}}
/* AZALYS_BUNDLE_SOURCE_END: dossier-accordion-final.css */

/* AZALYS_BUNDLE_SOURCE 8/29: client-portal.css | sha256=bc6c17e884eab56b318a331c522bd1058ff80d8ffa74e3e4783d846961ee0713 */
/* AZALYS — Portail client premium v3.4.4
   Chargé après app.css pour éviter les anciens styles en cache. */
body.role-client-dossier{
  background:linear-gradient(135deg,#eef5ff 0%,#f8fbff 44%,#eef2ff 100%);
}
body.role-client-dossier .side{
  background:linear-gradient(180deg,#071a39 0%,#061226 100%);
  box-shadow:18px 0 45px rgba(15,23,42,.18);
}
body.role-client-dossier .side-brand{
  border-bottom-color:rgba(255,255,255,.12);
}
body.role-client-dossier .side-brand strong{letter-spacing:.02em}
body.role-client-dossier .side-nav .nav-btn:not(.hidden){
  border:1px solid rgba(96,165,250,.22);
  background:linear-gradient(135deg,rgba(37,99,235,.72),rgba(30,64,175,.48));
  color:#fff;
  box-shadow:0 14px 30px rgba(30,64,175,.22);
}
body.role-client-dossier .side-footer .btn:not(.hidden){
  border-color:rgba(148,163,184,.24);
  background:rgba(255,255,255,.08);
  color:#f8fafc;
}
body.role-client-dossier .topbar{
  border-bottom:1px solid rgba(148,163,184,.18);
  background:rgba(255,255,255,.72);
  backdrop-filter:blur(18px);
}
body.role-client-dossier .main{
  background:radial-gradient(circle at 75% 5%,rgba(59,130,246,.16),transparent 36%),linear-gradient(180deg,#f8fbff,#eaf1fb);
}
.client-portal{
  max-width:1220px;
  margin:0 auto;
  padding:26px;
  gap:18px!important;
}
.client-portal .card,
.client-portal .client-hero{
  border:1px solid rgba(191,219,254,.72)!important;
  border-radius:28px!important;
  box-shadow:0 24px 70px rgba(15,23,42,.08)!important;
  background:rgba(255,255,255,.82)!important;
  backdrop-filter:blur(18px);
}
.client-hero{
  position:relative;
  overflow:hidden;
  min-height:178px;
  padding:30px 34px!important;
  background:linear-gradient(135deg,#ffffff 0%,#edf6ff 56%,#eef2ff 100%)!important;
}
.client-hero::before{
  content:"";
  position:absolute;
  width:260px;
  height:260px;
  right:-70px;
  top:-95px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(37,99,235,.22),rgba(37,99,235,0) 66%);
}
.client-hero::after{
  content:"";
  position:absolute;
  width:170px;
  height:170px;
  left:46%;
  bottom:-105px;
  border-radius:50%;
  background:radial-gradient(circle,rgba(14,165,233,.18),rgba(14,165,233,0) 68%);
}
.client-hero>*{position:relative;z-index:1}
.client-hero .eyebrow{
  color:#315985;
  letter-spacing:.12em;
  font-weight:900;
}
.client-hero h1{
  margin:8px 0 10px!important;
  color:#0b2347;
  font-size:clamp(28px,3vw,42px)!important;
  letter-spacing:-.04em;
}
.client-hero p{
  max-width:760px;
  color:#526981!important;
  font-size:15px;
}
.client-hero-badge{
  display:flex;
  align-items:center;
  gap:8px;
  padding:12px 16px!important;
  border:1px solid rgba(34,197,94,.22);
  background:linear-gradient(135deg,#dcfce7,#f0fdf4)!important;
  color:#047857!important;
  box-shadow:0 12px 26px rgba(22,163,74,.12);
}
.client-hero-badge::before{content:"🔐"}
.client-action-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:16px!important;
}
.client-action-card{
  position:relative;
  min-height:154px;
  border:1px solid rgba(203,213,225,.72)!important;
  border-radius:24px!important;
  padding:20px!important;
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
  text-align:left!important;
  display:grid!important;
  grid-template-columns:auto 1fr!important;
  grid-template-rows:1fr auto!important;
  gap:12px 14px!important;
  align-items:start!important;
  color:#10233f!important;
  box-shadow:0 18px 42px rgba(15,23,42,.08)!important;
  cursor:pointer;
  appearance:none;
  -webkit-appearance:none;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.client-action-card:hover{
  transform:translateY(-4px);
  border-color:rgba(59,130,246,.42)!important;
  box-shadow:0 24px 58px rgba(15,23,42,.13)!important;
}
.client-action-card::after{
  content:"→";
  position:absolute;
  top:18px;
  right:18px;
  width:30px;
  height:30px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#1d4ed8;
  background:#eff6ff;
  font-weight:900;
}
.client-action-icon{
  width:50px;
  height:50px;
  border-radius:18px;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:26px!important;
  background:linear-gradient(135deg,#eff6ff,#dbeafe);
  box-shadow:inset 0 0 0 1px rgba(59,130,246,.16);
}
.client-action-copy{
  min-width:0;
  padding-right:26px;
}
.client-action-copy strong{
  display:block;
  margin:2px 0 7px;
  color:#0f172a!important;
  font-size:16px!important;
  line-height:1.18;
}
.client-action-copy small{
  display:block;
  color:#64748b!important;
  line-height:1.45!important;
  font-size:13px!important;
}
.client-action-card em{
  grid-column:1/-1;
  justify-self:start;
  display:inline-flex;
  align-items:center;
  min-height:28px;
  padding:6px 10px;
  border-radius:999px;
  background:#f1f5f9;
  color:#315985;
  font-style:normal;
  font-size:11px;
  font-weight:900;
  letter-spacing:.02em;
}
.client-action-card.tone-green .client-action-icon{background:linear-gradient(135deg,#ecfdf5,#dcfce7)}
.client-action-card.tone-gold .client-action-icon{background:linear-gradient(135deg,#fff7ed,#fef3c7)}
.client-action-card.tone-orange .client-action-icon{background:linear-gradient(135deg,#fff7ed,#fed7aa)}
.client-action-card.tone-purple .client-action-icon{background:linear-gradient(135deg,#faf5ff,#ede9fe)}
.client-action-card.tone-red .client-action-icon{background:linear-gradient(135deg,#fff1f2,#ffe4e6)}
.client-action-card.tone-pink .client-action-icon{background:linear-gradient(135deg,#fdf2f8,#fce7f3)}
.client-action-card.tone-message .client-action-icon{background:linear-gradient(135deg,#eef2ff,#dbeafe)}
.client-two-col{
  display:grid!important;
  grid-template-columns:minmax(0,1.08fr) minmax(360px,.92fr)!important;
  gap:18px!important;
}
.client-portal .section-head h3{
  color:#0b2347;
  font-size:19px;
  letter-spacing:-.02em;
}
.client-dossier-row{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:16px!important;
  padding:16px!important;
  border-radius:22px!important;
  border:1px solid rgba(203,213,225,.68)!important;
  background:linear-gradient(135deg,#ffffff,#f8fbff)!important;
  box-shadow:0 12px 30px rgba(15,23,42,.06);
}
.client-dossier-main{
  display:flex!important;
  align-items:center!important;
  flex-direction:row!important;
  gap:14px!important;
  min-width:0;
}
.client-dossier-main>div{
  display:flex;
  flex-direction:column;
  gap:7px;
  min-width:0;
}
.client-dossier-main strong{
  color:#0f172a;
  font-size:15px;
}
.client-dossier-main small{
  color:#64748b;
}
.client-dossier-avatar{
  width:46px;
  height:46px;
  min-width:46px;
  border-radius:17px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:linear-gradient(135deg,#1d4ed8,#60a5fa);
  color:#fff;
  font-weight:900;
  box-shadow:0 14px 26px rgba(37,99,235,.22);
}
.client-workflow{
  display:grid!important;
  gap:12px!important;
}
.client-workflow div{
  position:relative;
  border:1px solid rgba(203,213,225,.68)!important;
  border-radius:20px!important;
  padding:15px 15px 15px 48px!important;
  background:linear-gradient(135deg,#ffffff,#f8fafc)!important;
}
.client-workflow div::before{
  content:"✓";
  position:absolute;
  left:15px;
  top:15px;
  width:24px;
  height:24px;
  border-radius:999px;
  display:flex;
  align-items:center;
  justify-content:center;
  background:#dbeafe;
  color:#1d4ed8;
  font-weight:900;
}
.client-workflow strong{color:#0f172a}
.client-workflow span{color:#64748b!important;line-height:1.45}
.client-empty-state{
  grid-column:1/-1;
  border:1px dashed rgba(148,163,184,.8);
  border-radius:24px;
  padding:24px;
  background:rgba(255,255,255,.72);
  color:#475569;
}
.client-empty-state strong{display:block;color:#0f172a;margin-bottom:6px;font-size:16px}
@media(max-width:1100px){
  .client-action-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .client-two-col{grid-template-columns:1fr!important}
}
@media(max-width:760px){
  .client-portal{padding:16px}
  .client-hero{padding:24px!important}
  .client-action-grid{grid-template-columns:1fr!important}
  .client-dossier-row{align-items:stretch!important;flex-direction:column!important}
  .client-dossier-row .btn{width:100%}
}

/* HOTFIX v3.4.6 — séparation stricte portail client / cockpit cabinet
   .client-portal définissait display:flex et annulait .view{display:none}.
   On force le masquage du portail client tant que sa vue n'est pas active. */
.view.client-portal:not(.active){display:none!important;}
.view.client-portal.active{display:flex!important;flex-direction:column;}
body:not(.role-client-dossier) .side-nav .nav-btn[data-view="client"],
body:not(.role-client-dossier) .side-nav .nav-btn.client-only{display:none!important;}
body.role-client-dossier .side-nav .nav-btn[data-view="client"]{display:flex!important;}
body.role-client-dossier .view:not(#view-client){display:none!important;}

/* AZALYS v3.4.7 — Portail client structuré : dashboard / dépôts / mode avancé */
.client-portal-root{display:flex;flex-direction:column;gap:18px;width:100%;max-width:1280px;margin:0 auto;}
.client-mode-tabs{display:flex;gap:10px;flex-wrap:wrap;background:rgba(255,255,255,.72);border:1px solid rgba(191,207,229,.72);border-radius:22px;padding:8px;box-shadow:0 20px 50px rgba(15,23,42,.08);backdrop-filter:blur(16px)}
.client-mode-tabs button{border:0;background:transparent;border-radius:16px;padding:12px 16px;font-weight:900;color:#47617f;cursor:pointer;transition:.18s ease;}
.client-mode-tabs button:hover{background:#eef6ff;color:#0f2b55;}
.client-mode-tabs button.active{background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;box-shadow:0 12px 24px rgba(37,99,235,.22)}
.client-mode-body{display:flex;flex-direction:column;gap:18px;}
.client-dashboard-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.client-stat-card{border:1px solid rgba(203,213,225,.72);background:linear-gradient(180deg,#fff,#f8fbff);border-radius:22px;padding:18px;display:grid;gap:6px;box-shadow:0 18px 40px rgba(15,23,42,.06);}
.client-stat-card span{width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#eef6ff;font-size:22px;}
.client-stat-card strong{font-size:30px;line-height:1;color:#0f2b55;font-weight:1000;}
.client-stat-card small{font-weight:900;color:#0f172a;font-size:14px;}
.client-stat-card em{font-style:normal;color:#64748b;font-size:13px;line-height:1.35;}
.client-quick-grid{display:grid;grid-template-columns:1.1fr 1fr 1fr 1fr;gap:14px;}
.client-quick-card{border:1px solid rgba(203,213,225,.72);background:#fff;border-radius:22px;padding:20px;text-align:left;display:flex;flex-direction:column;gap:8px;cursor:pointer;box-shadow:0 18px 42px rgba(15,23,42,.07);transition:.18s ease;color:#0f172a;}
.client-quick-card:hover{transform:translateY(-2px);box-shadow:0 22px 50px rgba(15,23,42,.10);}
.client-quick-card.primary{background:linear-gradient(135deg,#0f3b85,#2563eb);color:#fff;border-color:rgba(37,99,235,.35);}
.client-quick-card.ai-card{background:linear-gradient(135deg,#f5f3ff,#eff6ff);border-color:#c4b5fd;}
.client-quick-card strong{font-size:18px;font-weight:1000;}
.client-quick-card span{font-size:14px;line-height:1.45;color:inherit;opacity:.78;}
.client-depot-choice .client-action-card{min-height:132px;}
.client-action-card.is-active{outline:3px solid rgba(37,99,235,.22);border-color:#93c5fd;box-shadow:0 24px 56px rgba(37,99,235,.18);}
.client-depot-layout{align-items:start;}
.client-upload-card{position:sticky;top:18px;}
.client-upload-form{display:grid;gap:14px;}
.client-upload-form label{display:grid;gap:8px;font-weight:900;color:#0f172a;}
.client-upload-form small{font-weight:500;}
.client-doc-list{display:grid;gap:10px;}
.client-doc-row{display:flex;justify-content:space-between;gap:14px;align-items:center;border:1px solid rgba(203,213,225,.75);border-radius:18px;padding:14px;background:linear-gradient(180deg,#fff,#f8fbff);}
.client-doc-row>div{display:grid;gap:4px;min-width:0;}
.client-doc-row strong{color:#0f172a;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:580px;}
.client-doc-row small{color:#64748b;font-size:13px;line-height:1.35;}
.client-doc-row em{font-style:normal;color:#334155;font-size:13px;line-height:1.35;}
.client-advanced-grid{align-items:start;}
.client-module-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;}
.client-module-card{border:1px solid rgba(203,213,225,.75);border-radius:20px;background:#fff;padding:16px;text-align:left;display:grid;grid-template-columns:44px 1fr;column-gap:12px;row-gap:4px;cursor:pointer;transition:.18s ease;box-shadow:0 16px 34px rgba(15,23,42,.06);}
.client-module-card:hover{transform:translateY(-2px);box-shadow:0 20px 46px rgba(15,23,42,.10);border-color:#bfdbfe;}
.client-module-card span{grid-row:1/3;width:44px;height:44px;border-radius:16px;display:grid;place-items:center;background:#eef6ff;font-size:22px;}
.client-module-card strong{color:#0f172a;font-weight:1000;}
.client-module-card small{color:#64748b;line-height:1.35;}
body.role-client-dossier .top-actions .admin-only{display:none!important;}
@media(max-width:1100px){.client-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr));}.client-quick-grid{grid-template-columns:1fr}.client-module-grid{grid-template-columns:1fr}.client-upload-card{position:static}.client-doc-row{align-items:flex-start;flex-direction:column;}}
@media(max-width:720px){.client-dashboard-grid{grid-template-columns:1fr}.client-mode-tabs{display:grid;grid-template-columns:1fr}.client-mode-tabs button{text-align:left}.client-doc-row strong{max-width:280px;}}

/* AZALYS v3.4.8 — Dépôts simples premium inspiré pré-comptabilité */
.client-depot-command{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:22px 24px!important;
  background:linear-gradient(135deg,#ffffff 0%,#eef6ff 58%,#f8fbff 100%)!important;
}
.client-depot-command h3{
  margin:4px 0 6px;
  color:#0b2347;
  font-size:24px;
  letter-spacing:-.03em;
}
.client-depot-command .eyebrow{
  color:#315985;
  font-size:12px;
  letter-spacing:.12em;
  font-weight:1000;
  text-transform:uppercase;
}
.client-depot-steps{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.client-depot-steps span{
  display:inline-flex;
  align-items:center;
  min-height:34px;
  padding:8px 12px;
  border-radius:999px;
  border:1px solid rgba(191,219,254,.78);
  background:#fff;
  color:#315985;
  font-size:12px;
  font-weight:1000;
  box-shadow:0 10px 22px rgba(15,23,42,.05);
}
.client-depot-steps span.active{
  background:linear-gradient(135deg,#2563eb,#60a5fa);
  color:#fff;
  border-color:transparent;
}
.client-depot-layout-xp{
  display:grid;
  grid-template-columns:minmax(0,1.25fr) minmax(360px,.75fr);
  gap:18px;
  align-items:start;
}
.client-depot-side{
  display:grid;
  gap:18px;
}
.client-upload-card-xp{
  position:sticky;
  top:18px;
  overflow:hidden;
}
.client-upload-card-xp::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg,#2563eb,#38bdf8,#22c55e);
}
.client-upload-form-xp{
  gap:16px;
}
.client-form-row{
  display:grid;
  grid-template-columns:1fr 1fr;
  gap:14px;
}
.client-dropzone{
  position:relative;
  display:grid;
  justify-items:center;
  gap:10px;
  padding:28px 22px;
  border:2px dashed rgba(37,99,235,.34);
  border-radius:26px;
  background:linear-gradient(180deg,#f8fbff,#eef6ff);
  cursor:pointer;
  text-align:center;
  transition:transform .18s ease, border-color .18s ease, background .18s ease, box-shadow .18s ease;
}
.client-dropzone:hover,
.client-dropzone.is-dragover{
  transform:translateY(-2px);
  border-color:#2563eb;
  background:linear-gradient(180deg,#ffffff,#eff6ff);
  box-shadow:0 22px 55px rgba(37,99,235,.16);
}
.client-file-input{
  position:absolute;
  inset:0;
  opacity:0;
  pointer-events:none;
}
.client-drop-ic{
  width:62px;
  height:62px;
  border-radius:22px;
  display:grid;
  place-items:center;
  font-size:32px;
  background:#dbeafe;
  box-shadow:inset 0 0 0 1px rgba(59,130,246,.18),0 16px 35px rgba(37,99,235,.13);
}
.client-dropzone strong{
  color:#0f172a;
  font-size:18px;
  font-weight:1000;
}
.client-dropzone small{
  max-width:420px;
  color:#64748b;
  line-height:1.45;
}
.client-selected-files{
  display:block;
}
.client-file-empty{
  padding:13px 14px;
  border-radius:16px;
  border:1px dashed rgba(148,163,184,.65);
  background:rgba(248,250,252,.78);
  color:#64748b;
  font-size:13px;
}
.client-file-queue{
  display:grid;
  gap:10px;
}
.client-file-row{
  display:grid;
  grid-template-columns:52px 1fr 34px;
  align-items:center;
  gap:12px;
  padding:12px;
  border:1px solid rgba(203,213,225,.72);
  border-radius:18px;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.05);
}
.client-file-row>span{
  display:grid;
  place-items:center;
  min-width:52px;
  height:42px;
  border-radius:14px;
  background:#eef6ff;
  color:#1d4ed8;
  font-size:11px;
  font-weight:1000;
}
.client-file-row strong{
  display:block;
  color:#0f172a;
  font-size:14px;
  font-weight:1000;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.client-file-row small{
  color:#64748b;
  font-size:12px;
}
.client-file-row button{
  width:34px;
  height:34px;
  border:0;
  border-radius:999px;
  background:#fee2e2;
  color:#b91c1c;
  font-size:20px;
  font-weight:1000;
  cursor:pointer;
}
.client-optional-details{
  border:1px solid rgba(203,213,225,.72);
  border-radius:20px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  overflow:hidden;
}
.client-optional-details summary{
  padding:14px 16px;
  cursor:pointer;
  color:#0f172a;
  font-weight:1000;
  list-style:none;
}
.client-optional-details summary::-webkit-details-marker{display:none;}
.client-optional-details summary::after{
  content:"+";
  float:right;
  width:26px;
  height:26px;
  display:inline-grid;
  place-items:center;
  border-radius:999px;
  background:#eff6ff;
  color:#1d4ed8;
}
.client-optional-details[open] summary::after{content:"–";}
.client-optional-details>div,
.client-optional-details>.client-checkline{
  margin:0 16px 14px;
}
.client-checkline{
  display:flex!important;
  align-items:center;
  gap:10px!important;
  padding:12px 14px;
  border-radius:16px;
  background:#fff7ed;
  color:#9a3412!important;
  font-weight:900!important;
}
.client-checkline input{width:16px;height:16px;}
.client-upload-note{
  margin:0;
  padding:12px 14px;
  border-radius:16px;
  background:#f1f5f9;
  color:#64748b;
  font-size:13px;
  line-height:1.4;
}
.client-import-guide .client-workflow.compact div{
  padding-top:13px!important;
  padding-bottom:13px!important;
}
.client-action-count{
  position:absolute;
  right:18px;
  bottom:18px;
  color:#64748b;
  font-size:12px;
  font-weight:1000;
}
.client-action-card em{
  max-width:calc(100% - 110px);
}
@media(max-width:1180px){
  .client-depot-layout-xp{grid-template-columns:1fr;}
  .client-upload-card-xp{position:static;}
}
@media(max-width:820px){
  .client-depot-command{align-items:stretch;flex-direction:column;}
  .client-depot-steps{justify-content:flex-start;}
  .client-form-row{grid-template-columns:1fr;}
  .client-dropzone{padding:24px 16px;}
}

/* AZALYS v3.4.9 — Dépôts simples en fenêtre au premier plan */
.client-depot-split{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(340px,.34fr);
  gap:18px;
  align-items:start;
}
.client-depot-main{min-width:0;}
.client-depot-choice .client-action-card{
  min-height:150px;
}
.client-action-card.is-active{
  outline:3px solid rgba(37,99,235,.18);
}
.client-depot-modal{
  position:fixed;
  inset:0;
  z-index:5000;
  display:grid;
  place-items:center;
  padding:24px;
}
.client-depot-backdrop{
  position:absolute;
  inset:0;
  background:rgba(8,18,38,.56);
  backdrop-filter:blur(9px);
}
.client-depot-modal-panel{
  position:relative!important;
  z-index:1;
  width:min(920px,calc(100vw - 48px));
  max-height:calc(100vh - 48px);
  overflow:auto;
  padding:28px!important;
  box-shadow:0 38px 120px rgba(2,6,23,.36)!important;
  animation:clientModalIn .18s ease-out;
}
.client-depot-modal-panel .section-head{
  padding-right:56px;
}
.client-modal-close{
  position:absolute;
  top:18px;
  right:18px;
  z-index:2;
  width:38px;
  height:38px;
  border:1px solid rgba(203,213,225,.8);
  border-radius:999px;
  background:#fff;
  color:#0f172a;
  font-size:24px;
  font-weight:1000;
  line-height:1;
  cursor:pointer;
  box-shadow:0 14px 28px rgba(15,23,42,.12);
}
.client-modal-close:hover{
  background:#eff6ff;
  color:#1d4ed8;
}
@keyframes clientModalIn{
  from{opacity:0;transform:translateY(14px) scale(.98);}
  to{opacity:1;transform:translateY(0) scale(1);}
}
@media(max-width:1180px){
  .client-depot-split{grid-template-columns:1fr;}
}
@media(max-width:720px){
  .client-depot-modal{padding:10px;place-items:start center;overflow:auto;}
  .client-depot-modal-panel{width:100%;max-height:none;padding:22px 16px!important;border-radius:24px!important;}
  .client-depot-modal-panel .section-head{padding-right:42px;}
  .client-modal-close{top:14px;right:14px;}
}

/* AZALYS v3.5.0 — Messagerie client/cabinet activée */
.client-message-layout{
  display:grid;
  grid-template-columns:minmax(320px,.42fr) minmax(0,1fr);
  grid-template-areas:"composer thread" "help thread";
  gap:18px;
  align-items:start;
}
.client-message-composer-card{grid-area:composer;}
.client-message-thread-card{grid-area:thread;min-height:420px;}
.client-message-help-card{grid-area:help;}
.client-message-form{display:grid;gap:14px;}
.client-message-form label{display:grid;gap:8px;font-weight:900;color:#0f172a;}
.client-message-thread{display:grid;gap:14px;max-height:620px;overflow:auto;padding-right:6px;}
.client-message-row{display:flex;}
.client-message-row.from-client{justify-content:flex-end;}
.client-message-row.from-cabinet{justify-content:flex-start;}
.client-message-bubble{
  width:min(720px,92%);
  border:1px solid rgba(203,213,225,.72);
  border-radius:24px;
  padding:16px 18px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:0 18px 40px rgba(15,23,42,.07);
}
.client-message-row.from-client .client-message-bubble{
  background:linear-gradient(135deg,#0f3b85,#2563eb);
  color:#fff;
  border-color:rgba(37,99,235,.4);
}
.client-message-row.from-cabinet .client-message-bubble{
  background:linear-gradient(135deg,#ffffff,#eef6ff);
}
.client-message-row.is-unread .client-message-bubble{
  border-color:#60a5fa;
  box-shadow:0 20px 52px rgba(37,99,235,.18);
}
.client-message-meta{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-bottom:8px;}
.client-message-meta strong{font-weight:1000;color:inherit;}
.client-message-meta span{font-size:12px;color:inherit;opacity:.68;}
.client-message-bubble h4{margin:0 0 8px;color:inherit;font-size:15px;font-weight:1000;}
.client-message-bubble p{margin:0;color:inherit;opacity:.86;line-height:1.55;font-size:14px;}
body.role-client-dossier .client-message-row.from-client .client-message-meta span,
body.role-client-dossier .client-message-row.from-client .client-message-bubble p{color:#fff;}
.cabinet-message-box{display:grid;gap:14px;margin-bottom:18px;padding-bottom:18px;border-bottom:1px solid rgba(203,213,225,.72);}
.cabinet-message-list{display:grid;gap:12px;}
.cabinet-message-row{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:14px;padding:15px;border:1px solid rgba(203,213,225,.72);border-radius:18px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 12px 30px rgba(15,23,42,.05);}
.cabinet-message-row.is-unread{border-color:#60a5fa;box-shadow:0 18px 42px rgba(37,99,235,.13);}
.cabinet-message-main{display:grid;gap:5px;min-width:0;}
.cabinet-message-main strong{color:#0f172a;font-weight:1000;}
.cabinet-message-main small{color:#64748b;}
.cabinet-message-main b{color:#0f2b55;}
.cabinet-message-main p{margin:0;color:#334155;line-height:1.45;}
.cabinet-message-actions{display:grid;gap:8px;align-content:start;}
.cabinet-message-actions textarea{min-height:70px;}
@media(max-width:1100px){
  .client-message-layout{grid-template-columns:1fr;grid-template-areas:"composer" "thread" "help";}
  .cabinet-message-row{grid-template-columns:1fr;}
}

/* AZALYS v3.5.1 — Refonte présentation Messages cabinet */
.client-message-redesign{
  display:grid;
  grid-template-columns:minmax(0,1fr) 350px;
  gap:18px;
  align-items:start;
}
.client-message-main-card{
  padding:0!important;
  overflow:hidden;
}
.client-message-panel-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:20px;
  padding:26px 28px;
  border-bottom:1px solid rgba(203,213,225,.72);
  background:
    radial-gradient(circle at 94% 0%,rgba(37,99,235,.14),transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#eef6ff 100%);
}
.client-message-eyebrow{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-bottom:8px;
  color:#315985;
  font-size:11px;
  letter-spacing:.14em;
  text-transform:uppercase;
  font-weight:1000;
}
.client-message-eyebrow::before{content:"💬";font-size:13px;letter-spacing:0;}
.client-message-panel-head h3{
  margin:0 0 6px!important;
  color:#0b2347!important;
  font-size:26px!important;
  letter-spacing:-.035em;
}
.client-message-panel-head p{
  margin:0;
  max-width:680px;
  color:#526981;
  line-height:1.45;
}
.client-message-panel-actions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.client-message-kpis{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  padding:16px 18px;
  background:rgba(248,251,255,.76);
  border-bottom:1px solid rgba(203,213,225,.62);
}
.client-message-kpis div{
  border:1px solid rgba(203,213,225,.72);
  border-radius:18px;
  padding:14px 16px;
  background:#fff;
  display:grid;
  gap:4px;
  box-shadow:0 12px 26px rgba(15,23,42,.04);
}
.client-message-kpis strong{
  color:#0f2b55;
  font-size:27px;
  line-height:1;
  font-weight:1000;
}
.client-message-kpis span{
  color:#64748b;
  font-size:12px;
  font-weight:900;
}
.client-message-thread-wrap{
  padding:20px 22px 18px;
  min-height:250px;
  background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}
.client-message-thread-wrap .client-empty-state{
  min-height:170px;
  display:grid;
  align-content:center;
  justify-items:center;
  text-align:center;
  border-radius:24px;
  background:linear-gradient(135deg,#fff,#f8fbff);
}
.client-message-thread{
  max-height:430px;
  padding:4px 6px 4px 0;
}
.client-message-row + .client-message-row{margin-top:2px;}
.client-message-bubble{
  border-radius:22px;
}
.client-message-row.from-client .client-message-bubble{
  border-bottom-right-radius:8px;
}
.client-message-row.from-cabinet .client-message-bubble{
  border-bottom-left-radius:8px;
}
.client-message-form-modern{
  margin:0 22px 22px;
  padding:18px;
  border:1px solid rgba(147,197,253,.72);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  box-shadow:0 18px 45px rgba(37,99,235,.08);
  display:grid;
  gap:14px;
}
.client-compose-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding-bottom:2px;
}
.client-compose-head strong{
  display:block;
  color:#0b2347;
  font-size:17px;
  font-weight:1000;
}
.client-compose-head span{
  display:block;
  margin-top:3px;
  color:#64748b;
  font-size:13px;
}
.client-message-compose-grid{
  display:grid;
  grid-template-columns:minmax(220px,.72fr) minmax(260px,1fr);
  gap:12px;
}
.client-message-form-modern label{
  display:grid;
  gap:8px;
  color:#0f172a;
  font-weight:900;
}
.client-message-form-modern .control{
  background:#fff;
}
.client-message-textarea-label textarea{
  min-height:112px;
  resize:vertical;
}
.client-compose-footer{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
}
.client-compose-footer span{
  color:#64748b;
  font-size:13px;
}
.client-message-side-stack{
  display:grid;
  gap:18px;
}
.client-message-side-card{
  padding:20px!important;
}
.client-message-tips{
  display:grid;
  gap:10px;
}
.client-message-tips div{
  display:grid;
  grid-template-columns:34px 1fr;
  column-gap:12px;
  row-gap:4px;
  align-items:start;
  padding:13px;
  border:1px solid rgba(203,213,225,.72);
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#f8fbff);
}
.client-message-tips span{
  grid-row:1/3;
  width:34px;
  height:34px;
  border-radius:999px;
  display:grid;
  place-items:center;
  background:#dbeafe;
  color:#1d4ed8;
  font-weight:1000;
}
.client-message-tips strong{
  color:#0f172a;
  font-weight:1000;
}
.client-message-tips small{
  color:#64748b;
  line-height:1.4;
}
.client-message-side-card .client-workflow div{
  padding:13px 13px 13px 46px!important;
  border-radius:18px!important;
}
.client-message-side-card .client-doc-row{
  align-items:flex-start;
  flex-direction:column;
}
.client-message-side-card .client-doc-row strong{max-width:250px;}
@media(max-width:1180px){
  .client-message-redesign{grid-template-columns:1fr;}
  .client-message-side-stack{grid-template-columns:repeat(2,minmax(0,1fr));}
}
@media(max-width:820px){
  .client-message-panel-head{align-items:flex-start;flex-direction:column;padding:22px;}
  .client-message-panel-actions{width:100%;justify-content:stretch;}
  .client-message-panel-actions .btn{flex:1;}
  .client-message-kpis{grid-template-columns:1fr;}
  .client-message-compose-grid{grid-template-columns:1fr;}
  .client-compose-footer{align-items:stretch;flex-direction:column;}
  .client-compose-footer .btn{width:100%;}
  .client-message-side-stack{grid-template-columns:1fr;}
}

/* AZALYS v3.5.2 — boîte messages clients côté cabinet */
.cabinet-inbox{display:grid;gap:18px;}
.cabinet-inbox-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:26px;border-radius:28px;background:linear-gradient(135deg,#ffffff,#eef6ff);box-shadow:0 26px 70px rgba(15,23,42,.08);}
.cabinet-inbox-hero h3{margin:6px 0 8px;font-size:30px;color:#0f2b55;letter-spacing:-.04em;}
.cabinet-inbox-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end;}
.cabinet-inbox-kpis{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;}
.cabinet-inbox-kpis .card{padding:18px;border-radius:22px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 18px 46px rgba(15,23,42,.06);}
.cabinet-inbox-kpis strong{display:block;font-size:28px;line-height:1;color:#1d4ed8;font-weight:1000;letter-spacing:-.04em;}
.cabinet-inbox-kpis span{display:block;margin-top:8px;color:#0f172a;font-weight:1000;}
.cabinet-inbox-kpis small{display:block;margin-top:5px;color:#64748b;font-weight:700;line-height:1.35;}
.cabinet-inbox-list-card{border-radius:26px;padding:20px;}
.cabinet-inbox-list{max-height:calc(100vh - 390px);min-height:360px;overflow:auto;padding-right:6px;}
.cabinet-message-row.is-unread::before{content:'Nouveau';position:absolute;top:12px;right:12px;border-radius:999px;padding:4px 9px;background:#dbeafe;color:#1d4ed8;font-size:11px;font-weight:1000;}
.cabinet-message-row{position:relative;}
@media(max-width:1100px){.cabinet-inbox-kpis{grid-template-columns:repeat(2,minmax(0,1fr));}.cabinet-inbox-hero{align-items:flex-start;flex-direction:column;}.cabinet-inbox-actions{justify-content:flex-start;}}
@media(max-width:720px){.cabinet-inbox-kpis{grid-template-columns:1fr;}.cabinet-inbox-hero h3{font-size:24px;}.cabinet-inbox-list{max-height:none;}}

/* V3.5.3 - Cabinet messages redesigned as grouped conversation threads */
.cabinet-inbox-v2{gap:16px;}
.cabinet-inbox-hero-slim{padding:22px 26px;border-radius:26px;}
.cabinet-inbox-hero-slim h3{font-size:28px;margin:5px 0 6px;}
.cabinet-inbox-kpis-compact .card{position:relative;overflow:hidden;border:1px solid rgba(191,219,254,.72);}
.cabinet-inbox-kpis-compact .card::after{content:'';position:absolute;inset:auto -26px -38px auto;width:90px;height:90px;border-radius:999px;background:rgba(59,130,246,.08);}
.cabinet-inbox-kpis-compact .card.kpi-hot{border-color:rgba(248,113,113,.42);background:linear-gradient(180deg,#fff,#fff7f7);}
.cabinet-inbox-kpis-compact .card.kpi-hot strong{color:#dc2626;}
.cabinet-inbox-workspace{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:16px;align-items:start;}
.cabinet-thread-panel{padding:18px;border-radius:28px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 24px 70px rgba(15,23,42,.07);}
.cabinet-thread-head{padding:4px 4px 16px;margin-bottom:2px;border-bottom:1px solid rgba(203,213,225,.68);}
.cabinet-thread-stack{display:grid;gap:16px;max-height:calc(100vh - 410px);min-height:430px;overflow:auto;padding:14px 6px 6px 0;scrollbar-width:thin;}
.cabinet-thread-card{position:relative;border:1px solid rgba(203,213,225,.86);border-radius:24px;background:#fff;box-shadow:0 14px 42px rgba(15,23,42,.06);overflow:hidden;}
.cabinet-thread-card.has-unread{border-color:rgba(59,130,246,.68);box-shadow:0 20px 54px rgba(37,99,235,.12);}
.cabinet-thread-card.has-unread::before{content:'';position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#2563eb,#22c55e);}
.cabinet-thread-titlebar{display:grid;grid-template-columns:46px minmax(0,1fr) auto;gap:12px;align-items:center;padding:16px 18px;background:linear-gradient(135deg,#f8fbff,#eef6ff);border-bottom:1px solid rgba(203,213,225,.72);}
.cabinet-thread-avatar{display:grid;place-items:center;width:46px;height:46px;border-radius:16px;background:linear-gradient(135deg,#2563eb,#60a5fa);color:#fff;font-weight:1000;box-shadow:0 14px 28px rgba(37,99,235,.18);}
.cabinet-thread-title{display:grid;gap:3px;min-width:0;}
.cabinet-thread-title strong{font-size:15px;color:#0f172a;font-weight:1000;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cabinet-thread-title span{font-size:12px;color:#64748b;font-weight:750;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cabinet-thread-title-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap;justify-content:flex-end;}
.cabinet-thread-bubbles{display:grid;gap:12px;padding:18px;background:linear-gradient(180deg,#ffffff,#f8fbff);}
.cabinet-chat-line{display:flex;}
.cabinet-chat-line.from-client{justify-content:flex-start;}
.cabinet-chat-line.from-cabinet{justify-content:flex-end;}
.cabinet-chat-bubble{max-width:min(680px,78%);border:1px solid rgba(203,213,225,.75);border-radius:20px;padding:12px 14px;background:#fff;box-shadow:0 12px 28px rgba(15,23,42,.04);}
.cabinet-chat-line.from-client .cabinet-chat-bubble{border-top-left-radius:8px;background:linear-gradient(180deg,#ffffff,#f1f7ff);}
.cabinet-chat-line.from-cabinet .cabinet-chat-bubble{border-top-right-radius:8px;background:linear-gradient(135deg,#2563eb,#3b82f6);color:#fff;border-color:rgba(37,99,235,.45);}
.cabinet-chat-line.is-unread .cabinet-chat-bubble{border-color:#60a5fa;box-shadow:0 14px 34px rgba(37,99,235,.13);}
.cabinet-chat-meta{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:6px;}
.cabinet-chat-meta b{font-size:12px;color:#0f2b55;font-weight:1000;}
.cabinet-chat-meta span{font-size:11px;color:#64748b;font-weight:750;}
.cabinet-chat-line.from-cabinet .cabinet-chat-meta b,
.cabinet-chat-line.from-cabinet .cabinet-chat-meta span{color:rgba(255,255,255,.86);}
.cabinet-chat-bubble strong{display:block;margin-bottom:6px;font-size:13px;color:#0f172a;font-weight:1000;}
.cabinet-chat-line.from-cabinet .cabinet-chat-bubble strong{color:#fff;}
.cabinet-chat-bubble p{margin:0;color:#334155;line-height:1.55;font-size:14px;}
.cabinet-chat-line.from-cabinet .cabinet-chat-bubble p{color:rgba(255,255,255,.95);}
.cabinet-reply-composer{display:grid;grid-template-columns:minmax(0,1fr) 180px;gap:10px;padding:14px 18px;background:#fff;border-top:1px solid rgba(203,213,225,.72);}
.cabinet-reply-composer textarea{min-height:54px;resize:vertical;border-radius:18px;}
.cabinet-reply-composer .btn{height:54px;align-self:start;border-radius:18px;}
.cabinet-inbox-side{display:grid;gap:14px;position:sticky;top:96px;}
.cabinet-side-card{border-radius:24px;padding:18px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 18px 50px rgba(15,23,42,.06);}
.cabinet-side-card h4{margin:8px 0 8px;color:#0f172a;font-size:17px;}
.cabinet-side-card.soft{background:linear-gradient(135deg,#f8fbff,#eef6ff);}
.cabinet-priority-list{display:grid;gap:8px;margin-top:12px;}
.cabinet-priority-list div{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:10px 12px;border:1px solid rgba(203,213,225,.74);border-radius:16px;background:#fff;}
.cabinet-priority-list b{font-size:12px;color:#0f172a;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.cabinet-priority-list span{font-size:11px;color:#1d4ed8;font-weight:1000;white-space:nowrap;}
.cabinet-empty-thread{padding:40px;text-align:center;border:1px dashed rgba(148,163,184,.7);border-radius:22px;background:#fff;}
@media(max-width:1180px){.cabinet-inbox-workspace{grid-template-columns:1fr;}.cabinet-inbox-side{position:static;grid-template-columns:repeat(2,minmax(0,1fr));}.cabinet-thread-stack{max-height:none;}}
@media(max-width:760px){.cabinet-thread-titlebar{grid-template-columns:40px 1fr;}.cabinet-thread-title-actions{grid-column:1/-1;justify-content:flex-start;}.cabinet-chat-bubble{max-width:92%;}.cabinet-reply-composer{grid-template-columns:1fr;}.cabinet-reply-composer .btn{width:100%;}.cabinet-inbox-side{grid-template-columns:1fr;}}


/* AZALYS v17.5 — Portail client premium + entêtes allégés */
.client-hero.client-hero-compact{
  min-height:132px;
  padding:22px 28px!important;
}
.client-hero.client-hero-compact h1{font-size:clamp(24px,2.6vw,34px)!important;margin:6px 0 8px!important;}
.client-hero.client-hero-compact p{font-size:14px;max-width:820px;}
.client-hero.client-hero-compact .eyebrow{font-size:11px;letter-spacing:.1em;}
.client-mode-tabs-premium{margin-top:-2px;}
.client-panel-card{padding:20px!important;display:grid;gap:16px;}
.client-card-intro.compact{display:grid;gap:4px;margin-bottom:2px;}
.client-card-intro.compact .eyebrow{
  display:inline-flex;align-items:center;gap:6px;color:#315985;text-transform:uppercase;
  letter-spacing:.11em;font-size:11px;font-weight:1000;
}
.client-card-intro.compact h3{margin:0;color:#0b2347;font-size:20px;letter-spacing:-.03em;}
.client-card-intro.compact p{margin:0;color:#64748b;line-height:1.45;}
.client-depot-command-premium{align-items:flex-start;gap:24px;padding:26px 28px!important;}
.client-depot-command-copy{max-width:720px;}
.client-depot-stepper{display:flex;align-items:flex-start;justify-content:flex-end;gap:12px;flex-wrap:wrap;min-width:min(460px,100%);}
.client-step{position:relative;display:grid;justify-items:center;gap:8px;min-width:118px;text-align:center;color:#64748b;font-size:13px;font-weight:900;}
.client-step:not(:last-child)::after{content:"";position:absolute;left:calc(100% - 6px);top:20px;width:36px;border-top:2px dashed rgba(191,219,254,.95);}
.client-step span{width:40px;height:40px;border-radius:999px;display:grid;place-items:center;background:#fff;border:1px solid rgba(191,219,254,.95);color:#2563eb;box-shadow:0 10px 24px rgba(37,99,235,.08);}
.client-step.active{color:#1d4ed8;}
.client-step.active span{color:#fff;background:linear-gradient(135deg,#2563eb,#3b82f6);border-color:transparent;box-shadow:0 16px 34px rgba(37,99,235,.22);}
.client-step strong{font-size:13px;line-height:1.35;}
.client-depot-split-premium{grid-template-columns:minmax(0,1fr) minmax(320px,.34fr);gap:22px;}
.client-depot-categories-card{padding:22px!important;display:grid;gap:18px;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;}
.client-depot-choice .client-action-card{min-height:168px;padding:20px 20px 18px!important;grid-template-columns:64px 1fr!important;border-radius:26px!important;overflow:hidden;}
.client-depot-choice .client-action-card.is-active{transform:translateY(-2px);border-color:rgba(96,165,250,.95)!important;box-shadow:0 24px 56px rgba(37,99,235,.16)!important;background:linear-gradient(180deg,#ffffff 0%,#f6faff 100%)!important;}
.client-depot-choice .client-action-card.is-active::before{content:"";position:absolute;left:0;top:0;bottom:0;width:5px;background:linear-gradient(180deg,#2563eb,#60a5fa);}
.client-depot-choice .client-action-icon{width:56px;height:56px;border-radius:18px;font-size:28px!important;}
.client-depot-choice .client-action-copy strong{font-size:15px!important;margin-top:4px;}
.client-depot-choice .client-action-copy small{font-size:13px!important;line-height:1.5!important;}
.client-depot-choice .client-action-card em{margin-top:4px;background:linear-gradient(135deg,#f1f5f9,#eff6ff);}
.client-side-card-head{display:grid;grid-template-columns:52px 1fr;gap:14px;align-items:flex-start;margin-bottom:16px;}
.client-side-card-head.compact{margin-bottom:14px;}
.client-side-card-head h3{margin:0 0 5px;color:#0b2347;font-size:19px;letter-spacing:-.02em;}
.client-side-card-head p{margin:0;color:#64748b;line-height:1.42;}
.client-side-card-icon{width:52px;height:52px;border-radius:18px;display:grid;place-items:center;background:linear-gradient(135deg,#eff6ff,#dbeafe);color:#1d4ed8;font-size:24px;box-shadow:inset 0 0 0 1px rgba(59,130,246,.14);}
.client-guide-card,.client-recent-card{padding:20px!important;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;}
.client-workflow.compact.premium{gap:12px!important;}
.client-workflow.compact.premium div{border-radius:20px!important;padding:15px 15px 15px 48px!important;}
.client-workflow.compact.premium strong{display:block;margin-bottom:4px;}
.client-recent-meta{display:flex;align-items:baseline;gap:8px;padding:0 0 14px;}
.client-recent-meta strong{color:#1d4ed8;font-size:28px;font-weight:1000;line-height:1;}
.client-recent-meta span{color:#64748b;font-size:13px;font-weight:900;}
.client-doc-list.premium{display:grid;gap:12px;}
.client-doc-row.premium{align-items:flex-start;padding:16px;border-radius:20px;background:linear-gradient(180deg,#fff,#f8fbff);box-shadow:0 12px 26px rgba(15,23,42,.05);}
.client-doc-row.premium strong{white-space:normal;max-width:none;line-height:1.35;}
.client-doc-row.premium small,.client-doc-row.premium em{display:block;}
.client-doc-row.premium em{margin-top:4px;color:#64748b;}
.client-doc-row.premium .badge{white-space:nowrap;align-self:flex-start;}
.client-empty-state-illustrated{display:grid;justify-items:center;align-content:center;text-align:center;min-height:180px;background:linear-gradient(180deg,#ffffff,#f8fbff);}
.client-empty-state-illustrated.compact{min-height:220px;}
.client-empty-visual{width:78px;height:78px;border-radius:24px;display:grid;place-items:center;margin-bottom:10px;background:linear-gradient(135deg,#dbeafe,#eff6ff);color:#1d4ed8;font-size:34px;box-shadow:0 18px 34px rgba(37,99,235,.14);}
.client-message-side-card{padding:20px!important;}
.client-message-side-card .section-head{display:none;}
.client-depot-modal-panel{border-radius:30px!important;background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;}
.client-depot-modal-panel .section-head h3{font-size:24px;}
@media(max-width:1180px){.client-depot-split-premium{grid-template-columns:1fr;}}
@media(max-width:860px){.client-depot-command-premium{flex-direction:column;align-items:stretch;}.client-depot-stepper{justify-content:flex-start;min-width:0;}.client-step{min-width:96px;}.client-step:not(:last-child)::after{display:none;}}
@media(max-width:720px){.client-hero.client-hero-compact{padding:20px!important;}.client-panel-card,.client-depot-categories-card,.client-guide-card,.client-recent-card,.client-message-side-card{padding:18px!important;}.client-depot-choice .client-action-card{grid-template-columns:56px 1fr!important;min-height:154px;}.client-side-card-head{grid-template-columns:44px 1fr;}.client-side-card-icon{width:44px;height:44px;border-radius:14px;font-size:20px;}}


/* AZALYS v17.6 — harmonisation client + adaptation automatique écran */
.client-portal,
.client-portal-root{
  width:100%;
  max-width:1600px;
}
.client-portal{
  padding:clamp(18px,1.8vw,28px);
}
.client-dashboard-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.client-quick-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.client-two-col,
.client-depot-split-premium,
.client-message-redesign{
  align-items:start;
}
.client-two-col{
  grid-template-columns:repeat(auto-fit,minmax(320px,1fr))!important;
}
.client-module-grid{
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr));
}
.client-mode-tabs-premium{
  position:sticky;
  top:84px;
  z-index:3;
}
.client-hero-dashboard{
  min-height:166px;
}
.client-hero-compact{
  min-height:118px;
}
.client-card-intro.compact h3,
.client-side-card-head h3{
  font-size:18px;
}
.client-message-panel-head h3{
  font-size:24px!important;
}
.client-message-kpis{
  grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
}
@media(min-width:1500px){
  .client-depot-split-premium{grid-template-columns:minmax(0,1.1fr) minmax(340px,.33fr);}
  .client-message-redesign{grid-template-columns:minmax(0,1fr) 360px;}
}
@media(max-width:900px){
  .client-mode-tabs-premium{top:0;position:relative;}
}


/* AZALYS v17.7 — Messagerie client compactée et mieux équilibrée */
.client-message-main-card.compact-layout{
  padding:0!important;
}
.client-message-panel-head.compact{
  padding:20px 22px;
}
.client-message-panel-head.compact h3{
  font-size:22px!important;
}
.client-message-panel-head.compact p{
  font-size:13px;
  max-width:560px;
}
.client-message-kpis.compact{
  padding:12px 14px;
  gap:10px;
}
.client-message-kpis.compact div{
  padding:12px 14px;
  border-radius:16px;
}
.client-message-kpis.compact strong{
  font-size:23px;
}
.client-message-content-grid{
  display:grid;
  grid-template-columns:minmax(0,1.15fr) minmax(300px,.85fr);
  gap:14px;
  padding:14px 16px 16px;
  align-items:start;
  background:linear-gradient(180deg,#f8fbff 0%,#ffffff 100%);
}
.client-message-thread-wrap.compact{
  padding:14px;
  min-height:0;
  border:1px solid rgba(203,213,225,.72);
  border-radius:24px;
  background:linear-gradient(180deg,#ffffff,#f8fbff);
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
.client-message-thread.compact,
.client-message-thread-wrap.compact .client-message-thread{
  max-height:320px;
  min-height:220px;
  padding-right:4px;
}
.client-message-row .client-message-bubble{
  width:min(100%,560px);
  padding:14px 16px;
}
.client-message-bubble h4{
  font-size:14px;
  margin-bottom:6px;
}
.client-message-bubble p{
  font-size:13px;
  line-height:1.45;
}
.client-message-compose-wrap{
  min-width:0;
}
.client-message-compose-wrap .client-message-form-modern{
  margin:0;
  padding:16px;
  border-radius:22px;
  position:sticky;
  top:0;
  box-shadow:0 14px 34px rgba(37,99,235,.07);
}
.client-message-compose-wrap .client-compose-head strong{
  font-size:16px;
}
.client-message-compose-wrap .client-compose-head span,
.client-message-compose-wrap .client-compose-footer span{
  font-size:12px;
}
.client-message-compose-wrap .client-message-compose-grid{
  grid-template-columns:1fr;
  gap:10px;
}
.client-message-compose-wrap .client-message-textarea-label textarea{
  min-height:92px;
}
.client-message-side-stack.compact{
  gap:14px;
}
.client-message-side-card.compact{
  padding:16px!important;
}
.client-message-tips.compact div{
  padding:11px;
  border-radius:16px;
}
.client-message-side-card.compact .client-doc-row{
  padding:12px 13px;
  border-radius:16px;
}
@media(max-width:1360px){
  .client-message-content-grid{
    grid-template-columns:1fr;
  }
  .client-message-compose-wrap .client-message-form-modern{
    position:relative;
  }
}
@media(max-width:1180px){
  .client-message-redesign{grid-template-columns:1fr;}
}
@media(max-width:820px){
  .client-message-panel-head.compact{padding:18px;}
  .client-message-content-grid{padding:12px;}
  .client-message-thread-wrap.compact{padding:12px;}
  .client-message-thread-wrap.compact .client-message-thread{max-height:280px;min-height:180px;}
}


/* AZALYS v17.8 — Demandes liées aux pièces plus visibles et orientées action */
.client-action-needed-card{
  padding:20px!important;
  display:grid;
  gap:16px;
  border:1px solid rgba(191,219,254,.84);
  background:linear-gradient(180deg,#ffffff 0%,#f8fbff 100%)!important;
}
.client-action-needed-card.has-alerts{
  box-shadow:0 18px 42px rgba(37,99,235,.08);
}
.client-action-needed-card.has-alerts::before{
  content:"";
  display:block;
  height:4px;
  border-radius:999px;
  background:linear-gradient(90deg,#2563eb,#60a5fa);
}
.client-action-needed-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:14px;
}
.client-action-needed-head h3{
  margin:4px 0 6px;
  color:#0b2347;
  font-size:22px;
  letter-spacing:-.03em;
}
.client-action-needed-head .muted{
  max-width:800px;
  line-height:1.45;
}
.client-action-needed-badge{
  white-space:nowrap;
  border-radius:999px;
  padding:10px 14px;
  background:linear-gradient(135deg,#dbeafe,#eff6ff);
  color:#1d4ed8;
  font-size:12px;
  font-weight:1000;
  box-shadow:inset 0 0 0 1px rgba(96,165,250,.25);
}
.client-followup-grid{
  display:grid;
  grid-template-columns:repeat(auto-fit,minmax(260px,1fr));
  gap:14px;
}
.client-followup-card{
  border:1px solid rgba(203,213,225,.76);
  border-radius:22px;
  padding:16px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:0 12px 30px rgba(15,23,42,.05);
  display:grid;
  gap:12px;
}
.client-followup-top{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:10px;
}
.client-followup-top strong,
.client-followup-side-head strong{
  display:block;
  color:#0f172a;
  font-size:16px;
  line-height:1.3;
  font-weight:1000;
}
.client-followup-top small,
.client-followup-side-head small{
  display:block;
  margin-top:4px;
  color:#64748b;
  font-size:12px;
}
.client-followup-card p{
  margin:0;
  color:#334155;
  line-height:1.5;
  font-size:14px;
}
.client-followup-actions,
.client-followup-side-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
.client-followup-empty{
  display:grid;
  justify-items:center;
  text-align:center;
  gap:8px;
  padding:10px 0 4px;
}
.client-followup-empty strong{color:#0b2347;font-size:18px;}
.client-followup-empty span{max-width:720px;color:#64748b;line-height:1.45;}
.client-followup-list-side{
  display:grid;
  gap:12px;
}
.client-followup-side-item{
  border:1px solid rgba(203,213,225,.76);
  border-radius:18px;
  padding:13px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  display:grid;
  gap:10px;
}
.client-followup-side-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:8px;
}
.client-followup-side-item em{
  color:#334155;
  line-height:1.45;
  font-style:normal;
}
.client-quick-card.attention{
  border-color:rgba(96,165,250,.9)!important;
  box-shadow:0 14px 34px rgba(37,99,235,.08);
}
@media(max-width:860px){
  .client-action-needed-head{flex-direction:column;}
  .client-action-needed-badge{white-space:normal;}
}
@media(max-width:640px){
  .client-followup-actions,.client-followup-side-actions{flex-direction:column;}
  .client-followup-actions .btn,.client-followup-side-actions .btn{width:100%;}
}


/* AZALYS v17.9 — dashboard client compact pour éviter une partie trop grande */
.client-portal-root{
  gap:14px;
}
.client-mode-body{
  gap:14px;
}
.client-hero{
  padding:20px 24px!important;
}
.client-hero-dashboard{
  min-height:124px;
}
.client-hero.client-hero-dashboard h1{
  font-size:clamp(24px,2.2vw,34px)!important;
  margin:6px 0 8px!important;
}
.client-hero.client-hero-dashboard p{
  font-size:14px;
  max-width:760px;
}
.client-hero-badge{
  padding:10px 18px;
  font-size:14px;
}
.client-mode-tabs,
.client-mode-tabs-premium{
  padding:6px;
  border-radius:20px;
}
.client-mode-tabs button,
.client-mode-tabs-premium button{
  padding:10px 14px;
  border-radius:14px;
  font-size:14px;
}
.client-dashboard-grid{
  gap:12px;
}
.client-stat-card{
  padding:14px 16px;
  gap:5px;
  border-radius:20px;
  min-height:128px;
}
.client-stat-card span{
  width:40px;
  height:40px;
  border-radius:14px;
  font-size:20px;
}
.client-stat-card strong{
  font-size:22px;
  margin-top:2px;
}
.client-stat-card small{
  font-size:13px;
}
.client-stat-card em{
  font-size:12px;
  line-height:1.35;
}
.client-quick-grid{
  gap:12px;
}
.client-quick-card{
  padding:16px 18px;
  border-radius:20px;
  gap:6px;
  min-height:92px;
}
.client-quick-card strong{
  font-size:16px;
}
.client-quick-card span{
  font-size:13px;
  line-height:1.35;
}
.client-action-needed-card{
  padding:18px!important;
  gap:14px;
}
.client-action-needed-head h3{
  font-size:20px;
}
.client-action-needed-head .muted{
  font-size:13px;
}
.client-action-needed-badge{
  padding:8px 12px;
  font-size:11px;
}
.client-followup-grid{
  gap:12px;
}
.client-followup-card{
  padding:14px;
  border-radius:20px;
  gap:10px;
}
.client-followup-top strong{
  font-size:15px;
}
.client-followup-card p{
  font-size:13px;
}
@media(min-width:1280px){
  .client-dashboard-grid{
    grid-template-columns:repeat(4,minmax(0,1fr));
  }
  .client-quick-grid{
    grid-template-columns:1.05fr 1fr 1fr 1fr;
  }
}
@media(max-width:900px){
  .client-hero{padding:18px!important;}
  .client-hero-dashboard{min-height:110px;}
}
@media(max-width:720px){
  .client-hero{padding:18px!important;}
  .client-hero-badge{width:100%;justify-content:center;}
  .client-stat-card,
  .client-quick-card{min-height:auto;}
}


/* AZALYS v17.10 — harmonisation compacte premium de tout l'espace client */

/* Topbar client : moins haute, plus sobre */
body.role-client-dossier .topbar{
  min-height:56px!important;
  padding:9px clamp(16px,1.7vw,26px)!important;
}
body.role-client-dossier .topbar h2{
  font-size:clamp(18px,1.45vw,22px)!important;
  line-height:1.15!important;
}
body.role-client-dossier .topbar .eyebrow{
  font-size:10px!important;
  letter-spacing:.12em!important;
}
body.role-client-dossier .status-pill{
  padding:7px 12px!important;
  font-size:12px!important;
}

/* Structure générale : moins de vide vertical */
.client-portal{
  padding:clamp(14px,1.45vw,24px)!important;
}
.client-portal-root,
.client-mode-body{
  gap:12px!important;
}
.client-portal .card,
.client-portal .client-hero{
  border-radius:24px!important;
}

/* Hero unique : compact partout */
.client-hero,
.client-hero.client-hero-dashboard,
.client-hero.client-hero-compact{
  min-height:96px!important;
  padding:18px 22px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
}
.client-hero h1,
.client-hero.client-hero-dashboard h1,
.client-hero.client-hero-compact h1{
  font-size:clamp(23px,2vw,32px)!important;
  margin:4px 0 6px!important;
  line-height:1.08!important;
}
.client-hero p{
  margin:0!important;
  font-size:13.5px!important;
  line-height:1.4!important;
}
.client-hero .eyebrow{
  font-size:10px!important;
  letter-spacing:.12em!important;
}
.client-hero-badge{
  min-height:38px!important;
  padding:9px 15px!important;
  font-size:13px!important;
  white-space:nowrap!important;
}

/* Onglets : densité normale d'une application SaaS */
.client-mode-tabs,
.client-mode-tabs-premium{
  padding:6px!important;
  border-radius:19px!important;
  gap:6px!important;
}
.client-mode-tabs button,
.client-mode-tabs-premium button{
  padding:9px 13px!important;
  min-height:38px!important;
  border-radius:13px!important;
  font-size:13px!important;
}

/* Dashboard : KPI et raccourcis compacts */
.client-dashboard-grid{
  gap:11px!important;
}
.client-stat-card{
  min-height:106px!important;
  padding:13px 15px!important;
  border-radius:18px!important;
  gap:4px!important;
}
.client-stat-card span{
  width:36px!important;
  height:36px!important;
  border-radius:13px!important;
  font-size:18px!important;
}
.client-stat-card strong{
  font-size:22px!important;
}
.client-stat-card small{
  font-size:12.5px!important;
}
.client-stat-card em{
  font-size:11.5px!important;
}
.client-quick-grid{
  gap:11px!important;
}
.client-quick-card{
  min-height:78px!important;
  padding:14px 16px!important;
  border-radius:18px!important;
  gap:5px!important;
}
.client-quick-card strong{
  font-size:15.5px!important;
}
.client-quick-card span{
  font-size:12.5px!important;
}

/* Dépôts simples : commandes et cartes plus équilibrées */
.client-depot-command,
.client-depot-command-premium{
  padding:18px 20px!important;
  border-radius:22px!important;
  gap:16px!important;
}
.client-depot-command h3,
.client-depot-command-premium h3{
  font-size:21px!important;
  margin:3px 0 5px!important;
}
.client-depot-command .muted,
.client-depot-command-premium .muted{
  font-size:13px!important;
  line-height:1.4!important;
}
.client-step span{
  width:34px!important;
  height:34px!important;
}
.client-step{
  min-width:102px!important;
  gap:6px!important;
}
.client-step strong{
  font-size:12px!important;
}
.client-depot-categories-card{
  padding:18px!important;
  gap:14px!important;
}
.client-depot-choice .client-action-card{
  min-height:138px!important;
  padding:16px!important;
  grid-template-columns:52px 1fr!important;
  border-radius:22px!important;
}
.client-depot-choice .client-action-icon{
  width:48px!important;
  height:48px!important;
  border-radius:16px!important;
  font-size:23px!important;
}
.client-depot-choice .client-action-copy strong{
  font-size:14.2px!important;
}
.client-depot-choice .client-action-copy small{
  font-size:12.5px!important;
  line-height:1.38!important;
}
.client-action-card em{
  min-height:24px!important;
  padding:5px 9px!important;
  font-size:10.5px!important;
}
.client-action-count{
  font-size:11px!important;
}

/* Dossier & modules : moins haut, plus lisible */
.client-panel-card{
  padding:18px!important;
  gap:13px!important;
}
.client-card-intro.compact h3,
.client-side-card-head h3{
  font-size:17px!important;
}
.client-card-intro.compact p,
.client-side-card-head p{
  font-size:12.5px!important;
}
.client-dossier-row{
  padding:13px!important;
  border-radius:18px!important;
}
.client-dossier-avatar{
  width:40px!important;
  height:40px!important;
  min-width:40px!important;
  border-radius:14px!important;
}
.client-module-card{
  padding:13px!important;
  border-radius:17px!important;
  grid-template-columns:38px 1fr!important;
  gap:8px 11px!important;
}
.client-module-card span{
  width:38px!important;
  height:38px!important;
  border-radius:13px!important;
  font-size:19px!important;
}
.client-module-card strong{
  font-size:13.5px!important;
}
.client-module-card small{
  font-size:12px!important;
}

/* Messages : compact partout */
.client-message-panel-head,
.client-message-panel-head.compact{
  padding:17px 20px!important;
}
.client-message-panel-head h3,
.client-message-panel-head.compact h3{
  font-size:20px!important;
  margin-bottom:4px!important;
}
.client-message-panel-head p{
  font-size:12.5px!important;
  line-height:1.38!important;
}
.client-message-eyebrow{
  margin-bottom:5px!important;
  font-size:10px!important;
}
.client-message-kpis,
.client-message-kpis.compact{
  padding:10px 12px!important;
  gap:8px!important;
}
.client-message-kpis div{
  padding:10px 12px!important;
  border-radius:15px!important;
}
.client-message-kpis strong{
  font-size:20px!important;
}
.client-message-kpis span{
  font-size:11.5px!important;
}
.client-message-content-grid{
  padding:12px!important;
  gap:12px!important;
}
.client-message-thread-wrap.compact,
.client-message-thread-wrap{
  padding:12px!important;
  border-radius:20px!important;
}
.client-message-thread-wrap.compact .client-message-thread{
  max-height:300px!important;
}
.client-message-row .client-message-bubble{
  padding:12px 14px!important;
  border-radius:18px!important;
}
.client-message-bubble h4{
  font-size:13.5px!important;
}
.client-message-bubble p{
  font-size:12.5px!important;
}
.client-message-form-modern{
  padding:14px!important;
  border-radius:20px!important;
  gap:10px!important;
}
.client-message-textarea-label textarea{
  min-height:82px!important;
}
.client-message-side-card{
  padding:14px!important;
  border-radius:20px!important;
}
.client-message-tips div{
  padding:10px!important;
  border-radius:15px!important;
}
.client-message-tips span{
  width:30px!important;
  height:30px!important;
}
.client-message-tips strong{
  font-size:12.8px!important;
}
.client-message-tips small{
  font-size:11.5px!important;
}

/* Demandes liées aux pièces : visibles sans être énormes */
.client-action-needed-card{
  padding:16px!important;
  gap:12px!important;
  border-radius:22px!important;
}
.client-action-needed-head h3{
  font-size:19px!important;
  margin:2px 0 4px!important;
}
.client-action-needed-head .muted{
  font-size:12.5px!important;
}
.client-followup-card{
  padding:13px!important;
  border-radius:18px!important;
}
.client-followup-top strong,
.client-followup-side-head strong{
  font-size:14px!important;
}
.client-followup-card p,
.client-followup-side-item em{
  font-size:12.5px!important;
}
.client-followup-side-item{
  padding:12px!important;
  border-radius:16px!important;
}

/* Modales dépôt : plus compactes */
.client-depot-modal-panel{
  padding:22px!important;
}
.client-depot-modal-panel .section-head h3{
  font-size:21px!important;
}
.client-dropzone{
  padding:22px 18px!important;
  border-radius:22px!important;
}
.client-drop-ic{
  width:52px!important;
  height:52px!important;
  border-radius:18px!important;
  font-size:27px!important;
}
.client-form-row{
  gap:10px!important;
}
.client-upload-form-xp{
  gap:12px!important;
}

@media(min-width:1280px){
  .client-dashboard-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
  .client-quick-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;}
}
@media(max-width:900px){
  .client-hero,
  .client-hero.client-hero-dashboard,
  .client-hero.client-hero-compact{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
}
@media(max-width:720px){
  .client-portal{padding:14px!important;}
  .client-mode-tabs{display:grid!important;grid-template-columns:1fr!important;}
  .client-dashboard-grid,
  .client-quick-grid,
  .client-followup-grid{grid-template-columns:1fr!important;}
}


/* V5.46 — Dashboard client plus compact et centré */
.client-dashboard-grid{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(180px,220px))!important;
  justify-content:center!important;
  gap:12px!important;
}
.client-stat-card{
  width:100%!important;
  min-height:74px!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  gap:2px!important;
}
.client-stat-card span{
  width:32px!important;
  height:32px!important;
  border-radius:11px!important;
  font-size:16px!important;
}
.client-stat-card strong{
  font-size:18px!important;
  line-height:1!important;
  margin-top:0!important;
}
.client-stat-card small{
  font-size:11px!important;
  line-height:1.2!important;
}
.client-stat-card em{
  font-size:10.5px!important;
  line-height:1.25!important;
}
@media(min-width:1280px){
  .client-dashboard-grid{
    grid-template-columns:repeat(5,220px)!important;
    justify-content:center!important;
  }
}


/* AZALYS V5.47 — Recette client : déconnexion mobile, pièces consultables, timeline simple */
.top-user-box{
  display:inline-flex!important;
  align-items:center!important;
  gap:8px!important;
  padding:6px 9px!important;
  border:1px solid rgba(203,213,225,.9)!important;
  border-radius:999px!important;
  background:rgba(248,250,252,.94)!important;
  color:#0f2544!important;
  max-width:260px!important;
}
.top-user-box.hidden,
.top-logout.hidden{display:none!important;}
.top-user-avatar{
  width:26px;height:26px;border-radius:999px;display:inline-flex;align-items:center;justify-content:center;
  background:#eef2ff;border:1px solid #dbeafe;font-size:13px;flex:0 0 auto;
}
.top-user-main{display:flex;flex-direction:column;min-width:0;line-height:1.05;}
.top-user-main strong{font-size:12px;font-weight:950;max-width:160px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;color:#0f2544;}
.top-user-main small{font-size:10px;font-weight:850;color:#64748b;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.top-logout{white-space:nowrap!important;}

.client-doc-list-trackable{display:grid;gap:10px;}
.client-doc-row-trackable{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:12px!important;
  align-items:start!important;
  padding:13px!important;
}
.client-doc-main{display:grid;gap:6px;min-width:0;}
.client-doc-titleline{display:flex;align-items:center;gap:8px;justify-content:space-between;min-width:0;}
.client-doc-titleline strong{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;}
.client-doc-row-trackable em{font-style:normal;color:#64748b;font-size:12px;line-height:1.35;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.client-doc-actions{display:flex;align-items:center;justify-content:flex-end;gap:7px;flex-wrap:wrap;}
.client-doc-actions .btn{min-height:30px!important;padding:6px 9px!important;font-size:12px!important;border-radius:10px!important;}
.client-doc-timeline{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:5px;margin-top:3px;}
.client-doc-timeline span{position:relative;display:flex;align-items:center;gap:5px;font-size:10px;font-weight:900;color:#94a3b8;white-space:nowrap;min-width:0;}
.client-doc-timeline span:after{content:"";position:absolute;left:16px;right:-4px;top:7px;height:2px;background:#e2e8f0;z-index:0;}
.client-doc-timeline span:last-child:after{display:none;}
.client-doc-timeline i{position:relative;z-index:1;width:14px;height:14px;border-radius:999px;border:2px solid #cbd5e1;background:#fff;flex:0 0 auto;}
.client-doc-timeline span.done{color:#0f766e;}
.client-doc-timeline span.done i{background:#14b8a6;border-color:#0f766e;box-shadow:0 0 0 3px rgba(20,184,166,.12);}
.client-doc-timeline span.done:after{background:#99f6e4;}

@media(max-width:1000px){
  .topbar .top-actions{width:100%!important;display:flex!important;align-items:center!important;gap:8px!important;}
  .top-user-box{order:-2;max-width:calc(100% - 130px)!important;}
  .top-logout{order:-1;margin-left:auto!important;flex:0 0 auto!important;display:inline-flex!important;}
  .top-actions #db-status{order:3;}
}
@media(max-width:640px){
  .top-user-box{max-width:100%!important;flex:1 1 100%!important;border-radius:14px!important;}
  .top-user-main strong{max-width:none;}
  .top-logout{width:auto!important;flex:1 1 auto!important;justify-content:center!important;}
  .client-doc-row-trackable{grid-template-columns:1fr!important;}
  .client-doc-actions{justify-content:stretch!important;}
  .client-doc-actions .btn{flex:1 1 auto!important;justify-content:center!important;}
  .client-doc-timeline{grid-template-columns:1fr 1fr!important;gap:7px 10px;}
  .client-doc-timeline span:after{display:none;}
}

/* AZALYS V5.48 — Messages client réellement opérationnels */
body.role-client-dossier .client-message-operational{
  display:grid;
  grid-template-columns:minmax(0,1fr) minmax(300px,360px);
  gap:18px;
  align-items:start;
}
body.role-client-dossier .client-chat-card{
  padding:0!important;
  overflow:hidden;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 18px 50px rgba(15,23,42,.07)!important;
}
body.role-client-dossier .client-chat-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  padding:18px 20px 14px;
  background:linear-gradient(135deg,#ffffff,#eef6ff);
  border-bottom:1px solid rgba(203,213,225,.72);
}
body.role-client-dossier .client-chat-head h3{
  margin:4px 0 4px;
  color:#0b2347;
  font-size:22px;
  font-weight:1000;
  letter-spacing:-.03em;
}
body.role-client-dossier .client-chat-head p{
  margin:0;
  color:#64748b;
  font-size:13px;
  font-weight:750;
}
body.role-client-dossier .client-chat-head-actions{
  display:flex;
  gap:10px;
  align-items:center;
  flex-wrap:wrap;
  justify-content:flex-end;
}
body.role-client-dossier .client-chat-alert{
  display:inline-flex;
  align-items:center;
  border-radius:999px;
  padding:8px 11px;
  background:#dbeafe;
  color:#1d4ed8;
  font-weight:1000;
  font-size:12px;
}
body.role-client-dossier .client-chat-mini-status{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  padding:10px 20px;
  border-bottom:1px solid rgba(226,232,240,.9);
  background:#fff;
}
body.role-client-dossier .client-chat-mini-status span{
  display:inline-flex;
  gap:5px;
  align-items:center;
  border:1px solid rgba(203,213,225,.86);
  border-radius:999px;
  padding:6px 10px;
  color:#475569;
  font-size:12px;
  font-weight:850;
  background:#f8fbff;
}
body.role-client-dossier .client-chat-mini-status strong{color:#0f2b55;font-weight:1000;}
body.role-client-dossier .client-chat-stream-wrap{
  padding:14px 18px;
  background:linear-gradient(180deg,#f8fbff,#ffffff);
}
body.role-client-dossier .client-message-thread.operational-thread{
  max-height:clamp(320px, calc(100vh - 500px), 560px);
  min-height:300px;
  overflow:auto;
  display:grid;
  gap:10px;
  padding:4px 6px 4px 0;
  scroll-behavior:smooth;
}
body.role-client-dossier .client-message-thread.operational-thread .client-message-row{
  display:flex;
  margin:0;
}
body.role-client-dossier .client-message-thread.operational-thread .client-message-row.from-client{justify-content:flex-end;}
body.role-client-dossier .client-message-thread.operational-thread .client-message-row.from-cabinet{justify-content:flex-start;}
body.role-client-dossier .client-message-thread.operational-thread .client-message-bubble{
  max-width:min(760px,82%);
  padding:13px 15px;
  border-radius:18px;
  border:1px solid rgba(203,213,225,.75);
  box-shadow:0 10px 24px rgba(15,23,42,.04);
}
body.role-client-dossier .client-message-thread.operational-thread .from-cabinet .client-message-bubble{
  background:linear-gradient(180deg,#ffffff,#f1f7ff);
  border-bottom-left-radius:7px;
}
body.role-client-dossier .client-message-thread.operational-thread .from-client .client-message-bubble{
  background:linear-gradient(135deg,#2563eb,#3b82f6);
  color:#fff;
  border-color:rgba(37,99,235,.45);
  border-bottom-right-radius:7px;
}
body.role-client-dossier .client-message-thread.operational-thread .is-unread .client-message-bubble{
  border-color:#60a5fa;
  box-shadow:0 14px 34px rgba(37,99,235,.14);
}
body.role-client-dossier .client-message-thread.operational-thread .client-message-meta{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  margin-bottom:5px;
}
body.role-client-dossier .client-message-thread.operational-thread .client-message-meta strong{font-size:12px;font-weight:1000;}
body.role-client-dossier .client-message-thread.operational-thread .client-message-meta span{font-size:11px;opacity:.72;font-weight:800;}
body.role-client-dossier .client-message-thread.operational-thread h4{margin:0 0 5px;font-size:13px;font-weight:1000;color:inherit;}
body.role-client-dossier .client-message-thread.operational-thread p{margin:0;line-height:1.52;font-size:13px;color:inherit;opacity:.92;}
body.role-client-dossier .client-chat-compose-zone{
  border-top:1px solid rgba(203,213,225,.72);
  background:#fff;
  padding:14px 18px 16px;
}
body.role-client-dossier .client-message-form-operational{
  display:grid;
  gap:10px;
  margin:0;
}
body.role-client-dossier .client-message-form-line{
  display:grid;
  grid-template-columns:minmax(190px,.75fr) minmax(220px,1fr);
  gap:10px;
}
body.role-client-dossier .client-message-form-operational label{
  display:grid;
  gap:6px;
  color:#0f172a;
  font-weight:950;
  font-size:12px;
}
body.role-client-dossier .client-message-form-operational .control{
  min-height:38px;
  border-radius:12px;
  background:#fff;
}
body.role-client-dossier .client-message-body-field textarea{
  min-height:74px;
  resize:vertical;
}
body.role-client-dossier .client-compose-footer.operational{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
body.role-client-dossier .client-compose-footer.operational span{font-size:12px;color:#64748b;font-weight:750;}
body.role-client-dossier .client-compose-footer.operational .btn{min-width:132px;}
body.role-client-dossier .client-chat-action-card{
  padding:18px!important;
  border-radius:24px!important;
  position:sticky;
  top:82px;
  max-height:calc(100vh - 110px);
  overflow:auto;
}
body.role-client-dossier .client-action-head{
  display:grid;
  grid-template-columns:44px 1fr;
  gap:12px;
  align-items:start;
  margin-bottom:14px;
}
body.role-client-dossier .client-action-head h3{margin:2px 0 4px;color:#0b2347;font-size:18px;font-weight:1000;}
body.role-client-dossier .client-followup-list-side.operational{display:grid;gap:10px;}
body.role-client-dossier .client-followup-side-item.operational{
  border:1px solid rgba(203,213,225,.86);
  border-radius:18px;
  padding:12px;
  background:linear-gradient(180deg,#fff,#f8fbff);
}
body.role-client-dossier .client-followup-side-item.operational em{
  display:block;
  margin:8px 0 10px;
  color:#475569;
  font-style:normal;
  font-size:12px;
  line-height:1.45;
}
body.role-client-dossier .client-followup-side-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
body.role-client-dossier .client-followup-side-actions .client-doc-actions{
  display:flex;
  gap:8px;
  flex-wrap:wrap;
}
body.role-client-dossier .client-followup-empty-operational{
  display:grid;
  gap:8px;
  padding:14px;
  border:1px dashed rgba(148,163,184,.8);
  border-radius:18px;
  background:#f8fbff;
}
body.role-client-dossier .client-followup-empty-operational strong{color:#0f172a;font-weight:1000;}
body.role-client-dossier .client-followup-empty-operational span{color:#64748b;font-size:13px;line-height:1.4;}
@media(max-width:1180px){
  body.role-client-dossier .client-message-operational{grid-template-columns:1fr;}
  body.role-client-dossier .client-chat-action-card{position:relative;top:auto;max-height:none;}
}
@media(max-width:720px){
  body.role-client-dossier .client-chat-head{padding:16px;flex-direction:column;}
  body.role-client-dossier .client-chat-head-actions{width:100%;justify-content:stretch;}
  body.role-client-dossier .client-chat-head-actions .btn{flex:1;}
  body.role-client-dossier .client-chat-mini-status{padding:10px 14px;}
  body.role-client-dossier .client-chat-stream-wrap{padding:12px;}
  body.role-client-dossier .client-message-thread.operational-thread{max-height:48vh;min-height:280px;}
  body.role-client-dossier .client-message-thread.operational-thread .client-message-bubble{max-width:92%;}
  body.role-client-dossier .client-chat-compose-zone{padding:12px;}
  body.role-client-dossier .client-message-form-line{grid-template-columns:1fr;}
  body.role-client-dossier .client-compose-footer.operational{align-items:stretch;flex-direction:column;}
  body.role-client-dossier .client-compose-footer.operational .btn{width:100%;}
}

/* V5.49 - Tableau de bord client orienté actions : quoi faire maintenant */
body.role-client-dossier .client-action-dashboard{
  display:grid!important;
  gap:18px!important;
  max-width:1280px!important;
  margin:0 auto!important;
}
body.role-client-dossier .client-today-panel{
  position:relative!important;
  overflow:hidden!important;
  border:1px solid rgba(37,99,235,.22)!important;
  box-shadow:0 20px 48px rgba(15,23,42,.08)!important;
  padding:22px!important;
}
body.role-client-dossier .client-today-panel::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:5px;
  background:linear-gradient(90deg,#2563eb,#60a5fa,#22c55e);
}
body.role-client-dossier .client-today-panel.is-calm::before{
  background:linear-gradient(90deg,#22c55e,#86efac);
}
body.role-client-dossier .client-today-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:18px!important;
  margin-bottom:16px!important;
}
body.role-client-dossier .client-today-head h2{
  margin:4px 0 6px!important;
  font-size:clamp(24px,3vw,34px)!important;
  line-height:1.08!important;
  color:#0b2347!important;
  letter-spacing:-.03em!important;
}
body.role-client-dossier .client-today-head .muted{
  margin:0!important;
  font-size:14px!important;
  max-width:680px!important;
}
body.role-client-dossier .client-action-list{
  display:grid!important;
  gap:10px!important;
}
body.role-client-dossier .client-action-row{
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr) auto!important;
  gap:14px!important;
  align-items:center!important;
  padding:14px!important;
  border-radius:18px!important;
  border:1px solid rgba(203,213,225,.85)!important;
  background:#fff!important;
  box-shadow:0 12px 28px rgba(15,23,42,.05)!important;
}
body.role-client-dossier .client-action-row.urgent{
  border-color:rgba(248,113,113,.5)!important;
  background:linear-gradient(135deg,#fff,#fff7f7)!important;
}
body.role-client-dossier .client-action-icon{
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  background:#eef6ff!important;
  font-size:20px!important;
}
body.role-client-dossier .client-action-titleline{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin-bottom:2px!important;
}
body.role-client-dossier .client-action-titleline strong{
  font-size:15px!important;
  color:#0f172a!important;
}
body.role-client-dossier .client-action-content small{
  display:block!important;
  color:#64748b!important;
  font-size:12px!important;
  font-weight:800!important;
  margin-bottom:4px!important;
}
body.role-client-dossier .client-action-content p{
  margin:0!important;
  color:#334155!important;
  font-size:13px!important;
  line-height:1.42!important;
}
body.role-client-dossier .client-action-buttons{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  min-width:190px!important;
}
body.role-client-dossier .client-action-buttons .client-doc-actions{
  margin:0!important;
  display:flex!important;
  gap:8px!important;
}
body.role-client-dossier .client-action-empty{
  min-height:190px!important;
  border:1px dashed rgba(34,197,94,.35)!important;
  border-radius:22px!important;
  display:grid!important;
  place-items:center!important;
  text-align:center!important;
  gap:8px!important;
  padding:28px!important;
  background:linear-gradient(135deg,#f0fdf4,#fff)!important;
}
body.role-client-dossier .client-action-empty div{font-size:36px!important;}
body.role-client-dossier .client-action-empty strong{font-size:20px!important;color:#0f172a!important;}
body.role-client-dossier .client-action-empty span{color:#64748b!important;font-size:14px!important;}
body.role-client-dossier .client-simple-actions{
  display:grid!important;
  grid-template-columns:1.1fr 1fr 1fr .9fr!important;
  gap:14px!important;
}
body.role-client-dossier .client-simple-action{
  border:1px solid rgba(203,213,225,.82)!important;
  border-radius:22px!important;
  background:#fff!important;
  color:#0f172a!important;
  display:grid!important;
  grid-template-columns:44px minmax(0,1fr)!important;
  grid-template-areas:"icon title" "icon sub"!important;
  gap:2px 12px!important;
  text-align:left!important;
  padding:16px!important;
  min-height:92px!important;
  cursor:pointer!important;
  box-shadow:0 16px 34px rgba(15,23,42,.06)!important;
  transition:.18s ease!important;
}
body.role-client-dossier .client-simple-action:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 22px 44px rgba(15,23,42,.10)!important;
}
body.role-client-dossier .client-simple-action span{
  grid-area:icon;
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  background:#eff6ff!important;
  font-size:20px!important;
}
body.role-client-dossier .client-simple-action strong{
  grid-area:title;
  align-self:end;
  font-size:16px!important;
  font-weight:1000!important;
}
body.role-client-dossier .client-simple-action small{
  grid-area:sub;
  color:#64748b!important;
  font-size:12px!important;
  line-height:1.35!important;
  font-weight:700!important;
}
body.role-client-dossier .client-simple-action.primary{
  background:linear-gradient(135deg,#1d4ed8,#3b82f6)!important;
  color:#fff!important;
  border-color:rgba(37,99,235,.35)!important;
}
body.role-client-dossier .client-simple-action.primary span{background:rgba(255,255,255,.18)!important;}
body.role-client-dossier .client-simple-action.primary small{color:rgba(255,255,255,.82)!important;}
body.role-client-dossier .client-simple-action.attention{
  border-color:rgba(248,113,113,.45)!important;
  background:linear-gradient(135deg,#fff7f7,#fff)!important;
}
body.role-client-dossier .client-simple-action.subtle{
  background:#f8fafc!important;
}
body.role-client-dossier .client-home-split{
  display:grid!important;
  grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr)!important;
  gap:18px!important;
  align-items:start!important;
}
body.role-client-dossier .client-home-card{
  padding:18px!important;
}
body.role-client-dossier .compact-head{
  margin-bottom:12px!important;
}
body.role-client-dossier .compact-head h3{
  margin:0!important;
  font-size:18px!important;
  color:#0f172a!important;
}
body.role-client-dossier .compact-head .muted{
  font-size:13px!important;
  margin-top:4px!important;
}
body.role-client-dossier .client-message-preview-list{
  display:grid!important;
  gap:10px!important;
}
body.role-client-dossier .client-message-preview{
  text-align:left!important;
  border:1px solid rgba(203,213,225,.8)!important;
  background:#fff!important;
  border-radius:16px!important;
  padding:12px 13px!important;
  display:grid!important;
  grid-template-columns:26px minmax(0,1fr)!important;
  gap:2px 10px!important;
  cursor:pointer!important;
  color:#0f172a!important;
}
body.role-client-dossier .client-message-preview.unread{
  border-color:rgba(37,99,235,.35)!important;
  background:linear-gradient(135deg,#eff6ff,#fff)!important;
}
body.role-client-dossier .client-message-preview span{
  grid-row:1/4!important;
  margin-top:1px!important;
}
body.role-client-dossier .client-message-preview strong{
  font-size:14px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
body.role-client-dossier .client-message-preview small{
  color:#64748b!important;
  font-size:12px!important;
  font-weight:800!important;
}
body.role-client-dossier .client-message-preview em{
  color:#475569!important;
  font-style:normal!important;
  font-size:13px!important;
  line-height:1.35!important;
}
body.role-client-dossier .client-doc-list-trackable .client-doc-row-trackable{
  grid-template-columns:minmax(0,1fr) auto!important;
  padding:12px!important;
}
body.role-client-dossier .client-doc-timeline{
  margin-top:8px!important;
}
body.role-client-dossier .client-dashboard-grid,
body.role-client-dossier .client-quick-grid,
body.role-client-dossier .client-action-needed-card{
  display:none!important;
}
@media(max-width:1000px){
  body.role-client-dossier .client-today-head{flex-direction:column!important;align-items:stretch!important;}
  body.role-client-dossier .client-simple-actions{grid-template-columns:1fr 1fr!important;}
  body.role-client-dossier .client-home-split{grid-template-columns:1fr!important;}
  body.role-client-dossier .client-action-row{grid-template-columns:40px minmax(0,1fr)!important;align-items:start!important;}
  body.role-client-dossier .client-action-buttons{grid-column:2!important;justify-content:flex-start!important;min-width:0!important;}
}
@media(max-width:640px){
  body.role-client-dossier .client-action-dashboard{gap:14px!important;}
  body.role-client-dossier .client-today-panel{padding:18px!important;border-radius:22px!important;}
  body.role-client-dossier .client-simple-actions{grid-template-columns:1fr!important;}
  body.role-client-dossier .client-simple-action{min-height:auto!important;}
  body.role-client-dossier .client-action-row{grid-template-columns:1fr!important;}
  body.role-client-dossier .client-action-icon{display:none!important;}
  body.role-client-dossier .client-action-buttons{grid-column:1!important;}
  body.role-client-dossier .client-action-buttons .btn,
  body.role-client-dossier .client-action-buttons .client-doc-actions .btn{width:100%!important;justify-content:center!important;}
  body.role-client-dossier .client-action-buttons .client-doc-actions{width:100%!important;flex-direction:column!important;}
}
/* AZALYS_BUNDLE_SOURCE_END: client-portal.css */

/* AZALYS_BUNDLE_SOURCE 9/29: azalys-premium.css | sha256=98acbf9f21d499f3e04cc90cf4c03f1d537e90dc19505d524aafc62f365c5b81 */
/* ============================================================================
   AZALYS — Thème premium unifié « Fiduciaire »
   ----------------------------------------------------------------------------
   Rôle : couche de design UNIQUE chargée EN DERNIER sur les deux surfaces
          (cockpit index.html + monolithe legacy-app.html).

   Principe : ce fichier ne touche NI au JS, NI au métier, NI à la mise en page
   fonctionnelle (largeur sidebar, positions, flux). Il redéfinit les variables
   CSS déjà consommées par l'app et n'ajuste que des propriétés visuelles
   (couleur, fond, bordure, rayon, ombre, typo, transitions).

   Direction : clair premium, cadre marine, accent or fiduciaire.
   - Canevas clair (tables/chiffres lisibles, sessions longues, impression).
   - Cadre marine profond (autorité, confiance).
   - Bleu électrique pour les actions.
   - Or, avec parcimonie, comme signature (état actif, KPI, badges premium).
   - Chiffres alignés (tabular-nums) dans les montants : détail « comptable ».

   Pour basculer en sombre : voir le bloc « VARIANTE SOMBRE » en bas (commenté).
   ============================================================================ */

/* ----------------------------------------------------------------------------
   1. TOKENS — palette nommée + remap de TOUTES les variables existantes
   (!important pour battre legacy-premium.css qui utilise déjà !important)
   ---------------------------------------------------------------------------- */
:root{
  /* Palette de marque (6 valeurs nommées) */
  --az-navy-900:#0a1830;
  --az-navy-700:#0f2244;   /* marine de marque */
  --az-navy-500:#173461;
  --az-primary:#2f6bff;    /* bleu d'action */
  --az-primary-600:#1f54e0;
  --az-gold:#c8932f;       /* accent fiduciaire (signature) */
  --az-gold-soft:#e7c66b;
  --az-canvas:#eef2f8;     /* fond applicatif */
  --az-ink:#15233b;        /* texte principal */
  --az-hairline:#dde5f0;   /* filets / bordures */

  /* Sémantique finance */
  --az-ok:#1f9d57;
  --az-danger:#dc3a3a;
  --az-warn:#d98a0b;
  --az-info:#2bb8e6;

  /* === Remap du système « classique » (app.css / legacy inline / core) === */
  --navy:var(--az-navy-700)!important;
  --blue:var(--az-primary)!important;
  --blue2:var(--az-primary-600)!important;
  --gold:var(--az-gold)!important;
  --purple:#6b54d6!important;
  --teal:#0f9d8e!important;
  --green:var(--az-ok)!important;
  --red:var(--az-danger)!important;

  --bg:var(--az-canvas)!important;
  --card:#ffffff!important;
  --white:#ffffff!important;
  --text:var(--az-ink)!important;
  --muted:#5a6b85!important;
  --line:var(--az-hairline)!important;

  --gray50:#f6f9fd!important;
  --gray100:#eef2f8!important;
  --gray200:#dde5f0!important;
  --gray300:#c4d0e2!important;
  --gray400:#8595ad!important;
  --gray600:#5a6b85!important;
  --gray800:#15233b!important;

  --shadow:0 1px 2px rgba(15,34,68,.06), 0 10px 28px rgba(15,34,68,.07)!important;
  --shadow-md:0 2px 6px rgba(15,34,68,.08), 0 22px 50px rgba(15,34,68,.12)!important;
  --radius:14px!important;
  --radius-lg:18px!important;

  /* === Remap du système premium cockpit (--az-* glass → clair solide) === */
  --az-bg-0:var(--az-canvas)!important;
  --az-bg-1:#e7edf7!important;
  --az-bg-2:#dce6f6!important;
  --az-glass:#ffffff!important;
  --az-glass-strong:#ffffff!important;
  --az-glass-dark:var(--az-navy-700)!important;
  --az-border:var(--az-hairline)!important;
  --az-border-soft:#e7edf5!important;
  --az-text:var(--az-ink)!important;
  --az-text-soft:#5a6b85!important;
  --az-accent:var(--az-primary)!important;
  --az-accent-2:var(--az-primary-600)!important;
  --az-cyan:var(--az-info)!important;
  --az-shadow-lg:0 2px 6px rgba(15,34,68,.08), 0 30px 70px rgba(15,34,68,.14)!important;
  --az-shadow-md:0 1px 4px rgba(15,34,68,.07), 0 18px 44px rgba(15,34,68,.11)!important;
  --az-radius-xl:22px!important;
  --az-radius-lg:18px!important;

  /* Filet doré utilitaire */
  --az-gold-line:linear-gradient(90deg, transparent, var(--az-gold) 18%, var(--az-gold-soft) 50%, var(--az-gold) 82%, transparent);
}

/* ----------------------------------------------------------------------------
   2. BASE — canevas, rendu police, sélection, ascenseurs, mouvement réduit
   ---------------------------------------------------------------------------- */
html, body{
  background:var(--az-canvas)!important;
  color:var(--az-ink);
  -webkit-font-smoothing:antialiased;
  text-rendering:optimizeLegibility;
}
body{
  font-family:"Inter","Segoe UI",system-ui,-apple-system,"Helvetica Neue",sans-serif;
  letter-spacing:.1px;
}
::selection{ background:rgba(47,107,255,.18); color:var(--az-navy-900); }

/* Ascenseurs fins et discrets */
*{ scrollbar-width:thin; scrollbar-color:#c4d0e2 transparent; }
*::-webkit-scrollbar{ width:10px; height:10px; }
*::-webkit-scrollbar-thumb{ background:#c8d3e4; border-radius:20px; border:2px solid transparent; background-clip:content-box; }
*::-webkit-scrollbar-thumb:hover{ background:#aebed6; background-clip:content-box; }
*::-webkit-scrollbar-track{ background:transparent; }

@media (prefers-reduced-motion: reduce){
  *{ transition:none!important; animation:none!important; }
}

/* ----------------------------------------------------------------------------
   3. TYPOGRAPHIE — titres serrés, micro-labels tracés, chiffres alignés
   ---------------------------------------------------------------------------- */
h1,h2,h3,.card-title,.card-head,.topbar-title,.modal-title{
  letter-spacing:-.01em;
  color:var(--az-ink);
}
a{ color:var(--az-primary); transition:color .15s ease; }
a:hover{ color:var(--az-primary-600); }

/* Détail comptable : montants à chiffres alignés */
td, .kpi-value, .amount, .montant, .total, [data-amount]{
  font-variant-numeric:tabular-nums;
  font-feature-settings:"tnum" 1;
}

/* ----------------------------------------------------------------------------
   4. CADRE DE MARQUE — sidebar marine, navigation, topbar (filet doré)
   (on garde largeur/position : on ne retouche que l'habillage)
   ---------------------------------------------------------------------------- */
html .sidebar{
  background:linear-gradient(185deg, var(--az-navy-700) 0%, var(--az-navy-900) 100%)!important;
  border-right:1px solid rgba(255,255,255,.06);
  box-shadow:2px 0 24px rgba(10,24,48,.18);
}
html .sidebar-logo{ border-bottom:1px solid rgba(255,255,255,.08)!important; }

/* Items de navigation (legacy .nav-item + cockpit .nav-btn) */
html .nav-item, html .nav-btn{
  color:rgba(226,234,247,.78)!important;
  border-radius:10px;
  margin:2px 10px;
  transition:background .16s ease, color .16s ease, box-shadow .16s ease;
}
html .nav-item:hover, html .nav-btn:hover{
  background:rgba(255,255,255,.07)!important;
  color:#fff!important;
}
html .nav-item.active, html .nav-btn.active, html .nav-btn.selected{
  background:linear-gradient(90deg, rgba(47,107,255,.28), rgba(47,107,255,.08))!important;
  color:#fff!important;
  border-left:3px solid var(--az-gold)!important;
  box-shadow:inset 0 0 0 1px rgba(255,255,255,.05);
  font-weight:600!important;
}
html .nav-badge, html .nav-item .badge{
  background:var(--az-gold)!important; color:var(--az-navy-900)!important;
}

/* Topbar claire avec fin filet doré supérieur */
html .topbar{
  background:rgba(255,255,255,.92)!important;
  backdrop-filter:saturate(1.4) blur(8px);
  -webkit-backdrop-filter:saturate(1.4) blur(8px);
  border-bottom:1px solid var(--az-hairline)!important;
  box-shadow:0 1px 0 rgba(15,34,68,.02), 0 8px 24px rgba(15,34,68,.05)!important;
  position:relative;
}
html .topbar::before{
  content:""; position:absolute; left:0; right:0; top:0; height:2px;
  background:var(--az-gold-line); opacity:.85;
}
html .topbar-title{ color:var(--az-navy-700)!important; font-weight:700; }

/* ----------------------------------------------------------------------------
   5. CARTES
   ---------------------------------------------------------------------------- */
html .card, html .modal-card, html .alerts-summary-card{
  background:#ffffff!important;
  border:1px solid var(--az-hairline)!important;
  border-radius:var(--radius-lg)!important;
  box-shadow:var(--shadow)!important;
  transition:box-shadow .2s ease, border-color .2s ease, transform .2s ease;
}
html .card:hover{ box-shadow:var(--shadow-md)!important; }
html .card-header, html .card-head{
  border-bottom:1px solid var(--az-hairline)!important;
  background:linear-gradient(180deg, #ffffff, #fbfcff)!important;
}
html .card-title, html .card-head{ color:var(--az-navy-700)!important; font-weight:700; }

/* ----------------------------------------------------------------------------
   6. KPI — filet coloré + valeur en chiffres alignés
   ---------------------------------------------------------------------------- */
html .kpi{
  background:#ffffff!important;
  border:1px solid var(--az-hairline)!important;
  border-radius:var(--radius-lg)!important;
  box-shadow:var(--shadow)!important;
  border-left:4px solid var(--az-primary)!important;
  transition:transform .18s ease, box-shadow .18s ease;
}
html .kpi:hover{ transform:translateY(-2px); box-shadow:var(--shadow-md)!important; }
html .kpi.gold{ border-left-color:var(--az-gold)!important; }
html .kpi.green,  html .kpi.success{ border-left-color:var(--az-ok)!important; }
html .kpi.red,    html .kpi.danger { border-left-color:var(--az-danger)!important; }
html .kpi.warn,   html .kpi.amber  { border-left-color:var(--az-warn)!important; }
html .kpi-value{ color:var(--az-navy-700)!important; font-weight:800; letter-spacing:-.01em; }
html .kpi-label{ color:#5a6b85!important; text-transform:uppercase; letter-spacing:.06em; font-size:11px; font-weight:600; }
html .kpi-sub{ color:#8595ad!important; }
html .kpi-meter{ background:#e7edf7!important; border-radius:20px; overflow:hidden; }
html .kpi-meter > *{ background:linear-gradient(90deg, var(--az-primary), var(--az-info))!important; }

/* ----------------------------------------------------------------------------
   7. TABLEAUX
   ---------------------------------------------------------------------------- */
html .table-wrap{ border:1px solid var(--az-hairline); border-radius:14px; overflow:hidden; background:#fff; }
html th{
  background:#f4f7fc!important;
  color:#5a6b85!important;
  text-transform:uppercase; letter-spacing:.06em; font-size:11px; font-weight:700;
  border-bottom:1px solid var(--az-hairline)!important;
}
html td{ border-bottom:1px solid #eef2f8!important; color:var(--az-ink); }
html tbody tr{ transition:background .12s ease; }
html tbody tr:hover td{ background:#f6f9fd!important; }
html tbody tr:last-child td{ border-bottom:none!important; }

/* ----------------------------------------------------------------------------
   8. BOUTONS
   ---------------------------------------------------------------------------- */
html .btn{
  border-radius:11px!important;
  font-weight:600;
  letter-spacing:.1px;
  transition:transform .12s ease, box-shadow .16s ease, background .16s ease, border-color .16s ease, color .16s ease;
}
html .btn:active{ transform:translateY(1px); }
html .btn:focus-visible{ outline:2px solid var(--az-gold); outline-offset:2px; }

html .btn-primary{
  background:linear-gradient(180deg, var(--az-primary), var(--az-primary-600))!important;
  border:1px solid var(--az-primary-600)!important;
  color:#fff!important;
  box-shadow:0 6px 16px rgba(47,107,255,.28);
}
html .btn-primary:hover{ box-shadow:0 10px 24px rgba(47,107,255,.36); filter:brightness(1.03); }

html .btn-ghost{
  background:#fff!important;
  border:1px solid var(--az-hairline)!important;
  color:var(--az-navy-700)!important;
}
html .btn-ghost:hover{ background:#f4f7fc!important; border-color:#c4d0e2!important; }

html .btn-success{ background:linear-gradient(180deg,#26b266,var(--az-ok))!important; border:1px solid #198a4b!important; color:#fff!important; box-shadow:0 6px 16px rgba(31,157,87,.26); }
html .btn-danger { background:linear-gradient(180deg,#e85555,var(--az-danger))!important; border:1px solid #b92f2f!important; color:#fff!important; box-shadow:0 6px 16px rgba(220,58,58,.24); }

/* Variante or (CTA premium ponctuel) */
html .btn-gold{ background:linear-gradient(180deg,var(--az-gold-soft),var(--az-gold))!important; border:1px solid #ad7d22!important; color:var(--az-navy-900)!important; box-shadow:0 6px 16px rgba(200,147,47,.28); }

/* ----------------------------------------------------------------------------
   9. FORMULAIRES
   ---------------------------------------------------------------------------- */
html .form-control, html .form-control-sm, html .select,
html input:not([type=checkbox]):not([type=radio]):not([type=range]),
html select, html textarea{
  border:1px solid var(--az-hairline)!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--az-ink)!important;
  transition:border-color .15s ease, box-shadow .15s ease, background .15s ease;
}
html .form-control:hover, html select:hover, html textarea:hover{ border-color:#c4d0e2!important; }
html .form-control:focus, html .select:focus,
html input:focus, html select:focus, html textarea:focus{
  outline:none!important;
  border-color:var(--az-primary)!important;
  box-shadow:0 0 0 3px rgba(47,107,255,.16)!important;
  background:#fff!important;
}
html label, html .form-group > label{ color:#5a6b85; font-weight:600; }

/* ----------------------------------------------------------------------------
   10. BADGES / TAGS / PUCES
   ---------------------------------------------------------------------------- */
html .badge, html .tag, html .pill{
  border-radius:999px!important;
  font-weight:600; letter-spacing:.2px;
  border:1px solid transparent;
}
html .badge{ background:#eef2f8!important; color:var(--az-navy-700)!important; }
html .badge-green,  html .badge.green { background:rgba(31,157,87,.12)!important;  color:#16753f!important;  border-color:rgba(31,157,87,.22)!important; }
html .badge-red,    html .badge.red   { background:rgba(220,58,58,.12)!important;  color:#a72727!important;  border-color:rgba(220,58,58,.22)!important; }
html .badge-gray,   html .badge.gray  { background:#eef2f8!important;              color:#5a6b85!important;  border-color:#dde5f0!important; }
html .badge-purple, html .badge.purple{ background:rgba(107,84,214,.12)!important; color:#5340b0!important;  border-color:rgba(107,84,214,.22)!important; }
html .badge-gold,   html .badge.gold  { background:rgba(200,147,47,.14)!important; color:#8a6418!important;  border-color:rgba(200,147,47,.30)!important; }

/* ----------------------------------------------------------------------------
   11. ALERTES
   ---------------------------------------------------------------------------- */
html .alert{ border-radius:13px!important; border:1px solid var(--az-hairline)!important; }
html .alert-info{  background:rgba(43,184,230,.08)!important;  border-color:rgba(43,184,230,.28)!important;  color:#0f6f8c!important; }
html .alert-warn{  background:rgba(217,138,11,.09)!important;   border-color:rgba(217,138,11,.30)!important;   color:#8a5a06!important; }
html .alert-danger,html .alert-error{ background:rgba(220,58,58,.08)!important; border-color:rgba(220,58,58,.26)!important; color:#a72727!important; }
html .alert-success{ background:rgba(31,157,87,.09)!important;  border-color:rgba(31,157,87,.28)!important;  color:#16753f!important; }

/* ----------------------------------------------------------------------------
   12. MODALES
   ---------------------------------------------------------------------------- */
html .modal-overlay{
  background:rgba(10,24,48,.46)!important;
  backdrop-filter:blur(3px); -webkit-backdrop-filter:blur(3px);
}
html .modal, html .modal-card{
  border-radius:20px!important;
  border:1px solid var(--az-hairline)!important;
  box-shadow:0 30px 80px rgba(10,24,48,.30)!important;
  background:#fff!important;
}
html .modal-header, html .modal-head{
  border-bottom:1px solid var(--az-hairline)!important;
  background:linear-gradient(180deg,#fff,#fbfcff)!important;
}
html .modal-title{ color:var(--az-navy-700)!important; font-weight:700; }
html .modal-footer{ border-top:1px solid var(--az-hairline)!important; background:#fbfcff!important; }
html .modal-close{ color:#8595ad!important; transition:color .15s ease; }
html .modal-close:hover{ color:var(--az-danger)!important; }

/* ----------------------------------------------------------------------------
   13. ONGLETS
   ---------------------------------------------------------------------------- */
html .tabs{ border-bottom:1px solid var(--az-hairline)!important; gap:2px; }
html .tab{
  color:#5a6b85!important; font-weight:600;
  border-radius:10px 10px 0 0;
  transition:color .15s ease, background .15s ease, border-color .15s ease;
}
html .tab:hover{ background:#f4f7fc!important; color:var(--az-navy-700)!important; }
html .tab.active, html .tab.selected{
  color:var(--az-navy-700)!important;
  border-bottom:2px solid var(--az-gold)!important;
  background:#fff!important;
}

/* ----------------------------------------------------------------------------
   14. TOASTS
   ---------------------------------------------------------------------------- */
html .toast{
  border-radius:13px!important;
  border:1px solid var(--az-hairline)!important;
  box-shadow:0 16px 40px rgba(10,24,48,.20)!important;
  background:#fff!important; color:var(--az-ink)!important;
}

/* ----------------------------------------------------------------------------
   15. LOGIN — structure premium activée (markup premium-auth)
   La mise en page (champs à icône, espacement entre groupes, œil, ligne
   « se souvenir », bouton détaché) vient de auth-premium.css. Ici on empêche
   seulement la couche globale claire de « laver » les champs sombres du login.
   La spécificité id (#auth-screen) gagne sur les règles globales du thème.
   ---------------------------------------------------------------------------- */
/* Champs clairs et nets (comme la référence), avec gouttière dédiée à l'icône. */
#auth-screen .control{
  background:#ffffff!important;
  border:1px solid #dbe5f2!important;
  color:#15233b!important;
  box-shadow:0 1px 2px rgba(15,34,68,.05)!important;
  padding:0 22px 0 58px!important;        /* gouttière gauche dédiée à l'icône */
}
#auth-screen .password-wrap .control{ padding-right:64px!important; }  /* place pour l'œil */
#auth-screen .premium-input-wrap .input-icon{ left:22px!important; z-index:2!important; opacity:1!important; }
#auth-screen .control::placeholder{ color:#9aa8bf!important; }          /* gris lisible sur blanc */
#auth-screen .control:focus{
  border-color:#2f6bff!important;
  background:#ffffff!important;
  box-shadow:0 0 0 3px rgba(47,107,255,.16)!important;
}
#auth-screen .password-toggle{ color:#5a6b85!important; }               /* œil visible sur blanc */
/* Correctif V17.2 — login lisible : les champs restent blancs au focus.
   Anciennement, une règle en double remettait un fond bleu foncé au clic. */
#auth-screen .control:focus{
  border-color:#2f6bff!important;
  background:#ffffff!important;
  color:#15233b!important;
  box-shadow:0 0 0 3px rgba(47,107,255,.16)!important;
}
#auth-screen .control:-webkit-autofill,
#auth-screen .control:-webkit-autofill:hover,
#auth-screen .control:-webkit-autofill:focus{
  -webkit-text-fill-color:#15233b!important;
  caret-color:#15233b!important;
  box-shadow:0 0 0 1000px #ffffff inset, 0 0 0 3px rgba(47,107,255,.16)!important;
  border-color:#2f6bff!important;
}
#auth-screen .control{ caret-color:#15233b!important; }

/* ============================================================================
   VARIANTE SOMBRE (optionnelle) — décommenter pour un canevas marine sombre.
   ----------------------------------------------------------------------------
   :root{
     --az-canvas:#070f22!important;
     --bg:#070f22!important;
     --card:#0f1d39!important;
     --az-glass:#0f1d39!important;
     --az-glass-strong:#13234a!important;
     --az-ink:#e7eefb!important;
     --text:#e7eefb!important;
     --muted:#9fb0cd!important;
     --az-hairline:#1d3157!important;
     --line:#1d3157!important;
     --gray50:#0f1d39!important; --gray100:#0c1730!important; --gray200:#1d3157!important;
   }
   html .topbar{ background:rgba(15,29,57,.92)!important; }
   html th{ background:#0c1730!important; color:#9fb0cd!important; }
   html tbody tr:hover td{ background:#13234a!important; }
   ============================================================================ */


/* AZALYS V16.3 — correctif cadrage robot AI / mobile bottom sheet.
   Le panneau ne dépend plus de la position du bouton sur téléphone. */
.ai-floating-panel{
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
}
.ai-floating-panel.hidden{display:none!important}
.ai-floating-chat{
  flex:1 1 auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
}
@media(max-width:720px){
  .ai-floating{right:16px!important;bottom:16px!important;z-index:99998!important}
  .ai-floating.is-user-positioned.panel-open{left:auto!important;top:auto!important;right:16px!important;bottom:16px!important}
  .ai-floating-panel{
    position:fixed!important;
    left:max(8px,env(safe-area-inset-left))!important;
    right:max(8px,env(safe-area-inset-right))!important;
    top:max(8px,env(safe-area-inset-top))!important;
    bottom:calc(76px + env(safe-area-inset-bottom))!important;
    width:auto!important;
    max-width:none!important;
    height:auto!important;
    max-height:none!important;
    border-radius:22px!important;
  }
  .ai-floating-head{flex:0 0 auto!important;padding:11px 12px!important}
  .ai-avatar{width:36px!important;height:36px!important;border-radius:13px!important}
  .ai-head-left strong{font-size:13px!important}
  .ai-head-left span{font-size:11px!important;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:170px}
  .ai-head-actions .icon-btn{width:32px!important;height:32px!important}
  .ai-floating-context{flex:0 0 auto!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:7px!important;padding:10px!important}
  .ai-floating-context .ai-agent-strip{grid-column:1/-1!important;margin-top:0!important;max-height:84px;overflow:auto;padding-bottom:1px}
  .ai-context-chip{padding:7px 5px!important;border-radius:14px!important}
  .ai-context-chip strong{font-size:14px!important}
  .ai-context-chip span{font-size:9px!important}
  .ai-floating-chat{flex:1 1 auto!important;min-height:0!important;max-height:none!important;padding:11px!important}
  .ai-float-msg{max-width:100%!important;font-size:12px!important;line-height:1.42!important;overflow-wrap:anywhere!important}
  .ai-floating-quick{flex:0 0 auto!important;padding:8px 10px!important;gap:7px!important;max-height:76px!important;overflow:auto!important}
  .ai-floating-quick .btn{padding:7px 9px!important;font-size:11px!important;min-height:34px!important}
  .ai-floating-compose{flex:0 0 auto!important;display:grid!important;grid-template-columns:minmax(0,1fr) 88px!important;padding:10px!important;gap:8px!important}
  .ai-floating-compose textarea{min-height:44px!important;max-height:84px!important;border-radius:14px!important}
  .ai-floating-compose .btn{width:100%!important;min-height:44px!important;padding:0 10px!important}
  .ai-floating-note{display:none!important}
}
@media(max-width:390px){
  .ai-head-left span{max-width:138px!important}
  .ai-floating-compose{grid-template-columns:minmax(0,1fr) 82px!important}
  .ai-floating-quick{max-height:70px!important}
}


/* ============================================================================
   AZALYS v17.13 — Harmonisation premium compacte de tout l'espace cabinet
   Objectif : même densité visuelle et même finition que l'espace client.
   Scope : uniquement cabinet/admin/collaborateur, sans modifier le portail client.
   ============================================================================ */

body:not(.role-client-dossier) #main-screen{
  background:
    radial-gradient(circle at 84% -5%, rgba(37,99,235,.12), transparent 32%),
    linear-gradient(180deg,#f6f9fe 0%,#edf3fb 100%);
}

/* Sidebar cabinet */
body:not(.role-client-dossier) #main-screen .side{
  width:100%;
  min-width:0;
  background:
    radial-gradient(circle at 20% 0%, rgba(96,165,250,.14), transparent 32%),
    linear-gradient(180deg,#061a38 0%,#071226 100%)!important;
  box-shadow:18px 0 48px rgba(15,23,42,.18)!important;
}
body:not(.role-client-dossier) #main-screen .side-brand{
  min-height:66px!important;
  padding:17px 16px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}
body:not(.role-client-dossier) #main-screen .side-brand .brand-mark.small{
  font-size:25px!important;
}
body:not(.role-client-dossier) #main-screen .side-brand strong{
  font-size:16px!important;
  letter-spacing:.01em!important;
}
body:not(.role-client-dossier) #main-screen .side-brand span{
  color:rgba(226,232,240,.72)!important;
  font-size:11.5px!important;
}
body:not(.role-client-dossier) #main-screen .side-nav{
  padding:10px 9px!important;
  gap:5px!important;
}
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn{
  min-height:41px!important;
  padding:10px 12px!important;
  border-radius:13px!important;
  display:flex!important;
  align-items:center!important;
  color:rgba(226,232,240,.76)!important;
  font-weight:850!important;
  font-size:13px!important;
  transition:background .16s ease,color .16s ease,transform .16s ease,box-shadow .16s ease!important;
}
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn:hover{
  transform:translateX(2px)!important;
  background:rgba(59,130,246,.18)!important;
  color:#fff!important;
}
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn.active{
  color:#fff!important;
  background:linear-gradient(135deg,rgba(37,99,235,.78),rgba(14,165,233,.44))!important;
  box-shadow:0 12px 26px rgba(37,99,235,.20)!important;
}
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn.active::before{
  left:0!important;
  top:8px!important;
  bottom:8px!important;
  width:3px!important;
  background:#93c5fd!important;
}
body:not(.role-client-dossier) #main-screen .side-footer{
  padding:12px!important;
  gap:7px!important;
}
body:not(.role-client-dossier) #main-screen .side-footer .btn{
  min-height:38px!important;
  border-radius:13px!important;
}

/* Shell et topbar */
body:not(.role-client-dossier) #main-screen.main-shell{
  grid-template-columns:clamp(224px,15.5vw,270px) minmax(0,1fr)!important;
}
body:not(.role-client-dossier) #main-screen .main{
  min-width:0!important;
}
body:not(.role-client-dossier) #main-screen .topbar{
  min-height:58px!important;
  padding:10px clamp(16px,1.7vw,28px)!important;
  border-bottom:1px solid rgba(203,213,225,.78)!important;
  background:rgba(255,255,255,.86)!important;
  backdrop-filter:blur(18px)!important;
  box-shadow:0 8px 26px rgba(15,23,42,.06)!important;
}
body:not(.role-client-dossier) #main-screen .topbar h2{
  font-size:clamp(18px,1.5vw,23px)!important;
  letter-spacing:-.025em!important;
  line-height:1.12!important;
  color:#0b2347!important;
}
body:not(.role-client-dossier) #main-screen .topbar .eyebrow{
  font-size:10px!important;
  letter-spacing:.12em!important;
  color:#64748b!important;
}
body:not(.role-client-dossier) #main-screen .top-actions{
  gap:8px!important;
}
body:not(.role-client-dossier) #main-screen .status-pill{
  padding:6px 10px!important;
  min-height:32px!important;
  font-size:11.5px!important;
}

/* Vues cabinet : largeur et densité */
body:not(.role-client-dossier) #main-screen .view{
  width:100%!important;
  max-width:1760px!important;
  margin:0 auto!important;
  padding:clamp(15px,1.45vw,24px)!important;
}
body:not(.role-client-dossier) #main-screen .view.active{
  display:block!important;
}

/* Headers de page */
body:not(.role-client-dossier) #main-screen .hero,
body:not(.role-client-dossier) #main-screen .cockpit-hero,
body:not(.role-client-dossier) #main-screen .internal-hero,
body:not(.role-client-dossier) #main-screen .legal-hero,
body:not(.role-client-dossier) #main-screen .docs-inbox-hero,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-hero,
body:not(.role-client-dossier) #main-screen .collab-hero-v28{
  border:1px solid rgba(191,219,254,.72)!important;
  border-radius:24px!important;
  background:
    radial-gradient(circle at 94% 0%, rgba(37,99,235,.13), transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#eef6ff 100%)!important;
  box-shadow:0 18px 46px rgba(15,23,42,.07)!important;
  padding:18px 22px!important;
  margin-bottom:14px!important;
}
body:not(.role-client-dossier) #main-screen .hero h1,
body:not(.role-client-dossier) #main-screen .cockpit-hero h1,
body:not(.role-client-dossier) #main-screen .internal-hero h3,
body:not(.role-client-dossier) #main-screen .legal-hero h3,
body:not(.role-client-dossier) #main-screen .docs-inbox-hero h3,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-hero h3,
body:not(.role-client-dossier) #main-screen .collab-hero-v28 h3{
  font-size:clamp(22px,1.9vw,31px)!important;
  line-height:1.1!important;
  letter-spacing:-.04em!important;
  margin:4px 0 6px!important;
  color:#0b2347!important;
}
body:not(.role-client-dossier) #main-screen .hero p,
body:not(.role-client-dossier) #main-screen .cockpit-hero p,
body:not(.role-client-dossier) #main-screen .internal-hero p,
body:not(.role-client-dossier) #main-screen .legal-hero p,
body:not(.role-client-dossier) #main-screen .docs-inbox-hero p,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-hero p,
body:not(.role-client-dossier) #main-screen .collab-hero-v28 p{
  font-size:13px!important;
  line-height:1.42!important;
  color:#526981!important;
  margin:0!important;
}

/* Cartes, panneaux et listes */
body:not(.role-client-dossier) #main-screen .card,
body:not(.role-client-dossier) #main-screen .dashboard-panel,
body:not(.role-client-dossier) #main-screen .cockpit-modules,
body:not(.role-client-dossier) #main-screen .collab-pro-card,
body:not(.role-client-dossier) #main-screen .collab-card,
body:not(.role-client-dossier) #main-screen .legal-card,
body:not(.role-client-dossier) #main-screen .docs-inbox-filters,
body:not(.role-client-dossier) #main-screen .docs-inbox-list,
body:not(.role-client-dossier) #main-screen .cabinet-thread-panel,
body:not(.role-client-dossier) #main-screen .cabinet-side-card{
  border:1px solid rgba(203,213,225,.78)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 16px 42px rgba(15,23,42,.06)!important;
  backdrop-filter:blur(10px)!important;
}
body:not(.role-client-dossier) #main-screen .card:hover,
body:not(.role-client-dossier) #main-screen .dashboard-panel:hover,
body:not(.role-client-dossier) #main-screen .module-card:hover,
body:not(.role-client-dossier) #main-screen .kpi:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 20px 52px rgba(15,23,42,.08)!important;
}
body:not(.role-client-dossier) #main-screen .card-head,
body:not(.role-client-dossier) #main-screen .section-head,
body:not(.role-client-dossier) #main-screen .cabinet-thread-head{
  min-height:48px!important;
  padding:13px 16px!important;
  border-bottom:1px solid rgba(226,232,240,.86)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.92),rgba(248,251,255,.86))!important;
}
body:not(.role-client-dossier) #main-screen .card-head h3,
body:not(.role-client-dossier) #main-screen .section-head h3,
body:not(.role-client-dossier) #main-screen .cabinet-thread-head h3{
  font-size:15.5px!important;
  line-height:1.25!important;
  color:#0b2347!important;
  margin:0!important;
}

/* KPI et cartes métriques */
body:not(.role-client-dossier) #main-screen .kpi-grid,
body:not(.role-client-dossier) #main-screen .cockpit-kpis,
body:not(.role-client-dossier) #main-screen .docs-inbox-kpis,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-kpis,
body:not(.role-client-dossier) #main-screen #collab-kpi-grid{
  gap:12px!important;
  margin-bottom:14px!important;
}
body:not(.role-client-dossier) #main-screen .kpi,
body:not(.role-client-dossier) #main-screen .docs-inbox-kpis .card,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-kpis .card,
body:not(.role-client-dossier) #main-screen .collab-pro-kpi{
  min-height:104px!important;
  padding:14px 16px!important;
  border-radius:19px!important;
  border:1px solid rgba(203,213,225,.78)!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  box-shadow:0 14px 32px rgba(15,23,42,.055)!important;
}
body:not(.role-client-dossier) #main-screen .kpi-value,
body:not(.role-client-dossier) #main-screen .docs-inbox-kpis strong,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-kpis strong,
body:not(.role-client-dossier) #main-screen .collab-pro-kpi strong{
  font-size:clamp(24px,2vw,30px)!important;
  line-height:1!important;
  color:#0f2b55!important;
}
body:not(.role-client-dossier) #main-screen .kpi-label,
body:not(.role-client-dossier) #main-screen .docs-inbox-kpis span,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-kpis span,
body:not(.role-client-dossier) #main-screen .collab-pro-kpi span{
  font-size:11px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  color:#64748b!important;
}
body:not(.role-client-dossier) #main-screen .kpi-sub,
body:not(.role-client-dossier) #main-screen .docs-inbox-kpis small,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-kpis small,
body:not(.role-client-dossier) #main-screen .collab-pro-kpi small{
  font-size:11.5px!important;
  color:#7b8ca5!important;
}

/* Boutons, formulaires et filtres */
body:not(.role-client-dossier) #main-screen .btn{
  min-height:36px!important;
  border-radius:12px!important;
  padding:8px 12px!important;
  font-size:12.5px!important;
  font-weight:900!important;
}
body:not(.role-client-dossier) #main-screen .btn.primary{
  background:linear-gradient(135deg,#2563eb,#3b82f6)!important;
  box-shadow:0 10px 22px rgba(37,99,235,.18)!important;
}
body:not(.role-client-dossier) #main-screen .btn.ghost{
  background:#f8fafc!important;
  border:1px solid rgba(203,213,225,.9)!important;
}
body:not(.role-client-dossier) #main-screen .control,
body:not(.role-client-dossier) #main-screen input,
body:not(.role-client-dossier) #main-screen select,
body:not(.role-client-dossier) #main-screen textarea{
  border-radius:13px!important;
}
body:not(.role-client-dossier) #main-screen .panel-tools,
body:not(.role-client-dossier) #main-screen .docs-inbox-actions,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-actions,
body:not(.role-client-dossier) #main-screen .hero-actions,
body:not(.role-client-dossier) #main-screen .internal-hero-actions{
  gap:9px!important;
}

/* Tables */
body:not(.role-client-dossier) #main-screen .table-wrap{
  border-radius:20px!important;
  border:1px solid rgba(226,232,240,.9)!important;
  background:#fff!important;
}
body:not(.role-client-dossier) #main-screen table{
  font-size:13px!important;
}
body:not(.role-client-dossier) #main-screen th{
  padding:10px 12px!important;
  background:#f8fbff!important;
  color:#64748b!important;
  font-size:10.5px!important;
}
body:not(.role-client-dossier) #main-screen td{
  padding:10px 12px!important;
}
body:not(.role-client-dossier) #main-screen tr:hover td{
  background:#f8fbff!important;
}

/* Accueil cockpit */
body:not(.role-client-dossier) #main-screen .home-view{
  padding:clamp(15px,1.45vw,24px)!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero{
  grid-template-columns:minmax(0,1.2fr) minmax(260px,.8fr)!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-aside{
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-mini{
  border-radius:16px!important;
  padding:11px 12px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-grid{
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .home-module-grid,
body:not(.role-client-dossier) #main-screen .modules-grid{
  gap:12px!important;
  padding:16px!important;
  grid-template-columns:repeat(auto-fit,minmax(205px,1fr))!important;
}
body:not(.role-client-dossier) #main-screen .home-module-card,
body:not(.role-client-dossier) #main-screen .module-card{
  min-height:130px!important;
  padding:14px!important;
  border-radius:18px!important;
}
body:not(.role-client-dossier) #main-screen .home-module-icon,
body:not(.role-client-dossier) #main-screen .module-card .ico{
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
  font-size:21px!important;
}
body:not(.role-client-dossier) #main-screen .home-module-title,
body:not(.role-client-dossier) #main-screen .module-card h4{
  font-size:14px!important;
}

/* Dossiers */
body:not(.role-client-dossier) #main-screen .dossiers-overview,
body:not(.role-client-dossier) #main-screen #dossiers-overview{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:12px!important;
  margin-bottom:14px!important;
}
body:not(.role-client-dossier) #main-screen .dossier-overview-card{
  min-height:94px!important;
  padding:14px 15px!important;
  border-radius:18px!important;
  border:1px solid rgba(203,213,225,.78)!important;
  background:linear-gradient(180deg,#fff,#f8fbff)!important;
  box-shadow:0 12px 28px rgba(15,23,42,.05)!important;
}
body:not(.role-client-dossier) #main-screen .dossier-overview-card strong{
  font-size:26px!important;
}

/* Collaborateurs */
body:not(.role-client-dossier) #main-screen .collab-command-center{
  gap:14px!important;
  max-width:1760px!important;
}
body:not(.role-client-dossier) #main-screen .collab-pro-tabs{
  padding:6px!important;
  border-radius:18px!important;
  gap:6px!important;
}
body:not(.role-client-dossier) #main-screen .collab-pro-tabs button{
  padding:9px 12px!important;
  border-radius:13px!important;
  font-size:12.5px!important;
}
body:not(.role-client-dossier) #main-screen .collab-cards-list,
body:not(.role-client-dossier) #main-screen .collab-team-grid{
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen .collab-user-card,
body:not(.role-client-dossier) #main-screen .collab-card{
  border-radius:19px!important;
  padding:14px!important;
}

/* Messagerie interne */
body:not(.role-client-dossier) #main-screen .internal-messaging{
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .internal-workspace{
  grid-template-columns:minmax(260px,320px) minmax(0,1fr)!important;
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .internal-contacts-panel,
body:not(.role-client-dossier) #main-screen .internal-thread-panel{
  min-height:calc(100vh - 210px)!important;
  border-radius:22px!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-body{
  max-height:calc(100vh - 390px)!important;
}
body:not(.role-client-dossier) #main-screen .internal-message-bubble,
body:not(.role-client-dossier) #main-screen .internal-bubble{
  border-radius:18px!important;
  padding:11px 13px!important;
}

/* Messages clients cabinet */
body:not(.role-client-dossier) #main-screen .cabinet-inbox{
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-inbox-workspace{
  grid-template-columns:minmax(0,1fr) 300px!important;
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-stack{
  min-height:320px!important;
  max-height:calc(100vh - 385px)!important;
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-card{
  border-radius:20px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-titlebar{
  padding:13px 15px!important;
  border-radius:0!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-avatar{
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble{
  padding:10px 12px!important;
  border-radius:17px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-inbox-side{
  top:78px!important;
}

/* Pièces clients */
body:not(.role-client-dossier) #main-screen .docs-inbox{
  display:grid!important;
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .docs-inbox-workspace{
  grid-template-columns:280px minmax(0,1fr)!important;
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .docs-inbox-filters{
  padding:14px!important;
}
body:not(.role-client-dossier) #main-screen .docs-filter{
  min-height:38px!important;
  border-radius:13px!important;
  padding:9px 11px!important;
  font-size:12.5px!important;
}
body:not(.role-client-dossier) #main-screen .docs-inbox-list{
  padding:14px!important;
}
body:not(.role-client-dossier) #main-screen .doc-card,
body:not(.role-client-dossier) #main-screen .docs-doc-card{
  border-radius:19px!important;
  padding:14px!important;
}

/* Juridique */
body:not(.role-client-dossier) #main-screen .legal-shell{
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .legal-layout,
body:not(.role-client-dossier) #main-screen .legal-workspace{
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen .legal-card,
body:not(.role-client-dossier) #main-screen .legal-detail-card{
  border-radius:22px!important;
}
body:not(.role-client-dossier) #main-screen .legal-list,
body:not(.role-client-dossier) #main-screen .legal-detail-body{
  padding:14px!important;
}

/* Alertes */
body:not(.role-client-dossier) #main-screen .alerts-summary-card{
  padding:16px!important;
  border-radius:22px!important;
  box-shadow:0 14px 36px rgba(15,23,42,.06)!important;
}

/* Modales cabinet */
body:not(.role-client-dossier) .modal-card{
  border-radius:22px!important;
  border:1px solid rgba(203,213,225,.88)!important;
  box-shadow:0 30px 90px rgba(15,23,42,.24)!important;
}
body:not(.role-client-dossier) .modal-head{
  margin-bottom:13px!important;
}
body:not(.role-client-dossier) .modal-head h3{
  font-size:19px!important;
}

/* Responsive cabinet */
@media(max-width:1180px){
  body:not(.role-client-dossier) #main-screen .cockpit-hero,
  body:not(.role-client-dossier) #main-screen .internal-workspace,
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-workspace,
  body:not(.role-client-dossier) #main-screen .docs-inbox-workspace{
    grid-template-columns:1fr!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-side{
    position:relative!important;
    top:auto!important;
  }
}
@media(max-width:1000px){
  body:not(.role-client-dossier) #main-screen.main-shell{
    grid-template-columns:1fr!important;
  }
  body:not(.role-client-dossier) #main-screen .side{
    position:relative!important;
    height:auto!important;
  }
  body:not(.role-client-dossier) #main-screen .side-nav{
    flex-direction:row!important;
    overflow:auto!important;
    padding-bottom:10px!important;
  }
  body:not(.role-client-dossier) #main-screen .side-nav .nav-btn{
    white-space:nowrap!important;
  }
}
@media(max-width:720px){
  body:not(.role-client-dossier) #main-screen .view{
    padding:14px!important;
  }
  body:not(.role-client-dossier) #main-screen .topbar{
    align-items:flex-start!important;
    flex-direction:column!important;
  }
  body:not(.role-client-dossier) #main-screen .top-actions,
  body:not(.role-client-dossier) #main-screen .top-actions .btn{
    width:100%!important;
  }
  body:not(.role-client-dossier) #main-screen .hero,
  body:not(.role-client-dossier) #main-screen .cockpit-hero,
  body:not(.role-client-dossier) #main-screen .internal-hero,
  body:not(.role-client-dossier) #main-screen .legal-hero,
  body:not(.role-client-dossier) #main-screen .docs-inbox-hero,
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-hero,
  body:not(.role-client-dossier) #main-screen .collab-hero-v28{
    align-items:flex-start!important;
    flex-direction:column!important;
    padding:16px!important;
  }
}


/* ============================================================================
   AZALYS v17.14 — Hotfix cabinet : masquer définitivement les menus client
   et compacter le cockpit principal.
   ============================================================================ */

/* 1) Priorité absolue : les menus client ne doivent JAMAIS apparaître côté cabinet */
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn.client-only,
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn[data-view="client"],
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn[data-view^="client-"],
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn.hidden.client-only,
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn.hidden[data-view^="client-"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* En revanche, côté client, seuls les menus client doivent rester visibles */
body.role-client-dossier #main-screen .side-nav .nav-btn:not(.client-only):not([data-view^="client-"]),
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="dashboard"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="dossiers"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="modules"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="taches"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="legal-internal"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="internal-messages"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="cabinet-messages"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="pieces-client"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="collaborateurs"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="alerts"],
body.role-client-dossier #main-screen .side-nav .nav-btn[data-view="settings"]{
  display:none!important;
  visibility:hidden!important;
  pointer-events:none!important;
}

/* 2) Cockpit principal cabinet : moins massif, plus lisible */
body:not(.role-client-dossier) #view-dashboard.home-view{
  padding-top:14px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero{
  min-height:170px!important;
  max-width:1220px!important;
  margin:0 auto 16px!important;
  padding:20px 24px!important;
  grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr)!important;
  align-items:center!important;
  background:
    radial-gradient(circle at 90% 0%, rgba(37,99,235,.13), transparent 30%),
    linear-gradient(135deg,#ffffff 0%,#f7fbff 60%,#eaf4ff 100%)!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero h1{
  color:#0b2347!important;
  font-size:clamp(24px,2vw,34px)!important;
  line-height:1.08!important;
  text-shadow:none!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero h1 strong,
body:not(.role-client-dossier) #main-screen .cockpit-hero .highlight,
body:not(.role-client-dossier) #main-screen .cockpit-hero .accent{
  color:#2563eb!important;
  opacity:1!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero .muted,
body:not(.role-client-dossier) #main-screen .cockpit-hero p{
  color:#475569!important;
  opacity:1!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero .cockpit-stats,
body:not(.role-client-dossier) #main-screen .cockpit-quick,
body:not(.role-client-dossier) #main-screen .cockpit-actions{
  margin-top:14px!important;
  gap:9px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero .btn{
  min-height:36px!important;
  padding:8px 12px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-aside{
  max-width:360px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-aside .cockpit-card,
body:not(.role-client-dossier) #main-screen .cockpit-live,
body:not(.role-client-dossier) #main-screen .cockpit-pools{
  min-height:0!important;
  padding:14px!important;
  border-radius:19px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-mini{
  min-height:58px!important;
  padding:10px 12px!important;
  opacity:1!important;
}

/* 3) Resserrement général de la première ligne cabinet */
body:not(.role-client-dossier) #main-screen .cockpit-kpis,
body:not(.role-client-dossier) #main-screen .kpi-grid.cockpit-kpis{
  margin-top:0!important;
}
body:not(.role-client-dossier) #main-screen .home-view .kpi{
  min-height:100px!important;
  padding:14px 16px!important;
}

/* 4) Sécurité contre toute règle future trop globale */
body:not(.role-client-dossier) .client-only.hidden,
body:not(.role-client-dossier) [data-view^="client-"].hidden{
  display:none!important;
}


/* ============================================================================
   AZALYS v17.16 — vrai premium cabinet contrasté
   Objectif : appliquer le même principe que l'espace client :
   lisibilité forte, cartes blanches, textes foncés, accents bleus nets.
   ============================================================================ */
body:not(.role-client-dossier) #main-screen{
  --cab-text:#0b2347;
  --cab-text-soft:#445b75;
  --cab-text-muted:#6b7f96;
  --cab-panel:#ffffff;
  --cab-panel-soft:#f7fbff;
  --cab-border:#dbe7f5;
  --cab-shadow:0 16px 42px rgba(15,23,42,.07);
  --cab-shadow-hover:0 22px 54px rgba(15,23,42,.10);
}

body:not(.role-client-dossier) #main-screen .topbar h2,
body:not(.role-client-dossier) #main-screen .card-head h3,
body:not(.role-client-dossier) #main-screen .section-head h3,
body:not(.role-client-dossier) #main-screen .item-title,
body:not(.role-client-dossier) #main-screen .home-module-title,
body:not(.role-client-dossier) #main-screen .module-card h4,
body:not(.role-client-dossier) #main-screen .kpi-value,
body:not(.role-client-dossier) #main-screen .dossier-overview-card strong,
body:not(.role-client-dossier) #main-screen .btn,
body:not(.role-client-dossier) #main-screen strong{
  color:var(--cab-text)!important;
}

body:not(.role-client-dossier) #main-screen .eyebrow,
body:not(.role-client-dossier) #main-screen .kpi-label,
body:not(.role-client-dossier) #main-screen .card-head small,
body:not(.role-client-dossier) #main-screen .section-head small,
body:not(.role-client-dossier) #main-screen .item-sub,
body:not(.role-client-dossier) #main-screen .kpi-sub,
body:not(.role-client-dossier) #main-screen .home-module-desc,
body:not(.role-client-dossier) #main-screen .mini-lbl,
body:not(.role-client-dossier) #main-screen .muted,
body:not(.role-client-dossier) #main-screen p,
body:not(.role-client-dossier) #main-screen small,
body:not(.role-client-dossier) #main-screen span{
  color:var(--cab-text-soft);
}

/* Sidebar plus nette */
body:not(.role-client-dossier) #main-screen .side{
  background:linear-gradient(180deg,#082145 0%,#06152d 100%)!important;
}
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn{
  color:rgba(255,255,255,.88)!important;
  background:transparent!important;
}
body:not(.role-client-dossier) #main-screen .side-nav .nav-btn:hover{
  background:rgba(59,130,246,.18)!important;
  color:#fff!important;
}
body:not(.role-client-dossier) #main-screen .side-footer .btn{
  background:rgba(255,255,255,.96)!important;
  color:#0b2347!important;
  border:1px solid rgba(191,219,254,.9)!important;
}

/* Hero cockpit comme côté client : blanc, net, lisible */
body:not(.role-client-dossier) #main-screen .hero,
body:not(.role-client-dossier) #main-screen .cockpit-hero,
body:not(.role-client-dossier) #main-screen .internal-hero,
body:not(.role-client-dossier) #main-screen .legal-hero,
body:not(.role-client-dossier) #main-screen .docs-inbox-hero,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-hero,
body:not(.role-client-dossier) #main-screen .collab-hero-v28{
  background:
    radial-gradient(circle at 100% 0%, rgba(37,99,235,.10), transparent 33%),
    linear-gradient(180deg,#ffffff 0%,#f7fbff 100%)!important;
  border:1px solid var(--cab-border)!important;
  box-shadow:var(--cab-shadow)!important;
}
body:not(.role-client-dossier) #main-screen .hero h1,
body:not(.role-client-dossier) #main-screen .cockpit-hero h1,
body:not(.role-client-dossier) #main-screen .internal-hero h3,
body:not(.role-client-dossier) #main-screen .legal-hero h3,
body:not(.role-client-dossier) #main-screen .docs-inbox-hero h3,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-hero h3,
body:not(.role-client-dossier) #main-screen .collab-hero-v28 h3{
  color:var(--cab-text)!important;
  text-shadow:none!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-hero h1 span,
body:not(.role-client-dossier) #main-screen .cockpit-hero .highlight,
body:not(.role-client-dossier) #main-screen .cockpit-hero .accent{
  color:#8ab4fb!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-chip{
  background:#f8fbff!important;
  border:1px solid var(--cab-border)!important;
  color:var(--cab-text)!important;
  box-shadow:0 8px 22px rgba(15,23,42,.04)!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-chip .ic,
body:not(.role-client-dossier) #main-screen .cockpit-chip b{
  color:var(--cab-text)!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-mini,
body:not(.role-client-dossier) #main-screen .cockpit-live,
body:not(.role-client-dossier) #main-screen .cockpit-pools,
body:not(.role-client-dossier) #main-screen .cockpit-aside .cockpit-card{
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid var(--cab-border)!important;
  box-shadow:0 12px 30px rgba(15,23,42,.05)!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-mini .mini-val{
  color:var(--cab-text)!important;
  font-size:20px!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-mini .mini-lbl,
body:not(.role-client-dossier) #main-screen .cockpit-mini .mini-txt,
body:not(.role-client-dossier) #main-screen .cockpit-live small,
body:not(.role-client-dossier) #main-screen .cockpit-pools small{
  color:var(--cab-text-soft)!important;
}
body:not(.role-client-dossier) #main-screen .cockpit-live .badge,
body:not(.role-client-dossier) #main-screen .cockpit-pools .badge{
  background:#dcfce7!important;
  color:#15803d!important;
}

/* Cartes cabinet : plus de contraste */
body:not(.role-client-dossier) #main-screen .card,
body:not(.role-client-dossier) #main-screen .dashboard-panel,
body:not(.role-client-dossier) #main-screen .cockpit-modules,
body:not(.role-client-dossier) #main-screen .collab-pro-card,
body:not(.role-client-dossier) #main-screen .collab-card,
body:not(.role-client-dossier) #main-screen .legal-card,
body:not(.role-client-dossier) #main-screen .docs-inbox-filters,
body:not(.role-client-dossier) #main-screen .docs-inbox-list,
body:not(.role-client-dossier) #main-screen .cabinet-thread-panel,
body:not(.role-client-dossier) #main-screen .cabinet-side-card,
body:not(.role-client-dossier) #main-screen .home-module-card,
body:not(.role-client-dossier) #main-screen .module-card,
body:not(.role-client-dossier) #main-screen .dossier-overview-card,
body:not(.role-client-dossier) #main-screen .item,
body:not(.role-client-dossier) #main-screen .alert-item,
body:not(.role-client-dossier) #main-screen .internal-contact,
body:not(.role-client-dossier) #main-screen .internal-thread-panel,
body:not(.role-client-dossier) #main-screen .internal-contacts-panel{
  background:var(--cab-panel)!important;
  border:1px solid var(--cab-border)!important;
  box-shadow:var(--cab-shadow)!important;
}
body:not(.role-client-dossier) #main-screen .card:hover,
body:not(.role-client-dossier) #main-screen .dashboard-panel:hover,
body:not(.role-client-dossier) #main-screen .home-module-card:hover,
body:not(.role-client-dossier) #main-screen .module-card:hover,
body:not(.role-client-dossier) #main-screen .item:hover{
  box-shadow:var(--cab-shadow-hover)!important;
}
body:not(.role-client-dossier) #main-screen .card-head,
body:not(.role-client-dossier) #main-screen .section-head,
body:not(.role-client-dossier) #main-screen .cabinet-thread-head{
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
}

/* KPI plus lisibles */
body:not(.role-client-dossier) #main-screen .kpi{
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid var(--cab-border)!important;
}
body:not(.role-client-dossier) #main-screen .kpi-label,
body:not(.role-client-dossier) #main-screen .kpi-label .ic{
  color:#60758d!important;
}
body:not(.role-client-dossier) #main-screen .kpi-meter{ background:#e6eef9!important; }

/* Boutons comme le client */
body:not(.role-client-dossier) #main-screen .btn.primary,
body:not(.role-client-dossier) #main-screen .btn.blue,
body:not(.role-client-dossier) #main-screen .btn.btn-primary{
  color:#fff!important;
  background:linear-gradient(135deg,#2563eb,#3b82f6)!important;
  border:1px solid rgba(37,99,235,.32)!important;
  box-shadow:0 12px 26px rgba(37,99,235,.18)!important;
}
body:not(.role-client-dossier) #main-screen .btn.ghost,
body:not(.role-client-dossier) #main-screen .btn.secondary{
  color:var(--cab-text)!important;
  background:#fff!important;
  border:1px solid var(--cab-border)!important;
}

/* Listes dossier / alertes */
body:not(.role-client-dossier) #main-screen .item-title{font-size:15px!important;color:var(--cab-text)!important;}
body:not(.role-client-dossier) #main-screen .item-sub{font-size:12.5px!important;color:var(--cab-text-soft)!important;}
body:not(.role-client-dossier) #main-screen .badges .badge,
body:not(.role-client-dossier) #main-screen .badge{
  border:1px solid rgba(203,213,225,.9)!important;
  color:#2c4763!important;
}
body:not(.role-client-dossier) #main-screen .badge.blue{background:#e8f1ff!important;color:#1853c6!important;border-color:#cfe0ff!important;}
body:not(.role-client-dossier) #main-screen .badge.green{background:#e9f9ef!important;color:#18794e!important;border-color:#c7ecd5!important;}
body:not(.role-client-dossier) #main-screen .badge.red{background:#ffeded!important;color:#b42318!important;border-color:#ffd5d1!important;}
body:not(.role-client-dossier) #main-screen .badge.gold{background:#fff5dc!important;color:#9a6700!important;border-color:#f3dfaa!important;}
body:not(.role-client-dossier) #main-screen .badge.purple{background:#f1ebff!important;color:#6540d6!important;border-color:#ddd0ff!important;}

/* Tables et formulaires */
body:not(.role-client-dossier) #main-screen .table-wrap,
body:not(.role-client-dossier) #main-screen table,
body:not(.role-client-dossier) #main-screen .control,
body:not(.role-client-dossier) #main-screen input,
body:not(.role-client-dossier) #main-screen select,
body:not(.role-client-dossier) #main-screen textarea{
  color:var(--cab-text)!important;
}
body:not(.role-client-dossier) #main-screen input::placeholder,
body:not(.role-client-dossier) #main-screen textarea::placeholder{
  color:#8fa1b5!important;
}

/* Flottants AI / messages visibles sur fond clair */
body:not(.role-client-dossier) #main-screen .cabinet-chat-btn::after,
body:not(.role-client-dossier) #main-screen .client-chat-btn::after{
  background:rgba(11,35,71,.92)!important;
}


/* ============================================================================
   AZALYS v17.17 — Cockpit cabinet pleine largeur utile
   Le bloc de pilotage haut s'aligne maintenant sur les KPI et les panneaux.
   ============================================================================ */

body:not(.role-client-dossier) #view-dashboard.home-view{
  max-width:1760px!important;
  margin:0 auto!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero{
  width:100%!important;
  max-width:none!important;
  margin:0 0 18px 0!important;
  box-sizing:border-box!important;
  grid-template-columns:minmax(0,1fr) minmax(300px,390px)!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero > *{
  min-width:0!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-aside{
  width:100%!important;
  max-width:none!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-pulse,
body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-quick,
body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-actions{
  max-width:100%!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard #kpi-grid,
body:not(.role-client-dossier) #main-screen #view-dashboard .grid.two,
body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-grid{
  width:100%!important;
}

/* Large écran : le cockpit occupe bien la ligne, sans paraître collé */
@media(min-width:1500px){
  body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero{
    grid-template-columns:minmax(0,1fr) minmax(340px,430px)!important;
    padding:22px 26px!important;
  }
}

/* Écran moyen : garder la lisibilité sans bloc écrasé */
@media(max-width:1180px){
  body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero{
    grid-template-columns:1fr!important;
  }
}

/* Harmonisation visuelle : le haut ne doit pas attirer plus que le contenu */
body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero{
  min-height:150px!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-mini{
  min-height:54px!important;
}


/* ============================================================================
   AZALYS v17.19 — Missions & tâches pour cabinet de taille humaine
   ============================================================================ */
body:not(.role-client-dossier) #view-taches.missions-human-view{
  max-width:1760px!important;
  margin:0 auto!important;
}
.mission-human{
  display:grid;
  gap:14px;
}
.mission-human.hidden{display:none!important;}
.mission-human-hero{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 22px!important;
  background:linear-gradient(180deg,#ffffff,#f7fbff)!important;
  border:1px solid #dbe7f5!important;
  border-radius:24px!important;
}
.mission-human-hero h3{
  margin:4px 0 6px;
  color:#0b2347;
  font-size:clamp(24px,2vw,32px);
  letter-spacing:-.04em;
}
.mission-human-actions{
  display:flex;
  gap:9px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.mission-filterbar{
  display:grid;
  grid-template-columns:minmax(280px,1fr) minmax(180px,220px) minmax(180px,240px);
  gap:10px;
  padding:12px!important;
  border-radius:20px!important;
}
.mission-priority-grid{
  display:grid;
  grid-template-columns:minmax(0,1.35fr) minmax(300px,.8fr) minmax(260px,.65fr);
  gap:14px;
  align-items:start;
}
.mission-bottom-grid{
  display:grid;
  grid-template-columns:minmax(340px,.8fr) minmax(0,1.2fr);
  gap:14px;
  align-items:start;
}
.mission-focus-card,
.mission-projects-card,
.mission-table-card{
  overflow:hidden;
}
.mission-action-list{
  display:grid;
  gap:10px;
  padding:14px;
}
.mission-action-card{
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:13px;
  border:1px solid #dbe7f5;
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#f8fbff);
  box-shadow:0 10px 24px rgba(15,23,42,.045);
}
.mission-action-card.tone-red{border-color:#fecaca;background:linear-gradient(180deg,#fff,#fff7f7);}
.mission-action-card.tone-gold{border-color:#fde68a;background:linear-gradient(180deg,#fff,#fffaf0);}
.mission-action-card.tone-blue{border-color:#bfdbfe;background:linear-gradient(180deg,#fff,#f5f9ff);}
.mission-action-icon{
  width:40px;
  height:40px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:#f1f5f9;
  font-size:18px;
}
.mission-action-main{
  min-width:0;
  display:grid;
  gap:5px;
}
.mission-action-main strong{
  color:#0b2347!important;
  font-size:15px;
  line-height:1.3;
}
.mission-action-main span{
  color:#526981!important;
  font-size:12.5px;
}
.mission-action-side{
  display:grid;
  gap:8px;
  justify-items:end;
}
.mission-user-load{
  display:grid;
  gap:10px;
  padding:14px;
}
.mission-user-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px 10px;
  align-items:center;
  padding:12px;
  border:1px solid #dbe7f5;
  border-radius:17px;
  background:#fff;
}
.mission-user-row.has-risk{
  border-color:#fecaca;
}
.mission-user-row strong{
  display:block;
  color:#0b2347!important;
  font-size:14px;
}
.mission-user-row span{
  color:#526981!important;
  font-size:12px;
}
.mission-user-badges{
  display:flex;
  gap:6px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.mission-loadbar{
  grid-column:1/-1;
  height:7px;
  border-radius:999px;
  background:#e8eef7;
  overflow:hidden;
}
.mission-loadbar span{
  display:block;
  height:100%;
  border-radius:999px;
  background:linear-gradient(90deg,#2563eb,#38bdf8);
}
.mission-week-plan{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  padding:14px;
}
.mission-week-chip{
  display:grid;
  gap:3px;
  align-content:center;
  min-height:74px;
  padding:12px;
  border:1px solid #dbe7f5;
  border-radius:17px;
  background:#fff;
}
.mission-week-chip span{
  font-size:18px;
}
.mission-week-chip strong{
  color:#0b2347!important;
  font-size:24px;
  line-height:1;
}
.mission-week-chip small{
  color:#526981!important;
  font-weight:850;
}
.mission-week-chip.red{background:#fff7f7;border-color:#fecaca;}
.mission-week-chip.gold{background:#fffaf0;border-color:#fde68a;}
.mission-week-chip.blue{background:#f5f9ff;border-color:#bfdbfe;}
.mission-project-list{
  display:grid;
  gap:10px;
  padding:14px;
}
.mission-project-card{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:12px;
  align-items:center;
  padding:13px;
  border:1px solid #dbe7f5;
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#f8fbff);
}
.mission-project-card.has-risk{
  border-color:#fecaca;
}
.mission-project-main{
  display:grid;
  gap:5px;
  min-width:0;
}
.mission-project-main strong{
  color:#0b2347!important;
  font-size:15px;
}
.mission-project-main span{
  color:#526981!important;
  font-size:12.5px;
}
.mission-project-actions{
  display:flex;
  gap:7px;
  flex-wrap:wrap;
  justify-content:flex-end;
}
.mission-table-wrap{
  border-radius:0!important;
  border:0!important;
  box-shadow:none!important;
}
.mission-table-card table th,
.mission-table-card table td{
  vertical-align:top;
}
@media(max-width:1280px){
  .mission-priority-grid,
  .mission-bottom-grid{
    grid-template-columns:1fr;
  }
}
@media(max-width:760px){
  .mission-human-hero,
  .mission-action-card,
  .mission-project-card{
    grid-template-columns:1fr;
    align-items:start;
  }
  .mission-human-hero{
    flex-direction:column;
    align-items:flex-start;
  }
  .mission-human-actions,
  .mission-project-actions,
  .mission-action-side{
    width:100%;
    justify-content:stretch;
    justify-items:stretch;
  }
  .mission-filterbar,
  .mission-week-plan{
    grid-template-columns:1fr;
  }
}


/* ============================================================================
   AZALYS v17.20 — Tableau de bord cabinet vraiment pleine largeur
   Correction du parent .cockpit qui gardait encore max-width:1280px dans app.css.
   ============================================================================ */

body:not(.role-client-dossier) #main-screen #view-dashboard.view,
body:not(.role-client-dossier) #main-screen #view-dashboard.home-view{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  padding-left:clamp(18px,1.6vw,30px)!important;
  padding-right:clamp(18px,1.6vw,30px)!important;
  box-sizing:border-box!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit{
  width:100%!important;
  max-width:none!important;
  margin:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:18px!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero,
body:not(.role-client-dossier) #main-screen #view-dashboard #kpi-grid,
body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-grid,
body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-modules{
  width:100%!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  box-sizing:border-box!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-grid{
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
}

body:not(.role-client-dossier) #main-screen #view-dashboard #kpi-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}

/* Sur très grand écran, garder une lecture confortable sans recentrage étroit */
@media(min-width:1600px){
  body:not(.role-client-dossier) #main-screen #view-dashboard.view,
  body:not(.role-client-dossier) #main-screen #view-dashboard.home-view{
    padding-left:32px!important;
    padding-right:32px!important;
  }
}

/* Écran moyen : repasser naturellement sur une colonne */
@media(max-width:1100px){
  body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-grid{
    grid-template-columns:1fr!important;
  }
  body:not(.role-client-dossier) #main-screen #view-dashboard #kpi-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:720px){
  body:not(.role-client-dossier) #main-screen #view-dashboard.view,
  body:not(.role-client-dossier) #main-screen #view-dashboard.home-view{
    padding-left:14px!important;
    padding-right:14px!important;
  }
  body:not(.role-client-dossier) #main-screen #view-dashboard #kpi-grid{
    grid-template-columns:1fr!important;
  }
}


/* ============================================================================
   AZALYS v17.21 — Réduction légère du bloc cockpit supérieur
   On garde la page large, mais le premier bloc respire davantage.
   ============================================================================ */
body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero{
  width:min(96%, 1520px)!important;
  margin:0 auto 18px auto!important;
}
@media(min-width:1600px){
  body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero{
    width:min(95%, 1500px)!important;
  }
}
@media(max-width:1100px){
  body:not(.role-client-dossier) #main-screen #view-dashboard .cockpit-hero{
    width:100%!important;
    margin:0 0 18px 0!important;
  }
}


/* ============================================================================
   AZALYS v17.22 — Harmonisation globale de toutes les pages cabinet
   Objectif : même niveau premium que l'espace client, sur tous les écrans.
   ============================================================================ */
body:not(.role-client-dossier) #main-screen .view:not(#view-client){
  width:100%!important;
  max-width:none!important;
  box-sizing:border-box!important;
}
body:not(.role-client-dossier) #main-screen .view:not(#view-client):not(#view-dashboard){
  max-width:1760px!important;
  margin:0 auto!important;
  padding-left:clamp(18px,1.6vw,30px)!important;
  padding-right:clamp(18px,1.6vw,30px)!important;
}

/* Outils/filtres */
body:not(.role-client-dossier) #main-screen .panel-tools,
body:not(.role-client-dossier) #main-screen .mission-filterbar,
body:not(.role-client-dossier) #main-screen .docs-inbox-filters,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-filters,
body:not(.role-client-dossier) #main-screen .internal-toolbar,
body:not(.role-client-dossier) #main-screen .toolbar,
body:not(.role-client-dossier) #main-screen .filters-bar{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(180px,1fr));
  gap:10px!important;
  padding:12px!important;
  background:linear-gradient(180deg,#ffffff,#f7fbff)!important;
  border:1px solid #dbe7f5!important;
  border-radius:20px!important;
  box-shadow:0 14px 34px rgba(15,23,42,.05)!important;
  margin-bottom:14px!important;
}
body:not(.role-client-dossier) #main-screen .panel-tools .btn,
body:not(.role-client-dossier) #main-screen .mission-filterbar .btn{
  justify-self:start;
}

/* Cartes / tuiles */
body:not(.role-client-dossier) #main-screen .card,
body:not(.role-client-dossier) #main-screen .collab-pro-head,
body:not(.role-client-dossier) #main-screen .collab-pro-tabs,
body:not(.role-client-dossier) #main-screen .collab-pro-kpis,
body:not(.role-client-dossier) #main-screen .dossiers-overview,
body:not(.role-client-dossier) #main-screen .modules-grid,
body:not(.role-client-dossier) #main-screen .grid.two > article,
body:not(.role-client-dossier) #main-screen #legal-root > *,
body:not(.role-client-dossier) #main-screen #internal-messages-root > *,
body:not(.role-client-dossier) #main-screen #cabinet-messages-root > *,
body:not(.role-client-dossier) #main-screen #client-documents-inbox-root > *{
  border-radius:24px!important;
}
body:not(.role-client-dossier) #main-screen .card-head,
body:not(.role-client-dossier) #main-screen .section-head,
body:not(.role-client-dossier) #main-screen .list-head,
body:not(.role-client-dossier) #main-screen .table-head{
  padding:16px 18px!important;
  border-bottom:1px solid #e5edf7!important;
}
body:not(.role-client-dossier) #main-screen .card-head h3,
body:not(.role-client-dossier) #main-screen .section-head h3{
  color:#0b2347!important;
  font-size:clamp(20px,1.35vw,28px)!important;
  letter-spacing:-.03em!important;
}
body:not(.role-client-dossier) #main-screen .card-head .muted,
body:not(.role-client-dossier) #main-screen .section-head .muted,
body:not(.role-client-dossier) #main-screen .card > p.muted{
  color:#60758d!important;
}

/* Tableaux */
body:not(.role-client-dossier) #main-screen .table-wrap{
  border:1px solid #dbe7f5!important;
  border-radius:22px!important;
  overflow:auto!important;
  box-shadow:0 12px 32px rgba(15,23,42,.04)!important;
  background:#fff!important;
}
body:not(.role-client-dossier) #main-screen table thead th{
  position:sticky;
  top:0;
  z-index:1;
  background:#f7fbff!important;
  color:#5b7189!important;
  font-size:12px!important;
  letter-spacing:.06em!important;
  text-transform:uppercase!important;
  border-bottom:1px solid #dbe7f5!important;
}
body:not(.role-client-dossier) #main-screen table tbody tr:hover{
  background:#f9fbff!important;
}
body:not(.role-client-dossier) #main-screen table td,
body:not(.role-client-dossier) #main-screen table th{
  padding:14px 16px!important;
}

/* Formulaires */
body:not(.role-client-dossier) #main-screen .form-grid,
body:not(.role-client-dossier) #main-screen .stack,
body:not(.role-client-dossier) #main-screen .settings-grid{
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen label{
  display:grid!important;
  gap:7px!important;
  color:#0b2347!important;
  font-weight:750!important;
}
body:not(.role-client-dossier) #main-screen .control,
body:not(.role-client-dossier) #main-screen input,
body:not(.role-client-dossier) #main-screen select,
body:not(.role-client-dossier) #main-screen textarea{
  min-height:44px!important;
  border-radius:14px!important;
  border:1px solid #d5e2f1!important;
  background:#fff!important;
  color:#0b2347!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.02)!important;
}
body:not(.role-client-dossier) #main-screen textarea{min-height:110px!important;}
body:not(.role-client-dossier) #main-screen .control:focus,
body:not(.role-client-dossier) #main-screen input:focus,
body:not(.role-client-dossier) #main-screen select:focus,
body:not(.role-client-dossier) #main-screen textarea:focus{
  outline:none!important;
  border-color:#93c5fd!important;
  box-shadow:0 0 0 4px rgba(59,130,246,.12)!important;
}

/* Vues spécifiques */
body:not(.role-client-dossier) #main-screen #view-dossiers .dossiers-overview,
body:not(.role-client-dossier) #main-screen #view-dossiers .dossiers-card,
body:not(.role-client-dossier) #main-screen #view-modules .card,
body:not(.role-client-dossier) #main-screen #view-alerts .card,
body:not(.role-client-dossier) #main-screen #view-settings .grid.two,
body:not(.role-client-dossier) #main-screen #view-settings .grid.two > article{
  width:100%!important;
}
body:not(.role-client-dossier) #main-screen #view-settings .grid.two{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:16px!important;
}
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-wrap,
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-head,
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-tabs,
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-kpis{
  width:100%!important;
}
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-head{
  padding:18px 20px!important;
  background:linear-gradient(180deg,#ffffff,#f7fbff)!important;
  border:1px solid #dbe7f5!important;
  box-shadow:0 14px 34px rgba(15,23,42,.05)!important;
}
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-head h3{
  color:#0b2347!important;
  font-size:clamp(24px,2vw,34px)!important;
  letter-spacing:-.04em!important;
}
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-tabs{
  background:#fff!important;
  border:1px solid #dbe7f5!important;
  padding:8px!important;
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
body:not(.role-client-dossier) #main-screen #view-collaborateurs .collab-pro-tabs button{
  min-height:40px!important;
  border-radius:14px!important;
}

/* Racines générées JS */
body:not(.role-client-dossier) #main-screen #legal-root,
body:not(.role-client-dossier) #main-screen #internal-messages-root,
body:not(.role-client-dossier) #main-screen #cabinet-messages-root,
body:not(.role-client-dossier) #main-screen #client-documents-inbox-root{
  display:grid!important;
  gap:14px!important;
}

/* Espacement cohérent */
body:not(.role-client-dossier) #main-screen .view:not(#view-client) > * + *{
  margin-top:14px!important;
}
body:not(.role-client-dossier) #main-screen .empty{
  border-radius:18px!important;
  border:1px dashed #cfe0f5!important;
  background:#f8fbff!important;
  color:#60758d!important;
}

/* Responsive */
@media(max-width:1100px){
  body:not(.role-client-dossier) #main-screen #view-settings .grid.two{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen .view:not(#view-client):not(#view-dashboard){
    padding-left:14px!important;
    padding-right:14px!important;
  }
  body:not(.role-client-dossier) #main-screen .panel-tools,
  body:not(.role-client-dossier) #main-screen .mission-filterbar,
  body:not(.role-client-dossier) #main-screen .docs-inbox-filters,
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-filters,
  body:not(.role-client-dossier) #main-screen .internal-toolbar,
  body:not(.role-client-dossier) #main-screen .toolbar,
  body:not(.role-client-dossier) #main-screen .filters-bar{
    grid-template-columns:1fr!important;
  }
}


/* ============================================================================
   AZALYS v17.23 — Harmonisation page Modules des dossiers
   ============================================================================ */
body:not(.role-client-dossier) #main-screen #view-modules.modules-premium-view{
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules.modules-premium-view:not(.active){
  display:none!important;
}
body:not(.role-client-dossier) #main-screen #view-modules.modules-premium-view.active{
  display:grid!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:18px!important;
  padding:18px 22px!important;
  background:linear-gradient(180deg,#ffffff,#f7fbff)!important;
  border:1px solid #dbe7f5!important;
  box-shadow:0 14px 34px rgba(15,23,42,.05)!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero h3{
  margin:4px 0 6px!important;
  color:#0b2347!important;
  font-size:clamp(24px,2vw,34px)!important;
  letter-spacing:-.04em!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero .muted{
  max-width:760px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero-actions{
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-overview{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(220px,1fr))!important;
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-kpi{
  min-height:120px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-main-card{
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-premium-grid{
  padding:16px!important;
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(250px,1fr))!important;
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card{
  min-height:220px!important;
  display:grid!important;
  gap:10px!important;
  align-content:start!important;
  padding:16px!important;
  border:1px solid #dbe7f5!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#fff,#f8fbff)!important;
  box-shadow:0 12px 30px rgba(15,23,42,.045)!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-card-top{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .ico{
  width:48px!important;
  height:48px!important;
  display:grid!important;
  place-items:center!important;
  border-radius:16px!important;
  font-size:24px!important;
  background:linear-gradient(180deg,#f6f9ff,#edf4ff)!important;
  border:1px solid #d8e5f8!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card h4{
  margin:0!important;
  color:#0b2347!important;
  font-size:18px!important;
  letter-spacing:-.02em!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card p{
  margin:0!important;
  color:#60758d!important;
  font-size:13px!important;
  line-height:1.55!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-card-foot{
  margin-top:auto!important;
  display:flex!important;
  gap:8px!important;
  flex-wrap:wrap!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .badge.soft{
  background:#f3f7fd!important;
  color:#4d6480!important;
  border:1px solid #d8e5f8!important;
}
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen #view-modules .modules-hero{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  body:not(.role-client-dossier) #main-screen #view-modules .modules-hero-actions{
    justify-content:flex-start!important;
  }
}


/* AZALYS v17.24 — Hotfix visibilité page Modules */
body:not(.role-client-dossier) #main-screen #view-modules.modules-premium-view:not(.active){
  display:none!important;
}
body:not(.role-client-dossier) #main-screen #view-modules.modules-premium-view.active{
  display:grid!important;
}


/* ============================================================================
   AZALYS v17.25 — Modules des dossiers niveau premium renforcé
   ============================================================================ */
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero{
  position:relative!important;
  overflow:hidden!important;
  min-height:136px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero::after{
  content:"";
  position:absolute;
  inset:auto -60px -80px auto;
  width:280px;
  height:280px;
  border-radius:50%;
  background:radial-gradient(circle at center, rgba(59,130,246,.12), rgba(59,130,246,0));
  pointer-events:none;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero-actions .badge{
  min-height:34px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  display:inline-flex!important;
  align-items:center!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-overview{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi{
  min-height:138px!important;
  display:grid!important;
  align-content:start!important;
  gap:10px!important;
  padding:18px 18px 16px!important;
  border:1px solid #dbe7f5!important;
  box-shadow:0 14px 34px rgba(15,23,42,.045)!important;
  position:relative!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi::before{
  content:"";
  position:absolute;
  left:0;top:0;bottom:0;
  width:4px;
  border-radius:4px;
  background:linear-gradient(180deg,#60a5fa,#2563eb);
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi.green::before{background:linear-gradient(180deg,#4ade80,#22c55e)!important;}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi.violet::before{background:linear-gradient(180deg,#a78bfa,#7c3aed)!important;}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi.gold::before{background:linear-gradient(180deg,#fbbf24,#f59e0b)!important;}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi .kpi-label{
  color:#5f7390!important;
  font-size:12px!important;
  letter-spacing:.08em!important;
  text-transform:uppercase!important;
  font-weight:900!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-kpi-row{
  display:flex!important;
  align-items:flex-end!important;
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi .kpi-value{
  color:#0b2347!important;
  font-size:clamp(34px,2.2vw,44px)!important;
  line-height:1!important;
  letter-spacing:-.05em!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi .kpi-sub{
  color:#60758d!important;
  font-size:13px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-highlights{
  display:grid!important;
  grid-template-columns:1fr!important;
  gap:14px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-card{
  padding:16px 18px!important;
  border:1px solid #dbe7f5!important;
  background:linear-gradient(180deg,#fff,#f8fbff)!important;
  box-shadow:0 14px 34px rgba(15,23,42,.04)!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-head{
  display:grid!important;
  gap:4px!important;
  margin-bottom:12px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-head h4{
  margin:0!important;
  color:#0b2347!important;
  font-size:20px!important;
  letter-spacing:-.03em!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-grid{
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-item{
  padding:14px!important;
  border:1px solid #dde8f6!important;
  border-radius:18px!important;
  background:#fff!important;
  display:grid!important;
  gap:6px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-item .mini-label{
  color:#5f7390!important;
  font-size:11px!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
  font-weight:900!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-item strong{
  color:#0b2347!important;
  font-size:18px!important;
  line-height:1.2!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-item small{
  color:#60758d!important;
  font-size:12.5px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-main-card > .card-head{
  display:flex!important;
  align-items:flex-end!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:18px 20px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-main-card > .card-head h3{
  margin-bottom:3px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-premium-grid{
  grid-template-columns:repeat(auto-fit,minmax(290px,1fr))!important;
  gap:16px!important;
  padding:18px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card{
  min-height:255px!important;
  gap:12px!important;
  padding:18px!important;
  position:relative!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card::before{
  content:"";
  position:absolute;
  inset:0 0 auto 0;
  height:4px;
  background:linear-gradient(90deg,#38bdf8,#2563eb,#7c3aed);
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card.tone-low::before{background:linear-gradient(90deg,#cbd5e1,#93c5fd)!important;}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card.tone-high::before{background:linear-gradient(90deg,#22c55e,#38bdf8)!important;}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-card-body{
  display:grid!important;
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-card-heading{
  display:grid!important;
  gap:4px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-card-heading h4{
  font-size:17px!important;
  line-height:1.28!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-card-heading small{
  color:#60758d!important;
  font-size:12px!important;
  font-weight:800!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card p{
  min-height:42px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-progress-meta{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:8px!important;
  color:#60758d!important;
  font-size:12px!important;
  font-weight:800!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-progress-meta strong{
  color:#0b2347!important;
  font-size:13px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-progress{
  height:8px!important;
  border-radius:999px!important;
  background:#e8eef7!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-progress span{
  display:block!important;
  height:100%!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#38bdf8,#2563eb)!important;
}
@media(max-width:1180px){
  body:not(.role-client-dossier) #main-screen #view-modules .modules-overview{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
  body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-grid{
    grid-template-columns:1fr!important;
  }
}
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen #view-modules .modules-overview{
    grid-template-columns:1fr!important;
  }
}


/* ============================================================================
   AZALYS v17.26 — Modules par dossier plus compacts
   Objectif : réduire la hauteur des blocs du haut.
   ============================================================================ */
body:not(.role-client-dossier) #main-screen #view-modules{
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero{
  min-height:unset!important;
  padding:14px 20px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero h3{
  font-size:clamp(22px,1.8vw,30px)!important;
  margin:2px 0 4px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-hero .muted{
  font-size:13px!important;
  line-height:1.45!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-overview{
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi{
  min-height:108px!important;
  padding:14px 16px 13px!important;
  gap:6px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi .kpi-value{
  font-size:clamp(28px,1.8vw,36px)!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi .kpi-sub{
  font-size:12px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-highlights{
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-card{
  padding:12px 16px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-head{
  margin-bottom:8px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-head h4{
  font-size:18px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-item{
  padding:10px 12px!important;
  gap:4px!important;
  min-height:82px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-item strong{
  font-size:15px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-item small{
  font-size:11.5px!important;
  line-height:1.35!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-main-card > .card-head{
  padding:16px 18px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-main-card > .card-head h3{
  font-size:clamp(22px,1.8vw,30px)!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .modules-premium-grid{
  grid-template-columns:repeat(auto-fit,minmax(280px,1fr))!important;
  gap:14px!important;
  padding:16px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card{
  min-height:228px!important;
  padding:16px!important;
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-card-body{
  gap:8px!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card p{
  min-height:0!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
body:not(.role-client-dossier) #main-screen #view-modules .premium-module-card .module-progress{
  height:7px!important;
}

@media(max-width:1180px){
  body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen #view-modules .module-highlight-grid{
    grid-template-columns:1fr!important;
  }
  body:not(.role-client-dossier) #main-screen #view-modules .premium-kpi{
    min-height:96px!important;
  }
}


/* ============================================================================
   AZALYS v17.27 — Refonte premium messagerie interne
   ============================================================================ */
body:not(.role-client-dossier) #view-internal-messages{
  padding-top:14px!important;
}
body:not(.role-client-dossier) #main-screen #internal-messages-root{
  display:block!important;
}
body:not(.role-client-dossier) #main-screen .internal-messaging{
  display:grid!important;
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero{
  padding:16px 18px!important;
  border-radius:24px!important;
  min-height:auto!important;
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:16px!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-copy{
  display:flex!important;
  flex-direction:column!important;
  gap:6px!important;
  max-width:820px!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-note{
  opacity:.95!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metrics{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  margin-top:4px!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metric{
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  min-width:110px!important;
  padding:9px 12px!important;
  border-radius:16px!important;
  border:1px solid rgba(203,213,225,.9)!important;
  background:linear-gradient(180deg,#fff,#f8fbff)!important;
  box-shadow:0 8px 22px rgba(15,23,42,.05)!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metric b{
  font-size:20px!important;
  line-height:1!important;
  color:#0f2b55!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metric small{
  font-size:11px!important;
  color:#6b7f94!important;
  text-transform:uppercase!important;
  letter-spacing:.08em!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metric.ok{
  background:linear-gradient(180deg,#f3fff7,#ecfdf3)!important;
  border-color:#ccefd6!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metric.ok b,
body:not(.role-client-dossier) #main-screen .internal-hero-metric.ok small{
  color:#16794b!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metric.attention{
  background:linear-gradient(180deg,#fff8ef,#fff2db)!important;
  border-color:#f3d59d!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-metric.attention b,
body:not(.role-client-dossier) #main-screen .internal-hero-metric.attention small{
  color:#9a6700!important;
}
body:not(.role-client-dossier) #main-screen .internal-hero-actions{
  align-self:flex-start!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
body:not(.role-client-dossier) #main-screen .internal-action-btn{
  min-width:130px!important;
}
body:not(.role-client-dossier) #main-screen .internal-workspace{
  grid-template-columns:minmax(280px,330px) minmax(0,1fr)!important;
  gap:12px!important;
  align-items:stretch!important;
}
body:not(.role-client-dossier) #main-screen .internal-contacts-panel,
body:not(.role-client-dossier) #main-screen .internal-thread-panel{
  min-height:calc(100vh - 245px)!important;
  border-radius:24px!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen .internal-contacts-panel{
  display:flex!important;
  flex-direction:column!important;
  padding:16px!important;
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen .internal-toolbar{
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen .internal-sidebar-title{
  display:flex!important;
  align-items:center!important;
  gap:12px!important;
}
body:not(.role-client-dossier) #main-screen .internal-sidebar-icon{
  width:40px!important;
  height:40px!important;
  border-radius:14px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#f1f5ff,#e8f0ff)!important;
  border:1px solid #dbe7ff!important;
  box-shadow:0 10px 24px rgba(37,99,235,.08)!important;
}
body:not(.role-client-dossier) #main-screen .internal-sidebar-title h3{
  margin:0!important;
  font-size:15px!important;
  color:#0f244a!important;
}
body:not(.role-client-dossier) #main-screen .internal-search-wrap{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border:1px solid rgba(203,213,225,.95)!important;
  border-radius:16px!important;
  padding:10px 12px!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.7)!important;
}
body:not(.role-client-dossier) #main-screen .internal-search-wrap input{
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:0!important;
  min-height:auto!important;
}
body:not(.role-client-dossier) #main-screen .internal-search-wrap input:focus{
  outline:none!important;
}
body:not(.role-client-dossier) #main-screen .internal-contacts-list{
  flex:1!important;
  min-height:0!important;
  overflow:auto!important;
  padding-right:4px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:8px!important;
}
body:not(.role-client-dossier) #main-screen .internal-section-title{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  padding:8px 4px 2px!important;
  font-size:11.5px!important;
  letter-spacing:.14em!important;
  text-transform:uppercase!important;
  color:#5e7287!important;
}
body:not(.role-client-dossier) #main-screen .internal-section-plus{
  width:28px!important;
  height:28px!important;
  border:none!important;
  border-radius:10px!important;
  background:#eef4ff!important;
  color:#2563eb!important;
  font-weight:900!important;
}
body:not(.role-client-dossier) #main-screen .internal-mini-empty{
  border:1px dashed rgba(203,213,225,.95)!important;
  background:#fbfdff!important;
  border-radius:16px!important;
  padding:14px 12px!important;
  color:#60758d!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact{
  display:grid!important;
  grid-template-columns:auto minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  transition:all .18s ease!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact:hover{
  transform:translateY(-1px)!important;
  background:#fcfdff!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact.active{
  border-color:#bfdbfe!important;
  background:linear-gradient(180deg,#ffffff,#f3f8ff)!important;
  box-shadow:0 14px 28px rgba(37,99,235,.10)!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact.has-unread{
  border-left:4px solid #2563eb!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact-avatar{
  width:46px!important;
  height:46px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  font-weight:900!important;
  color:#1e3a8a!important;
  background:linear-gradient(135deg,#c7d2fe,#8b5cf6)!important;
  box-shadow:0 10px 24px rgba(99,102,241,.18)!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact-avatar.group{
  background:linear-gradient(135deg,#dbeafe,#93c5fd)!important;
  color:#1d4ed8!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact-main{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:2px!important;
  text-align:left!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact-main strong{
  font-size:14px!important;
  line-height:1.25!important;
  color:#10264b!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact-main small{
  font-size:12px!important;
  color:#6d8094!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact-main small b{
  color:#1d4ed8!important;
}
body:not(.role-client-dossier) #main-screen .internal-contact-side{
  display:flex!important;
  flex-direction:column!important;
  align-items:flex-end!important;
  gap:6px!important;
  color:#6b7f94!important;
  font-size:11px!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-panel{
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-shell{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  min-height:calc(100vh - 245px)!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:18px 22px!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border-bottom:1px solid rgba(226,232,240,.9)!important;
}
body:not(.role-client-dossier) #main-screen .internal-avatar{
  width:48px!important;
  height:48px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  font-weight:900!important;
  color:#fff!important;
  background:linear-gradient(135deg,#2563eb,#7c3aed)!important;
  box-shadow:0 14px 30px rgba(59,130,246,.18)!important;
}
body:not(.role-client-dossier) #main-screen .internal-avatar.group{
  background:linear-gradient(135deg,#38bdf8,#2563eb)!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-title{
  flex:1!important;
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-title h3{
  margin:0!important;
  font-size:18px!important;
  line-height:1.15!important;
  color:#0f244a!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-title .muted{
  color:#688099!important;
}
body:not(.role-client-dossier) #main-screen .internal-member-chips{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-top:2px!important;
}
body:not(.role-client-dossier) #main-screen .internal-member-chips span{
  padding:4px 8px!important;
  border-radius:999px!important;
  background:#eef4ff!important;
  border:1px solid #d7e6ff!important;
  color:#2958b8!important;
  font-size:11px!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-menu{
  width:38px!important;
  height:38px!important;
  border-radius:12px!important;
  border:1px solid rgba(203,213,225,.9)!important;
  background:#fff!important;
  color:#334155!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-body{
  max-height:none!important;
  min-height:0!important;
  overflow:auto!important;
  padding:16px 18px!important;
  background:
    radial-gradient(circle at 50% 0%, rgba(37,99,235,.05), transparent 35%),
    linear-gradient(180deg,#fbfdff 0%,#f5f9ff 100%)!important;
}
body:not(.role-client-dossier) #main-screen .internal-date-divider{
  display:flex!important;
  justify-content:center!important;
  margin:6px 0 10px!important;
}
body:not(.role-client-dossier) #main-screen .internal-date-divider span{
  padding:5px 10px!important;
  border-radius:999px!important;
  font-size:11px!important;
  color:#6f8194!important;
  background:rgba(255,255,255,.92)!important;
  border:1px solid rgba(203,213,225,.88)!important;
}
body:not(.role-client-dossier) #main-screen .internal-bubble{
  max-width:min(72%, 680px)!important;
  margin-bottom:12px!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  box-shadow:0 10px 26px rgba(15,23,42,.06)!important;
}
body:not(.role-client-dossier) #main-screen .internal-bubble.theirs{
  background:#ffffff!important;
  border:1px solid rgba(226,232,240,.95)!important;
  margin-right:auto!important;
}
body:not(.role-client-dossier) #main-screen .internal-bubble.mine{
  background:linear-gradient(135deg,#2563eb,#4f46e5)!important;
  border:1px solid rgba(59,130,246,.28)!important;
  color:#fff!important;
  margin-left:auto!important;
}
body:not(.role-client-dossier) #main-screen .internal-bubble.mine p,
body:not(.role-client-dossier) #main-screen .internal-bubble.mine strong,
body:not(.role-client-dossier) #main-screen .internal-bubble.mine span,
body:not(.role-client-dossier) #main-screen .internal-bubble.mine small{
  color:#fff!important;
}
body:not(.role-client-dossier) #main-screen .internal-bubble-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
  margin-bottom:6px!important;
  font-size:11.5px!important;
}
body:not(.role-client-dossier) #main-screen .internal-bubble p{
  margin:0!important;
  font-size:13px!important;
  line-height:1.5!important;
}
body:not(.role-client-dossier) #main-screen .internal-checks{
  margin-left:auto!important;
  opacity:.9!important;
}
body:not(.role-client-dossier) #main-screen .internal-composer{
  padding:14px 18px 18px!important;
  border-top:1px solid rgba(226,232,240,.9)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.92),#ffffff)!important;
}
body:not(.role-client-dossier) #main-screen .internal-composer-box{
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto auto!important;
  align-items:flex-end!important;
  gap:10px!important;
  padding:10px!important;
  border-radius:18px!important;
  border:1px solid rgba(203,213,225,.95)!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(15,23,42,.05)!important;
}
body:not(.role-client-dossier) #main-screen #internal-body{
  min-height:44px!important;
  max-height:132px!important;
  border:none!important;
  background:transparent!important;
  box-shadow:none!important;
  padding:2px 4px!important;
  resize:none!important;
}
body:not(.role-client-dossier) #main-screen .internal-compose-icon,
body:not(.role-client-dossier) #main-screen .internal-send-btn{
  width:40px!important;
  height:40px!important;
  border:none!important;
  border-radius:14px!important;
}
body:not(.role-client-dossier) #main-screen .internal-compose-icon{
  background:#f1f5ff!important;
  color:#3457d6!important;
}
body:not(.role-client-dossier) #main-screen .internal-send-btn{
  background:linear-gradient(135deg,#2563eb,#4f46e5)!important;
  color:#fff!important;
  box-shadow:0 12px 26px rgba(59,130,246,.18)!important;
}
body:not(.role-client-dossier) #main-screen .internal-group-create{
  border:1px solid rgba(203,213,225,.95)!important;
  border-radius:18px!important;
  background:linear-gradient(180deg,#ffffff,#fbfdff)!important;
  padding:14px!important;
  box-shadow:0 12px 26px rgba(15,23,42,.05)!important;
}
body:not(.role-client-dossier) #main-screen .internal-group-create-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  margin-bottom:10px!important;
}
body:not(.role-client-dossier) #main-screen .internal-members-picker{
  display:grid!important;
  gap:8px!important;
  margin:10px 0!important;
}
body:not(.role-client-dossier) #main-screen .internal-member-check{
  display:grid!important;
  grid-template-columns:auto 1fr auto!important;
  align-items:center!important;
  gap:8px!important;
  padding:9px 10px!important;
  border:1px solid rgba(226,232,240,.9)!important;
  border-radius:14px!important;
  background:#fff!important;
}
@media(max-width:1180px){
  body:not(.role-client-dossier) #main-screen .internal-workspace{
    grid-template-columns:1fr!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-contacts-panel,
  body:not(.role-client-dossier) #main-screen .internal-thread-panel,
  body:not(.role-client-dossier) #main-screen .internal-thread-shell{
    min-height:auto!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-thread-body{
    max-height:60vh!important;
  }
}
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen .internal-hero{
    padding:14px!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-hero-actions{
    width:100%!important;
    justify-content:stretch!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-action-btn{
    flex:1 1 calc(50% - 6px)!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-hero-metric{
    min-width:92px!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-bubble{
    max-width:88%!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-thread-head{
    padding:14px!important;
  }
}


/* ============================================================================
   AZALYS v17.28 — Refonte disposition messages clients cabinet
   ============================================================================ */
body:not(.role-client-dossier) #main-screen .cabinet-inbox-workspace-v3{
  grid-template-columns:minmax(300px,330px) minmax(0,1fr) 270px!important;
  align-items:stretch!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-panel,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-panel{
  border-radius:24px!important;
  min-height:calc(100vh - 305px)!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-panel{
  display:flex!important;
  flex-direction:column!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:12px!important;
  padding:18px 18px 14px!important;
  border-bottom:1px solid rgba(226,232,240,.9)!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-head h4{
  margin:2px 0 4px!important;
  color:#0f244a!important;
  font-size:18px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list{
  flex:1!important;
  min-height:0!important;
  overflow:auto!important;
  padding:12px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  background:linear-gradient(180deg,#fbfdff 0%,#f4f8ff 100%)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-item{
  width:100%!important;
  display:grid!important;
  grid-template-columns:48px minmax(0,1fr) auto!important;
  align-items:flex-start!important;
  gap:10px!important;
  padding:12px!important;
  border-radius:18px!important;
  border:1px solid rgba(203,213,225,.95)!important;
  background:#fff!important;
  text-align:left!important;
  box-shadow:0 10px 24px rgba(15,23,42,.04)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-item:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 14px 28px rgba(37,99,235,.08)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-item.active{
  border-color:#bfdbfe!important;
  background:linear-gradient(180deg,#ffffff,#eff6ff)!important;
  box-shadow:0 18px 32px rgba(37,99,235,.12)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-item.has-unread{
  border-left:4px solid #2563eb!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-avatar,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-avatar{
  width:48px!important;
  height:48px!important;
  border-radius:16px!important;
  display:grid!important;
  place-items:center!important;
  font-weight:900!important;
  color:#1e3a8a!important;
  background:linear-gradient(135deg,#dbeafe,#bfdbfe)!important;
  border:1px solid #cfe0ff!important;
  box-shadow:0 10px 24px rgba(37,99,235,.10)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-main{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-top{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:8px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-top strong{
  color:#10264b!important;
  font-size:14px!important;
  line-height:1.25!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-top small,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-stats,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-main p{
  color:#6a7e93!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-main p{
  margin:0!important;
  font-size:12.5px!important;
  line-height:1.45!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-panel{
  display:flex!important;
  flex-direction:column!important;
  padding:0!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-shell{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  min-height:calc(100vh - 305px)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:14px!important;
  padding:18px 20px!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
  border-bottom:1px solid rgba(226,232,240,.9)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-title{
  display:flex!important;
  gap:12px!important;
  align-items:flex-start!important;
  flex:1!important;
  min-width:0!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-title h3{
  margin:2px 0 4px!important;
  font-size:22px!important;
  line-height:1.15!important;
  color:#0f244a!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-actions{
  display:flex!important;
  align-items:center!important;
  gap:10px!important;
  flex-wrap:wrap!important;
  justify-content:flex-end!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
  min-height:0!important;
  overflow:auto!important;
  padding:18px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:12px!important;
  background:radial-gradient(circle at 50% 0%, rgba(37,99,235,.05), transparent 34%),linear-gradient(180deg,#fbfdff 0%,#f5f9ff 100%)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-line{
  display:flex!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-client{justify-content:flex-start!important;}
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet{justify-content:flex-end!important;}
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.is-unread .cabinet-chat-bubble{
  border-left:4px solid #2563eb!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble{
  max-width:min(74%, 680px)!important;
  padding:12px 14px!important;
  border-radius:18px!important;
  box-shadow:0 10px 26px rgba(15,23,42,.06)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-client .cabinet-chat-bubble{
  background:#ffffff!important;
  border:1px solid rgba(226,232,240,.95)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble{
  background:linear-gradient(135deg,#2563eb,#4f46e5)!important;
  border:1px solid rgba(59,130,246,.28)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble,
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble b,
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble strong,
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble span,
body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble p{
  color:#fff!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
  margin-bottom:6px!important;
  font-size:11.5px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble strong{
  display:block!important;
  margin-bottom:5px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble p{
  margin:0!important;
  line-height:1.5!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose{
  display:grid!important;
  gap:10px!important;
  padding:16px 18px 18px!important;
  border-top:1px solid rgba(226,232,240,.9)!important;
  background:linear-gradient(180deg,rgba(255,255,255,.92),#ffffff)!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose textarea{
  min-height:86px!important;
  border-radius:16px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-priority-empty{
  margin-top:10px!important;
  padding:10px 12px!important;
  border-radius:14px!important;
  background:#fbfdff!important;
  border:1px dashed rgba(203,213,225,.9)!important;
  color:#64748b!important;
}
@media(max-width:1280px){
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-workspace-v3{
    grid-template-columns:300px minmax(0,1fr)!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-side-v3{
    grid-column:1 / -1!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:12px!important;
  }
}
@media(max-width:980px){
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-workspace-v3{
    grid-template-columns:1fr!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-panel,
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-panel,
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-shell{
    min-height:auto!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
    max-height:60vh!important;
  }
}
@media(max-width:720px){
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-head,
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions,
  body:not(.role-client-dossier) #main-screen .cabinet-conversation-top{
    flex-direction:column!important;
    align-items:flex-start!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble{
    max-width:90%!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-inbox-side-v3{
    grid-template-columns:1fr!important;
  }
}


/* ============================================================================
   AZALYS v17.29 — Messages clients : zone de réponse toujours visible
   ============================================================================ */

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-shell{
  height:calc(100vh - 305px)!important;
  min-height:560px!important;
  max-height:calc(100vh - 230px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
  min-height:0!important;
  overflow:auto!important;
  padding-bottom:18px!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose{
  position:sticky!important;
  bottom:0!important;
  z-index:8!important;
  background:linear-gradient(180deg,rgba(255,255,255,.96),#ffffff)!important;
  border-top:1px solid rgba(203,213,225,.95)!important;
  box-shadow:0 -14px 30px rgba(15,23,42,.06)!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose::before{
  content:"Réponse au client";
  display:block;
  margin-bottom:8px;
  color:#0b2347;
  font-size:12px;
  font-weight:1000;
  letter-spacing:.08em;
  text-transform:uppercase;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose textarea{
  width:100%!important;
  min-height:72px!important;
  max-height:130px!important;
  resize:vertical!important;
  background:#fff!important;
  border:1px solid #cfe0f5!important;
  box-shadow:inset 0 1px 2px rgba(15,23,42,.03)!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose textarea:focus{
  border-color:#93c5fd!important;
  box-shadow:0 0 0 4px rgba(59,130,246,.12)!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions{
  margin-top:8px!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions .btn.primary{
  min-width:190px!important;
  min-height:44px!important;
}

/* Bouton secondaire dans l'en-tête pour descendre directement à la réponse */
body:not(.role-client-dossier) #main-screen .cabinet-reply-jump{
  border:1px solid rgba(37,99,235,.28)!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
}

/* Ancien composer caché dans les cartes héritées si jamais un vieux layout reste rendu */
body:not(.role-client-dossier) #main-screen .cabinet-thread-card .cabinet-reply-composer{
  position:sticky!important;
  bottom:0!important;
  background:#fff!important;
  border-top:1px solid rgba(203,213,225,.9)!important;
  box-shadow:0 -10px 24px rgba(15,23,42,.05)!important;
}

@media(max-width:980px){
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-shell{
    height:auto!important;
    min-height:520px!important;
    max-height:none!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
    max-height:48vh!important;
  }
}

@media(max-width:720px){
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions{
    flex-direction:column!important;
    align-items:stretch!important;
  }
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions .btn.primary{
    width:100%!important;
  }
}


/* ============================================================================
   AZALYS v17.30 — Messagerie interne : composer visible + scroll interne
   ============================================================================ */
body:not(.role-client-dossier) #main-screen .internal-workspace{
  align-items:stretch!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-panel{
  height:calc(100vh - 255px)!important;
  min-height:620px!important;
  max-height:calc(100vh - 255px)!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-shell{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-head{
  flex:0 0 auto!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-body{
  min-height:0!important;
  height:100%!important;
  overflow:auto!important;
  overscroll-behavior:contain!important;
  padding:16px 18px 20px!important;
}
body:not(.role-client-dossier) #main-screen .internal-composer{
  position:sticky!important;
  bottom:0!important;
  z-index:12!important;
  flex:0 0 auto!important;
  padding:12px 18px 16px!important;
  background:linear-gradient(180deg, rgba(255,255,255,.94), #ffffff)!important;
  box-shadow:0 -14px 30px rgba(15,23,42,.06)!important;
}
body:not(.role-client-dossier) #main-screen .internal-composer::before{
  content:'Réponse';
  display:block;
  margin-bottom:8px;
  color:#0f244a;
  font-size:11px;
  font-weight:1000;
  letter-spacing:.12em;
  text-transform:uppercase;
}
body:not(.role-client-dossier) #main-screen .internal-composer-box{
  border-radius:18px!important;
}
body:not(.role-client-dossier) #main-screen #internal-body{
  min-height:48px!important;
}
body:not(.role-client-dossier) #main-screen .internal-contacts-panel{
  height:calc(100vh - 255px)!important;
  min-height:620px!important;
  max-height:calc(100vh - 255px)!important;
}
body:not(.role-client-dossier) #main-screen .internal-contacts-list{
  overscroll-behavior:contain!important;
}
@media(max-width:1180px){
  body:not(.role-client-dossier) #main-screen .internal-thread-panel,
  body:not(.role-client-dossier) #main-screen .internal-contacts-panel{
    height:auto!important;
    min-height:560px!important;
    max-height:none!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-thread-shell{
    height:auto!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-thread-body{
    max-height:48vh!important;
  }
}
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen .internal-thread-panel,
  body:not(.role-client-dossier) #main-screen .internal-contacts-panel{
    min-height:520px!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-thread-body{
    max-height:42vh!important;
    padding:14px!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-composer{
    padding:10px 14px 14px!important;
  }
}


/* ============================================================================
   AZALYS v17.31 — messageries : hauteur ajustée + scroll réellement interne
   ============================================================================ */
body:not(.role-client-dossier) #main-screen .internal-workspace,
body:not(.role-client-dossier) #main-screen .cabinet-inbox-workspace-v3{
  align-items:stretch!important;
}

/* Messagerie interne */
body:not(.role-client-dossier) #main-screen .internal-contacts-panel,
body:not(.role-client-dossier) #main-screen .internal-thread-panel{
  height:clamp(520px, calc(var(--az-screen-vh, 100dvh) - 355px), 680px)!important;
  min-height:520px!important;
  max-height:calc(var(--az-screen-vh, 100dvh) - 355px)!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-shell{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
}
body:not(.role-client-dossier) #main-screen .internal-thread-body{
  min-height:0!important;
  overflow:auto!important;
  padding:14px 18px 10px!important;
}
body:not(.role-client-dossier) #main-screen .internal-composer{
  position:sticky!important;
  bottom:0!important;
  z-index:15!important;
  padding:10px 16px 14px!important;
}
body:not(.role-client-dossier) #main-screen .internal-composer-box{
  min-height:64px!important;
}
body:not(.role-client-dossier) #main-screen #internal-body{
  min-height:42px!important;
  max-height:120px!important;
}
body:not(.role-client-dossier) #main-screen .internal-contacts-list{
  min-height:0!important;
  overflow:auto!important;
}

/* Messages clients cabinet */
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-panel,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-panel{
  height:clamp(520px, calc(var(--az-screen-vh, 100dvh) - 355px), 690px)!important;
  min-height:520px!important;
  max-height:calc(var(--az-screen-vh, 100dvh) - 355px)!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-shell{
  height:100%!important;
  min-height:0!important;
  max-height:100%!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
  min-height:0!important;
  overflow:auto!important;
  padding:16px 18px 12px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose{
  position:sticky!important;
  bottom:0!important;
  z-index:12!important;
  padding:12px 16px 14px!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose textarea{
  min-height:76px!important;
  max-height:150px!important;
  resize:vertical!important;
}
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list{
  min-height:0!important;
  overflow:auto!important;
}
@media(max-width:1180px){
  body:not(.role-client-dossier) #main-screen .internal-contacts-panel,
  body:not(.role-client-dossier) #main-screen .internal-thread-panel,
  body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-panel,
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-panel{
    height:auto!important;
    min-height:500px!important;
    max-height:none!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-thread-body,
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
    max-height:44vh!important;
  }
}
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen .internal-thread-body,
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
    max-height:40vh!important;
    padding:12px!important;
  }
  body:not(.role-client-dossier) #main-screen .internal-composer,
  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose{
    padding:10px 12px 12px!important;
  }
}


/* ============================================================================
   AZALYS v17.33 — Polish premium final des messageries
   Messages internes + Messages clients : style pro, compact, lisible.
   ============================================================================ */

/* Base commune */
body:not(.role-client-dossier) #main-screen .internal-thread-body,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
  background:
    radial-gradient(circle at 50% 0%, rgba(37,99,235,.045), transparent 34%),
    linear-gradient(180deg,#fbfdff 0%,#f6f9fe 100%)!important;
  scrollbar-width:thin;
  scrollbar-color:#b9c8da transparent;
}

body:not(.role-client-dossier) #main-screen .internal-thread-body::-webkit-scrollbar,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body::-webkit-scrollbar,
body:not(.role-client-dossier) #main-screen .internal-contacts-list::-webkit-scrollbar,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list::-webkit-scrollbar{
  width:8px;
}

body:not(.role-client-dossier) #main-screen .internal-thread-body::-webkit-scrollbar-thumb,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body::-webkit-scrollbar-thumb,
body:not(.role-client-dossier) #main-screen .internal-contacts-list::-webkit-scrollbar-thumb,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-list::-webkit-scrollbar-thumb{
  background:#bfd0e4;
  border-radius:999px;
}

/* Header conversation */
body:not(.role-client-dossier) #main-screen .internal-thread-head,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-head{
  min-height:74px!important;
  padding:14px 18px!important;
  background:rgba(255,255,255,.96)!important;
  backdrop-filter:blur(14px)!important;
  box-shadow:0 10px 28px rgba(15,23,42,.045)!important;
}

body:not(.role-client-dossier) #main-screen .internal-thread-title h3,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-title h3{
  font-size:18px!important;
  letter-spacing:-.025em!important;
}

body:not(.role-client-dossier) #main-screen .internal-avatar,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-avatar{
  width:44px!important;
  height:44px!important;
  border-radius:15px!important;
}

/* Bulles internes */
body:not(.role-client-dossier) #main-screen .internal-bubble{
  max-width:min(68%, 620px)!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  margin-bottom:9px!important;
  position:relative!important;
}

body:not(.role-client-dossier) #main-screen .internal-bubble.theirs{
  background:#ffffff!important;
  border:1px solid rgba(220,229,240,.95)!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
}

body:not(.role-client-dossier) #main-screen .internal-bubble.mine{
  background:linear-gradient(135deg,#2563eb,#4f46e5)!important;
  border:1px solid rgba(59,130,246,.24)!important;
  box-shadow:0 12px 28px rgba(37,99,235,.18)!important;
}

body:not(.role-client-dossier) #main-screen .internal-bubble.theirs::before{
  content:"";
  position:absolute;
  left:-5px;
  top:16px;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-right:6px solid #ffffff;
}

body:not(.role-client-dossier) #main-screen .internal-bubble.mine::after{
  content:"";
  position:absolute;
  right:-5px;
  top:16px;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:6px solid #3f56e6;
}

body:not(.role-client-dossier) #main-screen .internal-bubble-meta{
  margin-bottom:5px!important;
  gap:7px!important;
  opacity:.92!important;
}

body:not(.role-client-dossier) #main-screen .internal-bubble p{
  font-size:13px!important;
  line-height:1.48!important;
}

/* Bulles messages clients */
body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble{
  max-width:min(68%, 620px)!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  position:relative!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-client .cabinet-chat-bubble{
  background:#ffffff!important;
  border:1px solid rgba(220,229,240,.95)!important;
  box-shadow:0 8px 22px rgba(15,23,42,.045)!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble{
  background:linear-gradient(135deg,#2563eb,#4f46e5)!important;
  box-shadow:0 12px 28px rgba(37,99,235,.18)!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-client .cabinet-chat-bubble::before{
  content:"";
  position:absolute;
  left:-5px;
  top:16px;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-right:6px solid #ffffff;
}

body:not(.role-client-dossier) #main-screen .cabinet-chat-line.from-cabinet .cabinet-chat-bubble::after{
  content:"";
  position:absolute;
  right:-5px;
  top:16px;
  border-top:6px solid transparent;
  border-bottom:6px solid transparent;
  border-left:6px solid #3f56e6;
}

body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble strong{
  font-size:13.2px!important;
  margin-bottom:4px!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble p{
  font-size:13px!important;
  line-height:1.48!important;
}

/* Date divider */
body:not(.role-client-dossier) #main-screen .internal-date-divider{
  margin:4px 0 12px!important;
}

body:not(.role-client-dossier) #main-screen .internal-date-divider span{
  background:rgba(255,255,255,.92)!important;
  color:#64748b!important;
  font-size:10.5px!important;
  font-weight:850!important;
  box-shadow:0 8px 18px rgba(15,23,42,.04)!important;
}

/* Composer commun */
body:not(.role-client-dossier) #main-screen .internal-composer,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose{
  background:
    linear-gradient(180deg,rgba(255,255,255,.96),#ffffff)!important;
  box-shadow:0 -16px 34px rgba(15,23,42,.07)!important;
  border-top:1px solid rgba(203,213,225,.9)!important;
}

body:not(.role-client-dossier) #main-screen .internal-composer::before,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose::before{
  font-size:10.5px!important;
  letter-spacing:.13em!important;
  color:#64748b!important;
  margin-bottom:6px!important;
}

body:not(.role-client-dossier) #main-screen .internal-composer-box{
  grid-template-columns:minmax(0,1fr) 40px 42px!important;
  gap:8px!important;
  padding:8px!important;
  min-height:58px!important;
  border-radius:18px!important;
  border:1px solid #cfe0f5!important;
  background:#ffffff!important;
}

body:not(.role-client-dossier) #main-screen #internal-body{
  font-size:13px!important;
  line-height:1.45!important;
  padding:6px 8px!important;
  min-height:38px!important;
}

body:not(.role-client-dossier) #main-screen .internal-compose-icon,
body:not(.role-client-dossier) #main-screen .internal-send-btn{
  width:38px!important;
  height:38px!important;
  border-radius:14px!important;
}

body:not(.role-client-dossier) #main-screen .internal-send-btn{
  background:linear-gradient(135deg,#2563eb,#4f46e5)!important;
  box-shadow:0 10px 22px rgba(37,99,235,.18)!important;
}

body:not(.role-client-dossier) #main-screen .internal-send-btn:hover,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions .btn.primary:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 14px 28px rgba(37,99,235,.22)!important;
}

/* Composer client/cabinet */
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose{
  display:grid!important;
  gap:8px!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose textarea{
  min-height:70px!important;
  max-height:132px!important;
  font-size:13px!important;
  line-height:1.45!important;
  border-radius:17px!important;
  padding:10px 12px!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions{
  margin-top:2px!important;
  gap:10px!important;
}

body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions .btn.primary{
  min-height:42px!important;
  border-radius:14px!important;
  background:linear-gradient(135deg,#2563eb,#4f46e5)!important;
}

/* Liste conversations */
body:not(.role-client-dossier) #main-screen .internal-contact,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-item{
  border-radius:18px!important;
  padding:10px!important;
}

body:not(.role-client-dossier) #main-screen .internal-contact.active,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-item.active{
  background:linear-gradient(180deg,#ffffff,#eff6ff)!important;
  border-color:#bfdbfe!important;
  box-shadow:0 12px 28px rgba(37,99,235,.10)!important;
}

body:not(.role-client-dossier) #main-screen .internal-contact-avatar,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-avatar{
  width:42px!important;
  height:42px!important;
  border-radius:15px!important;
}

body:not(.role-client-dossier) #main-screen .internal-contact-main strong,
body:not(.role-client-dossier) #main-screen .cabinet-conversation-top strong{
  font-size:13.5px!important;
}

/* Petite indication en bas de la conversation */
body:not(.role-client-dossier) #main-screen .internal-thread-body::after,
body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body::after{
  content:"";
  display:block;
  height:4px;
}

/* Responsive */
@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen .internal-bubble,
  body:not(.role-client-dossier) #main-screen .cabinet-chat-bubble{
    max-width:88%!important;
  }

  body:not(.role-client-dossier) #main-screen .internal-composer-box{
    grid-template-columns:minmax(0,1fr) 38px 40px!important;
  }

  body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose-actions .muted{
    display:none!important;
  }
}


/* ============================================================================
   AZALYS v17.34 — Pièces à traiter : visualiser / télécharger / archiver
   ============================================================================ */

body:not(.role-client-dossier) #main-screen .doc-inbox-archive{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:7px!important;
  margin-top:10px!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-archive span{
  display:inline-flex!important;
  align-items:center!important;
  gap:5px!important;
  min-height:26px!important;
  padding:5px 9px!important;
  border-radius:999px!important;
  border:1px solid #d8e5f8!important;
  background:#f7fbff!important;
  color:#425b78!important;
  font-size:11.5px!important;
  font-weight:850!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:flex-start!important;
  justify-content:flex-end!important;
}

body:not(.role-client-dossier) #main-screen .doc-preview-btn{
  border-color:#bfdbfe!important;
  background:#eff6ff!important;
  color:#1d4ed8!important;
}

body:not(.role-client-dossier) #main-screen .docs-inbox-hero::after{
  content:"Archive officielle = serveur AZALYS · téléchargement local = simple copie";
  display:block;
  margin-top:10px;
  max-width:max-content;
  padding:7px 10px;
  border-radius:999px;
  border:1px solid #d8e5f8;
  background:#ffffff;
  color:#425b78;
  font-size:12px;
  font-weight:900;
}

@media(max-width:900px){
  body:not(.role-client-dossier) #main-screen .doc-inbox-actions{
    justify-content:flex-start!important;
  }
}


/* ============================================================================
   AZALYS v17.35 — Pièces à traiter : affichage compact 1 à 2 lignes
   ============================================================================ */

body:not(.role-client-dossier) #main-screen .docs-inbox-hero::after{
  display:none!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-row-compact{
  display:grid!important;
  grid-template-columns:42px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:10px!important;
  padding:10px 12px!important;
  border-radius:18px!important;
  min-height:76px!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-row-compact .doc-inbox-icon{
  width:42px!important;
  height:42px!important;
  border-radius:14px!important;
  display:grid!important;
  place-items:center!important;
  font-size:20px!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-row-compact .doc-inbox-main{
  min-width:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:4px!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-line-primary{
  display:flex!important;
  align-items:center!important;
  gap:8px!important;
  min-width:0!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-line-primary strong{
  min-width:0!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  color:#0f244a!important;
  font-size:14px!important;
  line-height:1.25!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-line-primary .badge{
  flex:0 0 auto!important;
  font-size:10.5px!important;
  padding:4px 8px!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-line-secondary{
  display:flex!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:5px 8px!important;
  color:#64748b!important;
  font-size:11.5px!important;
  line-height:1.25!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-line-secondary span{
  display:inline-flex!important;
  align-items:center!important;
  gap:4px!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-line-secondary span:not(:last-child)::after{
  content:"·";
  margin-left:8px;
  color:#cbd5e1;
}

body:not(.role-client-dossier) #main-screen .doc-archive-mini{
  color:#2563eb!important;
  font-weight:850!important;
}

body:not(.role-client-dossier) #main-screen .doc-ai-flow.compact{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
  margin-top:1px!important;
}

body:not(.role-client-dossier) #main-screen .doc-ai-flow.compact span{
  min-height:22px!important;
  padding:3px 7px!important;
  font-size:10.5px!important;
  border-radius:999px!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-comment.compact,
body:not(.role-client-dossier) #main-screen .doc-inbox-note.compact{
  margin:2px 0 0!important;
  font-size:11.5px!important;
  line-height:1.35!important;
  max-height:34px!important;
  overflow:hidden!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-actions-compact{
  display:flex!important;
  flex-wrap:nowrap!important;
  gap:6px!important;
  justify-content:flex-end!important;
  align-items:center!important;
  min-width:max-content!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-actions-compact .btn{
  min-height:30px!important;
  height:30px!important;
  padding:5px 8px!important;
  border-radius:10px!important;
  font-size:11.5px!important;
  white-space:nowrap!important;
}

body:not(.role-client-dossier) #main-screen .doc-inbox-archive{
  display:none!important;
}

@media(max-width:980px){
  body:not(.role-client-dossier) #main-screen .doc-inbox-row-compact{
    grid-template-columns:38px minmax(0,1fr)!important;
  }
  body:not(.role-client-dossier) #main-screen .doc-inbox-actions-compact{
    grid-column:2!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    margin-top:3px!important;
  }
}

@media(max-width:640px){
  body:not(.role-client-dossier) #main-screen .doc-inbox-line-primary{
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:4px!important;
  }
  body:not(.role-client-dossier) #main-screen .doc-inbox-line-primary strong{
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
  }
}


/* ============================================================================
   AZALYS v17.36 — Pièces à traiter : sélection + aperçu à droite + relais AI
   ============================================================================ */
body:not(.role-client-dossier) #main-screen .docs-inbox-workspace-preview{
  display:grid!important;
  grid-template-columns:230px minmax(420px,1fr) minmax(340px,430px)!important;
  gap:12px!important;
  align-items:stretch!important;
}
body:not(.role-client-dossier) #main-screen .docs-inbox-list-compact{
  min-height:calc(100vh - 330px)!important;
  max-height:calc(100vh - 300px)!important;
  overflow:auto!important;
  padding:14px!important;
}
body:not(.role-client-dossier) #main-screen .doc-selectable{
  cursor:pointer!important;
  border:1px solid rgba(203,213,225,.88)!important;
  transition:transform .15s ease, box-shadow .15s ease, border-color .15s ease, background .15s ease!important;
}
body:not(.role-client-dossier) #main-screen .doc-selectable:hover,
body:not(.role-client-dossier) #main-screen .doc-selectable:focus{
  transform:translateY(-1px)!important;
  border-color:#bfdbfe!important;
  box-shadow:0 12px 26px rgba(37,99,235,.09)!important;
  outline:none!important;
}
body:not(.role-client-dossier) #main-screen .doc-selectable.selected{
  border-color:#60a5fa!important;
  background:linear-gradient(180deg,#fff,#eff6ff)!important;
  box-shadow:0 16px 30px rgba(37,99,235,.14)!important;
}
body:not(.role-client-dossier) #main-screen .doc-route-mini{
  margin-top:2px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-panel{
  position:sticky!important;
  top:14px!important;
  height:calc(100vh - 235px)!important;
  min-height:560px!important;
  max-height:calc(100vh - 235px)!important;
  display:grid!important;
  grid-template-rows:auto minmax(230px,1fr) auto auto auto!important;
  gap:10px!important;
  padding:14px!important;
  overflow:hidden!important;
  border-radius:24px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-head{
  display:flex!important;
  align-items:flex-start!important;
  justify-content:space-between!important;
  gap:10px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-head h3{
  margin:2px 0 4px!important;
  color:#0f244a!important;
  font-size:16px!important;
  line-height:1.18!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-frame{
  min-height:0!important;
  overflow:hidden!important;
  border-radius:18px!important;
  border:1px solid #dbe7f6!important;
  background:#f8fbff!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-frame iframe{
  width:100%!important;
  height:100%!important;
  border:0!important;
  background:#fff!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-placeholder{
  height:100%!important;
  display:grid!important;
  place-items:center!important;
  align-content:center!important;
  gap:8px!important;
  color:#64748b!important;
  text-align:center!important;
  padding:18px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-meta{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:6px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-meta span,
body:not(.role-client-dossier) #main-screen .doc-preview-route{
  border:1px solid #d8e5f8!important;
  background:#f8fbff!important;
  color:#425b78!important;
  border-radius:14px!important;
  padding:6px 9px!important;
  font-size:11.5px!important;
  font-weight:800!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-route{
  display:grid!important;
  gap:4px!important;
  line-height:1.35!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-route strong{
  color:#0f244a!important;
  font-size:13px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-actions{
  display:flex!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  align-items:center!important;
  justify-content:flex-end!important;
  border-top:1px solid rgba(226,232,240,.9)!important;
  padding-top:10px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-actions .btn{
  min-height:34px!important;
  border-radius:12px!important;
}
body:not(.role-client-dossier) #main-screen .doc-preview-panel.bank{border-color:#bfdbfe!important;}
body:not(.role-client-dossier) #main-screen .doc-preview-panel.purchase{border-color:#c7d2fe!important;}
body:not(.role-client-dossier) #main-screen .doc-preview-panel.sales{border-color:#bbf7d0!important;}
@media(max-width:1280px){
  body:not(.role-client-dossier) #main-screen .docs-inbox-workspace-preview{
    grid-template-columns:220px minmax(0,1fr)!important;
  }
  body:not(.role-client-dossier) #main-screen .doc-preview-panel{
    grid-column:1 / -1!important;
    position:relative!important;
    top:auto!important;
    height:620px!important;
    max-height:none!important;
  }
}
@media(max-width:860px){
  body:not(.role-client-dossier) #main-screen .docs-inbox-workspace-preview{
    grid-template-columns:1fr!important;
  }
  body:not(.role-client-dossier) #main-screen .docs-inbox-list-compact{
    max-height:none!important;
  }
}


/* ============================================================================
   AZALYS v17.37 — Pièces envoyées : file En traitement
   ============================================================================ */
body:not(.role-client-dossier) #main-screen .badge.purple,
.badge.purple{
  background:#f3e8ff!important;
  color:#7e22ce!important;
  border-color:#d8b4fe!important;
}

body:not(.role-client-dossier) #main-screen .doc-preview-panel.sent-process{
  border-color:#d8b4fe!important;
  box-shadow:0 20px 46px rgba(126,34,206,.10)!important;
}

body:not(.role-client-dossier) #main-screen .doc-preview-panel.sent-process .doc-preview-route{
  background:linear-gradient(180deg,#faf5ff,#f3e8ff)!important;
  border-color:#d8b4fe!important;
}

body:not(.role-client-dossier) #main-screen .docs-filter[data-doc-filter="processing"].active{
  border-color:#d8b4fe!important;
  background:linear-gradient(180deg,#ffffff,#faf5ff)!important;
}

body:not(.role-client-dossier) #main-screen .doc-route-mini span{
  white-space:nowrap!important;
}


/* ============================================================================
   AZALYS v17.40 — AI Pilotage flottant minimaliste lisible
   ============================================================================ */

.ai-floating-panel{
  width:min(360px,calc(100vw - 20px))!important;
  max-height:min(620px,calc(100vh - 96px))!important;
  border-radius:22px!important;
}
.ai-floating-head{padding:10px 12px!important;min-height:58px!important;}
.ai-avatar{width:36px!important;height:36px!important;border-radius:13px!important;}
.ai-head-left strong{font-size:13.5px!important;line-height:1.15!important;}
.ai-head-left span{font-size:10.5px!important;line-height:1.25!important;}
.ai-head-actions .icon-btn{width:32px!important;height:32px!important;border-radius:12px!important;}

.ai-floating-context{
  display:flex!important;
  align-items:center!important;
  gap:6px!important;
  padding:7px 10px!important;
  min-height:0!important;
  max-height:44px!important;
  overflow:hidden!important;
  border-bottom:1px solid #e2e8f0!important;
}
.ai-context-chip{
  flex:0 0 auto!important;
  min-width:auto!important;
  padding:5px 8px!important;
  border-radius:999px!important;
}
.ai-context-chip strong{
  display:inline!important;
  font-size:12px!important;
  margin-right:3px!important;
}
.ai-context-chip span{
  display:inline!important;
  font-size:9px!important;
  margin:0!important;
}
.ai-agent-strip{
  flex:1 1 auto!important;
  display:flex!important;
  gap:6px!important;
  min-width:0!important;
  overflow:auto!important;
  padding:0!important;
  scrollbar-width:none!important;
}
.ai-agent-strip::-webkit-scrollbar{display:none!important;}
.ai-agent-chip{
  flex:0 0 auto!important;
  padding:5px 8px!important;
  border-radius:999px!important;
  min-height:28px!important;
  box-shadow:none!important;
}
.ai-agent-chip span{font-size:13px!important;}
.ai-agent-chip strong{font-size:10.5px!important;white-space:nowrap!important;}

.ai-floating-chat{
  flex:1 1 auto!important;
  min-height:260px!important;
  max-height:none!important;
  padding:10px!important;
  overflow:auto!important;
  background:linear-gradient(180deg,#ffffff,#f8fbff)!important;
}
.ai-welcome-card{
  padding:12px 13px!important;
  border-radius:16px!important;
  border-style:solid!important;
}
.ai-welcome-card strong{font-size:13.5px!important;}
.ai-welcome-card p{font-size:12.5px!important;line-height:1.45!important;margin:5px 0 0!important;}
.ai-float-msg{
  max-width:96%!important;
  padding:10px 12px!important;
  border-radius:15px!important;
  font-size:13px!important;
  line-height:1.55!important;
  margin-bottom:8px!important;
}

.ai-floating-quick{
  display:grid!important;
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:6px!important;
  padding:8px 10px!important;
  max-height:48px!important;
  overflow:hidden!important;
  border-top:1px solid #e2e8f0!important;
}
.ai-floating-quick .btn{
  min-height:32px!important;
  padding:6px 5px!important;
  border-radius:11px!important;
  font-size:10.5px!important;
  line-height:1!important;
}
.ai-floating-quick #ai-supervise-current,
.ai-floating-quick #ai-audit-current{
  display:none!important;
}

.ai-floating-compose{
  grid-template-columns:minmax(0,1fr) 82px!important;
  padding:8px 10px!important;
  gap:7px!important;
}
.ai-floating-compose textarea{
  min-height:42px!important;
  max-height:82px!important;
  border-radius:13px!important;
  font-size:12.5px!important;
}
.ai-floating-compose .btn{
  min-height:42px!important;
  border-radius:13px!important;
  font-size:12px!important;
  padding:0 8px!important;
}
.ai-floating-note{display:none!important;}

@media(max-width:720px){
  .ai-floating{right:12px!important;bottom:12px!important;}
  .ai-floating-panel{
    left:8px!important;
    right:8px!important;
    top:8px!important;
    bottom:78px!important;
    width:auto!important;
    max-height:none!important;
    height:auto!important;
    border-radius:20px!important;
  }
  .ai-floating-head{padding:9px 10px!important;min-height:52px!important;}
  .ai-avatar{width:32px!important;height:32px!important;border-radius:12px!important;}
  .ai-head-left strong{font-size:13px!important;}
  .ai-head-left span{font-size:10px!important;}
  .ai-head-actions .icon-btn{width:30px!important;height:30px!important;}
  .ai-floating-context{padding:6px 8px!important;max-height:36px!important;}
  .ai-context-chip{display:none!important;}
  .ai-agent-strip{width:100%!important;}
  .ai-agent-chip{padding:5px 8px!important;min-height:26px!important;}
  .ai-agent-chip strong{font-size:10px!important;}
  .ai-floating-chat{min-height:0!important;flex:1 1 auto!important;padding:9px!important;}
  .ai-welcome-card{padding:11px 12px!important;}
  .ai-welcome-card p{font-size:12px!important;}
  .ai-floating-quick{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
    max-height:42px!important;
    padding:6px 8px!important;
    gap:5px!important;
  }
  .ai-floating-quick .btn{min-height:30px!important;padding:5px 3px!important;font-size:10px!important;}
  .ai-floating-compose{grid-template-columns:minmax(0,1fr) 76px!important;padding:8px!important;}
  .ai-floating-compose textarea{min-height:40px!important;max-height:72px!important;}
  .ai-floating-compose .btn{min-height:40px!important;}
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-premium.css */

/* AZALYS_BUNDLE_SOURCE 10/29: floating-icons-premium.css | sha256=b01a9db9904de40c08f0d87aabc3d7c454808bb541f57a6feb8d65673aca80c6 */
/* ============================================================================
   AZALYS v17.41 — Icônes flottantes premium : Messages + Robot AI sans texte
   ============================================================================ */

:root{
  --az-icon-blue:#2563eb;
  --az-icon-cyan:#22d3ee;
  --az-icon-violet:#7c3aed;
  --az-icon-indigo:#4f46e5;
}

/* --------------------------------------------------------------------------
   Icône Messages — bulle glassmorphism + enveloppe
   -------------------------------------------------------------------------- */
.client-chat-btn,
.cabinet-chat-btn{
  width:62px!important;
  height:62px!important;
  min-width:62px!important;
  padding:0!important;
  border:0!important;
  border-radius:24px!important;
  display:grid!important;
  place-items:center!important;
  overflow:visible!important;
  background:
    radial-gradient(circle at 22% 18%,rgba(34,211,238,.42),transparent 33%),
    linear-gradient(135deg,#0891b2 0%,#2563eb 54%,#4f46e5 100%)!important;
  box-shadow:
    0 20px 48px rgba(37,99,235,.34),
    0 7px 18px rgba(14,165,233,.18),
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -16px 32px rgba(49,46,129,.18)!important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease!important;
}
.client-chat-btn:hover,
.cabinet-chat-btn:hover{
  transform:translateY(-3px) scale(1.025)!important;
  box-shadow:
    0 26px 62px rgba(37,99,235,.44),
    0 10px 24px rgba(34,211,238,.20),
    inset 0 1px 0 rgba(255,255,255,.40),
    inset 0 -16px 34px rgba(49,46,129,.20)!important;
}
.client-chat-glow,
.cabinet-chat-glow{
  position:absolute!important;
  inset:-11px!important;
  z-index:-1!important;
  border-radius:32px!important;
  background:radial-gradient(circle,rgba(34,211,238,.34),rgba(79,70,229,.18) 48%,transparent 72%)!important;
  filter:blur(10px)!important;
  pointer-events:none!important;
}
.client-chat-face,
.cabinet-chat-face{
  position:relative!important;
  width:42px!important;
  height:34px!important;
  border-radius:17px!important;
  display:block!important;
  font-size:0!important;
  line-height:0!important;
  overflow:visible!important;
  background:
    linear-gradient(90deg,rgba(210,250,255,.88),rgba(210,250,255,.88)) 8px 10px/12px 3px no-repeat,
    linear-gradient(90deg,rgba(210,250,255,.78),rgba(210,250,255,.78)) 8px 17px/11px 3px no-repeat,
    linear-gradient(90deg,rgba(210,250,255,.68),rgba(210,250,255,.68)) 8px 24px/10px 3px no-repeat,
    linear-gradient(145deg,rgba(255,255,255,.28),rgba(255,255,255,.08) 58%,rgba(59,130,246,.10))!important;
  border:1px solid rgba(224,242,254,.72)!important;
  box-shadow:
    0 0 0 1px rgba(255,255,255,.18) inset,
    0 0 20px rgba(34,211,238,.34),
    0 11px 22px rgba(15,23,42,.15)!important;
  backdrop-filter:blur(8px)!important;
}
.client-chat-face::before,
.cabinet-chat-face::before{
  content:"";
  position:absolute;
  left:7px;
  bottom:-6px;
  width:13px;
  height:13px;
  border-radius:0 0 0 4px;
  transform:rotate(45deg);
  background:linear-gradient(135deg,rgba(226,251,255,.28),rgba(34,211,238,.20));
  border-left:1px solid rgba(224,242,254,.62);
  border-bottom:1px solid rgba(224,242,254,.62);
  box-shadow:0 0 14px rgba(34,211,238,.26);
}
.client-chat-face::after,
.cabinet-chat-face::after{
  content:"";
  position:absolute;
  right:7px;
  top:10px;
  width:17px;
  height:13px;
  border-radius:4px;
  background:
    linear-gradient(135deg,transparent 46%,rgba(147,197,253,.95) 48%,rgba(147,197,253,.95) 52%,transparent 54%),
    linear-gradient(225deg,transparent 46%,rgba(147,197,253,.95) 48%,rgba(147,197,253,.95) 52%,transparent 54%),
    linear-gradient(180deg,#ffffff,#eaf5ff);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.72) inset,
    0 6px 15px rgba(15,23,42,.16),
    0 0 18px rgba(255,255,255,.34);
}
.client-chat-text,
.cabinet-chat-text{display:none!important;}
.client-chat-badge,
.cabinet-chat-badge{
  right:-7px!important;
  top:-8px!important;
  min-width:24px!important;
  height:24px!important;
  padding:0 6px!important;
  border-radius:999px!important;
  border:3px solid #fff!important;
  background:linear-gradient(135deg,#ef4444,#f97316)!important;
  color:#fff!important;
  font-size:11px!important;
  font-weight:1000!important;
  box-shadow:0 11px 26px rgba(239,68,68,.42)!important;
}
.client-chat-btn::after,
.cabinet-chat-btn::after{
  content:"Messages"!important;
  right:72px!important;
  background:rgba(8,23,52,.91)!important;
}
.client-chat-floating.has-unread .client-chat-btn,
.cabinet-chat-floating.has-unread .cabinet-chat-btn{
  animation:clientUnreadPulse 1.45s ease-in-out infinite!important;
}
.client-chat-floating.has-unread .client-chat-glow,
.cabinet-chat-floating.has-unread .cabinet-chat-glow{
  background:radial-gradient(circle,rgba(239,68,68,.36),rgba(37,99,235,.22) 50%,transparent 74%)!important;
}
.client-chat-avatar,
.cabinet-chat-avatar{
  position:relative!important;
  width:38px!important;
  height:38px!important;
  min-width:38px!important;
  padding:0!important;
  border-radius:15px!important;
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  color:transparent!important;
  background:linear-gradient(135deg,#e0faff,#eef2ff)!important;
  border:1px solid rgba(191,219,254,.78)!important;
  box-shadow:0 10px 24px rgba(37,99,235,.13)!important;
}
.client-chat-avatar::before,
.cabinet-chat-avatar::before{
  content:"";
  width:27px;
  height:22px;
  border-radius:11px;
  background:
    linear-gradient(90deg,#60a5fa,#60a5fa) 6px 7px/7px 2px no-repeat,
    linear-gradient(90deg,#60a5fa,#60a5fa) 6px 12px/7px 2px no-repeat,
    linear-gradient(135deg,transparent 45%,#93c5fd 47%,#93c5fd 52%,transparent 54%) 15px 7px/10px 8px no-repeat,
    linear-gradient(225deg,transparent 45%,#93c5fd 47%,#93c5fd 52%,transparent 54%) 15px 7px/10px 8px no-repeat,
    linear-gradient(135deg,rgba(255,255,255,.92),rgba(219,234,254,.74));
  border:1px solid rgba(125,211,252,.55);
  box-shadow:0 0 16px rgba(34,211,238,.20);
}

/* --------------------------------------------------------------------------
   Icône Robot AI — sans lettres AI, robot centré dans le bouton
   -------------------------------------------------------------------------- */
.ai-robot-btn{
  width:88px!important;
  min-width:88px!important;
  height:62px!important;
  padding:0!important;
  border:0!important;
  border-radius:26px!important;
  display:grid!important;
  place-items:center!important;
  gap:0!important;
  overflow:visible!important;
  background:
    radial-gradient(circle at 24% 22%,rgba(34,211,238,.30),transparent 32%),
    linear-gradient(135deg,#2563eb 0%,#3b82f6 42%,#7c3aed 100%)!important;
  box-shadow:
    0 20px 50px rgba(79,70,229,.36),
    0 7px 18px rgba(37,99,235,.18),
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -18px 36px rgba(76,29,149,.20)!important;
  color:transparent!important;
}
.ai-robot-btn:hover{
  transform:translateY(-3px) scale(1.03)!important;
  box-shadow:
    0 28px 64px rgba(79,70,229,.46),
    0 9px 23px rgba(34,211,238,.18),
    inset 0 1px 0 rgba(255,255,255,.42),
    inset 0 -18px 36px rgba(76,29,149,.22)!important;
}
.ai-robot-glow{
  position:absolute!important;
  inset:-12px!important;
  border-radius:34px!important;
  background:radial-gradient(circle,rgba(34,211,238,.28),rgba(124,58,237,.22) 46%,transparent 74%)!important;
  filter:blur(10px)!important;
  pointer-events:none!important;
}
.ai-robot-text{display:none!important;}
.ai-robot-face{
  position:relative!important;
  width:60px!important;
  height:52px!important;
  display:block!important;
  font-size:0!important;
  line-height:0!important;
  filter:drop-shadow(0 12px 18px rgba(15,23,42,.22))!important;
}
.ai-robot-face::after{
  content:"";
  position:absolute;
  inset:1px 0;
  z-index:0;
  border-radius:999px;
  opacity:.98;
  background:
    radial-gradient(circle at 50% 0%,#bffcff 0 4px,transparent 4.8px),
    radial-gradient(circle at 50% 100%,#bffcff 0 4px,transparent 4.8px),
    radial-gradient(circle at 0% 50%,#bffcff 0 4px,transparent 4.8px),
    radial-gradient(circle at 100% 50%,#bffcff 0 4px,transparent 4.8px),
    linear-gradient(to bottom,transparent 0 4px,rgba(125,249,255,.74) 4px 17px,transparent 17px) 50% 0/2px 22px no-repeat,
    linear-gradient(to top,transparent 0 4px,rgba(125,249,255,.68) 4px 17px,transparent 17px) 50% 100%/2px 22px no-repeat,
    linear-gradient(to right,transparent 0 4px,rgba(125,249,255,.70) 4px 19px,transparent 19px) 0 50%/24px 2px no-repeat,
    linear-gradient(to left,transparent 0 4px,rgba(125,249,255,.70) 4px 19px,transparent 19px) 100% 50%/24px 2px no-repeat,
    radial-gradient(circle,rgba(191,247,255,.30) 0 43%,rgba(191,247,255,.11) 45%,transparent 69%);
  box-shadow:0 0 22px rgba(34,211,238,.34);
}
.ai-robot-face::before{
  content:"";
  position:absolute;
  z-index:1;
  left:50%;
  top:50%;
  width:43px;
  height:29px;
  transform:translate(-50%,-50%);
  border-radius:18px;
  border:4px solid rgba(224,250,255,.94);
  background:
    radial-gradient(circle at 34% 50%,#7df9ff 0 4px,transparent 4.8px),
    radial-gradient(circle at 66% 50%,#7df9ff 0 4px,transparent 4.8px),
    linear-gradient(180deg,#1e1b75 0%,#24116a 100%);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.22) inset,
    0 0 18px rgba(191,247,255,.46),
    0 9px 18px rgba(30,27,117,.34);
}
.ai-robot-badge{
  top:-7px!important;
  right:-7px!important;
  z-index:3!important;
}
.ai-robot-btn.thinking .ai-robot-face{
  animation:aiBotThinking .78s ease-in-out infinite!important;
}
.ai-avatar{
  position:relative!important;
  width:36px!important;
  height:36px!important;
  min-width:36px!important;
  padding:0!important;
  border-radius:14px!important;
  display:grid!important;
  place-items:center!important;
  font-size:0!important;
  color:transparent!important;
  background:linear-gradient(135deg,#eef8ff,#f3ecff)!important;
  box-shadow:0 10px 24px rgba(37,99,235,.13)!important;
}
.ai-avatar::before{
  content:"";
  width:28px;
  height:25px;
  border-radius:999px;
  background:
    radial-gradient(circle at 50% 0%,#67e8f9 0 2px,transparent 2.6px),
    radial-gradient(circle at 50% 100%,#67e8f9 0 2px,transparent 2.6px),
    linear-gradient(to bottom,rgba(103,232,249,.65),rgba(103,232,249,.65)) 50% 0/1.5px 8px no-repeat,
    linear-gradient(to top,rgba(103,232,249,.55),rgba(103,232,249,.55)) 50% 100%/1.5px 8px no-repeat,
    radial-gradient(circle,rgba(103,232,249,.18),transparent 64%);
  position:relative;
}
.ai-avatar::after{
  content:"";
  position:absolute;
  width:22px;
  height:15px;
  border-radius:10px;
  border:2px solid rgba(14,165,233,.60);
  background:
    radial-gradient(circle at 34% 50%,#22d3ee 0 2px,transparent 2.6px),
    radial-gradient(circle at 66% 50%,#22d3ee 0 2px,transparent 2.6px),
    linear-gradient(180deg,#312e81,#271065);
  box-shadow:0 0 12px rgba(34,211,238,.28);
}

@media(max-width:720px){
  .client-chat-btn,
  .cabinet-chat-btn{
    width:56px!important;
    min-width:56px!important;
    height:56px!important;
    border-radius:21px!important;
  }
  .client-chat-face,
  .cabinet-chat-face{
    transform:scale(.92);
  }
  .ai-robot-btn{
    width:72px!important;
    min-width:72px!important;
    height:56px!important;
    border-radius:22px!important;
  }
  .ai-robot-face{transform:scale(.88);}
  .client-chat-btn::after,
  .cabinet-chat-btn::after,
  .client-chat-floating.has-unread .client-chat-btn::before,
  .cabinet-chat-floating.has-unread .cabinet-chat-btn::before{
    display:none!important;
  }
}

@media(prefers-reduced-motion:reduce){
  .client-chat-btn,
  .cabinet-chat-btn,
  .ai-robot-btn,
  .ai-robot-glow{
    animation:none!important;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: floating-icons-premium.css */

/* AZALYS_BUNDLE_SOURCE 11/29: internal-floating-global.css | sha256=891c2c9bca08586879cc26a84b511d5dd5388d385de89b1c8bfe6b09421f7b3d */
/* ============================================================================
   AZALYS v17.44 — Messagerie interne flottante globale
   Objectif : rendre les messages internes visibles sur toutes les pages cabinet,
   y compris lorsqu'un collaborateur travaille dans un dossier client.
   ============================================================================ */

.internal-chat-floating{
  position:fixed;
  right:188px;
  bottom:24px;
  z-index:1499;
  display:block;
}
.internal-chat-floating.hidden{display:none!important;}
.internal-chat-btn{
  position:relative;
  width:62px;
  min-width:62px;
  height:62px;
  padding:0;
  border:0;
  border-radius:24px;
  cursor:grab;
  display:grid;
  place-items:center;
  overflow:visible;
  color:#fff;
  background:
    radial-gradient(circle at 24% 18%,rgba(34,211,238,.44),transparent 34%),
    linear-gradient(135deg,#0891b2 0%,#2563eb 54%,#4f46e5 100%);
  box-shadow:
    0 20px 48px rgba(37,99,235,.34),
    0 7px 18px rgba(14,165,233,.18),
    inset 0 1px 0 rgba(255,255,255,.34),
    inset 0 -16px 32px rgba(49,46,129,.18);
  transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
  animation:floatingChatPulse 3.8s ease-in-out infinite;
  touch-action:none;
}
.internal-chat-btn:hover{
  transform:translateY(-3px) scale(1.025);
  box-shadow:
    0 26px 62px rgba(37,99,235,.44),
    0 10px 24px rgba(34,211,238,.20),
    inset 0 1px 0 rgba(255,255,255,.40),
    inset 0 -16px 34px rgba(49,46,129,.20);
}
.internal-chat-glow{
  position:absolute;
  inset:-11px;
  z-index:-1;
  border-radius:32px;
  background:radial-gradient(circle,rgba(34,211,238,.34),rgba(79,70,229,.18) 48%,transparent 72%);
  filter:blur(10px);
  pointer-events:none;
}
.internal-chat-face{
  position:relative;
  width:42px;
  height:34px;
  border-radius:17px;
  display:block;
  overflow:visible;
  background:
    linear-gradient(90deg,rgba(210,250,255,.88),rgba(210,250,255,.88)) 8px 10px/12px 3px no-repeat,
    linear-gradient(90deg,rgba(210,250,255,.78),rgba(210,250,255,.78)) 8px 17px/11px 3px no-repeat,
    linear-gradient(90deg,rgba(210,250,255,.68),rgba(210,250,255,.68)) 8px 24px/10px 3px no-repeat,
    linear-gradient(145deg,rgba(255,255,255,.30),rgba(255,255,255,.08) 58%,rgba(59,130,246,.10));
  border:1px solid rgba(224,242,254,.72);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.18) inset,
    0 0 20px rgba(34,211,238,.34),
    0 11px 22px rgba(15,23,42,.15);
  backdrop-filter:blur(8px);
}
.internal-chat-face::before{
  content:"";
  position:absolute;
  left:7px;
  bottom:-6px;
  width:13px;
  height:13px;
  border-radius:0 0 0 4px;
  transform:rotate(45deg);
  background:linear-gradient(135deg,rgba(226,251,255,.28),rgba(34,211,238,.20));
  border-left:1px solid rgba(224,242,254,.62);
  border-bottom:1px solid rgba(224,242,254,.62);
  box-shadow:0 0 14px rgba(34,211,238,.26);
}
.internal-chat-face::after{
  content:"";
  position:absolute;
  right:7px;
  top:10px;
  width:17px;
  height:13px;
  border-radius:4px;
  background:
    linear-gradient(135deg,transparent 46%,rgba(147,197,253,.95) 48%,rgba(147,197,253,.95) 52%,transparent 54%),
    linear-gradient(225deg,transparent 46%,rgba(147,197,253,.95) 48%,rgba(147,197,253,.95) 52%,transparent 54%),
    linear-gradient(180deg,#ffffff,#eaf5ff);
  box-shadow:
    0 0 0 1px rgba(255,255,255,.72) inset,
    0 6px 15px rgba(15,23,42,.16),
    0 0 18px rgba(255,255,255,.34);
}
.internal-chat-badge{
  position:absolute;
  right:-7px;
  top:-8px;
  min-width:24px;
  height:24px;
  padding:0 6px;
  border-radius:999px;
  display:grid;
  place-items:center;
  border:3px solid #fff;
  background:linear-gradient(135deg,#ef4444,#f97316);
  color:#fff;
  font-size:11px;
  font-weight:1000;
  box-shadow:0 11px 26px rgba(239,68,68,.42);
}
.internal-chat-badge.hidden{display:none!important;}
.internal-chat-btn::after{
  content:"Interne";
  position:absolute;
  right:72px;
  top:50%;
  transform:translateY(-50%) scale(.96);
  transform-origin:right center;
  opacity:0;
  pointer-events:none;
  border-radius:999px;
  padding:7px 11px;
  background:rgba(8,23,52,.91);
  color:#fff;
  font-size:12px;
  font-weight:850;
  letter-spacing:.01em;
  white-space:nowrap;
  box-shadow:0 12px 28px rgba(15,23,42,.20);
  transition:.18s ease;
}
.internal-chat-btn:hover::after{opacity:1;transform:translateY(-50%) scale(1);}
.internal-chat-floating.has-unread .internal-chat-btn{animation:clientUnreadPulse 1.45s ease-in-out infinite!important;}
.internal-chat-floating.has-unread .internal-chat-glow{background:radial-gradient(circle,rgba(239,68,68,.36),rgba(37,99,235,.22) 50%,transparent 74%);}

.internal-chat-panel{
  position:absolute;
  right:0;
  bottom:76px;
  width:min(380px,calc(100vw - 28px));
  max-height:min(590px,calc(100vh - 118px));
  display:flex;
  flex-direction:column;
  overflow:hidden;
  border:1px solid rgba(191,219,254,.92);
  border-radius:26px;
  background:rgba(255,255,255,.97);
  box-shadow:0 28px 80px rgba(15,23,42,.22);
  backdrop-filter:blur(16px);
}
.internal-chat-panel.hidden{display:none!important;}
.internal-chat-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:14px 14px 12px 16px;
  background:linear-gradient(135deg,#eff6ff,#f5f3ff);
  border-bottom:1px solid #dbeafe;
}
.internal-chat-head-left{display:flex;align-items:center;gap:11px;min-width:0;}
.internal-chat-avatar{
  position:relative;
  width:38px;
  min-width:38px;
  height:38px;
  border-radius:15px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg,#e0faff,#eef2ff);
  border:1px solid rgba(191,219,254,.78);
  box-shadow:0 10px 24px rgba(37,99,235,.13);
}
.internal-chat-avatar::before{
  content:"";
  width:27px;
  height:22px;
  border-radius:11px;
  background:
    linear-gradient(90deg,#60a5fa,#60a5fa) 6px 7px/7px 2px no-repeat,
    linear-gradient(90deg,#60a5fa,#60a5fa) 6px 12px/7px 2px no-repeat,
    linear-gradient(135deg,transparent 45%,#93c5fd 47%,#93c5fd 52%,transparent 54%) 15px 7px/10px 8px no-repeat,
    linear-gradient(225deg,transparent 45%,#93c5fd 47%,#93c5fd 52%,transparent 54%) 15px 7px/10px 8px no-repeat,
    linear-gradient(135deg,rgba(255,255,255,.92),rgba(219,234,254,.74));
  border:1px solid rgba(125,211,252,.55);
  box-shadow:0 0 16px rgba(34,211,238,.20);
}
.internal-chat-head strong{display:block;color:#0f172a;font-size:15px;}
.internal-chat-head span{display:block;color:#64748b;font-size:12px;margin-top:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;max-width:230px;}
.internal-chat-head-actions{display:flex;gap:6px;}
.internal-chat-head-actions .icon-btn{width:34px;height:34px;border-radius:12px;background:rgba(255,255,255,.78);}
.internal-chat-toolbar{padding:10px 12px;border-bottom:1px solid #e2e8f0;background:#fff;}
.internal-chat-toolbar .control{min-height:38px;border-radius:14px;font-weight:750;color:#0f172a;}
.internal-chat-thread{
  padding:14px;
  overflow:auto;
  min-height:250px;
  max-height:360px;
  background:linear-gradient(180deg,#fff,#f8fafc);
  scrollbar-width:thin;
}
.internal-chat-empty{
  border:1px dashed #bfdbfe;
  border-radius:20px;
  padding:22px;
  text-align:center;
  background:#fff;
}
.internal-chat-empty strong{display:block;color:#0f172a;}
.internal-chat-empty span{display:block;color:#64748b;font-size:13px;line-height:1.45;margin-top:5px;}
.internal-chat-msg{display:flex;margin:10px 0;}
.internal-chat-msg.from-them{justify-content:flex-start;}
.internal-chat-msg.from-me{justify-content:flex-end;}
.internal-chat-msg-bubble{
  max-width:86%;
  border:1px solid #dbeafe;
  border-radius:18px;
  padding:10px 12px;
  background:#fff;
  color:#0f172a;
  box-shadow:0 10px 26px rgba(15,23,42,.06);
  font-size:13px;
  line-height:1.45;
}
.internal-chat-msg.from-me .internal-chat-msg-bubble{
  background:linear-gradient(135deg,#2563eb,#4f46e5);
  color:#fff;
  border-color:#2563eb;
  box-shadow:0 13px 28px rgba(37,99,235,.22);
}
.internal-chat-msg-meta{display:flex;align-items:center;gap:8px;margin-bottom:5px;font-size:11px;}
.internal-chat-msg-meta span{opacity:.75;}
.internal-chat-compose{display:grid;grid-template-columns:1fr auto;gap:8px;padding:12px;background:#fff;border-top:1px solid #e2e8f0;}
.internal-chat-compose textarea{resize:none;min-height:52px;border-radius:16px;}
.internal-chat-compose .btn{border-radius:16px;}
.internal-chat-note{padding:0 14px 12px;color:#64748b;font-size:11px;background:#fff;}

.ai-floating.is-dragging,
.client-chat-floating.is-dragging,
.cabinet-chat-floating.is-dragging,
.internal-chat-floating.is-dragging{opacity:.96;}
.ai-floating-head.floating-drag-handle,
.client-chat-head.floating-drag-handle,
.cabinet-chat-head.floating-drag-handle,
.internal-chat-head.floating-drag-handle{cursor:grab;}
.ai-floating.is-dragging .floating-drag-handle,
.client-chat-floating.is-dragging .floating-drag-handle,
.cabinet-chat-floating.is-dragging .floating-drag-handle,
.internal-chat-floating.is-dragging .floating-drag-handle{cursor:grabbing;}

@media(max-width:720px){
  .internal-chat-floating{right:144px;bottom:16px;}
  .internal-chat-btn{width:56px;min-width:56px;height:56px;border-radius:21px;}
  .internal-chat-face{transform:scale(.92);}
  .internal-chat-btn::after{display:none!important;}
  .internal-chat-panel{right:-146px;bottom:74px;width:calc(100vw - 28px);max-height:calc(100vh - 104px);border-radius:22px;}
  .internal-chat-compose{grid-template-columns:1fr;}
  .internal-chat-compose .btn{width:100%;}
  .internal-chat-head span{max-width:190px;}
}

@media(prefers-reduced-motion:reduce){
  .internal-chat-btn,
  .internal-chat-glow{animation:none!important;}
}

/* V5.53 — Messagerie interne flottante : pièces jointes et emojis */
.internal-chat-compose{grid-template-columns:1fr;}
.internal-chat-compose-actions{display:grid;grid-template-columns:36px 36px 1fr;gap:7px;align-items:center;}
.internal-chat-mini-btn{width:36px;height:36px;border:1px solid #dbeafe;border-radius:13px;background:#f8fafc;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:1rem;}
.internal-chat-mini-btn:hover{background:#eff6ff;}
.internal-chat-compose .internal-attachment-preview{margin:0;}
.internal-chat-emoji-picker{margin:0;max-width:100%;}
.internal-chat-msg.from-me .internal-attachment{background:rgba(255,255,255,.15);border-color:rgba(255,255,255,.25);color:#fff;}
.internal-chat-msg.from-me .internal-attachment span,.internal-chat-msg.from-me .internal-attachment small{color:#fff;}

/* AZALYS V5.55 — stabilité de la messagerie interne flottante */
.internal-chat-thread{scroll-behavior:auto!important;overflow-anchor:none!important;}
.internal-chat-floating{contain:layout style;}
body.az-view-internal-messages #internal-chat-floating,body.az-view-internal-messages #client-chat-floating,body.az-view-internal-messages #cabinet-chat-floating,body.az-view-internal-messages #ai-floating{display:none!important;}
/* AZALYS_BUNDLE_SOURCE_END: internal-floating-global.css */

/* AZALYS_BUNDLE_SOURCE 12/29: ecritures-cockpit.css | sha256=2805eb1887a7d323d71648bcbd9ea0654a653e519f0815932f389f5a26c7e8f2 */
/* AZALYS V6.4 — Cockpit de validation des écritures comptables
   Réutilise les tokens premium (--az-*) avec repli si absents. */

.ec-cockpit { border-top: 3px solid var(--az-primary, #1f6feb); }
.ec-cockpit .card-head h3 { display: flex; align-items: center; gap: .55rem; }
.ec-cockpit-actions { display: flex; gap: .5rem; align-items: center; }

.ec-cockpit-list {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(340px, 1fr));
  gap: .9rem;
  margin-top: .6rem;
}

.ec-card {
  background: var(--az-bg-1, var(--card, #fff));
  border: 1px solid var(--az-hairline, var(--cab-border, rgba(16,29,54,.10)));
  border-radius: var(--az-radius-lg, 14px);
  padding: .85rem .95rem;
  box-shadow: var(--az-shadow-md, 0 2px 10px rgba(16,29,54,.05));
  display: flex;
  flex-direction: column;
  gap: .6rem;
  transition: box-shadow .18s ease, transform .18s ease, border-color .18s ease;
}
.ec-card:hover {
  box-shadow: var(--az-shadow-lg, 0 8px 26px rgba(16,29,54,.12));
  border-color: var(--az-primary, #1f6feb);
  transform: translateY(-1px);
}

.ec-card-head { display: flex; justify-content: space-between; align-items: flex-start; gap: .6rem; }
.ec-card-head strong { display: block; color: var(--az-ink, var(--cab-text, #101d36)); font-size: .98rem; }
.ec-card-head small { color: var(--az-text-soft, var(--cab-text-muted, #6b7890)); font-size: .76rem; }

/* Tableau partie double */
.ec-table { width: 100%; border-collapse: collapse; font-size: .84rem; }
.ec-table th {
  text-align: left;
  font-weight: 600;
  font-size: .72rem;
  text-transform: uppercase;
  letter-spacing: .03em;
  color: var(--az-text-soft, #6b7890);
  border-bottom: 1px solid var(--az-hairline, rgba(16,29,54,.10));
  padding: .25rem .4rem;
}
.ec-table td {
  padding: .3rem .4rem;
  border-bottom: 1px solid var(--az-hairline, rgba(16,29,54,.06));
  color: var(--az-text, #243043);
  vertical-align: top;
}
.ec-table td em { color: var(--az-text-soft, #6b7890); font-style: normal; font-size: .78rem; }
.ec-table tfoot td {
  font-weight: 700;
  border-top: 2px solid var(--az-gold-line, var(--az-gold, #c9a14a));
  border-bottom: none;
  color: var(--az-ink, #101d36);
}
.ec-num { text-align: right; font-variant-numeric: tabular-nums; white-space: nowrap; }
.ec-acct { font-variant-numeric: tabular-nums; font-weight: 700; color: var(--az-primary-600, var(--az-primary, #1f6feb)); }

.ec-anoms { display: flex; flex-wrap: wrap; gap: .35rem; }
.ec-anoms span {
  background: rgba(201,161,74,.12);
  color: var(--az-gold, #8a6d22);
  border: 1px solid rgba(201,161,74,.35);
  border-radius: 999px;
  padding: .12rem .55rem;
  font-size: .74rem;
}

.ec-card-actions { display: flex; align-items: center; gap: .5rem; margin-top: .1rem; }
.ec-rule { margin-left: auto; font-size: .68rem; color: var(--az-text-soft, #8a93a6); letter-spacing: .02em; }

/* Aperçu écriture dans le poste de travail */
.ec-preview { display: flex; flex-direction: column; gap: .55rem; }
.ec-preview-head { display: flex; justify-content: space-between; align-items: center; }
.ec-preview-head strong { color: var(--az-ink, #101d36); }

/* Badge ambre (manquant dans le thème de base) */
.badge.amber {
  background: rgba(201,161,74,.14);
  color: var(--az-gold, #8a6d22);
  border: 1px solid rgba(201,161,74,.4);
}

@media (max-width: 720px) {
  .ec-cockpit-list { grid-template-columns: 1fr; }
}
/* AZALYS_BUNDLE_SOURCE_END: ecritures-cockpit.css */

/* AZALYS_BUNDLE_SOURCE 13/29: azalys-dialogs.css | sha256=2b3b363bb75f4c1deda3d7804d8273829fac23753f362acdd8c5dd707007d48a */
/* AZALYS — fenêtres système professionnelles (remplace les alertes navigateur) */
:root{
  --azd-navy:#0f172a;
  --azd-blue:#0b4ea2;
  --azd-blue-2:#063f86;
  --azd-gold:#b58b16;
  --azd-green:#0f766e;
  --azd-red:#dc2626;
  --azd-border:#e2e8f0;
  --azd-muted:#64748b;
  --azd-card:#ffffff;
}
.azd-overlay{
  position:fixed;
  inset:0;
  z-index:2147483000;
  display:flex;
  align-items:center;
  justify-content:center;
  padding:24px;
  background:rgba(15,23,42,.56);
  backdrop-filter:blur(3px);
  -webkit-backdrop-filter:blur(3px);
  animation:azdFadeIn .14s ease-out;
}
.azd-modal{
  width:min(560px,calc(100vw - 32px));
  max-height:min(82vh,720px);
  overflow:hidden;
  background:var(--azd-card);
  border:1px solid rgba(226,232,240,.95);
  border-radius:18px;
  box-shadow:0 28px 80px rgba(15,23,42,.30),0 8px 20px rgba(15,23,42,.12);
  transform-origin:center;
  animation:azdPopIn .16s cubic-bezier(.2,.8,.2,1);
}
.azd-modal::before{
  content:'';
  display:block;
  height:4px;
  background:linear-gradient(90deg,var(--azd-blue),#0f766e,var(--azd-gold));
}
.azd-header{
  display:flex;
  align-items:flex-start;
  gap:14px;
  padding:24px 28px 18px;
}
.azd-icon{
  width:38px;
  height:38px;
  flex:0 0 38px;
  border-radius:999px;
  display:grid;
  place-items:center;
  font-size:20px;
  font-weight:800;
  color:var(--azd-blue);
  background:#eff6ff;
  border:1px solid #bfdbfe;
  box-shadow:0 8px 18px rgba(37,99,235,.14);
}
.azd-modal.azd-success .azd-icon{color:var(--azd-green);background:#ecfdf5;border-color:#99f6e4}
.azd-modal.azd-warning .azd-icon{color:#b45309;background:#fffbeb;border-color:#fde68a}
.azd-modal.azd-error .azd-icon{color:var(--azd-red);background:#fef2f2;border-color:#fecaca}
.azd-title-wrap{min-width:0;flex:1;padding-top:2px}
.azd-kicker{font-size:11px;line-height:1;text-transform:uppercase;letter-spacing:.09em;color:var(--azd-muted);font-weight:800;margin-bottom:7px}
.azd-title{font-size:19px;line-height:1.25;color:var(--azd-navy);font-weight:800;letter-spacing:-.02em}
.azd-close{
  appearance:none;
  border:0;
  background:transparent;
  color:#334155;
  width:34px;
  height:34px;
  border-radius:10px;
  display:grid;
  place-items:center;
  cursor:pointer;
  font-size:22px;
  line-height:1;
  transition:background .12s,color .12s,transform .12s;
}
.azd-close:hover{background:#f1f5f9;color:#0f172a;transform:scale(1.03)}
.azd-body{
  margin:0 28px;
  padding:18px 0 22px;
  border-top:1px solid var(--azd-border);
  border-bottom:1px solid var(--azd-border);
  color:#334155;
  font-size:14px;
  line-height:1.62;
  white-space:pre-wrap;
  overflow:auto;
  max-height:46vh;
}
.azd-actions{
  display:flex;
  justify-content:flex-end;
  gap:10px;
  padding:18px 28px 24px;
  background:linear-gradient(180deg,#fff,#f8fafc);
}
.azd-btn{
  appearance:none;
  border:1px solid var(--azd-border);
  min-width:96px;
  height:42px;
  padding:0 18px;
  border-radius:11px;
  cursor:pointer;
  font-weight:800;
  font-size:13px;
  letter-spacing:.01em;
  transition:transform .12s,box-shadow .12s,background .12s,border-color .12s;
}
.azd-btn:focus-visible,.azd-close:focus-visible{outline:3px solid rgba(59,130,246,.25);outline-offset:2px}
.azd-btn:hover{transform:translateY(-1px);box-shadow:0 10px 18px rgba(15,23,42,.10)}
.azd-btn-secondary{background:#fff;color:#334155}
.azd-btn-secondary:hover{background:#f8fafc;border-color:#cbd5e1}
.azd-btn-primary{background:var(--azd-blue);border-color:var(--azd-blue);color:#fff;box-shadow:0 10px 18px rgba(11,78,162,.20)}
.azd-btn-primary:hover{background:var(--azd-blue-2);border-color:var(--azd-blue-2)}
.azd-btn-danger{background:var(--azd-red);border-color:var(--azd-red);color:#fff}
.azd-toast-stack{
  position:fixed;
  z-index:2147482999;
  right:22px;
  top:22px;
  display:flex;
  flex-direction:column;
  gap:10px;
  pointer-events:none;
}
.azd-toast{
  pointer-events:auto;
  width:min(390px,calc(100vw - 44px));
  display:flex;
  align-items:flex-start;
  gap:12px;
  padding:14px 16px;
  border-radius:14px;
  background:#fff;
  border:1px solid var(--azd-border);
  box-shadow:0 18px 42px rgba(15,23,42,.16);
  color:#1e293b;
  animation:azdToastIn .18s ease-out;
}
.azd-toast .azd-icon{width:28px;height:28px;flex-basis:28px;font-size:15px;box-shadow:none}
.azd-toast-title{font-weight:800;font-size:13px;margin-bottom:2px;color:#0f172a}
.azd-toast-msg{font-size:13px;color:#475569;line-height:1.45;white-space:pre-wrap}
@keyframes azdFadeIn{from{opacity:0}to{opacity:1}}
@keyframes azdPopIn{from{opacity:0;transform:translateY(8px) scale(.985)}to{opacity:1;transform:translateY(0) scale(1)}}
@keyframes azdToastIn{from{opacity:0;transform:translateX(12px)}to{opacity:1;transform:translateX(0)}}
@media (max-width:560px){
  .azd-overlay{align-items:flex-end;padding:14px}
  .azd-modal{width:100%;border-radius:18px 18px 14px 14px}
  .azd-header{padding:22px 20px 16px}
  .azd-body{margin:0 20px}
  .azd-actions{padding:16px 20px 20px;flex-direction:column-reverse}
  .azd-btn{width:100%}
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-dialogs.css */

/* AZALYS_BUNDLE_SOURCE 14/29: azalys-i18n.css | sha256=94cce5f3126f85986265129e0a63158cf1a785c49835a8fbb5f6d692bc12473e */
.azalys-language-toggle{
  position:relative;
  top:auto;
  right:auto;
  bottom:auto;
  z-index:2;
  display:inline-flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
  min-height:38px;
  padding:8px 10px;
  border:1px solid rgba(148,163,184,.38);
  border-radius:999px;
  background:rgba(255,255,255,.92);
  color:#0f172a;
  box-shadow:0 12px 30px rgba(15,23,42,.15);
  -webkit-backdrop-filter:blur(12px);
  backdrop-filter:blur(12px);
  font:700 12px/1 system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  cursor:pointer;
  transition:transform .16s ease, box-shadow .16s ease, border-color .16s ease, background .16s ease;
}
.azalys-language-toggle:hover{
  transform:translateY(-1px);
  border-color:rgba(37,99,235,.45);
  box-shadow:0 16px 36px rgba(15,23,42,.2);
}
.azalys-language-toggle:focus-visible{
  outline:3px solid rgba(37,99,235,.28);
  outline-offset:2px;
}
.azalys-language-toggle .az-lang-icon{font-size:16px;line-height:1}
.azalys-language-toggle .az-lang-current{
  min-width:28px;
  padding:6px 8px;
  border-radius:999px;
  background:#1d4ed8;
  color:#fff;
  letter-spacing:.04em;
  text-align:center;
}
.azalys-language-toggle .az-lang-next{
  min-width:26px;
  color:#64748b;
  letter-spacing:.04em;
  text-align:center;
}
.azalys-language-toggle.is-en .az-lang-current{background:#0f766e}

.topbar .top-actions .azalys-language-toggle{
  order:99;
  margin-left:4px;
}
.topbar .azalys-language-slot{
  display:flex;
  align-items:center;
  justify-content:flex-end;
}

@media (max-width:1000px){
  .topbar .top-actions .azalys-language-toggle{
    margin-left:0;
  }
}

@media (max-width:720px){
  .topbar .top-actions .azalys-language-toggle{
    align-self:flex-end;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-i18n.css */

/* AZALYS_BUNDLE_SOURCE 15/29: azalys-role-menu.css | sha256=6f47870b330ee66e5e3abf2a28b916485277a915cec3fd48bf63b60951d18c01 */
/* AZALYS V5.37 — Menu collaborateur strict
   Un compte collaborateur ne voit dans le menu que : Accueil, Dossiers, Interne, Clients, Alertes. */

body.role-collaborateur #main-screen .side-nav .nav-btn{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="workbox"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="dossiers"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="internal-messages"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="cabinet-messages"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="alerts"]{
  display:flex !important;
  visibility:visible !important;
  pointer-events:auto !important;
}

body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="supervision"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="ai-tasks"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="collaborateurs"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="settings"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="modules"],
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view="legal-internal"],
body.role-collaborateur #main-screen .side-nav .nav-btn.client-only,
body.role-collaborateur #main-screen .side-nav .nav-btn[data-view^="client-"]{
  display:none !important;
  visibility:hidden !important;
  pointer-events:none !important;
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-role-menu.css */

/* AZALYS_BUNDLE_SOURCE 16/29: azalys-messages-height-final.css | sha256=125a8d2914944317f10aec57fe2492f89a81527c582c659ca7306608a53681de */
/* AZALYS V5.42 — correctif FINAL hauteur messageries
   Cause corrigée : les règles de app.css étaient écrasées par azalys-premium.css chargé après.
   Ce fichier est chargé en dernier et reprend volontairement la main avec des sélecteurs plus précis. */

html body:not(.role-client-dossier) #main-screen #view-internal-messages.view.active,
html body:not(.role-client-dossier) #main-screen #view-cabinet-messages.view.active{
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  max-width:none!important;
  height:calc(100dvh - 58px)!important;
  min-height:0!important;
  margin:0!important;
  padding:24px 30px 16px!important;
  overflow:hidden!important;
}

html body:not(.role-client-dossier) #main-screen #internal-messages-root,
html body:not(.role-client-dossier) #main-screen #cabinet-messages-root{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  overflow:hidden!important;
}

html body:not(.role-client-dossier) #main-screen .internal-premium-v168,
html body:not(.role-client-dossier) #main-screen .cabinet-inbox-compact{
  flex:1 1 auto!important;
  display:flex!important;
  flex-direction:column!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}

html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-workspace,
html body:not(.role-client-dossier) #main-screen .cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  flex:1 1 auto!important;
  width:100%!important;
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  align-items:stretch!important;
  overflow:hidden!important;
}

/* Les 2 grands blocs Messages internes */
html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-contacts-panel,
html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-thread-panel{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}

html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-thread-shell{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
  overflow:hidden!important;
}

html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-contacts-list,
html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-thread-body{
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}

/* Les grands blocs Messages clients */
html body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-panel,
html body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-panel,
html body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-shell,
html body:not(.role-client-dossier) #main-screen .cabinet-inbox-side-v3{
  height:100%!important;
  min-height:0!important;
  max-height:none!important;
  overflow:hidden!important;
}

html body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-shell{
  display:grid!important;
  grid-template-rows:auto minmax(0,1fr) auto!important;
}

html body:not(.role-client-dossier) #main-screen .cabinet-conversation-list,
html body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-body{
  min-height:0!important;
  max-height:none!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
}

html body:not(.role-client-dossier) #main-screen .internal-composer,
html body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-compose{
  position:relative!important;
  bottom:auto!important;
}

@media(max-width:1000px){
  html body:not(.role-client-dossier) #main-screen #view-internal-messages.view.active,
  html body:not(.role-client-dossier) #main-screen #view-cabinet-messages.view.active{
    height:auto!important;
    min-height:calc(100dvh - 110px)!important;
    overflow:visible!important;
    padding:18px!important;
  }
  html body:not(.role-client-dossier) #main-screen #internal-messages-root,
  html body:not(.role-client-dossier) #main-screen #cabinet-messages-root,
  html body:not(.role-client-dossier) #main-screen .internal-premium-v168,
  html body:not(.role-client-dossier) #main-screen .cabinet-inbox-compact,
  html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-workspace,
  html body:not(.role-client-dossier) #main-screen .cabinet-inbox-compact .cabinet-inbox-workspace-v3{
    height:auto!important;
    overflow:visible!important;
  }
  html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-contacts-panel,
  html body:not(.role-client-dossier) #main-screen .internal-premium-v168 .internal-thread-panel,
  html body:not(.role-client-dossier) #main-screen .cabinet-conversation-list-panel,
  html body:not(.role-client-dossier) #main-screen .cabinet-thread-focus-panel{
    height:auto!important;
    min-height:520px!important;
    max-height:none!important;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-messages-height-final.css */

/* AZALYS_BUNDLE_SOURCE 17/29: azalys-density-compact.css | sha256=15593b8c5ce4081a14c842062765759dd317704bf35f3b2c8bf8cc4de592fa62 */
/* AZALYS V5.43 — Densité compacte écran
   Objectif : réduire la taille ressentie de l'interface sans casser la lisibilité.
   Chargé en dernier pour prendre le dessus sur les styles premium.
*/

:root{
  --az-density-font-base: 13px;
  --az-density-font-small: 11.5px;
  --az-density-title-h2: 20px;
  --az-density-title-h3: 16px;
  --az-density-radius-card: 18px;
  --az-density-gap: 12px;
}

/* Police globale un peu plus petite */
body{
  font-size:var(--az-density-font-base)!important;
  line-height:1.42!important;
}

/* Topbar moins haute */
body:not(.role-client-dossier) #main-screen .topbar,
.topbar{
  min-height:58px!important;
  padding:9px 22px!important;
}

.topbar h2,
body:not(.role-client-dossier) #main-screen .topbar h2{
  font-size:var(--az-density-title-h2)!important;
  line-height:1.15!important;
}

.eyebrow,
body:not(.role-client-dossier) #main-screen .topbar .eyebrow{
  font-size:10px!important;
  letter-spacing:.075em!important;
}

/* Sidebar plus compacte */
.side{
  width:248px!important;
}

.side-brand{
  padding:14px 14px!important;
  min-height:60px!important;
}

.side-brand strong{
  font-size:14px!important;
}

.side-brand span{
  font-size:11px!important;
}

.side-nav{
  padding:12px 8px!important;
  gap:5px!important;
}

.nav-btn{
  min-height:38px!important;
  padding:9px 12px!important;
  border-radius:12px!important;
  font-size:13px!important;
  line-height:1.25!important;
}

.nav-badge{
  min-width:18px!important;
  height:18px!important;
  font-size:10px!important;
}

.side-footer{
  padding:10px 8px!important;
}

.side-footer .btn{
  min-height:38px!important;
  font-size:12px!important;
}

/* Contenu : moins d'espace perdu */
.view{
  padding:18px 22px!important;
}

.card,
.kpi,
.module-card,
.hero,
.client-card,
.collab-pro-card,
.dossier-card,
.cabinet-thread-focus-panel,
.cabinet-conversation-list-panel,
.internal-contacts-panel,
.internal-thread-panel{
  border-radius:var(--az-density-radius-card)!important;
}

.card{
  padding:16px!important;
}

.card h3,
.card-head h3,
.hero h1{
  font-size:var(--az-density-title-h3)!important;
  line-height:1.22!important;
}

.muted,
.card p,
small{
  font-size:12px!important;
}

/* Boutons et champs moins grands */
.btn,
.control,
input,
select,
textarea,
button{
  font-size:12.5px!important;
}

.btn{
  min-height:34px!important;
  padding:8px 12px!important;
  border-radius:11px!important;
}

.btn.compact,
.compact{
  min-height:30px!important;
  padding:6px 10px!important;
}

.control,
input.control,
select.control,
textarea.control{
  min-height:36px!important;
  padding:8px 11px!important;
  border-radius:11px!important;
}

/* Badges plus discrets */
.badge,
.status-pill{
  min-height:26px!important;
  padding:5px 9px!important;
  font-size:11px!important;
}

/* Tableaux et listes */
.table-wrap table,
table{
  font-size:12px!important;
}

th,
td{
  padding:8px 9px!important;
}

/* Messageries : garder la hauteur, mais réduire la taille visuelle interne */
.internal-premium-v167 .internal-workspace{
  gap:14px!important;
  grid-template-columns:minmax(270px,330px) minmax(0,1fr)!important;
}

.internal-premium-v167 .internal-contacts-panel{
  padding:12px 12px!important;
}

.internal-sidebar-title h3{
  font-size:15px!important;
}

.internal-toolbar-actions{
  gap:7px!important;
}

.internal-premium-v167 .internal-action-btn-inline{
  min-height:34px!important;
  padding:0 12px!important;
  border-radius:10px!important;
}

.internal-search-wrap .control{
  min-height:34px!important;
}

.internal-premium-v167 .internal-contact{
  min-height:58px!important;
  padding:8px 10px!important;
  border-radius:15px!important;
  grid-template-columns:40px minmax(0,1fr) auto!important;
}

.internal-premium-v167 .internal-contact-avatar,
.internal-premium-v167 .internal-avatar{
  width:40px!important;
  height:40px!important;
  border-radius:13px!important;
  font-size:.95rem!important;
}

.internal-premium-v167 .internal-thread-head{
  padding:14px 18px!important;
}

.internal-premium-v167 .internal-thread-title h3{
  font-size:16px!important;
}

.internal-premium-v167 .internal-thread-body{
  padding:18px 20px!important;
  gap:10px!important;
}

.internal-premium-v167 .internal-bubble{
  padding:10px 13px!important;
  font-size:12.5px!important;
}

.internal-premium-v167 .internal-composer{
  padding:11px 16px 12px!important;
}

.internal-composer-box{
  min-height:48px!important;
  border-radius:16px!important;
}

.internal-composer-box textarea{
  min-height:36px!important;
  height:36px!important;
  font-size:12.5px!important;
}

.internal-send-btn{
  width:38px!important;
  height:38px!important;
  border-radius:12px!important;
}

/* Messages clients */
.cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  gap:12px!important;
  grid-template-columns:minmax(260px,300px) minmax(0,1fr) minmax(220px,250px)!important;
}

.cabinet-conversation-list-head-compact{
  gap:8px!important;
}

.cabinet-conversation-item{
  padding:9px 10px!important;
  border-radius:14px!important;
}

.cabinet-thread-focus-head{
  padding:14px 18px!important;
}

.cabinet-thread-focus-title h3{
  font-size:16px!important;
}

.cabinet-thread-focus-body{
  padding:16px 18px!important;
}

.cabinet-chat-bubble{
  padding:10px 12px!important;
  border-radius:14px!important;
}

.cabinet-thread-focus-compose{
  padding:12px 16px!important;
}

/* Boutons flottants : un peu plus petits */
.client-chat-btn,
.cabinet-chat-btn,
.internal-chat-btn{
  width:52px!important;
  height:52px!important;
  border-radius:17px!important;
}

.ai-companion-floating{
  transform:scale(.88)!important;
  transform-origin:bottom right!important;
}

/* Sélecteur de langue plus discret */
.azalys-language-toggle{
  min-height:32px!important;
  padding:6px 8px!important;
  gap:5px!important;
  font-size:11px!important;
}

.azalys-language-toggle .az-lang-current{
  min-width:24px!important;
  padding:5px 7px!important;
}

.azalys-language-toggle .az-lang-next{
  min-width:22px!important;
}

/* Responsive : ne pas trop écraser sur téléphone */
@media(max-width:1000px){
  .side{
    width:100%!important;
  }
  .view{
    padding:14px!important;
  }
  .internal-premium-v167 .internal-workspace,
  .cabinet-inbox-compact .cabinet-inbox-workspace-v3{
    grid-template-columns:1fr!important;
  }
}

@media(max-width:640px){
  body{
    font-size:13px!important;
  }
  .topbar h2{
    font-size:18px!important;
  }
  .nav-btn{
    min-height:36px!important;
    font-size:12.5px!important;
  }
}


/* V5.44 — Collaborateurs : suppression des KPI inutiles */
#collab-kpi-grid,
.collab-pro-kpis{
  display:none!important;
  height:0!important;
  margin:0!important;
  padding:0!important;
  overflow:hidden!important;
}


/* V5.45 — Regroupement plus propre des actions de conversation */
.internal-toolbar-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:center!important;
  gap:8px!important;
  width:100%!important;
  margin-top:8px!important;
}
.internal-toolbar-actions .badge{
  grid-column:1 / -1!important;
  justify-self:start!important;
}
.internal-toolbar-actions .internal-action-btn-inline{
  width:100%!important;
  justify-content:center!important;
  min-width:0!important;
}

.cabinet-conversation-actions{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  align-items:center!important;
  gap:8px!important;
}
.cabinet-conversation-actions .badge{
  grid-column:1 / -1!important;
  justify-self:start!important;
}
.cabinet-conversation-actions .btn{
  width:100%!important;
  justify-content:center!important;
  min-width:0!important;
}

/* AZALYS V5.55 — Messages internes : composer pleine largeur + anti-rebond */
html body:not(.role-client-dossier) #main-screen .internal-composer{
  width:100%!important;
  box-sizing:border-box!important;
}
html body:not(.role-client-dossier) #main-screen .internal-composer-box{
  display:grid!important;
  grid-template-columns:38px minmax(0,1fr) 38px 48px!important;
  align-items:center!important;
  width:100%!important;
  box-sizing:border-box!important;
  gap:8px!important;
}
html body:not(.role-client-dossier) #main-screen .internal-composer-box #internal-body,
html body:not(.role-client-dossier) #main-screen .internal-composer-box textarea#internal-body{
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  justify-self:stretch!important;
  grid-column:auto!important;
  box-sizing:border-box!important;
}
html body:not(.role-client-dossier) #main-screen .internal-composer-box .internal-compose-icon,
html body:not(.role-client-dossier) #main-screen .internal-composer-box .internal-send-btn{
  flex:0 0 auto!important;
  justify-self:center!important;
}
html body:not(.role-client-dossier) #main-screen .internal-thread-body,
html body:not(.role-client-dossier) #main-screen #internal-chat-thread{
  scroll-behavior:auto!important;
  overflow-anchor:none!important;
}
body.az-view-internal-messages #internal-chat-floating,
body.az-view-internal-messages #client-chat-floating,
body.az-view-internal-messages #cabinet-chat-floating,
body.az-view-internal-messages #ai-floating{
  display:none!important;
}
@media (max-width:640px){
  html body:not(.role-client-dossier) #main-screen .internal-composer-box{
    grid-template-columns:34px minmax(0,1fr) 34px 42px!important;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-density-compact.css */

/* AZALYS_BUNDLE_SOURCE 18/29: fiscal-watch.css | sha256=90f7b16d737cd8d8e3fe4f640ef1737640f11b4e316a9a753b853db01c0cb3da */
/* AZALYS V5.67 — Veille fiscale & sociale partagée cabinet/client */
.fiscal-watch-view .card,
.fiscal-client-page .card{overflow:hidden}
.fiscal-page{display:flex;flex-direction:column;gap:16px}
.fiscal-hero{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:22px;background:linear-gradient(135deg,rgba(15,118,110,.08),rgba(37,99,235,.08));border:1px solid rgba(15,118,110,.14)}
.fiscal-hero h2,.fiscal-client-head h2{margin:.2rem 0 .35rem;font-size:1.45rem;letter-spacing:-.02em}
.fiscal-hero-actions{display:flex;gap:10px;flex-wrap:wrap;justify-content:flex-end}
.fiscal-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}
.fiscal-stat{padding:16px;border:1px solid rgba(15,23,42,.08);border-radius:18px;background:#fff;box-shadow:0 12px 26px rgba(15,23,42,.05)}
.fiscal-stat strong{display:block;font-size:1.65rem;line-height:1;color:#0f766e}
.fiscal-stat span{display:block;margin-top:6px;color:#64748b;font-size:.9rem}
.fiscal-layout{display:grid;grid-template-columns:310px minmax(0,1fr);gap:16px;align-items:start}
.fiscal-side{position:sticky;top:18px;padding:16px;display:flex;flex-direction:column;gap:14px}
.fiscal-side h3{font-size:1rem;margin:0}
.fiscal-filter-list{display:flex;flex-wrap:wrap;gap:8px}
.fiscal-filter-list button{border:1px solid rgba(15,23,42,.12);background:#fff;border-radius:999px;padding:8px 11px;font-weight:700;color:#334155;cursor:pointer}
.fiscal-filter-list button.active{background:#0f766e;color:#fff;border-color:#0f766e;box-shadow:0 8px 20px rgba(15,118,110,.18)}
.fiscal-source-list{display:flex;flex-direction:column;gap:10px}
.fiscal-source-row{display:grid;grid-template-columns:12px minmax(0,1fr);gap:10px;align-items:start;padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:14px;background:#f8fafc}
.fiscal-source-row strong{display:block;font-size:.92rem;color:#0f172a}
.fiscal-source-row small{display:block;margin-top:2px;color:#64748b;line-height:1.35}
.fiscal-source-row em{grid-column:2;color:#0f766e;font-style:normal;font-size:.78rem;font-weight:800;text-transform:uppercase;letter-spacing:.03em}
.fiscal-source-dot{width:9px;height:9px;border-radius:99px;background:#cbd5e1;margin-top:5px}
.fiscal-source-dot.on{background:#16a34a;box-shadow:0 0 0 4px rgba(22,163,74,.12)}
.fiscal-cron-box{display:flex;flex-direction:column;gap:6px;padding:12px;border-radius:16px;background:#0f172a;color:#e2e8f0}
.fiscal-cron-box span{font-size:.82rem;color:#cbd5e1;line-height:1.35}
.fiscal-cron-box code{display:block;white-space:normal;word-break:break-all;background:rgba(255,255,255,.08);border-radius:10px;padding:8px;font-size:.75rem;color:#fff}
.fiscal-list,.fiscal-client-list{display:flex;flex-direction:column;gap:12px}
.fiscal-card{padding:16px;border:1px solid rgba(15,23,42,.08);border-radius:20px;background:#fff;box-shadow:0 16px 34px rgba(15,23,42,.06)}
.fiscal-card.client{box-shadow:0 10px 24px rgba(15,23,42,.05)}
.fiscal-card-top{display:flex;justify-content:space-between;gap:14px;align-items:flex-start}
.fiscal-meta{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:7px;color:#64748b;font-size:.82rem}
.fiscal-meta span{padding:3px 8px;border-radius:99px;background:#f1f5f9}
.fiscal-card h3{margin:0;color:#0f172a;font-size:1.08rem;line-height:1.25}
.fiscal-card p{margin:10px 0 0;color:#475569;line-height:1.55}
.fiscal-badges{display:flex;gap:6px;flex-wrap:wrap;justify-content:flex-end;min-width:max-content}
.fiscal-card-foot{display:flex;justify-content:space-between;gap:12px;align-items:center;margin-top:14px;padding-top:12px;border-top:1px solid rgba(15,23,42,.07);color:#64748b;font-size:.86rem}
.fiscal-actions-inline{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}
.fiscal-empty{padding:24px;text-align:center;color:#64748b;border:1px dashed rgba(15,23,42,.16);border-radius:18px;background:#fff}
.fiscal-empty strong{display:block;color:#0f172a;margin-bottom:4px}
.fiscal-empty.compact{padding:14px;font-size:.88rem;text-align:left}
.fiscal-client-page{display:flex;flex-direction:column;gap:14px}
.fiscal-client-head{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:20px;background:linear-gradient(135deg,rgba(14,165,233,.08),rgba(15,118,110,.08));border:1px solid rgba(14,165,233,.13)}
.client-mode-tabs button[data-client-mode="news"]{min-width:max-content}
@media (max-width: 980px){
  .fiscal-layout{grid-template-columns:1fr}
  .fiscal-side{position:static}
  .fiscal-hero,.fiscal-client-head,.fiscal-card-top,.fiscal-card-foot{flex-direction:column;align-items:stretch}
  .fiscal-hero-actions,.fiscal-actions-inline,.fiscal-badges{justify-content:flex-start}
}
@media (max-width: 640px){
  .fiscal-stats{grid-template-columns:1fr}
  .fiscal-card{padding:14px;border-radius:16px}
  .fiscal-meta{gap:6px}
}
.fiscal-scan-result{display:flex;flex-direction:column;gap:10px;border:1px solid rgba(15,23,42,.1);background:#fff}
.fiscal-scan-result strong{display:block;color:#0f172a;margin-bottom:3px}
.fiscal-scan-result span{color:#475569;font-size:.9rem;line-height:1.45}
.fiscal-scan-result.warning{border-color:rgba(217,119,6,.28);background:rgba(217,119,6,.06)}
.fiscal-scan-result.ok{border-color:rgba(22,163,74,.22);background:rgba(22,163,74,.05)}
.fiscal-scan-details{display:flex;flex-direction:column;gap:6px;padding-top:8px;border-top:1px solid rgba(15,23,42,.08)}
.fiscal-scan-details span{display:block}
.fiscal-scan-details b{color:#0f172a}

/* AZALYS V5.97 — Actualités simples en page d'accueil commune */
.fiscal-news-view .card,
.fiscal-news-page .card{overflow:hidden}
.fiscal-news-page{display:flex;flex-direction:column;gap:16px;max-width:1040px;margin:0 auto;width:100%}
.fiscal-news-head{display:flex;align-items:center;justify-content:space-between;gap:18px;padding:24px;background:linear-gradient(135deg,rgba(15,118,110,.08),rgba(37,99,235,.06));border:1px solid rgba(15,118,110,.14)}
.fiscal-news-head h2{margin:.2rem 0 .35rem;font-size:1.55rem;letter-spacing:-.025em;color:#0f172a}
.fiscal-news-list{display:flex;flex-direction:column;gap:12px}
.fiscal-card.public-news{box-shadow:0 10px 24px rgba(15,23,42,.05)}
.fiscal-card.public-news .fiscal-card-foot.read-only{justify-content:flex-start}
.fiscal-card.public-news .fiscal-actions-inline{display:none}
.fiscal-client-page .fiscal-news-page{max-width:1040px}
@media (max-width: 780px){
  .fiscal-news-page{max-width:none}
  .fiscal-news-head{padding:18px;align-items:stretch;flex-direction:column}
  .fiscal-news-head h2{font-size:1.32rem}
}


/* AZALYS V5.98 — Saisie manuelle des actualités cabinet */
.fiscal-manual-modal{position:fixed;inset:0;z-index:9999;display:flex;align-items:center;justify-content:center;padding:18px;background:rgba(15,23,42,.48);backdrop-filter:blur(4px)}
.fiscal-manual-box{width:min(820px,96vw);max-height:92vh;overflow:auto;background:#fff;border-radius:22px;border:1px solid rgba(15,23,42,.12);box-shadow:0 28px 90px rgba(15,23,42,.28);padding:22px;position:relative}
.fiscal-manual-box .modal-close{position:absolute;right:16px;top:14px;border:0;background:#f1f5f9;border-radius:999px;width:34px;height:34px;font-size:22px;line-height:1;cursor:pointer;color:#334155}
.fiscal-manual-box .modal-head{padding-right:42px;margin-bottom:16px}
.fiscal-manual-box .modal-head h3{margin:.2rem 0 .35rem;color:#0f172a;font-size:1.35rem}
.fiscal-manual-form{display:flex;flex-direction:column;gap:14px}
.fiscal-manual-form label{display:flex;flex-direction:column;gap:6px;font-weight:800;color:#0f172a;font-size:.9rem}
.fiscal-manual-form input,.fiscal-manual-form select,.fiscal-manual-form textarea{width:100%;border:1px solid rgba(15,23,42,.16);border-radius:14px;padding:11px 12px;font:inherit;color:#0f172a;background:#fff;outline:none}
.fiscal-manual-form textarea{resize:vertical;min-height:160px;line-height:1.5}
.fiscal-manual-form input:focus,.fiscal-manual-form select:focus,.fiscal-manual-form textarea:focus{border-color:#0f766e;box-shadow:0 0 0 4px rgba(15,118,110,.10)}
.fiscal-manual-form .form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
.fiscal-manual-form .checkline{justify-content:center;flex-direction:row;align-items:center;border:1px solid rgba(15,23,42,.10);border-radius:14px;padding:10px 12px;background:#f8fafc}
.fiscal-manual-form .checkline input{width:auto;margin:0}
.fiscal-manual-form .modal-actions{display:flex;justify-content:flex-end;gap:10px;flex-wrap:wrap;padding-top:4px}
@media (max-width: 720px){
  .fiscal-manual-box{padding:18px;border-radius:18px}
  .fiscal-manual-form .form-grid{grid-template-columns:1fr}
}

/* AZALYS V5.99 — Actualités enrichies : mise en page, police, aperçu */
.fiscal-card.public-news,
.fiscal-card.fiscal-news-layout-editorial{position:relative;border:1px solid rgba(15,23,42,.08);background:linear-gradient(180deg,#fff,#fbfdff)}
.fiscal-card.public-news{padding:22px;border-radius:24px;box-shadow:0 24px 70px rgba(15,23,42,.08)}
.fiscal-news-banner{margin:-22px -22px 18px;border-radius:24px 24px 0 0;overflow:hidden;background:#f1f5f9;max-height:260px}
.fiscal-news-banner img{display:block;width:100%;height:100%;max-height:260px;object-fit:cover}
.fiscal-rich-content{margin-top:14px;color:#334155;line-height:1.72;font-size:1rem}
.fiscal-rich-content p{margin:0 0 12px;color:inherit;line-height:inherit}
.fiscal-rich-content h2,.fiscal-rich-content h3,.fiscal-rich-content h4{margin:20px 0 10px;color:#0f172a;letter-spacing:-.018em;line-height:1.22}
.fiscal-rich-content h2{font-size:1.32em}
.fiscal-rich-content h3{font-size:1.18em}
.fiscal-rich-content h4{font-size:1.08em}
.fiscal-rich-content ul,.fiscal-rich-content ol{margin:8px 0 14px;padding-left:22px}
.fiscal-rich-content li{margin:6px 0}
.fiscal-rich-content blockquote{margin:12px 0;padding:12px 14px;border-left:4px solid rgba(15,118,110,.38);background:rgba(15,118,110,.06);border-radius:0 14px 14px 0;color:#0f172a}
.fiscal-rich-content hr{border:0;border-top:1px solid rgba(15,23,42,.10);margin:18px 0}
.fiscal-rich-content code{background:#f1f5f9;border:1px solid rgba(15,23,42,.08);border-radius:7px;padding:1px 5px;color:#0f172a}
.fiscal-callout{display:grid;grid-template-columns:170px minmax(0,1fr);gap:12px;align-items:start;margin:14px 0;padding:14px 16px;border:1px solid rgba(15,23,42,.10);border-radius:18px;background:#f8fafc}
.fiscal-callout strong{color:#0f172a;font-size:.86em;text-transform:uppercase;letter-spacing:.05em}
.fiscal-callout span{color:#334155;line-height:1.6}
.fiscal-callout.important{background:rgba(15,118,110,.07);border-color:rgba(15,118,110,.18)}
.fiscal-callout.date{background:rgba(37,99,235,.07);border-color:rgba(37,99,235,.18)}
.fiscal-callout.warning{background:rgba(217,119,6,.08);border-color:rgba(217,119,6,.22)}
.fiscal-callout.action{background:rgba(22,163,74,.08);border-color:rgba(22,163,74,.20)}
.fiscal-news-layout-official{border-left:5px solid #0f766e;background:#fff}
.fiscal-news-layout-official .fiscal-card-top{padding-bottom:12px;border-bottom:1px solid rgba(15,23,42,.08)}
.fiscal-news-layout-alert{border-color:rgba(217,119,6,.22);background:linear-gradient(180deg,#fffaf0,#fff)}
.fiscal-news-layout-alert .fiscal-card-top{padding:14px;border-radius:18px;background:rgba(217,119,6,.08);margin-bottom:12px}
.fiscal-news-layout-compact{padding:16px;border-radius:18px}
.fiscal-news-layout-compact .fiscal-rich-content{line-height:1.55;font-size:.95rem}
.fiscal-news-font-compact .fiscal-rich-content{font-size:.92rem;line-height:1.58}
.fiscal-news-font-normal .fiscal-rich-content{font-size:1rem}
.fiscal-news-font-large .fiscal-rich-content{font-size:1.1rem}
.fiscal-news-font-xl .fiscal-rich-content{font-size:1.2rem;line-height:1.78}
.fiscal-manual-box-pro{width:min(1180px,96vw);padding:0;display:flex;flex-direction:column}
.fiscal-manual-head-pro{padding:22px 64px 18px 22px;border-bottom:1px solid rgba(15,23,42,.08);background:linear-gradient(135deg,rgba(15,118,110,.08),rgba(37,99,235,.05))}
.fiscal-manual-form-pro{padding:20px;gap:16px}
.fiscal-form-section{border:1px solid rgba(15,23,42,.08);background:#fff;border-radius:20px;padding:16px;display:flex;flex-direction:column;gap:14px}
.fiscal-form-section-title{display:flex;justify-content:space-between;gap:12px;align-items:flex-start;border-bottom:1px solid rgba(15,23,42,.07);padding-bottom:10px}
.fiscal-form-section-title strong{display:block;color:#0f172a;font-size:1rem}
.fiscal-form-section-title span{color:#64748b;font-size:.84rem;line-height:1.35;text-align:right;max-width:520px}
.fiscal-manual-form .form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}
.fiscal-editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:10px;border:1px solid rgba(15,23,42,.08);border-radius:16px;background:#f8fafc}
.fiscal-editor-toolbar button{border:1px solid rgba(15,23,42,.12);background:#fff;border-radius:999px;padding:8px 11px;font-size:.82rem;font-weight:800;color:#334155;cursor:pointer}
.fiscal-editor-toolbar button:hover{border-color:#0f766e;color:#0f766e;box-shadow:0 8px 18px rgba(15,118,110,.10)}
.fiscal-editor-help{display:flex;justify-content:space-between;gap:10px;flex-wrap:wrap;color:#64748b;font-size:.84rem;line-height:1.35}
.fiscal-manual-preview{border:1px dashed rgba(15,23,42,.16);background:#f8fafc;border-radius:20px;padding:14px;max-height:520px;overflow:auto}
.fiscal-manual-preview .fiscal-card{margin:0;box-shadow:0 16px 36px rgba(15,23,42,.08)}
.fiscal-manual-form .sticky-actions{position:sticky;bottom:0;background:rgba(255,255,255,.92);backdrop-filter:blur(8px);border-top:1px solid rgba(15,23,42,.08);margin:4px -20px -20px;padding:14px 20px;border-radius:0 0 22px 22px}
@media (max-width: 900px){
  .fiscal-callout{grid-template-columns:1fr}
  .fiscal-form-section-title{flex-direction:column}
  .fiscal-form-section-title span{text-align:left}
  .fiscal-manual-form .form-grid.three{grid-template-columns:1fr}
}
@media (max-width: 640px){
  .fiscal-card.public-news{padding:16px;border-radius:18px}
  .fiscal-news-banner{margin:-16px -16px 14px;border-radius:18px 18px 0 0}
  .fiscal-rich-content{font-size:.98rem;line-height:1.62}
  .fiscal-manual-form-pro{padding:14px}
  .fiscal-manual-form .sticky-actions{margin:0 -14px -14px;padding:12px 14px}
}
/* AZALYS_BUNDLE_SOURCE_END: fiscal-watch.css */

/* AZALYS_BUNDLE_SOURCE 19/29: azalys-web-typography.css | sha256=80da461b1170f4c4daa1009799bcd1d94f4412ac316b80b0066de68f26dd6281 */
/* AZALYS V5.70 — Police et densité alignées avec les standards web modernes */
html { font-size: 14px; }
body {
  font-family: Inter, "Segoe UI", Roboto, Arial, system-ui, -apple-system, sans-serif !important;
  font-size: 14px !important;
  line-height: 1.5 !important;
  letter-spacing: 0 !important;
  -webkit-font-smoothing: antialiased;
  text-rendering: optimizeLegibility;
}
button, input, select, textarea { font-family: inherit !important; font-size: 13px !important; }
.view { padding: 20px 22px !important; }
.topbar { min-height: 68px !important; padding: 13px 22px !important; }
.topbar h2 { font-size: 20px !important; line-height: 1.25 !important; }
.eyebrow { font-size: 10.5px !important; letter-spacing: .075em !important; }
.side-brand strong { font-size: 16px !important; }
.side-brand span, .muted, .row-sub, .item-sub, .kpi-sub { font-size: 12px !important; }
.nav-btn { min-height: 40px !important; padding: 10px 13px !important; font-size: 13px !important; }
.btn { min-height: 32px !important; padding: 7px 11px !important; border-radius: 9px !important; font-size: 13px !important; }
.btn.compact, .compact.btn { min-height: 29px !important; padding: 6px 9px !important; font-size: 12.5px !important; }
.control { min-height: 36px !important; padding: 8px 10px !important; border-radius: 9px !important; }
label { font-size: 11.5px !important; gap: 5px !important; margin-bottom: 10px !important; }
th, td { padding: 10px 12px !important; font-size: 13px !important; }
th { font-size: 10.5px !important; letter-spacing: .055em !important; }
.card-head { padding: 14px 16px !important; }
.card-head h3 { font-size: 15.5px !important; }
.hero { padding: 20px !important; border-radius: 18px !important; }
.hero h1, .cockpit-hero h1 { font-size: clamp(22px, 2.35vw, 28px) !important; line-height: 1.12 !important; }
.cockpit-sub { font-size: 13px !important; }
.kpi { padding: 15px !important; }
.kpi-value, .home-view .kpi-value { font-size: 26px !important; }
.badge { font-size: 10.5px !important; padding: 3px 7px !important; }
.row-title { font-size: 13.5px !important; line-height: 1.28 !important; }
.dossier-actions { min-width: 330px !important; }
.client-space-btn { white-space: nowrap; }
.client-impersonation-banner {
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:14px;
  margin:0;
  padding:10px 22px;
  background:#eff6ff;
  border-bottom:1px solid #bfdbfe;
  color:#1e3a8a;
  font-size:13px;
  position:sticky;
  top:68px;
  z-index:4;
}
.client-impersonation-banner div { display:flex; flex-direction:column; gap:2px; min-width:0; }
.client-impersonation-banner strong { font-size:13px; }
.client-impersonation-banner span { color:#475569; font-size:12px; }
@media (max-width: 760px) {
  html { font-size: 13px; }
  body { font-size: 13px !important; }
  .view { padding: 14px !important; }
  .topbar { padding: 11px 14px !important; min-height: 62px !important; }
  .topbar h2 { font-size: 18px !important; }
  .client-impersonation-banner { top:62px; padding:9px 14px; align-items:flex-start; flex-direction:column; }
  th, td { padding: 9px 10px !important; }
}

/* AZALYS V5.71 — correction visuelle droits collaborateurs + anti-cache */
.collab-global-modules-zone,
#collab-global-modules-zone {
  padding: 14px 18px !important;
  border-bottom: 1px solid #e2e8f0 !important;
  background: #fff !important;
}
.global-modules-head {
  display: flex !important;
  align-items: flex-end !important;
  justify-content: space-between !important;
  gap: 12px !important;
  margin: 0 0 12px !important;
}
.global-modules-head strong {
  color: #0f2544 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
}
.global-modules-head .muted,
.global-modules-head span {
  display: inline-block !important;
  color: #64748b !important;
  font-size: 12px !important;
  line-height: 1.25 !important;
}
.global-modules-grid {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)) !important;
  gap: 10px !important;
  align-items: stretch !important;
}
.global-module-card,
label.global-module-card {
  display: grid !important;
  grid-template-columns: 22px 34px minmax(0, 1fr) !important;
  align-items: center !important;
  column-gap: 10px !important;
  row-gap: 0 !important;
  min-height: 58px !important;
  margin: 0 !important;
  padding: 10px 12px !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  background: #f8fafc !important;
  cursor: pointer !important;
  font-size: 13px !important;
  line-height: 1.25 !important;
  text-align: left !important;
  box-sizing: border-box !important;
}
.global-module-card:hover { border-color: #bfdbfe !important; background: #eff6ff !important; }
.global-module-card.checked {
  background: #eef6ff !important;
  border-color: #93c5fd !important;
  box-shadow: 0 8px 20px rgba(37,99,235,.08) !important;
}
.global-module-card.locked { cursor: not-allowed !important; opacity: .82 !important; }
.global-module-card input.global-module-check,
.global-module-card input[type="checkbox"] {
  grid-column: 1 !important;
  width: 18px !important;
  height: 18px !important;
  min-width: 18px !important;
  max-width: 18px !important;
  min-height: 18px !important;
  max-height: 18px !important;
  margin: 0 !important;
  padding: 0 !important;
  transform: none !important;
  accent-color: #2563eb !important;
  align-self: center !important;
  justify-self: center !important;
  box-sizing: border-box !important;
}
.global-module-icon {
  grid-column: 2 !important;
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  border-radius: 12px !important;
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  background: #fff !important;
  border: 1px solid #e2e8f0 !important;
  font-size: 15px !important;
  line-height: 1 !important;
}
.global-module-text {
  grid-column: 3 !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 3px !important;
  min-width: 0 !important;
}
.global-module-text strong {
  display: block !important;
  color: #0f2544 !important;
  font-size: 13px !important;
  line-height: 1.2 !important;
  white-space: normal !important;
}
.global-module-text small {
  display: block !important;
  color: #64748b !important;
  font-size: 11.5px !important;
  line-height: 1.25 !important;
  white-space: normal !important;
}
.collab-rights-summary {
  display: grid !important;
  grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
  gap: 10px !important;
  padding: 14px 18px !important;
  border-bottom: 1px solid #e2e8f0 !important;
  background: #f8fafc !important;
}
.collab-rights-summary > div {
  background: #fff !important;
  border: 1px solid #e2e8f0 !important;
  border-radius: 14px !important;
  padding: 10px 12px !important;
}
.collab-rights-summary strong { font-size: 20px !important; line-height: 1 !important; }
.collab-rights-summary span { font-size: 11px !important; line-height: 1.2 !important; }
@media (max-width: 900px) {
  .global-modules-head { align-items: flex-start !important; flex-direction: column !important; }
  .global-modules-grid { grid-template-columns: 1fr !important; }
  .collab-rights-summary { grid-template-columns: repeat(2, minmax(0, 1fr)) !important; }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-web-typography.css */

/* AZALYS_BUNDLE_SOURCE 20/29: azalys-sidebar-ergonomic-v593.css | sha256=75f528e366b07c169c6360397502a925ef7e68278d9ab38e0dd165ec8274b838 */
/* AZALYS V5.93 — Menu latéral ergonomique mobile/tablette
   Objectif : sidebar lisible, non coupée, badges alignés, footer propre. */

body:not(.role-client-dossier) #main-screen.main-shell{
  grid-template-columns:clamp(248px,18vw,292px) minmax(0,1fr)!important;
  min-height:100vh!important;
  min-height:100dvh!important;
  overflow:visible!important;
}

body:not(.role-client-dossier) #main-screen .side{
  width:auto!important;
  min-width:248px!important;
  max-width:292px!important;
  height:100vh!important;
  height:100dvh!important;
  min-height:0!important;
  position:sticky!important;
  top:0!important;
  display:flex!important;
  flex-direction:column!important;
  overflow:hidden!important;
  background:
    radial-gradient(circle at 22% 0%,rgba(74,144,255,.18),transparent 34%),
    linear-gradient(180deg,#061b3d 0%,#041126 100%)!important;
  border-right:1px solid rgba(191,219,254,.18)!important;
  box-shadow:20px 0 56px rgba(15,23,42,.20)!important;
}

body:not(.role-client-dossier) #main-screen .side-brand{
  flex:0 0 auto!important;
  min-height:64px!important;
  padding:14px 18px!important;
  border-bottom:1px solid rgba(255,255,255,.08)!important;
}

body:not(.role-client-dossier) #main-screen .side-nav{
  flex:1 1 auto!important;
  min-height:0!important;
  display:flex!important;
  flex-direction:column!important;
  gap:7px!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:16px 10px 12px!important;
  scrollbar-width:thin;
  scrollbar-color:rgba(147,197,253,.42) transparent;
  overscroll-behavior:contain;
}

body:not(.role-client-dossier) #main-screen .side-nav::-webkit-scrollbar{width:6px;}
body:not(.role-client-dossier) #main-screen .side-nav::-webkit-scrollbar-track{background:transparent;}
body:not(.role-client-dossier) #main-screen .side-nav::-webkit-scrollbar-thumb{background:rgba(147,197,253,.35);border-radius:999px;}

body:not(.role-client-dossier) #main-screen .nav-section-label{
  margin:16px 12px 5px!important;
  color:rgba(180,195,225,.68)!important;
  font-size:11px!important;
  line-height:1!important;
  letter-spacing:.10em!important;
  text-transform:uppercase!important;
  font-weight:950!important;
}

body:not(.role-client-dossier) #main-screen .side-nav .nav-section-label:first-child{
  margin-top:2px!important;
}

body:not(.role-client-dossier) #main-screen .side-nav .nav-btn{
  width:100%!important;
  min-height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:12px!important;
  padding:12px 54px 12px 18px!important;
  border-radius:15px!important;
  white-space:normal!important;
  line-height:1.18!important;
  font-size:14px!important;
  font-weight:900!important;
  letter-spacing:-.015em!important;
  color:rgba(244,248,255,.92)!important;
  background:transparent!important;
  border:1px solid transparent!important;
  text-shadow:0 1px 1px rgba(0,0,0,.12);
  transform:none!important;
  transition:background .16s ease,border-color .16s ease,box-shadow .16s ease,color .16s ease;
}

body:not(.role-client-dossier) #main-screen .side-nav .nav-btn:hover{
  color:#fff!important;
  background:rgba(59,130,246,.16)!important;
  border-color:rgba(147,197,253,.13)!important;
}

body:not(.role-client-dossier) #main-screen .side-nav .nav-btn.active{
  color:#fff!important;
  background:linear-gradient(135deg,rgba(47,111,215,.72),rgba(26,70,152,.62))!important;
  border-color:rgba(147,197,253,.34)!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.13),0 12px 30px rgba(16,74,168,.25)!important;
}

body:not(.role-client-dossier) #main-screen .side-nav .nav-btn.active::before{
  content:""!important;
  position:absolute!important;
  left:0!important;
  top:9px!important;
  bottom:9px!important;
  width:4px!important;
  border-radius:0 999px 999px 0!important;
  background:linear-gradient(180deg,#8fd3ff,#4aa3ff)!important;
  box-shadow:0 0 18px rgba(96,165,250,.85)!important;
}

body:not(.role-client-dossier) #main-screen .side-nav .nav-cursor{
  left:0!important;
  width:5px!important;
  border-radius:0 999px 999px 0!important;
  background:linear-gradient(180deg,#93d5ff,#4aa3ff)!important;
  box-shadow:0 0 18px rgba(96,165,250,.75),0 10px 24px rgba(37,99,235,.28)!important;
}

body:not(.role-client-dossier) #main-screen .nav-badge{
  position:absolute!important;
  top:50%!important;
  right:14px!important;
  transform:translateY(-50%)!important;
  min-width:24px!important;
  height:24px!important;
  padding:0 8px!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#f8c84a,#f2a51c)!important;
  color:#111827!important;
  font-size:12px!important;
  font-weight:1000!important;
  line-height:1!important;
  box-shadow:0 10px 24px rgba(245,158,11,.30),inset 0 1px 0 rgba(255,255,255,.40)!important;
}

body:not(.role-client-dossier) #main-screen .side-footer{
  flex:0 0 auto!important;
  margin-top:0!important;
  padding:12px 14px 14px!important;
  display:flex!important;
  flex-direction:column!important;
  gap:10px!important;
  background:linear-gradient(180deg,rgba(4,17,38,0),rgba(4,17,38,.72) 22%,rgba(4,17,38,.94))!important;
  border-top:1px solid rgba(255,255,255,.06)!important;
}

body:not(.role-client-dossier) #main-screen .side-footer .btn{
  min-height:46px!important;
  border-radius:15px!important;
  font-size:14px!important;
  font-weight:950!important;
}

body:not(.role-client-dossier) #main-screen #btn-logout{
  background:rgba(255,255,255,.97)!important;
  color:#0b2347!important;
  border:1px solid rgba(219,234,254,.95)!important;
  box-shadow:0 12px 28px rgba(2,8,23,.20)!important;
}

body:not(.role-client-dossier) #main-screen #btn-logout:hover{
  background:#fff!important;
  transform:translateY(-1px)!important;
}

@media(max-width:1100px){
  body:not(.role-client-dossier) #main-screen.main-shell{
    grid-template-columns:minmax(248px,78vw) minmax(0,1fr)!important;
  }
  body:not(.role-client-dossier) #main-screen .side{
    max-width:none!important;
    height:100vh!important;
    height:100dvh!important;
    position:sticky!important;
  }
  body:not(.role-client-dossier) #main-screen .side-nav{
    flex-direction:column!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
  }
}

@media(max-width:760px){
  body:not(.role-client-dossier) #main-screen.main-shell{
    grid-template-columns:minmax(242px,82vw) minmax(52px,18vw)!important;
  }
  body:not(.role-client-dossier) #main-screen .side{
    min-width:242px!important;
  }
  body:not(.role-client-dossier) #main-screen .side-brand{
    display:none!important;
  }
  body:not(.role-client-dossier) #main-screen .side-nav{
    padding:12px 8px 10px!important;
    gap:5px!important;
  }
  body:not(.role-client-dossier) #main-screen .nav-section-label{
    margin:13px 9px 4px!important;
    font-size:10px!important;
  }
  body:not(.role-client-dossier) #main-screen .side-nav .nav-btn{
    min-height:42px!important;
    padding:10px 46px 10px 12px!important;
    border-radius:13px!important;
    font-size:13px!important;
    gap:9px!important;
  }
  body:not(.role-client-dossier) #main-screen .nav-badge{
    right:10px!important;
    min-width:22px!important;
    height:22px!important;
    font-size:11px!important;
  }
  body:not(.role-client-dossier) #main-screen .side-footer{
    padding:10px 10px 12px!important;
  }
  body:not(.role-client-dossier) #main-screen .side-footer .btn{
    min-height:40px!important;
    border-radius:13px!important;
    font-size:13px!important;
  }
}

@media(max-height:760px){
  body:not(.role-client-dossier) #main-screen .side-brand{
    display:none!important;
  }
  body:not(.role-client-dossier) #main-screen .side-nav{
    padding-top:10px!important;
    gap:4px!important;
  }
  body:not(.role-client-dossier) #main-screen .nav-section-label{
    margin-top:11px!important;
  }
  body:not(.role-client-dossier) #main-screen .side-nav .nav-btn{
    min-height:40px!important;
    padding-top:9px!important;
    padding-bottom:9px!important;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-sidebar-ergonomic-v593.css */

/* AZALYS_BUNDLE_SOURCE 21/29: azalys-ui-standard.css | sha256=d00af9799c19cd94edf26fdf37ae044791ab8a7b35a6671cf24bcbfb3c506e52 */
/* AZALYS V5.96 — Standardisation visuelle globale
   Objectif : harmoniser affichage, police, arrière-plan, menus, blocs, formulaires et tableaux
   sans modifier la logique métier ni les flux applicatifs.
*/

:root{
  --az-font-main: Inter, "Segoe UI", Roboto, Arial, system-ui, -apple-system, BlinkMacSystemFont, sans-serif;
  --az-font-size-base: 13px;
  --az-font-size-small: 11.5px;
  --az-font-size-xs: 10.5px;
  --az-h1: 22px;
  --az-h2: 20px;
  --az-h3: 16px;
  --az-line-height: 1.45;

  --az-color-bg: #f4f7fb;
  --az-color-bg-soft: #eef4fb;
  --az-color-surface: #ffffff;
  --az-color-surface-2: #f8fafc;
  --az-color-text: #0f172a;
  --az-color-text-2: #334155;
  --az-color-muted: #64748b;
  --az-color-border: #dfe7f1;
  --az-color-border-soft: #edf2f7;
  --az-color-primary: #2563eb;
  --az-color-primary-dark: #1d4ed8;
  --az-color-success: #16a34a;
  --az-color-warning: #d97706;
  --az-color-danger: #dc2626;
  --az-color-info: #0284c7;
  --az-color-sidebar: #10233f;
  --az-color-sidebar-2: #172b49;

  --az-radius-sm: 10px;
  --az-radius-md: 12px;
  --az-radius-lg: 16px;
  --az-radius-xl: 18px;
  --az-shadow-soft: 0 10px 24px rgba(15,23,42,.055);
  --az-shadow-card: 0 14px 34px rgba(15,23,42,.075);
  --az-shadow-modal: 0 28px 70px rgba(15,23,42,.22);
  --az-space-xs: 6px;
  --az-space-sm: 10px;
  --az-space-md: 14px;
  --az-space-lg: 18px;
  --az-space-xl: 24px;

  --navy: var(--az-color-sidebar-2);
  --blue: var(--az-color-primary);
  --blue2: var(--az-color-primary-dark);
  --bg: var(--az-color-bg);
  --card: var(--az-color-surface);
  --muted: var(--az-color-muted);
  --line: var(--az-color-border);
  --text: var(--az-color-text);
  --shadow: var(--az-shadow-card);
  --radius: var(--az-radius-lg);
}

html{
  min-height:100%;
  background:var(--az-color-bg)!important;
  font-size:var(--az-font-size-base)!important;
  -webkit-text-size-adjust:100%;
}

body{
  min-height:100vh;
  margin:0!important;
  font-family:var(--az-font-main)!important;
  font-size:var(--az-font-size-base)!important;
  line-height:var(--az-line-height)!important;
  color:var(--az-color-text)!important;
  background:linear-gradient(180deg,#f7faff 0%,var(--az-color-bg) 260px,var(--az-color-bg) 100%)!important;
}

body::before,
body::after{
  display:none!important;
}

*,*::before,*::after{box-sizing:border-box}

button,input,select,textarea{
  font-family:var(--az-font-main)!important;
  font-size:12.5px!important;
  line-height:1.35!important;
}

img,svg,canvas,video{max-width:100%;height:auto}

/* Structure générale */
#app,
.app,
#main-screen,
#app-main,
.main-shell,
.main,
.content,
.view,
.client-portal,
.modules-premium-view{
  background:transparent!important;
}

.main-shell{
  grid-template-columns:236px minmax(0,1fr)!important;
}

.view,
.content{
  padding:18px 22px!important;
}

#app-main .content{
  width:100%!important;
  min-width:0!important;
}

/* Écrans chargement / connexion */
.boot-screen,
.auth-screen,
.premium-auth-surface,
#welcome-screen{
  background:linear-gradient(135deg,#10233f 0%,#1d4ed8 100%)!important;
}

.boot-card,
.auth-card,
.premium-auth-card,
#welcome-screen > div{
  border:1px solid rgba(255,255,255,.16)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.96)!important;
  box-shadow:0 28px 80px rgba(15,23,42,.28)!important;
}

.auth-brand h1,
.boot-card h1,
#welcome-screen h1{
  font-size:clamp(22px,2.8vw,34px)!important;
  line-height:1.1!important;
  color:var(--az-color-sidebar-2)!important;
}

.auth-brand p,
.boot-card p,
#welcome-screen p{
  color:var(--az-color-muted)!important;
  font-size:13px!important;
}

/* Menus admin/collaborateur/client */
.side,
.sidebar{
  width:236px!important;
  min-width:236px!important;
  background:linear-gradient(180deg,var(--az-color-sidebar) 0%,#0b1a31 100%)!important;
  color:#fff!important;
  border-right:1px solid rgba(148,163,184,.20)!important;
  box-shadow:10px 0 34px rgba(15,23,42,.10)!important;
}

.side-brand,
.sidebar-logo{
  min-height:58px!important;
  padding:13px 14px!important;
  border-bottom:1px solid rgba(255,255,255,.10)!important;
}

.side-brand strong,
.sidebar-logo h1{
  font-size:14px!important;
  line-height:1.2!important;
  letter-spacing:-.01em!important;
  color:#fff!important;
}

.side-brand span,
.sidebar-logo span{
  font-size:11px!important;
  color:rgba(226,232,240,.68)!important;
}

.side-nav,
.sidebar-nav{
  gap:4px!important;
  padding:10px 8px!important;
}

.nav-section{
  padding:11px 12px 4px!important;
  font-size:10px!important;
  letter-spacing:.07em!important;
  color:rgba(226,232,240,.44)!important;
}

.nav-btn,
.nav-item,
.side-footer .btn{
  min-height:36px!important;
  padding:8px 11px!important;
  border-radius:11px!important;
  font-size:12.5px!important;
  line-height:1.2!important;
  font-weight:750!important;
  letter-spacing:0!important;
}

.nav-btn,
.nav-item{
  color:rgba(226,232,240,.78)!important;
  background:transparent!important;
  border-left:3px solid transparent!important;
}

.nav-btn:hover,
.nav-item:hover{
  color:#fff!important;
  background:rgba(59,130,246,.16)!important;
}

.nav-btn.active,
.nav-item.active{
  color:#fff!important;
  background:rgba(37,99,235,.28)!important;
  border-left-color:#60a5fa!important;
  box-shadow:none!important;
}

.nav-item .icon,
.nav-btn .icon{
  width:20px!important;
  min-width:20px!important;
  text-align:center!important;
  font-size:15px!important;
}

/* Topbar */
.topbar,
#main-screen .topbar,
#app-main .topbar{
  min-height:60px!important;
  padding:11px 22px!important;
  background:rgba(255,255,255,.92)!important;
  border-bottom:1px solid var(--az-color-border)!important;
  box-shadow:0 8px 24px rgba(15,23,42,.045)!important;
  backdrop-filter:blur(12px)!important;
}

.topbar h2,
.topbar-title{
  margin:0!important;
  font-size:var(--az-h2)!important;
  line-height:1.16!important;
  font-weight:850!important;
  letter-spacing:-.02em!important;
  color:var(--az-color-sidebar-2)!important;
}

.eyebrow{
  font-size:10px!important;
  line-height:1.2!important;
  letter-spacing:.08em!important;
  color:var(--az-color-muted)!important;
}

.top-actions{
  gap:8px!important;
}

/* Typographie */
h1,.hero h1{
  font-size:var(--az-h1)!important;
  line-height:1.16!important;
  letter-spacing:-.025em!important;
  color:var(--az-color-sidebar-2)!important;
}

h2{font-size:var(--az-h2)!important;line-height:1.18!important;color:var(--az-color-sidebar-2)!important}
h3,.card-head h3,.card-title,.modal-title{font-size:var(--az-h3)!important;line-height:1.22!important;color:var(--az-color-sidebar-2)!important}
h4{font-size:14px!important;line-height:1.25!important;color:var(--az-color-sidebar-2)!important}
p,.item-sub,.row-sub,.muted,small{line-height:1.42!important;color:var(--az-color-muted)}
.muted,small{font-size:var(--az-font-size-small)!important}

/* Cartes, blocs, sections */
.hero,
.card,
.kpi,
.item,
.module-card,
.client-card,
.dossier-card,
.collab-pro-card,
.module-check,
.global-module-card,
.collab-rights-summary > div,
.cabinet-thread-focus-panel,
.cabinet-conversation-list-panel,
.internal-contacts-panel,
.internal-thread-panel,
.bank-reco-state-grid > div,
.fiscal-watch-card,
.audio-meeting-card,
.settings-card,
.panel,
.box,
.tile,
.workflow-card,
.bulletin-preview{
  border:1px solid var(--az-color-border)!important;
  border-radius:var(--az-radius-lg)!important;
  background:var(--az-color-surface)!important;
  box-shadow:var(--az-shadow-soft)!important;
  backdrop-filter:none!important;
}

.card,
.kpi,
.module-card,
.client-card,
.dossier-card,
.collab-pro-card,
.panel,
.box,
.tile{
  overflow:hidden;
}

.card:hover,
.kpi:hover,
.module-card:hover,
.item:hover,
.collab-pro-card:hover,
.client-card:hover,
.dossier-card:hover{
  transform:none!important;
  box-shadow:var(--az-shadow-card)!important;
  border-color:#cbd8e8!important;
}

.card-head,
.card-header,
.modal-header,
.cabinet-conversation-list-head-compact,
.internal-thread-head,
.internal-sidebar-title,
.global-modules-head{
  padding:13px 15px!important;
  border-bottom:1px solid var(--az-color-border-soft)!important;
  background:var(--az-color-surface-2)!important;
}

.card-body,
.module-usage,
.list,
.stack{
  padding:14px 15px!important;
}

.hero{
  padding:18px!important;
  margin-bottom:16px!important;
  background:linear-gradient(135deg,#ffffff 0%,#f4f8ff 100%)!important;
}

.kpi-grid,
.grid,
.modules-grid,
.global-modules-grid,
.bank-reco-state-grid{
  gap:12px!important;
}

.kpi{
  padding:14px!important;
  border-left:4px solid var(--az-color-primary)!important;
}

.kpi-label{
  font-size:10.5px!important;
  line-height:1.1!important;
  color:var(--az-color-muted)!important;
}

.kpi-value,
.collab-rights-summary strong{
  font-size:24px!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  color:var(--az-color-sidebar-2)!important;
}

.item{
  padding:10px!important;
  margin:7px 0!important;
}

.item-icon,
.module-card .ico{
  font-size:20px!important;
}

/* Boutons */
.btn,
.btn-primary,
.btn-ghost,
.btn-secondary,
.link-btn,
.icon-btn,
button:not(.nav-btn):not(.nav-item){
  min-height:34px!important;
  border-radius:11px!important;
  font-size:12.5px!important;
  font-weight:800!important;
  line-height:1.2!important;
  box-shadow:none!important;
  transition:background-color .15s ease,border-color .15s ease,color .15s ease,box-shadow .15s ease!important;
}

.btn,
.btn-primary,
.btn-ghost,
.btn-secondary{
  padding:8px 12px!important;
}

.btn.primary,
.btn-primary,
.btn.btn-primary,
.premium-submit,
.internal-send-btn,
.azl-im-send,
.azl-cm-send{
  border:1px solid var(--az-color-primary)!important;
  background:var(--az-color-primary)!important;
  color:#fff!important;
}

.btn.primary:hover,
.btn-primary:hover,
.premium-submit:hover{
  background:var(--az-color-primary-dark)!important;
  border-color:var(--az-color-primary-dark)!important;
  transform:none!important;
}

.btn.ghost,
.btn-ghost,
.btn-secondary,
.icon-btn,
.password-toggle{
  border:1px solid var(--az-color-border)!important;
  background:#fff!important;
  color:var(--az-color-text-2)!important;
}

.btn.ghost:hover,
.btn-ghost:hover,
.btn-secondary:hover,
.icon-btn:hover{
  background:#f8fafc!important;
  border-color:#cbd5e1!important;
  transform:none!important;
}

.btn.danger,
.btn-danger{
  color:var(--az-color-danger)!important;
}

/* Formulaires */
label,
.form-label,
.premium-auth-form label{
  margin-bottom:8px!important;
  font-size:12px!important;
  line-height:1.25!important;
  font-weight:750!important;
  color:#475569!important;
}

.control,
.form-control,
input:not([type="checkbox"]):not([type="radio"]),
select,
textarea,
.azl-im-select,
.azl-im-input,
.azl-cm-input{
  min-height:36px!important;
  padding:8px 11px!important;
  border:1px solid #cbd5e1!important;
  border-radius:11px!important;
  background:#fff!important;
  color:var(--az-color-text)!important;
  box-shadow:none!important;
  outline:none!important;
}

textarea,
textarea.control,
.azl-im-input,
.azl-cm-input{
  min-height:74px!important;
  resize:vertical;
}

.control:focus,
.form-control:focus,
input:focus,
select:focus,
textarea:focus{
  border-color:var(--az-color-primary)!important;
  box-shadow:0 0 0 3px rgba(37,99,235,.13)!important;
}

.form-grid{
  gap:11px!important;
  padding:14px 15px!important;
}

.form-grid.three{
  gap:11px!important;
}

/* Tableaux */
.table-wrap{
  width:100%;
  overflow:auto!important;
  border-radius:var(--az-radius-lg)!important;
}

table{
  width:100%!important;
  border-collapse:separate!important;
  border-spacing:0!important;
  font-size:12px!important;
  background:#fff!important;
}

th,
td{
  padding:8px 10px!important;
  border-bottom:1px solid var(--az-color-border-soft)!important;
  vertical-align:middle!important;
}

th{
  position:relative;
  background:#f8fafc!important;
  color:#64748b!important;
  font-size:10.5px!important;
  line-height:1.2!important;
  font-weight:850!important;
  letter-spacing:.055em!important;
  text-transform:uppercase!important;
  white-space:nowrap!important;
}

td{
  color:var(--az-color-text-2)!important;
  background:#fff!important;
}

tr:hover td{
  background:#f8fafc!important;
}

td.actions,
.actions{
  gap:6px!important;
}

/* Badges et états */
.badge,
.status-pill,
.nav-badge,
.pill,
.tag{
  min-height:22px!important;
  padding:4px 8px!important;
  border-radius:999px!important;
  font-size:10.8px!important;
  line-height:1.15!important;
  font-weight:850!important;
  box-shadow:none!important;
}

.badge.blue,.status-pill.info{background:#dbeafe!important;color:#1d4ed8!important;border-color:#bfdbfe!important}
.badge.green,.status-pill.ok{background:#dcfce7!important;color:#15803d!important;border-color:#bbf7d0!important}
.badge.gold,.badge.orange,.status-pill.warn{background:#fef3c7!important;color:#92400e!important;border-color:#fde68a!important}
.badge.red,.status-pill.err{background:#fee2e2!important;color:#b91c1c!important;border-color:#fecaca!important}
.badge.purple{background:#ede9fe!important;color:#6d28d9!important;border-color:#ddd6fe!important}

.alert,
.toast,
.empty,
.health-box{
  border-radius:var(--az-radius-md)!important;
}

.empty{
  padding:20px!important;
  color:var(--az-color-muted)!important;
  background:#fff!important;
}

/* Modales / fenêtres */
.modal,
.modal-overlay,
.ab-ai-modal,
.azl-im-panel,
.azl-cm-panel{
  backdrop-filter:none!important;
}

.modal-card,
.modal,
.ab-ai-modal-box,
.azl-im-panel,
.azl-cm-panel{
  border:1px solid var(--az-color-border)!important;
  border-radius:20px!important;
  background:#fff!important;
  box-shadow:var(--az-shadow-modal)!important;
}

.modal-card{
  padding:18px!important;
}

.modal-actions,
.azl-im-compose,
.azl-cm-compose{
  gap:8px!important;
}

/* Messageries : harmonisation visuelle sans toucher aux scripts */
.internal-premium-v167 .internal-workspace,
.cabinet-inbox-compact .cabinet-inbox-workspace-v3{
  gap:12px!important;
}

.internal-premium-v167 .internal-bubble,
.azl-im-bubble,
.azl-cm-bubble{
  border-radius:15px!important;
  font-size:12.5px!important;
  line-height:1.42!important;
}

.azl-im-btn,
.azl-cm-btn,
.ab-ai-fab{
  box-shadow:0 14px 36px rgba(37,99,235,.22)!important;
}

/* Accordéons / dossiers / collaborateurs */
.dossier-accordion,
.dossier-accordion-panel,
.collab-global-modules-zone,
#collab-global-modules-zone{
  border-color:var(--az-color-border)!important;
  background:#fff!important;
}

.global-modules-grid,
.modules-grid{
  grid-template-columns:repeat(auto-fit,minmax(210px,1fr))!important;
}

.global-module-card,
.module-check,
.module-card{
  min-height:54px!important;
  padding:11px 12px!important;
}

/* Responsive */
@media (max-width:1100px){
  .main-shell{
    grid-template-columns:1fr!important;
  }
  .side,
  .sidebar{
    position:relative!important;
    width:100%!important;
    min-width:0!important;
    height:auto!important;
    max-height:none!important;
  }
  .side-nav,
  .sidebar-nav{
    display:flex!important;
    flex-direction:row!important;
    gap:6px!important;
    overflow-x:auto!important;
    padding:8px!important;
  }
  .nav-section{display:none!important}
  .nav-btn,
  .nav-item{
    white-space:nowrap!important;
    min-width:max-content!important;
  }
  .side-footer{display:none!important}
  .kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .grid.two{grid-template-columns:1fr!important}
  .panel-tools{grid-template-columns:1fr 1fr!important}
}

@media (max-width:760px){
  html{font-size:12.5px!important}
  body{font-size:12.5px!important}
  .view,
  .content{
    padding:12px!important;
  }
  .topbar,
  #main-screen .topbar,
  #app-main .topbar{
    min-height:56px!important;
    padding:10px 12px!important;
    align-items:flex-start!important;
    flex-direction:column!important;
    gap:8px!important;
  }
  .topbar h2,
  .topbar-title{
    font-size:18px!important;
  }
  .hero{
    padding:14px!important;
    border-radius:15px!important;
  }
  h1,.hero h1{font-size:19px!important}
  h2{font-size:18px!important}
  h3,.card-head h3,.card-title,.modal-title{font-size:15px!important}
  .card-head,.card-header,.modal-header{padding:11px 12px!important}
  .card-body,.module-usage,.list,.stack{padding:12px!important}
  .kpi-grid,
  .modules-grid,
  .global-modules-grid,
  .bank-reco-state-grid,
  .panel-tools,
  .collab-rights-summary{
    grid-template-columns:1fr!important;
  }
  .btn,
  .btn-primary,
  .btn-ghost,
  .btn-secondary{
    min-height:34px!important;
  }
  .top-actions{
    width:100%!important;
  }
  .top-actions .btn{
    flex:1 1 auto!important;
  }
  th,td{
    padding:7px 8px!important;
  }
  .modal-card,
  .modal{
    width:calc(100vw - 20px)!important;
    max-width:calc(100vw - 20px)!important;
    border-radius:16px!important;
  }
}

@media (max-width:520px){
  .side-brand,
  .sidebar-logo{
    padding:11px 12px!important;
  }
  .side-nav,
  .sidebar-nav{
    padding:7px 8px!important;
  }
  .nav-btn,
  .nav-item{
    min-height:34px!important;
    padding:8px 10px!important;
    font-size:12px!important;
  }
  .kpi-value,
  .collab-rights-summary strong{
    font-size:21px!important;
  }
  .control,
  .form-control,
  input:not([type="checkbox"]):not([type="radio"]),
  select,
  textarea{
    font-size:12px!important;
  }

  /* Les champs d'authentification restent à 16 px pour éviter le zoom forcé
     d'iOS/Safari et préserver la lisibilité de la connexion mobile. */
  #auth-screen .control,
  #auth-screen input:not([type="checkbox"]):not([type="radio"]){
    font-size:16px!important;
  }
}

/* Sécurité visuelle : ne pas rendre visibles les champs techniques */
input[type="hidden"]{
  display:none!important;
  min-height:0!important;
  height:0!important;
  padding:0!important;
  border:0!important;
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-ui-standard.css */

/* AZALYS_BUNDLE_SOURCE 22/29: auth-maroc-premium-final.css | sha256=a7dbe051a83d2887587dcf63769f646a77bf5f19c3de8e0a8ae6a6816046339d */
/* AZALYS - Page d'accès marocaine premium - override final */
body:has(#auth-screen:not(.hidden)){
  margin:0 !important;
  overflow:hidden !important;
  background:#061a35 !important;
}
#auth-screen.azalys-auth-maroc{
  position:fixed !important;
  inset:0 !important;
  z-index:9999 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:18px !important;
  background:
    radial-gradient(circle at 8% 85%, rgba(20, 174, 178, .18), transparent 34%),
    radial-gradient(circle at 95% 15%, rgba(214, 166, 82, .12), transparent 30%),
    linear-gradient(135deg, #061d3b 0%, #0a3565 48%, #0b6b71 100%) !important;
  font-family: Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif !important;
}
#auth-screen.azalys-auth-maroc.hidden{display:none !important;}
#auth-screen.azalys-auth-maroc:before{
  content:"";position:absolute;inset:0;pointer-events:none;opacity:.09;
  background-image:
    linear-gradient(30deg, rgba(255,255,255,.40) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.40) 87.5%, rgba(255,255,255,.40)),
    linear-gradient(150deg, rgba(255,255,255,.40) 12%, transparent 12.5%, transparent 87%, rgba(255,255,255,.40) 87.5%, rgba(255,255,255,.40));
  background-size:86px 150px;
}
#auth-screen.azalys-auth-maroc:after{content:"";position:absolute;width:520px;height:520px;border:1px solid rgba(215,169,87,.16);border-radius:50%;left:-120px;bottom:-140px;pointer-events:none;}

.az-login-shell{
  width:calc(100vw - 36px) !important;
  height:calc(100vh - 36px) !important;
  max-width:1920px !important;
  max-height:1080px !important;
  display:grid !important;
  grid-template-columns:1.12fr .88fr !important;
  border-radius:28px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:0 30px 90px rgba(0,0,0,.38) !important;
}
.az-login-visual{
  position:relative !important;
  min-height:100% !important;
  background-image:url('../auth-maroc-premium-v5.jpg') !important;
  background-size:cover !important;
  background-position:center center !important;
  filter:saturate(1.1) contrast(1.03) brightness(1.08) !important;
  color:#fff !important;
}
.az-login-overlay{position:absolute;inset:0;background:linear-gradient(90deg, rgba(1,29,39,.86) 0%, rgba(3,70,72,.64) 38%, rgba(4,80,78,.16) 72%, rgba(4,80,78,.03) 100%) !important;}
.az-login-visual:before{content:"";position:absolute;inset:0;z-index:1;pointer-events:none;background:radial-gradient(circle at 12% 18%, rgba(216,173,91,.10), transparent 24%), linear-gradient(180deg, rgba(0,0,0,.02), rgba(0,0,0,.18));}
.az-login-visual-content{position:absolute;left:clamp(54px,5.2vw,96px);bottom:clamp(76px,10vh,140px);max-width:620px;z-index:2 !important;}
.az-ornament{width:54px;height:54px;border:1px solid rgba(217,172,90,.8);border-radius:18px;display:flex;align-items:center;justify-content:center;color:#d8ad5b;font-size:28px;margin-bottom:28px;}
.az-login-visual h2{font-size:clamp(36px,3.1vw,56px);line-height:1.20;margin:0 0 24px;font-weight:900;letter-spacing:-.045em;color:#fff !important;text-wrap:balance;text-shadow:0 14px 34px rgba(0,0,0,.28);}
.az-gold-line{display:block;width:86px;height:3px;background:#d7a957;border-radius:999px;margin:0 0 28px;}
.az-login-visual p{font-size:clamp(17px,1.15vw,21px);line-height:1.76;color:rgba(255,255,255,.95);margin:0;max-width:500px;text-shadow:0 10px 28px rgba(0,0,0,.22);}
.az-login-badges{display:none !important;}
.az-city-line{position:absolute;left:70px;bottom:58px;z-index:2;display:flex;gap:18px;align-items:flex-end;opacity:.9;}
.az-city-line span{display:block;width:32px;height:9px;border:2px solid rgba(215,169,87,.86);border-left-width:3px;transform:skewX(-16deg);background:rgba(215,169,87,.18);box-shadow:0 0 18px rgba(215,169,87,.10);}
.az-city-line span:nth-child(2n){height:14px;background:rgba(215,169,87,.55);}
.az-city-line:before{content:"";position:absolute;left:0;right:0;bottom:-16px;height:1px;background:linear-gradient(90deg, rgba(215,169,87,.85), rgba(215,169,87,.12));}

.az-login-panel{position:relative;background:radial-gradient(circle at 88% 18%, rgba(8,126,138,.055), transparent 28%), linear-gradient(180deg,#fff 0%,#fbfaf7 100%) !important;display:flex !important;align-items:center !important;justify-content:center !important;padding:clamp(36px,4vw,72px) !important;overflow:hidden !important;}
.az-login-panel:before,.az-login-panel:after{content:"";position:absolute;width:310px;height:310px;border:1px solid rgba(6,83,104,.08);border-radius:50%;pointer-events:none;}
.az-login-panel:before{right:-90px;top:-90px}.az-login-panel:after{left:-170px;bottom:-170px}
.az-login-panel-inner{position:relative;z-index:1;width:min(560px,100%) !important;margin:auto !important;}
.az-brand-logo{text-align:center;margin-bottom:34px !important;}
.az-zellige-mark{width:96px;height:96px;margin:0 auto 18px;display:flex;align-items:center;justify-content:center;position:relative;border:4px solid #075c70;border-radius:32px;transform:rotate(45deg);box-shadow:0 18px 40px rgba(5,76,89,.10), inset 0 0 0 10px rgba(8,132,134,.07);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(248,246,239,.94));}
.az-zellige-mark:before,.az-zellige-mark:after{content:"";position:absolute;inset:10px;border:3px solid #0b777b;border-radius:26px;opacity:.95;}
.az-zellige-mark:before{transform:rotate(45deg);}
.az-zellige-mark:after{transform:rotate(90deg);border-color:#d6a652;inset:26px;border-width:2px;opacity:.9;}
.az-zellige-mark span{transform:rotate(-45deg);color:#d6a652;font-size:29px;position:relative;z-index:2;text-shadow:0 4px 14px rgba(214,166,82,.25);}
.az-brand-logo h1{font-size:54px;line-height:1;margin:0;color:#082746 !important;letter-spacing:.20em;font-weight:700;text-shadow:0 10px 28px rgba(8,39,70,.06);}
.az-brand-logo p{text-transform:uppercase;letter-spacing:.18em;color:#08747c;font-size:13px;font-weight:700;margin:14px 0 0 !important;}
.az-welcome{text-align:center;margin-bottom:28px !important;}.az-welcome h2{font-size:26px;margin:0 0 8px;color:#0b2746 !important;font-weight:800}.az-welcome p{margin:0;color:#69758a;font-size:15px;}
.az-auth-form{display:block !important;margin:0 !important;padding:0 !important;background:transparent !important;border:0 !important;box-shadow:none !important;}
.az-auth-form.hidden{display:none !important;}
.az-auth-form label{display:block !important;margin:16px 0 8px;color:#27364b !important;font-size:13px;font-weight:800;}
.az-input-wrap{height:64px !important;border:1px solid #d7e0ea !important;border-radius:14px !important;background:#fff !important;display:flex !important;align-items:center !important;padding:0 16px !important;box-shadow:0 8px 22px rgba(12,38,66,.04) !important;transition:.2s ease !important;}
.az-input-wrap:focus-within{border-color:#087e8a !important;box-shadow:0 0 0 4px rgba(8,126,138,.12),0 12px 26px rgba(12,38,66,.08) !important;}
.az-input-wrap .input-icon{font-size:18px;width:30px;display:inline-flex;align-items:center;justify-content:center;opacity:.72;}
.az-input-wrap .control{border:0 !important;background:transparent !important;box-shadow:none !important;outline:none !important;height:100% !important;width:100% !important;font-size:16px !important;color:#0f243d !important;padding:0 8px !important;}
.az-input-wrap .control::placeholder{color:#9aa7b8 !important;}
.az-input-wrap .password-toggle{position:static !important;width:44px !important;height:44px !important;border:1px solid #e0e7ef !important;border-radius:12px !important;background:#fff !important;color:#53647b !important;display:flex !important;align-items:center !important;justify-content:center !important;cursor:pointer !important;}
.az-options-row{display:flex !important;align-items:center !important;justify-content:space-between !important;margin:18px 0 28px !important;gap:16px !important;}
.az-options-row .remember-check{display:flex !important;align-items:center !important;gap:9px !important;margin:0 !important;color:#58687d !important;font-size:13px !important;font-weight:700 !important;}
.az-options-row input[type="checkbox"]{width:20px;height:20px;accent-color:#087e8a;}
.az-options-row .forgot-link{border:0 !important;background:transparent !important;color:#056b84 !important;font-weight:800 !important;cursor:pointer !important;font-size:13px !important;}
.az-submit{height:64px !important;border:0 !important;border-radius:14px !important;background:linear-gradient(135deg,#07546a 0%,#087e82 54%,#063f68 100%) !important;color:#fff !important;font-size:16px !important;font-weight:900 !important;box-shadow:0 18px 36px rgba(5,83,116,.28), inset 0 1px 0 rgba(255,255,255,.22) !important;position:relative !important;overflow:hidden !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:18px !important;cursor:pointer !important;}
.az-submit:before{content:"";position:absolute;left:12%;right:12%;top:0;height:1px;background:linear-gradient(90deg,transparent,rgba(255,228,172,.75),transparent);}
.az-submit:hover{transform:translateY(-2px);filter:brightness(1.06);box-shadow:0 24px 46px rgba(5,83,116,.36), inset 0 1px 0 rgba(255,255,255,.25) !important;}
.az-submit:after{content:"";position:absolute;top:-40%;bottom:-40%;width:80px;left:-120px;background:linear-gradient(90deg,transparent,rgba(255,255,255,.22),transparent);transform:rotate(18deg);transition:left .55s ease;}
.az-submit:hover:after{left:110%;}
.az-submit .submit-arrow{position:absolute;right:26px;font-size:24px;color:#d7a957;}
.az-separator{display:flex;align-items:center;gap:18px;margin:24px 0 22px;color:#d6a652;font-weight:800;font-size:13px;}.az-separator:before,.az-separator:after{content:"";height:1px;background:#ead7b5;flex:1;}.az-client-entry{width:100%;height:58px;border:1px solid #cbd9e7;border-radius:14px;background:#fff;color:#0b2746;font-weight:900;font-size:15px;cursor:pointer;}.az-client-entry:hover{border-color:#087e8a;box-shadow:0 10px 25px rgba(9,48,77,.08)}
.az-made{text-align:center;margin-top:34px;color:#6f5a2d;font-weight:700;font-size:13px;}.auth-message{margin-top:16px !important;text-align:center !important;color:#c84646 !important;font-weight:700 !important;}
@media(max-width:980px){#auth-screen.azalys-auth-maroc{padding:0 !important;overflow:auto !important;align-items:stretch !important}.az-login-shell{width:100% !important;min-height:100vh !important;height:auto !important;border-radius:0 !important;grid-template-columns:1fr !important}.az-login-visual{min-height:280px !important}.az-login-visual-content{left:28px;right:28px;bottom:44px;max-width:none}.az-login-visual h2{font-size:30px}.az-login-visual p{font-size:15px;margin-bottom:20px}.az-login-badges,.az-city-line{display:none}.az-login-panel{padding:34px 22px 44px !important}.az-brand-logo h1{font-size:42px}.az-zellige-mark{width:70px;height:70px}}
@media(max-width:520px){.az-login-visual{min-height:220px !important}.az-login-visual-content{bottom:28px}.az-login-visual h2{font-size:25px}.az-login-visual p{display:none}.az-login-panel{padding:28px 18px 36px !important}.az-brand-logo{margin-bottom:22px !important}.az-brand-logo h1{font-size:36px;letter-spacing:.14em}.az-options-row{align-items:flex-start !important;flex-direction:column !important}.az-input-wrap,.az-submit{height:56px !important}.az-separator,.az-client-entry,.az-made{display:none}}

/* V7 - correction placement bouton afficher mot de passe */
.az-input-wrap.password-wrap{
  position:relative !important;
  padding-right:62px !important;
}
.az-input-wrap.password-wrap .control{
  padding-right:12px !important;
}
.az-input-wrap.password-wrap .password-toggle{
  position:absolute !important;
  right:12px !important;
  top:50% !important;
  transform:translateY(-50%) !important;
  width:40px !important;
  height:40px !important;
  min-width:40px !important;
  min-height:40px !important;
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-radius:12px !important;
  background:transparent !important;
  color:#53647b !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-shadow:none !important;
  line-height:1 !important;
  cursor:pointer !important;
  z-index:3 !important;
}
.az-input-wrap.password-wrap .password-toggle:hover{
  background:rgba(8,126,138,.08) !important;
  color:#075c70 !important;
}
/* AZALYS_BUNDLE_SOURCE_END: auth-maroc-premium-final.css */

/* AZALYS_BUNDLE_SOURCE 23/29: admin-dashboard-premium.css | sha256=b3fc1b84c74e1c1f00f5fdb00fe95b4572197f38c3084a9a92dc193f4cb0f114 */

/* AZALYS V8 — Dashboard Admin Premium (UI only) */
.az-admin-dashboard-page{
  --az-blue:#0b3f57;
  --az-blue-2:#0f5d72;
  --az-emerald:#087866;
  --az-gold:#c9a24a;
  --az-cream:#fbf7ee;
  --az-ink:#15313f;
  --az-muted:#6e7d86;
  --az-line:rgba(15,63,87,.12);
  --az-shadow:0 22px 60px rgba(9,43,59,.12);
  background:
    radial-gradient(circle at top left, rgba(201,162,74,.14), transparent 34%),
    radial-gradient(circle at bottom right, rgba(8,120,102,.12), transparent 28%),
    linear-gradient(135deg, #f8fbfb 0%, #fbf7ee 100%);
  border-radius:28px;
  padding:18px;
}
.az-admin-dashboard-page .card{border:1px solid var(--az-line); box-shadow:var(--az-shadow);}
.az-admin-hero{
  position:relative; overflow:hidden; border:0!important; min-height:240px; padding:34px!important;
  display:grid; grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr); gap:28px; align-items:center;
  color:white; background:
    linear-gradient(135deg, rgba(7,50,72,.96), rgba(9,96,98,.92)),
    radial-gradient(circle at 80% 15%, rgba(201,162,74,.34), transparent 36%);
}
.az-admin-hero:before{
  content:""; position:absolute; inset:-20%; opacity:.08; pointer-events:none;
  background-image:
    linear-gradient(45deg, transparent 46%, #fff 47%, #fff 53%, transparent 54%),
    linear-gradient(-45deg, transparent 46%, #fff 47%, #fff 53%, transparent 54%);
  background-size:44px 44px;
}
.az-admin-hero-content{position:relative; z-index:1; max-width:760px;}
.az-hero-kicker{display:inline-flex; align-items:center; gap:8px; padding:8px 12px; border-radius:999px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.18); color:#fff7dc; font-weight:800; letter-spacing:.08em; text-transform:uppercase; font-size:12px;}
.az-admin-hero h1{margin:18px 0 12px; color:white; font-size:clamp(30px,4vw,48px); line-height:1.02; letter-spacing:-.04em;}
.az-admin-hero p{margin:0; max-width:620px; color:rgba(255,255,255,.82); font-size:16px; line-height:1.7;}
.az-hero-actions{display:flex; flex-wrap:wrap; gap:12px; margin-top:24px;}
.az-hero-actions .btn.primary{background:linear-gradient(135deg,#c9a24a,#f0d58a); color:#173447; border:0; box-shadow:0 12px 30px rgba(201,162,74,.28);}
.az-hero-actions .btn.ghost{background:rgba(255,255,255,.1); color:white; border:1px solid rgba(255,255,255,.22);}
.az-admin-hero-panel{position:relative; z-index:1; min-height:190px; border-radius:26px; padding:24px; background:rgba(255,255,255,.12); border:1px solid rgba(255,255,255,.18); backdrop-filter:blur(18px); display:flex; flex-direction:column; justify-content:flex-end; overflow:hidden;}
.az-admin-hero-panel:before{content:"✦"; position:absolute; right:24px; top:18px; font-size:72px; color:rgba(240,213,138,.4);}
.az-admin-hero-panel:after{content:""; position:absolute; width:160px; height:160px; border:1px solid rgba(255,255,255,.14); transform:rotate(45deg); left:-42px; top:-40px;}
.az-hero-badge{align-self:flex-start; padding:7px 10px; border-radius:999px; background:rgba(240,213,138,.18); color:#ffe7a3; font-weight:900; letter-spacing:.16em; font-size:11px;}
.az-admin-hero-panel strong{margin-top:auto; font-size:24px; color:white;}
.az-admin-hero-panel small{margin-top:8px; color:rgba(255,255,255,.72);}
.az-admin-dashboard-root{margin-top:18px;}
.az-pilotage-premium{display:grid; gap:18px;}
.az-kpi-premium-grid{display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px;}
.az-kpi-premium{position:relative; overflow:hidden; padding:20px; border-radius:24px; background:rgba(255,255,255,.92); border:1px solid var(--az-line); box-shadow:0 16px 42px rgba(9,43,59,.08);}
.az-kpi-premium:before{content:""; position:absolute; inset:0 0 auto 0; height:4px; background:linear-gradient(90deg,var(--az-blue),var(--az-emerald),var(--az-gold)); opacity:.75;}
.az-kpi-premium small{display:block; color:var(--az-muted); font-size:12px; font-weight:800; text-transform:uppercase; letter-spacing:.06em;}
.az-kpi-premium strong{display:block; margin-top:10px; font-size:34px; line-height:1; color:var(--az-ink); letter-spacing:-.04em;}
.az-kpi-premium span{display:block; margin-top:8px; color:var(--az-muted); font-size:13px;}
.az-kpi-premium button{margin-top:14px;}
.az-kpi-premium.danger:before{background:linear-gradient(90deg,#b42318,#f97316);}
.az-kpi-premium.warning:before{background:linear-gradient(90deg,#c77900,#f0b429);}
.az-kpi-premium.success:before{background:linear-gradient(90deg,#087866,#21a67a);}
.az-workday-card{padding:26px!important; border-radius:28px; background:rgba(255,255,255,.94);}
.az-workday-head{display:flex; justify-content:space-between; gap:20px; align-items:flex-start; margin-bottom:18px;}
.az-workday-head h2{margin:0; color:var(--az-ink); font-size:28px; letter-spacing:-.03em;}
.az-workday-head p{margin:7px 0 0; max-width:680px; color:var(--az-muted); line-height:1.6;}
.az-workday-score{min-width:160px; text-align:center; padding:16px; border-radius:22px; background:linear-gradient(135deg,rgba(8,120,102,.1),rgba(201,162,74,.14)); border:1px solid var(--az-line);}
.az-workday-score strong{display:block; color:var(--az-blue); font-size:28px;}
.az-workday-score span{display:block; color:var(--az-muted); font-size:12px; font-weight:800; text-transform:uppercase;}
.az-dashboard-grid{display:grid; grid-template-columns:minmax(0,1.35fr) minmax(320px,.65fr); gap:18px; align-items:start;}
.az-panel-premium{border-radius:26px; padding:22px!important; background:rgba(255,255,255,.92);}
.az-panel-premium h3{margin:0; color:var(--az-ink); font-size:20px; letter-spacing:-.02em;}
.az-panel-premium .muted{line-height:1.55;}
.az-timeline{display:grid; gap:12px; margin-top:16px;}
.az-timeline-item{display:grid; grid-template-columns:42px 1fr auto; gap:12px; align-items:center; padding:14px; border-radius:18px; background:linear-gradient(135deg,#fff,#fbf7ee); border:1px solid var(--az-line);}
.az-timeline-icon{width:42px; height:42px; display:grid; place-items:center; border-radius:16px; background:rgba(15,93,114,.1);}
.az-timeline-item strong{display:block; color:var(--az-ink);}
.az-timeline-item small{display:block; color:var(--az-muted); margin-top:3px;}
.az-timeline-item .btn{white-space:nowrap;}
.az-deadline-list,.az-team-list{display:grid; gap:10px; margin-top:16px;}
.az-deadline{display:flex; justify-content:space-between; gap:12px; align-items:center; padding:13px 14px; border-radius:17px; background:#fff; border:1px solid var(--az-line);}
.az-deadline strong{color:var(--az-ink);}
.az-deadline span{font-size:12px; color:var(--az-muted);}
.az-soft-chart{height:160px; display:flex; align-items:end; gap:10px; padding:14px; margin-top:14px; border-radius:20px; background:linear-gradient(135deg,rgba(11,63,87,.05),rgba(8,120,102,.07)); border:1px solid var(--az-line);}
.az-soft-chart i{flex:1; min-width:18px; border-radius:12px 12px 4px 4px; background:linear-gradient(180deg,var(--az-emerald),var(--az-blue)); opacity:.82;}
.az-table-premium{margin-top:16px; border-radius:18px; overflow:hidden; border:1px solid var(--az-line);}
.az-table-premium table{margin:0;}
.az-table-premium th{background:#f7faf9; color:var(--az-blue); font-size:12px; text-transform:uppercase; letter-spacing:.05em;}
.az-table-premium td strong{display:block; color:var(--az-ink);}
.az-table-premium td small{display:block; color:var(--az-muted); margin-top:3px;}
.az-module-cards{display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:12px; margin-top:16px;}
.az-module-card{padding:14px; border-radius:18px; background:#fff; border:1px solid var(--az-line); display:flex; align-items:center; justify-content:space-between; gap:12px;}
.az-module-card span:first-child{font-size:20px;}
.az-module-card strong{display:block; color:var(--az-ink);}
.az-module-card em{font-style:normal; color:var(--az-muted); font-size:12px;}
.az-settings-premium{border-radius:24px!important; background:rgba(255,255,255,.9);}
.az-settings-premium summary{cursor:pointer; padding:18px 20px;}
@media (max-width:1100px){.az-admin-hero{grid-template-columns:1fr}.az-admin-hero-panel{display:none}.az-kpi-premium-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.az-dashboard-grid{grid-template-columns:1fr}.az-module-cards{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:680px){.az-admin-dashboard-page{padding:10px;border-radius:18px}.az-admin-hero{padding:24px!important;border-radius:22px}.az-workday-head{display:block}.az-workday-score{margin-top:14px;text-align:left}.az-kpi-premium-grid,.az-module-cards{grid-template-columns:1fr}.az-timeline-item{grid-template-columns:36px 1fr}.az-timeline-item .btn{grid-column:2}.az-admin-hero h1{font-size:30px}}
/* AZALYS_BUNDLE_SOURCE_END: admin-dashboard-premium.css */

/* AZALYS_BUNDLE_SOURCE 24/29: collaborateur-dashboard-premium.css | sha256=e3108eb0bbab47e1eefa8bfe6a903e21d625df9834fbb133dea02794fee28b23 */

/* AZALYS V9 — Espace collaborateur premium
   Interface visuelle uniquement : aucun changement métier ni autorisation. */
body.role-collaborateur .main{
  background:
    radial-gradient(circle at 15% 0%, rgba(203, 162, 91, .16), transparent 28%),
    radial-gradient(circle at 85% 4%, rgba(12, 94, 102, .14), transparent 30%),
    linear-gradient(135deg, #f7f3ea 0%, #edf7f5 48%, #f6f8fb 100%);
}
body.role-collaborateur .topbar{
  border:1px solid rgba(16, 74, 84, .10);
  box-shadow:0 18px 45px rgba(19, 53, 58, .08);
  background:rgba(255,255,255,.86);
  backdrop-filter: blur(14px);
}
body.role-collaborateur .side{
  background:linear-gradient(180deg, #082f38 0%, #0b4b54 48%, #06252c 100%);
  border-right:1px solid rgba(255,255,255,.10);
}
body.role-collaborateur .side-brand{
  background:rgba(255,255,255,.07);
  border:1px solid rgba(255,255,255,.12);
  border-radius:22px;
  padding:14px;
  margin-bottom:16px;
}
body.role-collaborateur .side-brand strong,
body.role-collaborateur .side-brand span,
body.role-collaborateur .nav-section-label{ color:rgba(255,255,255,.88); }
body.role-collaborateur .nav-btn{
  color:rgba(255,255,255,.86);
  border:1px solid transparent;
  border-radius:16px;
}
body.role-collaborateur .nav-btn:hover,
body.role-collaborateur .nav-btn.active{
  background:rgba(255,255,255,.12);
  border-color:rgba(255,255,255,.18);
  box-shadow:0 12px 28px rgba(0,0,0,.16);
}
.collab-premium-workspace{ position:relative; }
.collab-premium-workspace::before{
  content:"";
  position:absolute;
  inset:8px 0 auto auto;
  width:280px;
  height:280px;
  opacity:.055;
  background:
    linear-gradient(45deg, transparent 44%, #0c5e66 45% 55%, transparent 56%),
    linear-gradient(-45deg, transparent 44%, #cba25b 45% 55%, transparent 56%);
  background-size:34px 34px;
  pointer-events:none;
}
.collab-dashboard-hero{
  position:relative;
  overflow:hidden;
  display:grid;
  grid-template-columns:minmax(0, 1fr) 280px;
  gap:24px;
  align-items:center;
  padding:28px;
  border:1px solid rgba(15, 85, 95, .12);
  border-radius:30px;
  background:
    linear-gradient(135deg, rgba(7, 49, 57, .96), rgba(14, 96, 105, .92)),
    radial-gradient(circle at 10% 10%, rgba(203, 162, 91, .35), transparent 32%);
  color:#fff;
  box-shadow:0 28px 70px rgba(7, 49, 57, .22);
}
.collab-dashboard-hero::after{
  content:"";
  position:absolute;
  inset:0;
  background:
    radial-gradient(circle at 85% 20%, rgba(228, 195, 132, .24), transparent 28%),
    linear-gradient(45deg, transparent 47%, rgba(255,255,255,.06) 48% 52%, transparent 53%);
  background-size:auto, 46px 46px;
  pointer-events:none;
}
.collab-hero-main,.collab-hero-panel{ position:relative; z-index:1; }
.collab-hero-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:7px 12px;
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#f7dfaa;
  font-size:12px;
  font-weight:800;
  letter-spacing:.08em;
  text-transform:uppercase;
}
.collab-hero-main h1{
  margin:16px 0 10px;
  font-size:clamp(30px, 3.5vw, 48px);
  line-height:1.02;
  letter-spacing:-.045em;
  color:#fff;
}
.collab-hero-main p{
  max-width:760px;
  margin:0;
  color:rgba(255,255,255,.78);
  font-size:15.5px;
  line-height:1.7;
}
.collab-hero-actions{
  display:flex;
  gap:12px;
  flex-wrap:wrap;
  margin-top:22px;
}
.collab-hero-actions .btn.primary{
  background:linear-gradient(135deg, #e1bd72, #bd8e37);
  color:#10333a;
  border:0;
  box-shadow:0 16px 34px rgba(189, 142, 55, .28);
}
.collab-hero-actions .btn.ghost{
  color:#fff;
  border-color:rgba(255,255,255,.28);
  background:rgba(255,255,255,.08);
}
.collab-hero-panel{
  min-height:190px;
  border-radius:26px;
  padding:24px;
  display:flex;
  flex-direction:column;
  justify-content:center;
  border:1px solid rgba(255,255,255,.18);
  background:rgba(255,255,255,.11);
  box-shadow:inset 0 1px 0 rgba(255,255,255,.14), 0 18px 40px rgba(0,0,0,.14);
  backdrop-filter: blur(10px);
}
.collab-panel-label{
  color:#f7dfaa;
  font-size:12px;
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.08em;
}
.collab-hero-panel strong{
  margin-top:8px;
  font-size:36px;
  line-height:1;
  letter-spacing:-.04em;
  color:#fff;
}
.collab-hero-panel small{
  margin-top:12px;
  color:rgba(255,255,255,.72);
  line-height:1.5;
}
.collab-dashboard-kpis{
  display:grid;
  grid-template-columns:repeat(4, minmax(0, 1fr));
  gap:14px;
  margin:16px 0;
}
.collab-kpi{
  display:flex;
  align-items:center;
  gap:14px;
  padding:18px;
  border-radius:24px;
  border:1px solid rgba(16, 74, 84, .10);
  background:rgba(255,255,255,.88);
  box-shadow:0 16px 38px rgba(16, 74, 84, .08);
}
.collab-kpi-icon{
  width:46px;
  height:46px;
  border-radius:16px;
  display:grid;
  place-items:center;
  background:linear-gradient(135deg, rgba(14,96,105,.12), rgba(203,162,91,.18));
  font-size:22px;
}
.collab-kpi strong{
  display:block;
  color:#0a3c45;
  font-size:28px;
  line-height:1;
  letter-spacing:-.035em;
}
.collab-kpi small{ color:#6f7b80; font-weight:650; }
.collab-dashboard-strip{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:center;
  padding:18px 20px;
  margin-bottom:16px;
  border-radius:24px;
  border:1px solid rgba(16, 74, 84, .10);
  background:rgba(255,255,255,.86);
  box-shadow:0 14px 34px rgba(16, 74, 84, .06);
}
.collab-dashboard-strip strong{ display:block; color:#0a3c45; }
.collab-dashboard-strip span{ color:#6f7b80; }
.collab-strip-pills{ display:flex; gap:8px; flex-wrap:wrap; justify-content:flex-end; }
.collab-pill{
  padding:7px 10px;
  border-radius:999px;
  background:rgba(14,96,105,.10);
  color:#0b5b65 !important;
  font-weight:750;
  font-size:12px;
}
.collab-pill.gold{ background:rgba(203,162,91,.18); color:#8b6420 !important; }
.collab-pill.green{ background:rgba(31,143,112,.14); color:#1d755f !important; }
body.role-collaborateur .inbox-shell{
  border-radius:28px;
  border:1px solid rgba(16,74,84,.10);
  box-shadow:0 22px 55px rgba(16,74,84,.10);
  background:rgba(255,255,255,.90);
}
body.role-collaborateur .inbox-head{
  border-bottom:1px solid rgba(16,74,84,.08);
}
body.role-collaborateur .inbox-count-badge{
  background:linear-gradient(135deg, #0e6069, #0a3d46);
  color:#fff;
  border:0;
}
@media (max-width: 1100px){
  .collab-dashboard-hero{ grid-template-columns:1fr; }
  .collab-hero-panel{ min-height:auto; }
  .collab-dashboard-kpis{ grid-template-columns:repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 720px){
  .collab-dashboard-hero{ padding:22px; border-radius:24px; }
  .collab-dashboard-kpis{ grid-template-columns:1fr; }
  .collab-dashboard-strip{ align-items:flex-start; flex-direction:column; }
  .collab-strip-pills{ justify-content:flex-start; }
}
body.role-admin #collab-dashboard-hero,
body.role-admin #collab-dashboard-kpis,
body.role-admin #collab-dashboard-strip,
body.role-client-dossier #collab-dashboard-hero,
body.role-client-dossier #collab-dashboard-kpis,
body.role-client-dossier #collab-dashboard-strip{
  display:none !important;
}
/* AZALYS_BUNDLE_SOURCE_END: collaborateur-dashboard-premium.css */

/* AZALYS_BUNDLE_SOURCE 25/29: client-portal-premium-v10.css | sha256=68f19990e1887b87392db4477802493f242d020cc91a654b0d247e0969a4f1bc */
/* AZALYS - Espace Client Premium V10
   Refonte visuelle ciblée du portail client uniquement.
   Aucune logique métier n'est modifiée. */

:root{
  --az-client-ink:#102a43;
  --az-client-muted:#64748b;
  --az-client-bg:#f5f8fb;
  --az-client-card:#ffffff;
  --az-client-teal:#0f766e;
  --az-client-teal-2:#0e9384;
  --az-client-blue:#0f3f5f;
  --az-client-gold:#c9a24d;
  --az-client-border:rgba(15,63,95,.12);
  --az-client-shadow:0 20px 60px rgba(15,63,95,.10);
}

/* 20.87 — accueil client orienté intentions, sans exposer les écritures techniques. */
.client-ask-azalys{padding:22px;border:1px solid #cfe2ea;background:linear-gradient(135deg,#f7fcfd 0%,#eef9f7 100%);display:grid;grid-template-columns:minmax(240px,.8fr) minmax(360px,1.2fr);gap:24px;align-items:center}
.client-ask-copy{display:flex;align-items:center;gap:14px}.client-ask-copy h2,.client-commands h2,.client-company-pulse h2,.client-cabinet-progress h2{margin:2px 0 4px;color:#10243d}.client-ask-copy p{margin:0;color:#58677a}.client-ask-spark{width:48px;height:48px;border-radius:16px;background:#087f73;color:#fff;display:grid;place-items:center;font-size:24px;box-shadow:0 10px 25px rgba(8,127,115,.2)}
.client-action-search{display:grid;grid-template-columns:1fr auto;gap:9px;position:relative}.client-action-search .control{min-height:48px!important;border-color:#9fc8c3!important;background:#fff!important;font-size:15px!important}.client-ask-azalys .client-action-search .btn.primary{min-height:48px!important}.client-action-search-results{position:absolute;z-index:30;top:54px;left:0;right:0;background:#fff;border:1px solid #cbd9e3;border-radius:14px;padding:7px;box-shadow:0 18px 45px rgba(16,36,61,.17);display:none}.client-action-search-results.is-open{display:grid}.client-action-search-results button{border:0;background:#fff;border-radius:10px;padding:10px 12px;display:grid;grid-template-columns:28px 1fr auto;gap:8px;text-align:left;align-items:center;color:#10243d;min-height:44px!important}.client-action-search-results button:hover,.client-action-search-results button:focus{background:#eef8f6}.client-action-search-results button small{color:#6a7788}.client-action-search-results p{margin:8px;color:#687789}
.client-commands{padding:20px}.client-action-groups{display:grid;gap:18px}.client-action-group{min-width:0}.client-action-group h3{margin:0 0 9px;font-size:14px;color:#486074;text-transform:uppercase;letter-spacing:.05em}.client-action-card-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.client-command-card{min-width:0;min-height:126px;border:1px solid #d8e3ea;border-radius:15px;background:#fff;padding:14px;text-align:left;display:grid;grid-template-columns:34px 1fr;grid-template-rows:auto 1fr auto;column-gap:9px;color:#14283f;transition:transform .15s ease,border-color .15s ease,box-shadow .15s ease}.client-command-card>span{grid-row:1/4;font-size:25px}.client-command-card strong{font-size:14px;line-height:1.25}.client-command-card small{font-size:12px;line-height:1.35;color:#677689;margin-top:5px}.client-command-card em{font-size:11px;font-style:normal;color:#087f73;font-weight:800;margin-top:8px}.client-command-card:hover,.client-command-card:focus-visible{transform:translateY(-1px)!important;border-color:#75b8af;box-shadow:0 9px 24px rgba(16,67,76,.1)}
.client-company-pulse,.client-cabinet-progress{padding:20px}.client-quality-pill{display:inline-flex;align-items:center;min-height:34px;padding:0 12px;border-radius:999px;background:#e8f7ef;color:#12623c;font-weight:800;font-size:12px}.client-quality-pill.warn{background:#fff3dc;color:#8a5200}.client-pulse-grid{margin:14px 0 0;display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:0;border:1px solid #dbe5ec;border-radius:14px;overflow:hidden}.client-pulse-grid>div{min-width:0;padding:13px 12px;background:#fff;border-right:1px solid #e5edf2}.client-pulse-grid>div:last-child{border-right:0}.client-pulse-grid dt{font-size:11px;color:#667488;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.client-pulse-grid dd{margin:5px 0 0;font-size:17px;font-weight:900;color:#13283f}
.client-action-request-list{display:grid;gap:8px}.client-action-request-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:10px;align-items:center;padding:12px;border:1px solid #dde7ee;border-radius:13px;background:#fff}.client-action-request-row strong,.client-action-request-row small,.client-action-request-row p{display:block}.client-action-request-row small{margin-top:3px;color:#738092}.client-action-request-row p{margin:5px 0 0;color:#536478}.client-action-request-status{display:inline-flex;align-items:center;min-height:30px;padding:0 10px;border-radius:999px;background:#e8f0f6;color:#355066;font-size:11px;font-weight:850}.client-action-request-status.is-needs_information{background:#fff0dc;color:#8a5100}.client-action-request-status.is-completed{background:#e6f6ed;color:#15623e}.client-action-request-status.is-rejected,.client-action-request-status.is-cancelled{background:#f3e8e8;color:#814141}
.client-action-modal-card{max-height:min(90vh,900px);overflow:auto}.client-action-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:13px;margin-top:12px}.client-action-form-grid label{display:grid;gap:6px;font-weight:750;color:#31465a}.client-action-form-grid .span-2{grid-column:1/-1}.client-action-lines{border:1px solid #d8e4eb;border-radius:14px;padding:13px;display:grid;gap:10px}.client-action-lines legend{padding:0 6px;font-weight:850}.client-action-line{display:grid;grid-template-columns:minmax(150px,1fr) minmax(180px,1.4fr) 90px 75px repeat(4,minmax(90px,.7fr)) 38px;gap:7px;align-items:end;padding:10px;background:#f7fafc;border-radius:11px}.client-action-line label{font-size:11px}.client-action-line .wide{min-width:0}.client-action-safety{display:flex;gap:9px;margin-top:14px;padding:12px 14px;border-radius:12px;background:#edf8f5;color:#245149}.client-action-safety span{color:#526b68}
.client-action-review-modal [data-client-action-review-error][hidden]{display:none!important}.client-action-review-modal [data-client-action-review-error]{margin:12px 0;white-space:pre-wrap}
@media(max-width:1180px){.client-action-card-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-pulse-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-pulse-grid>div{border-bottom:1px solid #e5edf2}.client-action-line{grid-template-columns:repeat(4,minmax(110px,1fr))}.client-action-line .icon-btn{min-height:44px}}
@media(max-width:760px){.client-ask-azalys{grid-template-columns:1fr;padding:16px;gap:14px}.client-action-search{grid-template-columns:1fr}.client-action-search .btn{width:100%}.client-action-search-results{top:104px}.client-action-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-command-card{min-height:118px;padding:12px}.client-pulse-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.client-pulse-grid>div{border-right:1px solid #e5edf2}.client-action-request-row{grid-template-columns:1fr}.client-action-request-row .btn{width:100%;min-height:44px!important}.client-action-form-grid{grid-template-columns:1fr}.client-action-form-grid .span-2{grid-column:auto}.client-action-line{grid-template-columns:1fr 1fr}.client-action-line .wide{grid-column:1/-1}body.role-client-dossier #client-action-modal :is(.control,button),body.role-client #client-action-modal :is(.control,button){min-height:44px!important;font-size:16px!important}.client-action-safety{display:grid}}
@media(max-width:760px){html body .client-action-review-modal .modal-card button{min-height:44px!important}html body .client-action-review-modal .modal-card .icon-btn{width:44px!important;height:44px!important;min-width:44px!important}}
@media(max-width:380px){.client-action-card-grid{grid-template-columns:1fr}.client-ask-copy{align-items:flex-start}.client-pulse-grid{grid-template-columns:1fr}.client-action-line{grid-template-columns:1fr}.client-action-line .wide{grid-column:auto}}

body.role-client-dossier .app-shell,
body.role-client .app-shell{
  background:
    radial-gradient(circle at 12% 8%, rgba(201,162,77,.14), transparent 28%),
    radial-gradient(circle at 86% 14%, rgba(15,118,110,.12), transparent 32%),
    linear-gradient(135deg,#f8fbfd 0%,#eef6f7 100%);
}

body.role-client-dossier #view-client,
body.role-client #view-client,
.view.client-portal.active{
  padding:22px!important;
  background:
    linear-gradient(180deg, rgba(255,255,255,.72), rgba(255,255,255,.36)),
    repeating-linear-gradient(45deg, rgba(15,118,110,.025) 0 1px, transparent 1px 18px);
  min-height:calc(100vh - 32px);
}

.client-portal-root{
  max-width:1440px!important;
  gap:20px!important;
}

.client-mode-tabs-premium{
  position:sticky;
  top:12px;
  z-index:20;
  display:flex!important;
  gap:8px!important;
  padding:8px!important;
  border:1px solid rgba(255,255,255,.68)!important;
  border-radius:22px!important;
  background:rgba(255,255,255,.82)!important;
  backdrop-filter:blur(18px);
  box-shadow:0 14px 36px rgba(15,63,95,.08)!important;
  overflow:auto;
}

.client-mode-tabs-premium button{
  min-height:44px;
  border:0!important;
  border-radius:16px!important;
  padding:10px 14px!important;
  color:#24445d!important;
  font-weight:800!important;
  background:transparent!important;
  white-space:nowrap;
  transition:transform .18s ease, background .18s ease, box-shadow .18s ease;
}

.client-mode-tabs-premium button:hover{
  background:rgba(15,118,110,.08)!important;
  transform:translateY(-1px);
}

.client-mode-tabs-premium button.active{
  color:#fff!important;
  background:linear-gradient(135deg,var(--az-client-blue),var(--az-client-teal))!important;
  box-shadow:0 12px 28px rgba(15,118,110,.24)!important;
}

.client-mode-body{width:100%;}

.client-action-dashboard{
  display:flex;
  flex-direction:column;
  gap:20px;
}

.client-overview-strip{
  overflow:hidden;
  border:1px solid var(--az-client-border);
  border-radius:18px;
  background:rgba(255,255,255,.94);
  box-shadow:0 8px 24px rgba(15,63,95,.06);
}

.client-overview-title{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  padding:0!important;
  margin:-1px!important;
  overflow:hidden!important;
  clip:rect(0,0,0,0)!important;
  white-space:nowrap!important;
  border:0!important;
}

.client-overview-metrics{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  margin:0;
}

.client-overview-metric{
  min-width:0;
  min-height:64px;
  padding:12px 16px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  border-right:1px solid var(--az-client-border);
}

.client-overview-metric:last-child{border-right:0;}

.client-overview-metric dt{
  min-width:0;
  color:var(--az-client-muted);
  font-size:11px;
  font-weight:800;
  line-height:1.25;
}

.client-overview-metric dd{
  flex:0 0 auto;
  margin:0;
  color:var(--az-client-ink);
  font-size:22px;
  font-weight:900;
  line-height:1;
  letter-spacing:-.04em;
}

.client-premium-hero{
  position:relative;
  overflow:hidden;
  border-radius:30px;
  padding:28px;
  color:#fff;
  background:
    linear-gradient(135deg, rgba(11,47,70,.98), rgba(15,118,110,.92)),
    radial-gradient(circle at 88% 12%, rgba(201,162,77,.34), transparent 30%);
  box-shadow:var(--az-client-shadow);
}

.client-premium-hero::before{
  content:"";
  position:absolute;
  inset:0;
  opacity:.18;
  background:
    linear-gradient(30deg, transparent 46%, rgba(255,255,255,.28) 47%, transparent 49%),
    linear-gradient(150deg, transparent 46%, rgba(255,255,255,.22) 47%, transparent 49%);
  background-size:42px 42px;
  pointer-events:none;
}

.client-premium-hero-inner{
  position:relative;
  z-index:1;
  display:grid;
  grid-template-columns:minmax(0,1.45fr) minmax(320px,.9fr);
  gap:24px;
  align-items:stretch;
}

.client-premium-kicker{
  display:inline-flex;
  align-items:center;
  gap:8px;
  padding:8px 12px;
  border:1px solid rgba(255,255,255,.24);
  border-radius:999px;
  background:rgba(255,255,255,.10);
  color:#f8fafc;
  font-weight:800;
  letter-spacing:.03em;
  text-transform:uppercase;
  font-size:.74rem;
}

.client-premium-hero h1{
  margin:18px 0 10px;
  font-size:clamp(2rem,4vw,4.2rem);
  line-height:.98;
  letter-spacing:-.055em;
  color:#fff;
}

.client-premium-hero p{
  max-width:720px;
  margin:0;
  color:rgba(255,255,255,.82);
  font-size:1.02rem;
  line-height:1.7;
}

.client-premium-hero-actions{
  display:flex;
  flex-wrap:wrap;
  gap:10px;
  margin-top:24px;
}

.client-premium-hero-actions .btn.primary{
  background:linear-gradient(135deg,#d6b45f,#c9a24d)!important;
  color:#13293b!important;
  border:0!important;
  box-shadow:0 16px 30px rgba(201,162,77,.26)!important;
}

.client-premium-hero-actions .btn.ghost{
  background:rgba(255,255,255,.10)!important;
  color:#fff!important;
  border:1px solid rgba(255,255,255,.22)!important;
}

.client-premium-status{
  position:relative;
  z-index:1;
  display:grid;
  gap:12px;
}

.client-premium-status-card{
  padding:16px;
  border-radius:22px;
  background:rgba(255,255,255,.12);
  border:1px solid rgba(255,255,255,.18);
  backdrop-filter:blur(12px);
}

.client-premium-status-card small{
  color:rgba(255,255,255,.68);
  font-weight:800;
  text-transform:uppercase;
  letter-spacing:.04em;
}

.client-premium-status-card strong{
  display:block;
  margin-top:5px;
  color:#fff;
  font-size:1.4rem;
  letter-spacing:-.03em;
}

.client-today-panel.card,
.client-home-card.card,
.client-client-panel.card{
  border:1px solid rgba(15,63,95,.10)!important;
  border-radius:28px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 18px 46px rgba(15,63,95,.08)!important;
}

.client-today-panel.card{
  padding:24px!important;
}

.client-today-head{
  align-items:center!important;
  gap:18px!important;
}

.client-today-head h2{
  font-size:clamp(1.7rem,2.6vw,2.8rem)!important;
  letter-spacing:-.04em!important;
  color:var(--az-client-ink)!important;
}

.client-today-head .btn.primary,
.client-empty-state .btn.primary,
.client-action-buttons .btn.primary{
  border:0!important;
  background:linear-gradient(135deg,var(--az-client-blue),var(--az-client-teal))!important;
  box-shadow:0 12px 28px rgba(15,118,110,.20)!important;
}

.client-simple-actions{
  display:grid!important;
  grid-template-columns:repeat(6,minmax(0,1fr))!important;
  gap:14px!important;
}

.client-simple-action{
  position:relative;
  overflow:hidden;
  min-height:142px!important;
  border:1px solid rgba(15,63,95,.10)!important;
  border-radius:26px!important;
  background:rgba(255,255,255,.92)!important;
  box-shadow:0 16px 38px rgba(15,63,95,.07)!important;
  text-align:left!important;
  padding:18px!important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.client-simple-action::after{
  content:"";
  position:absolute;
  inset:auto -25% -55% 35%;
  height:110px;
  border-radius:999px;
  background:radial-gradient(circle, rgba(15,118,110,.12), transparent 70%);
}

.client-simple-action:hover{
  transform:translateY(-3px);
  box-shadow:0 22px 52px rgba(15,63,95,.12)!important;
  border-color:rgba(15,118,110,.22)!important;
}

.client-simple-action.primary{
  background:linear-gradient(135deg,#0f3f5f,#0f766e)!important;
  color:#fff!important;
}

.client-simple-action.primary strong,
.client-simple-action.primary small{color:#fff!important;}
.client-simple-action.primary small{opacity:.78;}

.client-simple-action.attention{
  border-color:rgba(201,162,77,.34)!important;
  background:linear-gradient(180deg,#fff, #fff9ea)!important;
}

.client-simple-action span{
  display:grid!important;
  place-items:center!important;
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  background:rgba(15,118,110,.10)!important;
  margin-bottom:14px!important;
  font-size:1.2rem!important;
}

.client-simple-action.primary span{background:rgba(255,255,255,.16)!important;}
.client-simple-action strong{display:block;font-size:1.02rem!important;color:var(--az-client-ink)!important;}
.client-simple-action small{display:block;margin-top:6px;color:var(--az-client-muted)!important;line-height:1.45!important;}

.client-action-list{
  display:grid;
  gap:12px;
}

.client-action-row{
  border:1px solid rgba(15,63,95,.10)!important;
  border-radius:22px!important;
  background:linear-gradient(180deg,#fff,#f9fcfd)!important;
  padding:16px!important;
  box-shadow:0 10px 24px rgba(15,63,95,.05)!important;
}

.client-action-row.urgent{
  border-color:rgba(201,162,77,.34)!important;
  background:linear-gradient(180deg,#fff,#fff9eb)!important;
}

.client-action-icon{
  width:44px!important;
  height:44px!important;
  border-radius:16px!important;
  background:rgba(15,118,110,.10)!important;
}

.client-home-split{
  display:grid!important;
  grid-template-columns:1fr 1fr!important;
  gap:18px!important;
}

.client-home-card{
  padding:22px!important;
}

.client-home-card .section-head h3,
.client-client-panel .section-head h3{
  color:var(--az-client-ink)!important;
  letter-spacing:-.02em!important;
}

.client-empty-state,
.client-action-empty,
.client-followup-empty{
  border-radius:24px!important;
  background:linear-gradient(180deg,#f8fbfd,#ffffff)!important;
  border:1px dashed rgba(15,63,95,.15)!important;
}

.client-doc-row,
.client-message-row,
.client-followup-card{
  border-radius:20px!important;
  border:1px solid rgba(15,63,95,.10)!important;
  background:#fff!important;
  box-shadow:0 10px 24px rgba(15,63,95,.05)!important;
}

.client-premium-panels{
  display:grid;
  grid-template-columns:1.05fr .95fr;
  gap:18px;
}

.client-mini-timeline,
.client-deliverables-list{
  display:grid;
  gap:10px;
}

.client-mini-item,
.client-deliverable-item{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  padding:13px 14px;
  border-radius:18px;
  border:1px solid rgba(15,63,95,.10);
  background:#fff;
}

.client-mini-item strong,
.client-deliverable-item strong{color:var(--az-client-ink);}
.client-mini-item small,
.client-deliverable-item small{color:var(--az-client-muted);display:block;margin-top:3px;}

.client-pill-soft{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:6px 10px;
  border-radius:999px;
  background:rgba(15,118,110,.10);
  color:var(--az-client-teal);
  font-weight:900;
  font-size:.78rem;
}

.client-pill-gold{
  background:rgba(201,162,77,.14);
  color:#8a6519;
}

.client-treasury-panel{
  padding:22px!important;
  border:1px solid rgba(15,118,110,.18)!important;
  border-radius:24px!important;
  background:linear-gradient(180deg,#fff,#f7fcfb)!important;
  box-shadow:0 16px 38px rgba(15,63,95,.07)!important;
}

.client-treasury-panel.is-clear{padding:18px 22px!important;}
.client-treasury-clear{display:inline-flex;align-items:center;min-height:36px;padding:7px 12px;border-radius:999px;background:#e8f8f1;color:#087353;font-size:.78rem;font-weight:900;}
.client-treasury-list{display:grid;gap:14px;margin-top:16px;}
.client-treasury-operation{padding:16px;border:1px solid rgba(15,63,95,.11);border-radius:18px;background:#fff;box-shadow:0 8px 22px rgba(15,63,95,.045);}
.client-treasury-operation.is-classified{border-color:rgba(15,118,110,.24);}
.client-treasury-operation-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;}
.client-treasury-operation-head>div{min-width:0;}
.client-treasury-operation-head strong{display:block;color:var(--az-client-ink);overflow-wrap:anywhere;}
.client-treasury-operation-head small{display:block;margin-top:4px;color:var(--az-client-muted);overflow-wrap:anywhere;}
.client-treasury-amount{flex:0 0 auto;font-weight:950;font-variant-numeric:tabular-nums;color:#9a3412;white-space:nowrap;}
.client-treasury-amount.is-credit{color:#047857;}
.client-treasury-saved{display:flex;align-items:center;flex-wrap:wrap;gap:8px;margin-top:12px;padding:9px 12px;border-radius:13px;background:#edf9f5;color:#0f5f52;}
.client-treasury-saved span{font-size:.75rem;font-weight:900;text-transform:uppercase;letter-spacing:.02em;}
.client-treasury-saved strong{font-size:.9rem;}
.client-treasury-saved small{color:#55756f;}
.client-treasury-form{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;align-items:end;margin-top:14px;}
.client-treasury-form label{display:grid;gap:6px;min-width:0;color:#38566c;font-size:.78rem;font-weight:800;}
.client-treasury-form .client-treasury-note{grid-column:1/3;}
.client-treasury-form .control{min-width:0;width:100%;}
.client-treasury-form .btn{min-height:44px;}
.client-treasury-allocation,.client-payment-declare{margin-top:14px;border:1px solid rgba(15,118,110,.18);border-radius:14px;background:#f7fcfa;overflow:hidden;}
.client-treasury-allocation>summary,.client-payment-declare>summary{cursor:pointer;list-style:none;padding:12px 14px;color:#0f5f52;font-weight:900;}
.client-treasury-allocation>summary::-webkit-details-marker,.client-payment-declare>summary::-webkit-details-marker{display:none;}
.client-treasury-allocation>summary::after,.client-payment-declare>summary::after{content:'＋';float:right;}
.client-treasury-allocation[open]>summary::after,.client-payment-declare[open]>summary::after{content:'−';}
.client-treasury-allocation form,.client-payment-declare-form{display:grid;gap:12px;padding:0 14px 14px;}
.client-treasury-invoices{display:grid;gap:8px;}
.client-treasury-invoice{display:grid;grid-template-columns:auto minmax(0,1fr) minmax(115px,160px);gap:10px;align-items:center;padding:10px;border:1px solid #dbe8e5;border-radius:11px;background:#fff;}
.client-treasury-invoice input[type="checkbox"]{width:20px;height:20px;}
.client-treasury-invoice span,.client-treasury-invoice strong,.client-treasury-invoice small{display:block;min-width:0;}
.client-treasury-invoice small{margin-top:3px;color:var(--az-client-muted);}
.client-payment-declare{margin-top:18px;background:#f7faff;border-color:#d8e4f2;}
.client-payment-declare>summary{color:#174f7e;}
.client-payment-declare-form{grid-template-columns:repeat(3,minmax(0,1fr));align-items:end;}
.client-payment-declare-form label{display:grid;gap:6px;min-width:0;color:#38566c;font-size:.78rem;font-weight:800;}
.client-payment-declare-form .control{width:100%;min-width:0;}
.client-payment-cash-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;padding:12px;border:1px solid #d6e9df;border-radius:13px;background:#f5fbf8;}
.client-payment-cash-fields[hidden]{display:none!important;}
.client-payment-cash-fields .alert{grid-column:1/-1;margin:0;}
.client-payment-check-fields{grid-column:1/-1;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:12px;border:1px solid #dbe4f2;border-radius:13px;background:#f7f9fd;}
.client-payment-check-fields[hidden]{display:none!important;}
.client-payment-check-fields .client-payment-declare-help{grid-column:1/-1;}
.client-checks{margin:14px 0;border:1px solid #dbe4ef;border-radius:14px;background:#fff;overflow:hidden;}
.client-checks>summary{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px 14px;font-weight:800;cursor:pointer;}
.client-check-list{display:grid;gap:8px;padding:0 12px 12px;}
.client-check{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:11px 12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc;}
.client-check>div{display:grid;gap:2px;min-width:0}.client-check small{color:#64748b}.client-check-amount{font-weight:900;white-space:nowrap}.client-check>.alert{grid-column:1/-1;margin:0;}
.client-check.is-rejected{border-color:#fecaca;background:#fff7f7}.client-check.is-cleared{border-color:#bbf7d0;background:#f5fff8;}
.check-lifecycle-card{display:grid;gap:16px}.check-lifecycle-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.check-lifecycle-grid>div{display:grid;gap:4px;padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.check-lifecycle-grid span{font-size:.78rem;color:#64748b}.check-lifecycle-grid strong{color:#0f2743}.check-lifecycle-card textarea{min-height:84px;resize:vertical;}
.client-business-workspace{margin:14px 0;border:1px solid #dbe4ef;border-radius:14px;background:#fff;overflow:hidden}.client-business-workspace>summary{padding:13px 14px;font-weight:850;cursor:pointer}.client-business-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px;padding:0 12px 12px}.client-business-grid>section{min-width:0;padding:12px;border:1px solid #e2e8f0;border-radius:12px;background:#f8fafc}.client-business-grid h4{margin:0 0 10px;color:#0f2743}.client-business-documents{grid-column:1/-1}.client-business-list{display:grid;gap:7px}.client-business-list article{display:grid;grid-template-columns:minmax(0,1fr) auto auto;gap:8px;align-items:center;padding:9px 10px;border:1px solid #e2e8f0;border-radius:10px;background:#fff}.client-business-list article>div{display:grid;gap:2px;min-width:0}.client-business-list small{color:#64748b}.client-business-list .is-credit{color:#047857;font-weight:850}.client-business-list .is-debit{color:#b45309;font-weight:850}
.client-sales-intro{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px;border-bottom:1px solid #e2e8f0;background:linear-gradient(135deg,#f0fdfa,#f8fafc)}
.client-sales-intro>div:first-child{display:grid;gap:4px;min-width:0}.client-sales-intro span{color:#52687b;font-size:.82rem;line-height:1.45}
.client-sales-create{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.client-sales-create .btn{min-height:42px}
.client-sales-documents{margin:12px;padding:14px;border:1px solid #dbe4ef;border-radius:13px;background:#f8fafc}.client-sales-documents h4{margin:0 0 10px;color:#0f2743}
.client-sales-document-list{display:grid;gap:8px}.client-sales-document-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto auto;align-items:center;gap:9px;padding:10px 11px;border:1px solid #e2e8f0;border-radius:11px;background:#fff}.client-sales-document-row>div{display:grid;gap:3px;min-width:0}.client-sales-document-row small{color:#64748b}.client-sales-document-row p{margin:3px 0 0;color:#b45309;font-size:.78rem}.client-sales-document-row.is-needs_information{border-color:#fbbf24;background:#fffbeb}.client-sales-document-row.is-rejected{border-color:#fecaca;background:#fff7f7}.client-sales-document-row.is-projected{border-color:#bbf7d0;background:#f5fff8}.client-sales-document-badges{display:flex!important;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:5px!important}.client-sales-document-row .route-auto{background:#dcfce7;color:#166534}.client-sales-document-row .route-review{background:#fef3c7;color:#92400e}.client-sales-document-row .route-alert{background:#fee2e2;color:#991b1b}.client-sales-risk{overflow-wrap:anywhere}
.client-sales-document-row.is-finalized{border-left:4px solid #0f9f82}.client-sales-document-actions{display:flex!important;align-items:center;justify-content:flex-end;flex-wrap:wrap;gap:6px!important}.client-sales-progress{display:flex!important;flex-wrap:wrap;gap:5px 12px!important;margin-top:4px;color:#52687b;font-size:.75rem}.client-sales-progress span{white-space:nowrap}.client-sales-progress strong{color:#0f2743}
.client-sales-document-card{max-height:min(92vh,900px);overflow:auto}.client-sales-document-card form{display:grid;gap:15px}.client-sales-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.client-sales-form-grid label,.client-sales-document-card form>label,.client-sales-review-workspace>label{display:grid;gap:6px;color:#38566c;font-size:.8rem;font-weight:800}.client-sales-form-grid .span-2{grid-column:1/-1}
.client-sales-lines-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.client-sales-lines{display:grid;gap:9px}.client-sales-line{display:grid;grid-template-columns:minmax(170px,.85fr) minmax(220px,1.2fr) 80px 85px 115px 95px 85px 42px;gap:8px;align-items:end;padding:10px;border:1px solid #dbe4ef;border-radius:12px;background:#f8fafc}.client-sales-line label{display:grid;gap:5px;color:#52687b;font-size:.74rem;font-weight:800}.client-sales-line .icon-btn{min-width:42px;min-height:42px}.client-sales-form-note{padding:10px 12px;border-radius:11px;background:#eff6ff;color:#1e4f7a;font-size:.8rem;font-weight:700}.client-sales-form-note strong{display:block;margin-bottom:3px}.client-sales-review-workspace .alert ul{margin:7px 0 0;padding-left:20px}
.client-sales-transform-sources{display:grid;gap:10px}.client-sales-transform-source{min-width:0;margin:0;padding:10px 12px 12px;border:1px solid #dbe4ef;border-radius:12px;background:#f8fafc}.client-sales-transform-source legend{max-width:100%;padding:0 6px;color:#0f2743}.client-sales-transform-source legend label{display:flex;align-items:center;gap:7px;cursor:pointer}.client-sales-transform-source legend input{width:18px;height:18px}.client-sales-transform-lines{display:grid;gap:7px;margin-top:6px}.client-sales-transform-lines label{display:grid;grid-template-columns:minmax(0,1fr) 130px;align-items:center;gap:12px}.client-sales-transform-lines label>span{display:flex;justify-content:space-between;gap:10px;min-width:0;color:#38566c;font-weight:750}.client-sales-transform-lines small{color:#64748b;white-space:nowrap}.client-sales-transform-lines input:disabled{opacity:.55;background:#e2e8f0}
.client-sales-review-summary,.client-sales-review-workspace{display:grid;gap:15px}.client-sales-review-summary{padding:16px;border:1px solid #dbe4ef;border-radius:14px;background:#fff}.client-sales-review-summary h3{margin:4px 0}.client-sales-review-kpis{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.client-sales-review-kpis>div{display:grid;gap:4px;padding:10px;border:1px solid #e2e8f0;border-radius:10px;background:#f8fafc}.client-sales-review-kpis span{color:#64748b;font-size:.73rem}.client-sales-review-kpis strong{color:#0f2743;overflow-wrap:anywhere}.sales-document-review-card{max-height:min(92vh,900px);overflow:auto}.client-sales-review-table{max-width:100%;overflow:auto;border:1px solid #e2e8f0;border-radius:12px}.client-sales-review-table table{width:100%;border-collapse:collapse}.client-sales-review-table th,.client-sales-review-table td{padding:9px 10px;border-bottom:1px solid #e2e8f0;text-align:left;white-space:nowrap}.client-sales-review-table th{background:#f1f5f9;color:#38566c;font-size:.75rem}.client-sales-review-subject,.client-sales-review-note{margin:0;padding:10px 12px;border-radius:10px;background:#f8fafc;color:#38566c}
.client-payment-declare-help{grid-column:1/3;color:var(--az-client-muted);font-size:.78rem;}
.client-payment-declare-form .btn{min-height:44px;}

.client-official-documents{
  margin-bottom:18px;
  padding:22px!important;
  border:1px solid var(--az-client-border)!important;
  border-radius:22px!important;
  background:#fff!important;
}

.client-official-documents .section-head{
  align-items:flex-start!important;
  margin-bottom:16px!important;
}

.client-official-filters{
  display:flex;
  align-items:flex-end;
  gap:10px;
  padding:12px;
  margin-bottom:14px;
  border:1px solid var(--az-client-border);
  border-radius:16px;
  background:#f8fbfd;
}

.client-official-filters label{
  display:grid;
  gap:5px;
  min-width:180px;
  color:var(--az-client-muted);
  font-size:.76rem;
  font-weight:800;
}

.client-official-count{
  margin-left:auto;
  padding:9px 12px;
  border-radius:999px;
  background:rgba(15,118,110,.10);
  color:var(--az-client-teal);
  font-size:.78rem;
  font-weight:900;
}

.client-official-list{
  display:grid;
  gap:12px;
  min-width:0;
}

.client-official-card{
  min-width:0;
  padding:16px;
  border:1px solid var(--az-client-border);
  border-radius:18px;
  background:linear-gradient(180deg,#fff,#fbfdff);
}

.client-official-card.compact{
  padding:13px;
  box-shadow:none;
}

.client-official-heading,
.client-official-artifact{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
  min-width:0;
}

.client-official-heading>div,
.client-official-artifact>div:first-child,
.client-official-artifacts{
  min-width:0;
}

.client-official-heading{
  margin-bottom:10px;
}

.client-official-heading strong,
.client-official-artifact strong{
  color:var(--az-client-ink);
}

.client-official-heading small,
.client-official-artifact small{
  display:block;
  margin-top:3px;
  color:var(--az-client-muted);
  overflow-wrap:anywhere;
  word-break:break-word;
}

.client-official-artifacts{
  display:grid;
  gap:8px;
}

.client-official-artifact{
  padding:10px 12px;
  border-radius:14px;
  background:#f5f8fb;
}

.client-official-artifact-actions{
  display:flex;
  align-items:center;
  gap:7px;
  flex:0 0 auto;
}

.client-official-more{
  color:var(--az-client-muted);
  font-weight:700;
}

.client-official-load-more{
  display:flex;
  justify-content:center;
  margin-top:14px;
}

.client-official-load-more .btn{
  min-height:44px;
}

body.role-client-dossier .sidebar,
body.role-client .sidebar{
  background:linear-gradient(180deg,#0b2f46,#0f3f5f)!important;
}

body.role-client-dossier .nav-btn.active,
body.role-client .nav-btn.active{
  background:linear-gradient(135deg,var(--az-client-teal),var(--az-client-teal-2))!important;
  color:#fff!important;
}

@media(max-width:1180px){
  .client-premium-hero-inner{grid-template-columns:1fr;}
  .client-simple-actions{grid-template-columns:repeat(3,minmax(0,1fr))!important;}
  .client-premium-panels,.client-home-split{grid-template-columns:1fr!important;}
}

@media(max-width:900px){
  .client-overview-metrics{grid-template-columns:repeat(2,minmax(0,1fr));}
  .client-overview-metric:nth-child(2){border-right:0;}
  .client-overview-metric:nth-child(-n+2){border-bottom:1px solid var(--az-client-border);}
}

@media(max-width:760px){
  .client-overview-strip{border-radius:14px;}
  .client-overview-metric{min-height:58px;padding:10px 12px;gap:8px;}
  .client-overview-metric dt{font-size:10px;}
  .client-overview-metric dd{font-size:20px;}
  .view.client-portal.active{padding:12px!important;}
  .client-premium-hero{padding:20px;border-radius:24px;}
  .client-premium-hero h1{font-size:2.1rem;}
  .client-simple-actions{grid-template-columns:1fr!important;}
  .client-mode-tabs-premium{position:relative;top:auto;border-radius:18px!important;}
  .client-premium-status{grid-template-columns:1fr;}
  .client-official-documents{padding:15px!important;border-radius:18px!important;}
  .client-official-filters{display:grid;grid-template-columns:1fr 1fr;align-items:end;}
  .client-official-filters label{min-width:0;}
  .client-official-count{grid-column:1/-1;margin-left:0;text-align:center;}
  .client-official-heading,.client-official-artifact{align-items:flex-start;flex-direction:column;}
  .client-official-artifact-actions{width:100%;}
  body.role-client-dossier .client-official-documents .btn,
  body.role-client-dossier .client-official-documents .control{min-height:44px!important;}
  body.role-client-dossier .client-official-documents .control{font-size:16px!important;}
  body.role-client-dossier .client-official-artifact-actions .btn{display:inline-flex;align-items:center;justify-content:center;flex:1;}
  .client-treasury-panel{padding:15px!important;border-radius:18px!important;}
  .client-treasury-operation{padding:13px;}
  .client-treasury-operation-head{display:grid;gap:8px;}
  .client-treasury-form{grid-template-columns:1fr;}
  .client-treasury-form .client-treasury-note{grid-column:auto;}
  .client-treasury-invoice{grid-template-columns:auto minmax(0,1fr);}
  .client-treasury-invoice>.control{grid-column:1/-1;}
  .client-payment-declare-form{grid-template-columns:1fr;}
  .client-payment-cash-fields{grid-template-columns:1fr;}
  .client-payment-check-fields{grid-template-columns:1fr;}
  .client-check{grid-template-columns:minmax(0,1fr) auto}.client-check>.badge{grid-column:1/-1;justify-self:start;}
  .check-lifecycle-grid{grid-template-columns:1fr 1fr;}
  .client-business-grid{grid-template-columns:1fr}.client-business-documents{grid-column:auto}.client-business-list article{grid-template-columns:minmax(0,1fr) auto}.client-business-list article>.badge{grid-column:1/-1;justify-self:start;}
  .client-sales-intro{align-items:stretch;flex-direction:column}.client-sales-create{display:grid;grid-template-columns:1fr 1fr}.client-sales-create .btn{min-height:44px!important}.client-sales-document-row{grid-template-columns:minmax(0,1fr) auto}.client-sales-document-row>.btn{min-height:44px!important}.client-sales-document-badges{grid-column:1/-1;justify-content:flex-start}.client-sales-form-grid{grid-template-columns:1fr}.client-sales-form-grid .span-2{grid-column:auto}.client-sales-line{grid-template-columns:1fr 1fr}.client-sales-line .client-sales-article-field,.client-sales-line .client-sales-description-field{grid-column:1/-1}.client-sales-line .icon-btn{min-height:44px;min-width:44px}.client-sales-review-kpis{grid-template-columns:1fr 1fr}body.role-client-dossier .client-sales-document-modal .client-sales-document-card .control,body.role-client-dossier .client-sales-document-modal .client-sales-document-card .btn,body.role-client-dossier .client-sales-document-modal .client-sales-document-card .icon-btn,body .sales-document-review-modal .sales-document-review-card .control,body .sales-document-review-modal .sales-document-review-card .btn,body .sales-document-review-modal .sales-document-review-card .icon-btn{min-height:44px!important;font-size:16px!important}body.role-client-dossier .client-sales-document-modal .client-sales-document-card .icon-btn,body .sales-document-review-modal .sales-document-review-card .icon-btn{min-width:44px!important}.sales-document-review-card .modal-actions{align-items:stretch;flex-direction:column}.sales-document-review-card .modal-actions .btn{width:100%}
  .client-sales-document-actions{grid-column:1/-1;justify-content:flex-start}.client-sales-document-actions .btn{min-height:44px!important}.client-sales-progress{grid-column:1/-1}.client-sales-transform-lines label{grid-template-columns:1fr}.client-sales-transform-lines label>span{align-items:flex-start;flex-direction:column;gap:2px}.client-sales-transform-lines .control{width:100%}
  .client-payment-declare-help{grid-column:auto;}
  body.role-client-dossier .client-treasury-form .control,
  body.role-client-dossier .client-treasury-form .btn,
  body.role-client-dossier .client-treasury-allocation .control,
  body.role-client-dossier .client-treasury-allocation .btn,
  body.role-client-dossier .client-payment-declare-form .control,
  body.role-client-dossier .client-payment-declare-form .btn{min-height:44px!important;font-size:16px!important;}
}

/* 20.107 — dossier import guidé et revue du coût rendu. */
.import-case-modal [hidden]{display:none!important}.import-case-card{width:min(1180px,calc(100vw - 28px))!important;max-width:1180px!important;max-height:calc(100vh - 28px)!important;overflow:auto!important}.import-case-card>.modal-head{position:sticky;top:0;z-index:3;background:#fff;border-bottom:1px solid #e4eaf0}.import-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.import-grid>label{display:grid;gap:6px;min-width:0;color:#2d4659;font-size:12px;font-weight:850}.import-grid .control{width:100%;min-width:0}.import-header-grid{padding:18px 22px;border-bottom:1px solid #e6ebef;background:#fafcfd}.import-section-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px 22px 10px}.import-section-head h3{margin:0;color:#153147}.import-section-head p{margin:5px 0 0;color:#687a8a}.import-component-row,.import-allocation-row{margin:0 22px 12px;padding:16px;border:1px solid #dfe6ec;border-radius:18px;background:#fff;box-shadow:0 8px 24px rgba(22,49,69,.045)}.import-component-row-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:12px}.import-check{grid-template-columns:auto 1fr!important;align-items:center;align-self:end;min-height:44px}.import-check input{width:18px;height:18px}.import-case-card>.alert{margin:16px 22px}.import-case-card>.modal-actions,.import-case-card form>.modal-actions{position:sticky;bottom:0;z-index:3;margin:18px 0 0;padding:14px 22px;border-top:1px solid #e2e8ed;background:rgba(255,255,255,.96);backdrop-filter:blur(8px)}.import-case-history{display:flex;gap:8px;padding:12px 22px;overflow:auto;border-bottom:1px solid #edf0f3}.import-case-history>button{display:grid;min-width:190px;min-height:44px;padding:10px 12px;border:1px solid #e2e7ec;border-radius:13px;background:#f8fafc;color:#647789;font:inherit;font-size:11px;text-align:left}.import-case-history>button:hover,.import-case-history>button:focus-visible{transform:none!important;border-color:#7aa9a1;background:#f1faf8}.import-case-history strong{color:#173449;font-size:13px}.import-review-summary{padding:18px 22px}.import-review-summary dl{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0 0 14px}.import-review-summary dl>div{padding:13px;border:1px solid #e0e7ec;border-radius:14px;background:#f8fafc}.import-review-summary dt{color:#6a7b89;font-size:11px;font-weight:850;text-transform:uppercase}.import-review-summary dd{margin:5px 0 0;color:#133047;font-size:18px;font-weight:900}.import-review-summary article{display:grid;grid-template-columns:minmax(150px,1fr) 2fr auto;gap:12px;padding:10px 0;border-bottom:1px solid #edf1f4}.import-review-summary article span,.import-review-summary article em{color:#647687;font-size:12px}.import-review-summary article em{font-style:normal}
@media(max-width:800px){.import-case-modal{padding:0!important}.import-case-card{width:100%!important;max-height:100vh!important;min-height:100vh!important;border:0!important;border-radius:0!important}.import-grid{grid-template-columns:1fr}.import-component-row,.import-allocation-row{margin-inline:12px;padding:13px}.import-header-grid,.import-section-head,.import-review-summary{padding-inline:14px}.import-review-summary dl{grid-template-columns:1fr 1fr}.import-review-summary article{grid-template-columns:1fr}.import-case-card :is(button,.btn,.control){min-height:44px!important}.import-case-card :is(input,select,textarea){font-size:16px!important}.import-case-card .modal-actions{display:grid;grid-template-columns:1fr}.import-case-card .modal-actions .btn{width:100%}}

/* 20.91 — priorité à Aujourd'hui et entrée commerciale guidée unique. */
.client-welcome-compact{padding:24px 28px;border:1px solid #e4e9ef;border-radius:24px;background:linear-gradient(135deg,#fff 0%,#f5f2ff 56%,#eef9f7 100%);box-shadow:0 14px 38px rgba(31,49,70,.055)}
.client-welcome-compact h1{margin:6px 0 3px;color:#12283a;font-size:clamp(2rem,4vw,3.4rem);line-height:1;letter-spacing:-.05em}.client-welcome-compact p{margin:0;color:#5d6f80;font-size:14px}
.client-ask-standalone{padding:18px 20px;border:1px solid #dddfea;border-radius:22px;background:#fff;box-shadow:0 12px 34px rgba(36,49,69,.06)}
@media(max-width:760px){.client-welcome-compact{padding:20px 16px;border-radius:20px}.client-welcome-compact h1{font-size:2.2rem}.client-ask-standalone{padding:14px;border-radius:18px}}

/* 20.92 — recommandations compactes : informer sans interrompre. */
body.role-client-dossier .client-today-strip.card{display:grid!important;grid-template-columns:minmax(230px,.82fr) minmax(0,1.55fr) auto;align-items:center;gap:14px;padding:13px 16px!important;border-radius:18px!important;box-shadow:0 10px 28px rgba(25,48,64,.055)!important}
body.role-client-dossier .client-today-strip.card::before{height:3px}
.client-today-strip-copy{min-width:0}.client-today-strip-copy .client-section-kicker{font-size:10px}.client-today-strip-copy h2{margin:3px 0 0;color:#173044;font-size:16px;line-height:1.25;letter-spacing:-.02em}
.client-today-recommendations{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:0}.client-today-recommendations>div{min-width:0}
.client-today-recommendation{display:grid;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;width:100%;min-width:0;min-height:48px;padding:6px 9px;border:1px solid #e1e7ed;border-radius:13px;background:#fafbfd;color:#173044;text-align:left}
.client-today-recommendation:hover,.client-today-recommendation:focus-visible{transform:none!important;border-color:#92b8b2;box-shadow:0 7px 18px rgba(25,48,64,.07)}.client-today-recommendation.is-urgent{border-color:#edd5ab;background:#fffaf1}
.client-today-recommendation-icon{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#edf7f5;font-size:16px}.client-today-recommendation.is-urgent .client-today-recommendation-icon{background:#fff0d7}
.client-today-recommendation strong,.client-today-recommendation small{display:block;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.client-today-recommendation strong{font-size:12px}.client-today-recommendation small{margin-top:2px;color:#6d7b8b;font-size:10px}
.client-today-view-all{white-space:nowrap}.client-today-calm-note{display:flex;align-items:center;gap:8px;min-width:0;margin:0;color:#557065;font-size:13px}.client-today-calm-note>span{display:grid;place-items:center;width:30px;height:30px;border-radius:10px;background:#eaf7ef;color:#17804a;font-weight:900}
@media(max-width:920px){body.role-client-dossier .client-today-strip.card{grid-template-columns:minmax(0,1fr) auto}.client-today-recommendations{grid-column:1/-1;grid-row:2}.client-today-calm-note{grid-column:1/-1}.client-today-view-all{grid-column:2;grid-row:1}}
@media(max-width:640px){body.role-client-dossier .client-today-strip.card{grid-template-columns:minmax(0,1fr) auto;gap:9px;padding:12px!important;border-radius:16px!important}.client-today-strip-copy h2{font-size:14px}.client-today-recommendations{grid-template-columns:1fr}.client-today-recommendations>div:nth-child(n+2){display:none}.client-today-view-all{min-width:86px;padding-inline:10px!important}.client-today-calm-note{font-size:12px}}

/* 20.89 — portail client piloté par l'intention, moteurs métier inchangés. */
body.role-client-dossier #db-status{display:none!important}
body.role-client-dossier.az-erp-shell #main-screen #erp-context-bar{display:none!important}
body.role-client-dossier #view-client{background:#f6f7fb!important}
body.role-client-dossier .client-portal-root{max-width:1320px!important;margin:0 auto!important}
body.role-client-dossier .side{background:linear-gradient(180deg,#102f43 0%,#0b2435 100%)!important}
body.role-client-dossier .side-nav{gap:5px!important}
body.role-client-dossier .side-nav .nav-btn{min-height:46px!important;border-radius:13px!important;font-weight:760!important}
body.role-client-dossier .side-nav .nav-btn.active{background:#fff!important;color:#123247!important;box-shadow:0 8px 24px rgba(2,13,24,.18)!important}
body.role-client-dossier .side-nav .nav-btn.active::before{background:#20a391!important}
body.role-client-dossier .erp-client-primary-nav-btn .erp-primary-nav-icon{background:rgba(255,255,255,.08)!important}
body.role-client-dossier .erp-client-primary-nav-btn.active .erp-primary-nav-icon{background:rgba(44,207,187,.16)!important;color:#9cf0e5!important}
.client-side-context{display:grid;gap:3px;padding:11px 12px;margin-bottom:8px;border:1px solid rgba(255,255,255,.12);border-radius:13px;background:rgba(255,255,255,.06);color:#fff;min-width:0}
.client-side-context.hidden{display:none!important}.client-side-context span{font-size:10px;text-transform:uppercase;letter-spacing:.08em;color:rgba(255,255,255,.58)}.client-side-context strong{font-size:12px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
body.role-client-dossier .side-footer [data-client-help]{color:#e8f3f6!important;border-color:rgba(255,255,255,.14)!important;background:rgba(255,255,255,.06)!important}

.client-intent-portal{width:100%;color:#152a3b}
.client-intent-portal .sr-only{position:absolute!important;width:1px!important;height:1px!important;padding:0!important;margin:-1px!important;overflow:hidden!important;clip:rect(0,0,0,0)!important;white-space:nowrap!important;border:0!important}
.client-intent-home,.client-secondary-page,.client-category-page{display:grid;gap:22px;width:100%}
.client-intent-hero{position:relative;overflow:visible;display:grid;gap:22px;padding:34px;border:1px solid #e8e8f1;border-radius:30px;background:linear-gradient(135deg,#fff 0%,#f5f2ff 48%,#eef9f7 100%);box-shadow:0 22px 60px rgba(38,48,75,.08)}
.client-intent-welcome{text-align:center}.client-section-kicker{display:inline-block;color:#6d5cae;font-size:11px;font-weight:900;letter-spacing:.1em;text-transform:uppercase}.client-intent-welcome h1,.client-page-hero h1,.client-category-hero h1{margin:8px 0 4px;color:#12283a;font-size:clamp(2rem,4.2vw,4rem);line-height:1;letter-spacing:-.055em}.client-intent-welcome p{margin:0;color:#4b6173;font-size:clamp(1.1rem,2vw,1.45rem);font-weight:650}
.client-ask-central{position:relative;z-index:10;grid-template-columns:minmax(210px,.72fr) minmax(360px,1.28fr);max-width:1040px;width:100%;margin:0 auto;padding:16px 18px;border-color:#d9dbe8;background:rgba(255,255,255,.94);border-radius:20px;box-shadow:0 16px 40px rgba(34,47,72,.09)}
.client-ask-central .client-ask-copy h2{font-size:17px}.client-ask-central .client-ask-copy p{font-size:13px}.client-ask-central .client-ask-spark{background:linear-gradient(135deg,#6f5bb5,#178c80)}

.client-intent-board{padding:26px;border:1px solid #e1e6ed;border-radius:28px;background:#fff;box-shadow:0 16px 44px rgba(25,48,64,.065)}
.client-intent-heading{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:17px}.client-intent-heading h2,.client-section-heading h2,.client-recommendations h2{margin:5px 0 2px;color:#132a3c;letter-spacing:-.035em}.client-intent-heading p,.client-section-heading p{margin:0;color:#607083}
.client-intent-category-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:11px}
.client-intent-category{position:relative;min-width:0;min-height:176px;padding:17px;border:1px solid #e1e6ed;border-radius:21px;background:#fff;color:#172d3f;text-align:left;display:flex;flex-direction:column;align-items:flex-start;box-shadow:none;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}
.client-intent-category:hover,.client-intent-category:focus-visible,.client-intent-category.is-active{transform:translateY(-2px)!important;border-color:var(--client-tone,#9a91c6);box-shadow:0 14px 34px color-mix(in srgb,var(--client-tone,#9a91c6) 16%,transparent)}
.client-intent-category-icon,.client-category-preview-icon,.client-company-services>button>span{display:grid;place-items:center;width:46px;height:46px;margin-bottom:14px;border-radius:15px;background:color-mix(in srgb,var(--client-tone,#6d5cae) 12%,white);color:var(--client-tone,#6d5cae);font-size:24px;font-weight:900}
.client-intent-category strong{font-size:17px}.client-intent-category small{display:block;margin-top:7px;color:#617183;line-height:1.42}.client-intent-category em{margin-top:auto;padding-top:12px;color:var(--client-tone,#6d5cae);font-size:12px;font-style:normal;font-weight:900}
.tone-sell{--client-tone:#16836f}.tone-buy{--client-tone:#7357b5}.tone-money{--client-tone:#2776b8}.tone-team{--client-tone:#c36a2b}.tone-documents{--client-tone:#168e9d}
.client-category-preview{margin-top:13px;padding:15px 17px;border:1px solid color-mix(in srgb,var(--client-tone,#6d5cae) 17%,#e4e8ed);border-radius:19px;background:#fafbfe}
.client-category-preview-head,.client-category-preview-head>div{display:flex;align-items:center;gap:11px}.client-category-preview-head{justify-content:space-between}.client-category-preview-head .client-category-preview-icon{flex:0 0 auto;width:40px;height:40px;margin:0;font-size:20px}.client-category-preview-head strong,.client-category-preview-head small{display:block}.client-category-preview-head small{margin-top:2px;color:#687789}
.client-category-preview-actions{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:13px}
.client-intent-action{min-width:0;min-height:108px;padding:13px;border:1px solid #dfe5eb;border-radius:16px;background:#fff;color:#183044;text-align:left;display:grid;grid-template-columns:34px minmax(0,1fr) auto;gap:9px;align-items:start;transition:border-color .15s ease,box-shadow .15s ease}
.client-intent-action:hover,.client-intent-action:focus-visible{transform:none!important;border-color:var(--client-tone,#7c70af);box-shadow:0 9px 24px rgba(26,50,70,.08)}.client-intent-action>span:first-child{display:grid;place-items:center;width:34px;height:34px;border-radius:11px;background:#f1f4f8;font-size:18px}.client-intent-action strong,.client-intent-action small{display:block}.client-intent-action small{margin-top:4px;color:#657688;line-height:1.35}.client-intent-action em{color:#657688;font-size:11px;font-style:normal;font-weight:850}.client-intent-action.is-compact{min-height:70px;align-items:center}.client-intent-action.is-compact small{display:none}.client-intent-action.is-compact em{align-self:center}

.client-section-heading{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin-bottom:16px}.client-today-panel.card,.client-cabinet-progress.card,.client-requested-documents.card,.client-deposited-documents.card,.client-other-actions.card,.client-category-followup.card,.client-company-grid>.card,.client-company-news.card{padding:24px!important;border:1px solid #e0e6ec!important;border-radius:24px!important;background:#fff!important;box-shadow:0 14px 38px rgba(25,48,64,.055)!important}
.client-today-panel .client-action-list{gap:9px}.client-today-panel .client-action-row{box-shadow:none!important;border-radius:17px!important}.client-today-panel .client-action-row:nth-child(n+6){display:none}
.client-situation{padding:24px;border:1px solid #e0e6ec;border-radius:26px;background:#fff;box-shadow:0 14px 38px rgba(25,48,64,.055)}
.client-situation-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.client-situation-grid>article,.client-quality-card{min-width:0;min-height:118px;padding:15px;border:1px solid #e3e8ed;border-radius:17px;background:#fafbfd;text-align:left;color:#173044;display:flex;flex-direction:column;align-items:flex-start}.client-situation-grid span{color:#647488;font-size:11px;font-weight:850}.client-situation-grid strong{margin-top:8px;font-size:21px;letter-spacing:-.04em}.client-situation-grid small{margin-top:auto;padding-top:8px;color:#758396;line-height:1.3}.client-situation-grid .needs-attention{border-color:#edd5ab;background:#fffaf1}.client-quality-card:hover,.client-quality-card:focus-visible{transform:none!important;border-color:#8dbbb4}

.client-page-hero,.client-category-hero{position:relative;padding:28px 30px;border:1px solid #e0e5ed;border-radius:28px;background:linear-gradient(135deg,#fff,#f5f3fc);box-shadow:0 16px 44px rgba(25,48,64,.06)}.client-page-hero p,.client-category-hero p{max-width:760px;margin:8px 0 0;color:#607184;font-size:15px;line-height:1.6}.client-page-actions{display:flex;gap:9px;margin-top:18px}.client-back-link{margin-bottom:16px;border:0;background:transparent;color:#516578;font-weight:850}.client-category-hero{display:grid;grid-template-columns:66px minmax(0,1fr);align-items:center;column-gap:18px}.client-category-hero .client-back-link{grid-column:1/-1;justify-self:start}.client-category-hero-icon{display:grid;place-items:center;width:66px;height:66px;border-radius:21px;background:color-mix(in srgb,var(--client-tone,#6d5cae) 12%,white);color:var(--client-tone,#6d5cae);font-size:34px;font-weight:900}.client-category-hero h1{font-size:clamp(1.8rem,3vw,3rem)}
.client-category-layout{display:grid;grid-template-columns:minmax(0,1fr) 320px;gap:18px;align-items:start}.client-category-action-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:11px}.client-recommendations{position:sticky;top:18px;padding:21px;border:1px solid #e0e6ed;border-radius:22px;background:#fff}.client-recommendations>div{display:grid;gap:8px;margin-top:14px}.client-recommendations article{display:grid;grid-template-columns:34px auto minmax(0,1fr);gap:9px;align-items:center;padding:11px;border-radius:13px;background:#f7f9fc}.client-recommendations article>span{font-size:18px}.client-recommendations article>strong{color:#173146}.client-recommendations article>small{color:#657588;line-height:1.3}
.client-operation-shortcuts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}.client-operation-shortcuts button{min-height:92px;padding:14px;border:1px solid #e0e6ec;border-radius:18px;background:#fff;color:#183044;display:grid;grid-template-columns:40px 1fr;grid-template-rows:auto auto;gap:3px 10px;text-align:left}.client-operation-shortcuts span{grid-row:1/3;display:grid;place-items:center;width:40px;height:40px;border-radius:13px;background:color-mix(in srgb,var(--client-tone,#6d5cae) 12%,white);color:var(--client-tone,#6d5cae);font-size:21px}.client-operation-shortcuts small{color:#687789}
.client-documents-page .client-official-documents,.client-documents-page .client-official-vault{margin:0}.client-documents-page .client-followup-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
.client-company-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.client-company-identity{display:grid;grid-template-columns:1fr 1fr;margin:0;gap:0 18px}.client-company-identity>div{padding:12px 0;border-bottom:1px solid #edf0f3}.client-company-identity dt{color:#68788a;font-size:11px;font-weight:850}.client-company-identity dd{margin:5px 0 0;color:#173044;font-weight:760;overflow-wrap:anywhere}.client-company-services{display:grid;gap:8px}.client-company-services>button{min-height:72px;padding:10px 12px;border:1px solid #e3e8ed;border-radius:15px;background:#fafbfd;color:#173044;display:grid;grid-template-columns:42px 1fr;text-align:left;gap:2px 10px}.client-company-services>button>span{grid-row:1/3;width:42px;height:42px;margin:0;font-size:20px}.client-company-services strong,.client-company-services small{display:block}.client-company-services small{color:#6c7b8c}.client-company-news .client-section-heading{margin:0}

@media(max-width:1120px){
  .client-intent-category-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-intent-category{min-height:160px}.client-category-preview-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.client-situation-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.client-category-layout{grid-template-columns:1fr}.client-recommendations{position:static}.client-operation-shortcuts{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media(max-width:760px){
  body.role-client-dossier.az-erp-shell #main-screen .client-intent-portal :is(button,.btn,.control){min-height:44px!important}
  body.role-client-dossier #view-client{padding:10px!important}.client-intent-home,.client-secondary-page,.client-category-page{gap:14px}.client-intent-hero{padding:22px 14px;border-radius:22px}.client-intent-welcome h1{font-size:2.2rem}.client-ask-central{grid-template-columns:1fr;padding:14px;border-radius:17px}.client-ask-central .client-ask-copy{align-items:center}.client-intent-board,.client-today-panel.card,.client-cabinet-progress.card,.client-requested-documents.card,.client-deposited-documents.card,.client-other-actions.card,.client-category-followup.card,.client-company-grid>.card,.client-company-news.card,.client-situation{padding:16px!important;border-radius:19px!important}.client-intent-heading,.client-section-heading{align-items:flex-start;flex-direction:column}.client-section-heading>.btn{width:100%;min-height:44px!important}.client-intent-category-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.client-intent-category{min-height:150px;padding:13px;border-radius:17px}.client-intent-category-icon{width:42px;height:42px;margin-bottom:10px}.client-intent-category strong{font-size:15px}.client-intent-category small{font-size:11px}.client-category-preview{padding:12px}.client-category-preview-head{align-items:flex-start;flex-direction:column}.client-category-preview-head>.btn{width:100%;min-height:44px!important}.client-category-preview-actions{grid-template-columns:1fr}.client-intent-action,.client-intent-action.is-compact{min-height:72px}.client-situation-grid{grid-template-columns:1fr 1fr}.client-situation-grid>article,.client-quality-card{min-height:108px}.client-page-hero,.client-category-hero{padding:20px 17px;border-radius:21px}.client-page-hero h1,.client-category-hero h1{font-size:2rem}.client-category-hero{grid-template-columns:50px 1fr}.client-category-hero-icon{width:50px;height:50px;border-radius:16px;font-size:25px}.client-category-action-grid{grid-template-columns:1fr}.client-operation-shortcuts{grid-template-columns:1fr 1fr}.client-documents-page .client-followup-grid{grid-template-columns:1fr}.client-company-grid{grid-template-columns:1fr}.client-company-identity{grid-template-columns:1fr}.client-intent-portal :is(button,.btn,.control){min-height:44px!important}.client-intent-portal :is(input,select,textarea){font-size:16px!important}
}
@media(max-width:380px){.client-intent-category-grid,.client-situation-grid,.client-operation-shortcuts{grid-template-columns:1fr}.client-intent-category{min-height:132px}}

/* 20.90 — divulgation progressive et parcours client guidés. */
.client-intent-portal [hidden],.client-guided-modal [hidden]{display:none!important}
.client-guided-category{max-width:940px;margin:0 auto}.client-guided-category .client-category-hero{max-width:860px;margin:0 auto;width:100%}
.client-guided-choice-list{display:grid;gap:12px;max-width:760px;width:100%;margin:0 auto}
.client-guided-choice{display:grid;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:15px;width:100%;min-height:86px;padding:16px 18px;border:1px solid #dce4eb;border-radius:19px;background:#fff;color:#173044;text-align:left;box-shadow:0 9px 28px rgba(24,48,67,.055);transition:border-color .15s ease,box-shadow .15s ease}
.client-guided-choice:hover,.client-guided-choice:focus-visible{transform:none!important;border-color:var(--client-tone,#7567ad);box-shadow:0 13px 32px color-mix(in srgb,var(--client-tone,#7567ad) 13%,transparent)}
.client-guided-choice>span:first-child{display:grid;place-items:center;width:48px;height:48px;border-radius:15px;background:color-mix(in srgb,var(--client-tone,#7567ad) 11%,white);color:var(--client-tone,#7567ad);font-size:23px}
.client-guided-choice strong,.client-guided-choice small{display:block}.client-guided-choice strong{font-size:17px}.client-guided-choice small{margin-top:4px;color:#637486;line-height:1.38}.client-guided-choice em{color:var(--client-tone,#7567ad);font-size:12px;font-style:normal;font-weight:900;white-space:nowrap}
.client-guided-category-foot{display:flex;align-items:center;justify-content:space-between;gap:16px;max-width:760px;width:100%;margin:2px auto 0;color:#718091;font-size:12px}
.client-guided-modal{position:fixed!important;inset:0!important;z-index:10050!important;padding:24px!important;background:rgba(245,248,251,.985)!important;backdrop-filter:none!important;overflow:auto!important}
.client-guided-card{display:flex!important;flex-direction:column;width:min(900px,100%)!important;max-width:900px!important;min-height:min(680px,calc(100vh - 48px));max-height:none!important;margin:auto!important;padding:0!important;overflow:hidden!important;border:1px solid #dbe4eb!important;border-radius:28px!important;background:#fff!important;box-shadow:0 28px 80px rgba(18,39,55,.14)!important}
.client-guided-head{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:20px;padding:24px 28px;border-bottom:1px solid #e5ebf0;background:#fbfcfd}.client-guided-head h2{margin:4px 0;color:#132a3c;font-size:clamp(1.45rem,3vw,2.1rem);letter-spacing:-.035em}.client-guided-head p{margin:5px 0 0;color:#607183}.client-guided-head>strong{padding:9px 12px;border-radius:999px;background:#eee9ff;color:#5f50a4;font-size:12px;white-space:nowrap}
.client-guided-card>form{display:flex;flex:1;min-height:0;flex-direction:column}.client-guided-step{flex:1;padding:clamp(24px,5vw,54px);overflow:auto}.client-guided-step>h3{max-width:690px;margin:8px 0 28px;color:#102b3e;font-size:clamp(1.5rem,3vw,2.35rem);line-height:1.12;letter-spacing:-.04em}.client-guided-step .client-action-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));max-width:720px}.client-guided-step .client-action-form-grid>label:only-child{grid-column:1/-1;max-width:520px}.client-guided-step .client-action-lines{margin:0}.client-guided-step .client-action-line{grid-template-columns:repeat(4,minmax(110px,1fr));align-items:end}.client-guided-step .client-action-line .wide{grid-column:span 2}
.client-guided-actions{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:17px 28px;border-top:1px solid #e5ebf0;background:#fbfcfd}.client-guided-actions .btn{min-width:132px;min-height:46px}
.client-guided-review [data-client-wizard-review]>dl,.client-guided-review [data-client-sales-review]>dl{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;max-width:720px;margin:0 0 24px}.client-guided-review dl>div{min-width:0;padding:12px 14px;border:1px solid #e2e8ed;border-radius:13px;background:#f9fbfc}.client-guided-review dt{color:#697988;font-size:11px;font-weight:850;text-transform:uppercase}.client-guided-review dd{margin:5px 0 0;overflow-wrap:anywhere;color:#173044;font-weight:750}
.client-guided-success{align-items:center!important;justify-content:center!important;min-height:min(540px,calc(100vh - 48px));padding:48px!important;text-align:center}.client-guided-success>span{display:grid;place-items:center;width:76px;height:76px;border-radius:50%;background:#def7e9;color:#087a48;font-size:38px;font-weight:900}.client-guided-success h2{margin:22px 0 6px;color:#123047;font-size:2rem}.client-guided-success p{max-width:620px;margin:0;color:#5f7181;line-height:1.55}.client-guided-success>div{display:flex;justify-content:center;flex-wrap:wrap;gap:10px;margin-top:28px}
body.client-guided-focus{overflow:hidden!important}.client-guided-modal :is(input,select,textarea){font-size:16px!important}.client-guided-modal :is(button,.btn,.control){min-height:44px}
@media(max-width:760px){
  .client-guided-modal{padding:0!important}.client-guided-card{min-height:100vh!important;width:100%!important;border:0!important;border-radius:0!important}.client-guided-head{grid-template-columns:auto 1fr;gap:12px;padding:15px}.client-guided-head>strong{grid-column:1/-1;justify-self:start}.client-guided-step{padding:24px 15px}.client-guided-step>h3{margin-bottom:22px;font-size:1.65rem}.client-guided-step .client-action-form-grid{grid-template-columns:1fr}.client-guided-step .client-action-form-grid .span-2{grid-column:auto}.client-guided-step .client-action-line{grid-template-columns:1fr 1fr}.client-guided-step .client-action-line .wide{grid-column:1/-1}.client-guided-actions{position:sticky;bottom:0;padding:12px 15px}.client-guided-actions .btn{min-width:0}.client-guided-review [data-client-wizard-review]>dl,.client-guided-review [data-client-sales-review]>dl{grid-template-columns:1fr}.client-guided-choice{grid-template-columns:44px minmax(0,1fr);padding:13px}.client-guided-choice>span:first-child{width:44px;height:44px}.client-guided-choice em{grid-column:2}.client-guided-category-foot{align-items:stretch;flex-direction:column}.client-guided-category-foot .btn{width:100%}.client-guided-success{padding:28px 18px!important}.client-guided-success>div{width:100%;flex-direction:column}.client-guided-success .btn{width:100%}
}
/* AZALYS_BUNDLE_SOURCE_END: client-portal-premium-v10.css */

/* AZALYS_BUNDLE_SOURCE 26/29: azalys-global-modules-premium-v12.css | sha256=5ffd78355e2f37756e9fcb759c75a1f5b194523d0ff3f2458e1f92b4456b1302 */
/* ==========================================================
   AZALYS — Harmonisation premium globale modules V12
   Objectif : appliquer l'identité marocaine premium à tous
   les modules opérationnels sans toucher aux flux métier.
   ========================================================== */
:root{
  --az-bg:#f4f8f8;
  --az-bg-soft:#eef6f4;
  --az-card:#ffffff;
  --az-navy:#08324a;
  --az-navy-2:#0b3f58;
  --az-teal:#0f766e;
  --az-teal-2:#0d9488;
  --az-emerald:#047857;
  --az-gold:#c89b3c;
  --az-gold-soft:#f5ead0;
  --az-ink:#102a43;
  --az-muted:#64748b;
  --az-line:#dbe7e5;
  --az-shadow:0 18px 45px rgba(8,50,74,.10);
  --az-shadow-soft:0 10px 26px rgba(8,50,74,.08);
  --az-radius:18px;
  --az-radius-sm:12px;
}

/* Base générale — ne modifie pas le moteur métier */
body{background:linear-gradient(135deg,#f7fbfb 0%,#eef7f5 52%,#f8f4ea 100%) !important;color:var(--az-ink);}
#app-main,.app-shell,.main{background:linear-gradient(135deg,#f7fbfb 0%,#eef7f5 52%,#f8f4ea 100%) !important;}

/* Motif discret zellige sur les espaces internes */
#app-main::before,.app-shell::before{
  content:"";position:fixed;inset:0;pointer-events:none;z-index:0;opacity:.38;
  background-image:
    radial-gradient(circle at 18px 18px,rgba(200,155,60,.10) 0 1.5px,transparent 2px),
    linear-gradient(135deg,rgba(15,118,110,.045) 25%,transparent 25%),
    linear-gradient(225deg,rgba(15,118,110,.04) 25%,transparent 25%);
  background-size:36px 36px,52px 52px,52px 52px;
}
#app-main > *,.app-shell > *{position:relative;z-index:1;}

/* Sidebar premium commune */
.sidebar,.app-sidebar,.side-nav{
  background:linear-gradient(180deg,#06283d 0%,#08324a 45%,#0f766e 100%) !important;
  box-shadow:18px 0 40px rgba(6,40,61,.18) !important;
  border-right:1px solid rgba(255,255,255,.10) !important;
}
.sidebar-logo,.sidebar-brand,.app-brand{
  border-bottom:1px solid rgba(255,255,255,.13) !important;
  background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(255,255,255,.03)) !important;
}
.sidebar-logo h1,.sidebar-brand h1,.brand-title{
  letter-spacing:.2px !important;color:#fff !important;text-shadow:0 2px 10px rgba(0,0,0,.18);
}
.sidebar-logo span,.sidebar-brand span{color:rgba(255,255,255,.70) !important;}
.nav-section{
  color:rgba(255,255,255,.50) !important;
  letter-spacing:.12em !important;
  font-weight:800 !important;
  margin-top:10px !important;
}
.nav-item,.nav-btn,.side-nav a,.side-nav button{
  border-radius:14px !important;
  margin:4px 10px !important;
  transition:transform .16s ease,background .16s ease,box-shadow .16s ease,color .16s ease !important;
}
.nav-item:hover,.nav-btn:hover,.side-nav a:hover,.side-nav button:hover{
  transform:translateX(3px);
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
}
.nav-item.active,.nav-btn.active,.side-nav .active{
  background:linear-gradient(135deg,rgba(255,255,255,.22),rgba(200,155,60,.20)) !important;
  color:#fff !important;
  box-shadow:0 10px 22px rgba(0,0,0,.18),inset 0 0 0 1px rgba(255,255,255,.18) !important;
}
.nav-item .icon,.nav-btn .icon{filter:drop-shadow(0 2px 6px rgba(0,0,0,.20));}

/* Topbar et headers */
.topbar,.app-topbar,.page-topbar,.main-header{
  background:rgba(255,255,255,.78) !important;
  backdrop-filter:blur(14px) !important;
  border:1px solid rgba(219,231,229,.78) !important;
  border-radius:0 0 22px 22px !important;
  box-shadow:0 12px 32px rgba(8,50,74,.08) !important;
}
.topbar h2,.page-title,h1,h2,h3{color:var(--az-navy) !important;}
.subtitle,.muted,small{color:var(--az-muted) !important;}

/* Contenu et cartes */
.main,.content,.page-content,.view,.module-content{
  color:var(--az-ink);
}
.card,.stat-card,.kpi-card,.panel,.widget,.box,.section-card,.module-card,
.form-card,.table-card,.dashboard-card,.work-card,.alert-card{
  background:rgba(255,255,255,.90) !important;
  border:1px solid rgba(219,231,229,.92) !important;
  border-radius:var(--az-radius) !important;
  box-shadow:var(--az-shadow-soft) !important;
}
.card:hover,.stat-card:hover,.kpi-card:hover,.module-card:hover,.widget:hover{
  box-shadow:var(--az-shadow) !important;
  transform:translateY(-1px);
}
.card-header,.panel-header,.modal-header,.section-header{
  border-bottom:1px solid var(--az-line) !important;
  background:linear-gradient(135deg,rgba(15,118,110,.07),rgba(200,155,60,.07)) !important;
  border-radius:var(--az-radius) var(--az-radius) 0 0 !important;
}

/* Grilles de modules / dashboards */
.stats-grid,.kpi-grid,.dashboard-grid,.modules-grid,.cards-grid,.grid{
  gap:16px !important;
}
.stat-value,.kpi-value,.metric-value{color:var(--az-navy) !important;font-weight:850 !important;}
.stat-label,.kpi-label,.metric-label{color:var(--az-muted) !important;font-weight:700 !important;}

/* Sections par métier — bandeau premium général */
.page-header,.module-header,.hero,.module-hero,.az-achats-hero,.az-achats-minihead{
  border-radius:24px !important;
  background:
    linear-gradient(135deg,rgba(8,50,74,.96),rgba(15,118,110,.90)),
    radial-gradient(circle at top right,rgba(200,155,60,.35),transparent 30%) !important;
  color:#fff !important;
  box-shadow:var(--az-shadow) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  overflow:hidden;
}
.page-header h1,.page-header h2,.module-header h1,.module-header h2,.hero h1,.hero h2,.module-hero h1,.az-achats-hero h1,.az-achats-minihead h1{color:#fff !important;}
.page-header p,.module-header p,.hero p,.module-hero p,.az-achats-hero p,.az-achats-minihead p{color:rgba(255,255,255,.80) !important;}
.page-header::after,.module-header::after,.hero::after,.module-hero::after,.az-achats-hero::after,.az-achats-minihead::after{
  content:"";position:absolute;right:-70px;top:-70px;width:220px;height:220px;border-radius:50%;
  background:radial-gradient(circle,rgba(200,155,60,.35),transparent 64%);pointer-events:none;
}

/* Formulaires */
input,select,textarea,.form-control,.control{
  border:1px solid #d7e5e2 !important;
  border-radius:14px !important;
  background:#fff !important;
  color:var(--az-ink) !important;
  transition:border-color .16s ease,box-shadow .16s ease,background .16s ease !important;
}
input:focus,select:focus,textarea:focus,.form-control:focus,.control:focus{
  border-color:rgba(15,118,110,.70) !important;
  box-shadow:0 0 0 4px rgba(15,118,110,.12) !important;
  outline:none !important;
}
label,.form-label{color:var(--az-navy) !important;font-weight:750 !important;}
.section-divider,.section-title{
  border-left:4px solid var(--az-gold) !important;
  background:linear-gradient(90deg,rgba(200,155,60,.14),rgba(15,118,110,.06)) !important;
  color:var(--az-navy) !important;
  border-radius:12px !important;
  text-transform:none !important;
  letter-spacing:.02em !important;
}

/* Boutons */
.btn,button,.button{
  border-radius:14px !important;
  font-weight:800 !important;
  transition:transform .16s ease,box-shadow .16s ease,background .16s ease,border-color .16s ease !important;
}
.btn:hover,button:hover,.button:hover{transform:translateY(-1px);}
.btn-primary,.btn.primary,.primary,.btn-success,.btn.btn-primary{
  background:linear-gradient(135deg,var(--az-teal),var(--az-emerald)) !important;
  border-color:transparent !important;
  color:#fff !important;
  box-shadow:0 12px 24px rgba(15,118,110,.24) !important;
}
.btn-primary:hover,.btn.primary:hover,.primary:hover,.btn-success:hover{box-shadow:0 16px 30px rgba(15,118,110,.30) !important;}
.btn-ghost,.btn.ghost,.ghost,.btn-secondary{
  background:rgba(255,255,255,.82) !important;
  border:1px solid var(--az-line) !important;
  color:var(--az-navy) !important;
}
.btn-danger,.danger{background:linear-gradient(135deg,#b91c1c,#dc2626) !important;color:#fff !important;border-color:transparent !important;}

/* Badges / alertes */
.badge,.pill,.tag,.status{
  border-radius:999px !important;
  font-weight:800 !important;
  border:1px solid rgba(15,118,110,.10) !important;
}
.badge-blue,.badge.info,.pill.info{background:#e8f4ff !important;color:#075985 !important;}
.badge-green,.badge.success,.pill.success{background:#e7f8f1 !important;color:#047857 !important;}
.badge-gold,.badge-warning,.badge.warn,.pill.warn{background:var(--az-gold-soft) !important;color:#8a6518 !important;}
.badge-red,.badge-danger,.pill.danger{background:#fee2e2 !important;color:#991b1b !important;}
.alert,.notice{
  border-radius:16px !important;
  border:1px solid var(--az-line) !important;
  box-shadow:0 8px 22px rgba(8,50,74,.06) !important;
}
.alert-info,.alert.info{background:linear-gradient(135deg,#eef9f8,#f9fbff) !important;color:var(--az-navy) !important;}

/* Tableaux */
.table-wrap,table{
  border-radius:18px !important;
  overflow:hidden !important;
}
table{
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:#fff !important;
  box-shadow:0 8px 24px rgba(8,50,74,.05) !important;
}
thead th,table thead td{
  background:linear-gradient(135deg,#eef7f5,#f6f1e6) !important;
  color:var(--az-navy) !important;
  border-bottom:1px solid var(--az-line) !important;
  font-weight:850 !important;
}
tbody tr{transition:background .14s ease,transform .14s ease;}
tbody tr:hover{background:#f7fbfa !important;}
td,th{border-color:#edf3f2 !important;}
.num,.amount,.montant{text-align:right;font-variant-numeric:tabular-nums;}

/* Modales */
.modal,.modal-content,.dialog,.dialog-content{
  border-radius:24px !important;
  border:1px solid rgba(219,231,229,.95) !important;
  box-shadow:0 28px 70px rgba(8,50,74,.22) !important;
}
.modal-backdrop,.dialog-backdrop{backdrop-filter:blur(8px) !important;}

/* Spécifique modules historiques : pages générées sans classes métier */
#app-main .main{padding:0 !important;}
#app-main .main > .topbar{margin:0 0 18px 0 !important;}
#app-main .content,#app-main .page-content{padding:22px !important;}
#app-main .page,#app-main [id^="page-"]{
  animation:azFadeUp .22s ease both;
}
@keyframes azFadeUp{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}

/* Harmonisation modules nommés */
body[data-az-module="commercial"] .module-header,
body[data-az-module="commercial"] .page-header{background:linear-gradient(135deg,#08324a,#0f766e) !important;}
body[data-az-module="finance"] .module-header,
body[data-az-module="finance"] .page-header{background:linear-gradient(135deg,#082f49,#0f766e) !important;}
body[data-az-module="paie"] .module-header,
body[data-az-module="paie"] .page-header{background:linear-gradient(135deg,#08324a,#047857) !important;}
body[data-az-module="stock"] .module-header,
body[data-az-module="stock"] .page-header{background:linear-gradient(135deg,#064e3b,#0f766e) !important;}
body[data-az-module="juridique"] .module-header,
body[data-az-module="juridique"] .page-header{background:linear-gradient(135deg,#11203a,#8a6518) !important;}

/* Cartes hub ERP */
#erp-hub [onclick],.hub-card{
  border-radius:22px !important;
  box-shadow:var(--az-shadow-soft) !important;
  border:1px solid rgba(219,231,229,.80) !important;
}
#erp-hub [onclick]:hover,.hub-card:hover{box-shadow:var(--az-shadow) !important;transform:translateY(-3px) !important;}

/* Responsive */
@media (max-width: 900px){
  .main,.content,.page-content{padding:14px !important;}
  .topbar,.app-topbar{border-radius:0 0 18px 18px !important;}
  .card,.panel,.widget,.module-card{border-radius:16px !important;}
  table{font-size:12px !important;}
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-global-modules-premium-v12.css */

/* AZALYS_BUNDLE_SOURCE 27/29: azalys-erp-shell-v2054.css | sha256=6074f362371c8c6b6d8ff82a18ff5c08c7552f19372542ceeb833dfc57baba53 */
/* AZALYS 20.54 — couche ergonomique ERP.
   Cette feuille est volontairement chargée en dernier et reste limitée aux
   shells ERP afin de préserver les écrans métier et leurs hooks historiques. */

body.az-erp-shell,
body.az-erp-legacy-shell {
  --erp-font: Inter, "Segoe UI", Roboto, Arial, sans-serif;
  --erp-bg: #f3f5f8;
  --erp-surface: #ffffff;
  --erp-surface-muted: #f8fafc;
  --erp-text: #172033;
  --erp-muted: #5f6b7a;
  --erp-border: #d7dee8;
  --erp-border-strong: #c5cfdd;
  --erp-navy: #0b2e45;
  --erp-navy-soft: #123d59;
  --erp-primary: #0f766e;
  --erp-primary-hover: #0b5f59;
  --erp-primary-soft: #e9f7f5;
  --erp-focus: #2563eb;
  --erp-danger: #b42318;
  --erp-danger-soft: #fef3f2;
  --erp-warning: #b54708;
  --erp-success: #067647;
  --erp-radius-sm: 6px;
  --erp-radius-md: 8px;
  --erp-radius-lg: 12px;
  --erp-shadow-popover: 0 16px 38px rgba(15, 23, 42, .16);
  --erp-sidebar-width: 236px;
  --erp-sidebar-rail: 76px;
  --erp-header-height: 64px;
  --erp-context-height: 46px;
  --erp-control-height: 36px;
  color: var(--erp-text);
  font-family: var(--erp-font) !important;
  background: var(--erp-bg) !important;
}

body.az-erp-shell *,
body.az-erp-legacy-shell * { box-sizing: border-box; }

/* --------------------------------------------------------------------------
   Cockpit cabinet — structure générale
   -------------------------------------------------------------------------- */

body.az-erp-shell #main-screen.erp-main-shell {
  display: grid !important;
  grid-template-columns: var(--erp-sidebar-width) minmax(0, 1fr) !important;
  width: 100% !important;
  max-width: none !important;
  height: 100vh !important;
  min-height: 0 !important;
  overflow: hidden !important;
  background: var(--erp-bg) !important;
}

body.az-erp-shell #main-screen.erp-main-shell.hidden { display: none !important; }

body.az-erp-shell #main-screen .side.erp-sidebar {
  position: relative !important;
  inset: auto !important;
  z-index: 70 !important;
  width: auto !important;
  min-width: 0 !important;
  height: 100vh !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden !important;
  border: 0 !important;
  border-right: 1px solid rgba(255,255,255,.08) !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, var(--erp-navy) 0%, #082638 100%) !important;
  box-shadow: none !important;
}

body.az-erp-shell #main-screen .erp-side-brand {
  min-height: var(--erp-header-height) !important;
  padding: 12px 16px !important;
  margin: 0 !important;
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  border: 0 !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
  background: rgba(255,255,255,.025) !important;
}

body.az-erp-shell #main-screen .erp-side-brand .brand-mark {
  width: 36px !important;
  height: 36px !important;
  min-width: 36px !important;
  border: 1px solid rgba(255,255,255,.18) !important;
  border-radius: 9px !important;
  display: grid !important;
  place-items: center !important;
  background: rgba(255,255,255,.1) !important;
  box-shadow: none !important;
}

body.az-erp-shell #main-screen .erp-side-brand strong {
  display: block !important;
  color: #fff !important;
  font-size: 16px !important;
  font-weight: 800 !important;
  letter-spacing: .06em !important;
}

body.az-erp-shell #main-screen .erp-side-brand span {
  display: block !important;
  margin-top: 1px !important;
  color: #b8c7d3 !important;
  font-size: 11px !important;
  font-weight: 600 !important;
}

body.az-erp-shell #main-screen .erp-nav-source { display: none !important; }

body.az-erp-shell #main-screen .erp-primary-nav {
  flex: 1 1 auto !important;
  min-height: 0 !important;
  padding: 12px 9px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 4px !important;
  overflow: auto !important;
  scrollbar-width: thin;
}

body.az-erp-shell #main-screen .erp-primary-nav-btn {
  width: 100% !important;
  min-height: 42px !important;
  margin: 0 !important;
  padding: 8px 11px !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 9px !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  color: #d5e0e8 !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
  font: 700 13px/1.2 var(--erp-font) !important;
  transform: none !important;
  cursor: pointer !important;
  opacity: 1 !important;
}

body.az-erp-shell #main-screen .erp-primary-nav-btn:hover {
  color: #fff !important;
  border-color: rgba(255,255,255,.08) !important;
  background: rgba(255,255,255,.07) !important;
  transform: none !important;
}

body.az-erp-shell #main-screen .erp-primary-nav-btn.active {
  color: #fff !important;
  border-color: rgba(87, 216, 201, .28) !important;
  background: rgba(15, 118, 110, .42) !important;
  box-shadow: inset 3px 0 0 #5eead4 !important;
}

body.az-erp-shell #main-screen .erp-primary-nav-icon {
  width: 28px !important;
  height: 28px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 7px !important;
  color: inherit !important;
  background: rgba(255,255,255,.08) !important;
  font-size: 15px !important;
  line-height: 1 !important;
}
body.az-erp-shell #main-screen .erp-primary-nav-label { color: inherit !important; opacity: 1 !important; }

body.az-erp-shell #main-screen .side-footer {
  flex: 0 0 auto !important;
  padding: 10px 14px 14px !important;
  margin: 0 !important;
  border-top: 1px solid rgba(255,255,255,.1) !important;
  background: rgba(0,0,0,.08) !important;
}

body.az-erp-shell #main-screen .side-footer > .btn { display: none !important; }
body.az-erp-shell #main-screen .erp-version { display: block !important; color: #91a5b4 !important; font-size: 10px !important; text-align: center !important; }

body.az-erp-shell #main-screen .main.erp-main {
  position: relative !important;
  inset: auto !important;
  width: auto !important;
  min-width: 0 !important;
  height: 100vh !important;
  min-height: 0 !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: auto !important;
  background: var(--erp-bg) !important;
}

/* --------------------------------------------------------------------------
   Topbar, recherche et utilitaires
   -------------------------------------------------------------------------- */

body.az-erp-shell #main-screen .erp-topbar {
  position: sticky !important;
  top: 0 !important;
  z-index: 60 !important;
  min-height: var(--erp-header-height) !important;
  height: var(--erp-header-height) !important;
  margin: 0 !important;
  padding: 8px 18px !important;
  display: grid !important;
  grid-template-columns: minmax(190px, auto) minmax(220px, 1fr) auto !important;
  align-items: center !important;
  gap: 14px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--erp-border) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: none !important;
  backdrop-filter: blur(14px);
}

body.az-erp-shell #main-screen .erp-mobile-nav-toggle {
  display: none !important;
  width: 40px !important;
  height: 40px !important;
  padding: 0 !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 8px !important;
  color: var(--erp-navy) !important;
  background: var(--erp-surface) !important;
  box-shadow: none !important;
  transform: none !important;
}

body.az-erp-shell #main-screen .erp-page-heading { min-width: 0 !important; }
body.az-erp-shell #main-screen .erp-page-heading h2,
body.az-erp-shell #main-screen #page-title {
  margin: 1px 0 0 !important;
  color: var(--erp-text) !important;
  font-size: 19px !important;
  font-weight: 780 !important;
  line-height: 1.15 !important;
  letter-spacing: -.02em !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}

body.az-erp-shell #main-screen .erp-breadcrumb {
  display: flex !important;
  align-items: center !important;
  gap: 5px !important;
  min-width: 0 !important;
  color: var(--erp-muted) !important;
  font-size: 10px !important;
  font-weight: 650 !important;
  line-height: 1.1 !important;
}

body.az-erp-shell #main-screen .erp-breadcrumb strong { color: var(--erp-primary) !important; font-weight: 750 !important; }
body.az-erp-shell #main-screen .erp-breadcrumb-separator { color: #9aa7b7 !important; }
body.az-erp-shell #main-screen .erp-page-subtitle { display: none !important; }

body.az-erp-shell #main-screen .erp-global-search-wrap {
  position: relative !important;
  min-width: 0 !important;
}

body.az-erp-shell #main-screen .erp-global-search {
  width: 100% !important;
  height: 38px !important;
  margin: 0 !important;
  padding: 0 62px 0 36px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 8px !important;
  color: var(--erp-text) !important;
  background: var(--erp-surface-muted) !important;
  box-shadow: none !important;
  font: 500 13px/1 var(--erp-font) !important;
}

body.az-erp-shell #main-screen .erp-global-search-wrap::before {
  content: "⌕";
  position: absolute;
  z-index: 1;
  left: 12px;
  top: 50%;
  transform: translateY(-52%);
  color: var(--erp-muted);
  font-size: 18px;
  pointer-events: none;
}

body.az-erp-shell #main-screen .erp-global-search:focus {
  border-color: var(--erp-focus) !important;
  background: #fff !important;
  outline: 3px solid rgba(37,99,235,.13) !important;
}

body.az-erp-shell #main-screen .erp-search-shortcut {
  position: absolute !important;
  right: 8px !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
  padding: 3px 6px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 5px !important;
  color: var(--erp-muted) !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.06) !important;
  font: 700 9px/1.2 var(--erp-font) !important;
}

body.az-erp-shell #main-screen .top-actions {
  position: relative !important;
  min-width: 0 !important;
  display: flex !important;
  align-items: center !important;
  justify-content: flex-end !important;
  gap: 7px !important;
  flex-wrap: nowrap !important;
}

body.az-erp-shell #main-screen #btn-top-logout,
body.az-erp-shell #main-screen #btn-new-dossier,
body.az-erp-shell #main-screen #btn-import-json,
body.az-erp-shell #main-screen #btn-export { display: none !important; }

body.az-erp-shell #main-screen .status-pill {
  width: 30px !important;
  min-width: 30px !important;
  min-height: 30px !important;
  max-width: 30px !important;
  padding: 0 !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 999px !important;
  color: var(--erp-muted) !important;
  background: #fff !important;
  box-shadow: none !important;
  font-size: 0 !important;
  font-weight: 700 !important;
  justify-content: center !important;
  overflow: visible !important;
}

body.az-erp-shell #main-screen .status-pill::before {
  content: '';
  width: 8px;
  height: 8px;
  flex: 0 0 8px;
  border-radius: 999px;
  background: currentColor;
  box-shadow: 0 0 0 3px color-mix(in srgb, currentColor 14%, transparent);
}

body.az-erp-shell #main-screen .status-pill.ok { color: var(--erp-success) !important; border-color: #a6f4c5 !important; background: #ecfdf3 !important; }
body.az-erp-shell #main-screen .status-pill.err { color: var(--erp-warning) !important; border-color: #fedf89 !important; background: #fffaeb !important; }

body.az-erp-shell #main-screen .erp-quick-create,
body.az-erp-shell #main-screen .erp-utility-btn,
body.az-erp-shell #main-screen .erp-context-action {
  min-height: 36px !important;
  margin: 0 !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  transform: none !important;
  font: 720 12px/1 var(--erp-font) !important;
}
body.az-erp-shell #main-screen .erp-utility-btn[hidden],
body.az-erp-shell #main-screen .erp-menu-item[hidden],
body.az-erp-shell #main-screen .erp-search-results[hidden],
body.az-erp-shell #main-screen .erp-popover[hidden] { display: none !important; }

body.az-erp-shell #main-screen .erp-quick-create {
  padding: 0 13px !important;
  border: 1px solid var(--erp-primary) !important;
  color: #fff !important;
  background: var(--erp-primary) !important;
}
body.az-erp-shell #main-screen .erp-quick-create:hover { background: var(--erp-primary-hover) !important; transform: none !important; }

body.az-erp-shell #main-screen .erp-utility-tray {
  display: flex !important;
  align-items: center !important;
  gap: 4px !important;
  padding: 0 4px !important;
  border-left: 1px solid var(--erp-border) !important;
  border-right: 1px solid var(--erp-border) !important;
}

body.az-erp-shell #main-screen .erp-utility-btn {
  width: 34px !important;
  height: 34px !important;
  min-width: 34px !important;
  min-height: 34px !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid transparent !important;
  color: var(--erp-muted) !important;
  background: transparent !important;
  font-size: 15px !important;
}
body.az-erp-shell #main-screen .erp-utility-btn:hover { color: var(--erp-primary) !important; border-color: var(--erp-border) !important; background: var(--erp-surface-muted) !important; }

body.az-erp-shell #main-screen .erp-user-toggle {
  flex: 0 0 154px !important;
  min-width: 0 !important;
  max-width: 190px !important;
  height: 40px !important;
  padding: 4px 7px !important;
  border: 1px solid transparent !important;
  border-radius: 8px !important;
  cursor: pointer !important;
}
body.az-erp-shell #main-screen .erp-user-toggle:hover,
body.az-erp-shell #main-screen .erp-user-toggle:focus-visible { border-color: var(--erp-border) !important; background: var(--erp-surface-muted) !important; outline: none !important; }
body.az-erp-shell #main-screen .top-user-avatar { width: 30px !important; height: 30px !important; min-width: 30px !important; border-radius: 7px !important; box-shadow: none !important; }
body.az-erp-shell #main-screen .top-user-main strong { max-width: 118px !important; color: var(--erp-text) !important; font-size: 11px !important; }
body.az-erp-shell #main-screen .top-user-main small { color: var(--erp-muted) !important; font-size: 9px !important; }
body.az-erp-shell #main-screen .top-user-main { min-width: 0 !important; display: flex !important; flex-direction: column !important; }

/* Menus et résultats */
body.az-erp-shell #main-screen .erp-menu-wrap { position: relative !important; }
body.az-erp-shell #main-screen .erp-popover {
  position: absolute !important;
  z-index: 250 !important;
  min-width: 210px !important;
  padding: 6px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 10px !important;
  color: var(--erp-text) !important;
  background: #fff !important;
  box-shadow: var(--erp-shadow-popover) !important;
}
body.az-erp-shell #main-screen .erp-popover[hidden] { display: none !important; }
body.az-erp-shell #main-screen .erp-menu-item {
  width: 100% !important;
  min-height: 36px !important;
  margin: 0 !important;
  padding: 8px 10px !important;
  display: flex !important;
  align-items: center !important;
  gap: 8px !important;
  border: 0 !important;
  border-radius: 7px !important;
  color: var(--erp-text) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
  font: 650 12px/1.25 var(--erp-font) !important;
  transform: none !important;
}
body.az-erp-shell #main-screen .erp-menu-item:hover { color: var(--erp-primary) !important; background: var(--erp-primary-soft) !important; transform: none !important; }
body.az-erp-shell #main-screen .erp-menu-item.danger { color: var(--erp-danger) !important; }
body.az-erp-shell #main-screen .erp-quick-create-menu { top: calc(100% + 8px) !important; right: 0 !important; }
body.az-erp-shell #main-screen .erp-user-menu { top: 58px !important; right: 14px !important; }
body.az-erp-shell #main-screen .erp-action-menu { top: calc(100% + 6px) !important; right: 0 !important; }

body.az-erp-shell #main-screen .erp-search-results {
  top: calc(100% + 7px) !important;
  left: 0 !important;
  right: 0 !important;
  min-width: 340px !important;
  max-height: 380px !important;
  overflow: auto !important;
}
body.az-erp-shell #main-screen .erp-search-result {
  width: 100% !important;
  min-height: 50px !important;
  padding: 8px 9px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 12px !important;
  border: 0 !important;
  border-radius: 7px !important;
  color: var(--erp-text) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
  transform: none !important;
}
body.az-erp-shell #main-screen .erp-search-result:hover { background: var(--erp-primary-soft) !important; transform: none !important; }
body.az-erp-shell #main-screen .erp-search-result-main { min-width: 0 !important; }
body.az-erp-shell #main-screen .erp-search-result-main strong,
body.az-erp-shell #main-screen .erp-search-result-main small { display: block !important; }
body.az-erp-shell #main-screen .erp-search-result-main strong { color: var(--erp-text) !important; font-size: 12px !important; }
body.az-erp-shell #main-screen .erp-search-result-main small { margin-top: 3px !important; color: var(--erp-muted) !important; font-size: 10px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
body.az-erp-shell #main-screen .erp-search-result-group { flex: 0 0 auto !important; padding: 3px 6px !important; border-radius: 999px !important; color: var(--erp-muted) !important; background: #eef2f6 !important; font-size: 9px !important; font-weight: 700 !important; }
body.az-erp-shell #main-screen .erp-search-empty { padding: 18px !important; color: var(--erp-muted) !important; text-align: center !important; font-size: 12px !important; }

/* --------------------------------------------------------------------------
   Navigation horizontale contextuelle
   -------------------------------------------------------------------------- */

body.az-erp-shell #main-screen .erp-context-bar {
  position: sticky !important;
  top: var(--erp-header-height) !important;
  z-index: 50 !important;
  min-height: var(--erp-context-height) !important;
  height: var(--erp-context-height) !important;
  padding: 0 18px !important;
  display: flex !important;
  align-items: stretch !important;
  justify-content: space-between !important;
  gap: 14px !important;
  border-bottom: 1px solid var(--erp-border) !important;
  background: rgba(255,255,255,.96) !important;
  box-shadow: 0 2px 8px rgba(15,23,42,.035) !important;
  backdrop-filter: blur(12px);
}

body.az-erp-shell #main-screen .erp-context-tabs {
  min-width: 0 !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 2px !important;
  overflow-x: auto !important;
  overflow-y: hidden !important;
  scrollbar-width: none;
}
body.az-erp-shell #main-screen .erp-context-tabs::-webkit-scrollbar { display: none; }

body.az-erp-shell #main-screen .erp-context-tab {
  position: relative !important;
  flex: 0 0 auto !important;
  min-height: var(--erp-context-height) !important;
  margin: 0 !important;
  padding: 0 13px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--erp-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
  font: 700 12px/1 var(--erp-font) !important;
  transform: none !important;
}
body.az-erp-shell #main-screen .erp-context-tab::after {
  content: "";
  position: absolute;
  left: 12px;
  right: 12px;
  bottom: 0;
  height: 3px;
  border-radius: 3px 3px 0 0;
  background: transparent;
}
body.az-erp-shell #main-screen .erp-context-tab:hover { color: var(--erp-text) !important; background: #f8fafc !important; transform: none !important; }
body.az-erp-shell #main-screen .erp-context-tab.active { color: var(--erp-primary) !important; }
body.az-erp-shell #main-screen .erp-context-tab.active::after { background: var(--erp-primary) !important; }

body.az-erp-shell #main-screen .erp-context-actions {
  flex: 0 0 auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}
body.az-erp-shell #main-screen .erp-context-actions.empty { display: none !important; }
body.az-erp-shell #main-screen .erp-context-action { padding: 0 11px !important; }
body.az-erp-shell #main-screen .erp-context-action.primary { border: 1px solid var(--erp-primary) !important; color: #fff !important; background: var(--erp-primary) !important; }
body.az-erp-shell #main-screen .erp-context-action.primary * { color: #fff !important; }
body.az-erp-shell #main-screen .erp-context-action.primary:hover { background: var(--erp-primary-hover) !important; }
body.az-erp-shell #main-screen .erp-context-action.secondary { border: 1px solid var(--erp-border) !important; color: var(--erp-text) !important; background: #fff !important; }
body.az-erp-shell #main-screen .erp-context-action.secondary:hover { border-color: var(--erp-border-strong) !important; background: var(--erp-surface-muted) !important; }
body.az-erp-shell #main-screen .erp-context-action:disabled { opacity: .45 !important; cursor: not-allowed !important; }
body.az-erp-shell #main-screen .erp-action-icon { font-size: 13px !important; }
body.az-erp-shell #main-screen .erp-promoted-source { display: none !important; }

/* --------------------------------------------------------------------------
   Contenu ERP : densité, cartes, formulaires, tableaux et dialogues
   -------------------------------------------------------------------------- */

body.az-erp-shell #main-screen .main.erp-main > .view {
  width: 100% !important;
  max-width: none !important;
  min-height: calc(100vh - var(--erp-header-height) - var(--erp-context-height)) !important;
  margin: 0 !important;
  padding: 20px 22px 36px !important;
  background: transparent !important;
}

body.az-erp-shell #main-screen .main.erp-main > .view:not(.active) { display: none !important; }
body.az-erp-shell #main-screen .main.erp-main > .view.active { display: block !important; }

body.az-erp-shell #main-screen .view .card,
body.az-erp-shell #main-screen .view .collab-pro-panel,
body.az-erp-shell #main-screen .view .legal-sidebar,
body.az-erp-shell #main-screen .view .legal-detail {
  border: 1px solid var(--erp-border) !important;
  border-radius: var(--erp-radius-lg) !important;
  background: var(--erp-surface) !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.035) !important;
  transform: none !important;
}

body.az-erp-shell #main-screen .view .card:hover,
body.az-erp-shell #main-screen .view .collab-pro-panel:hover { transform: none !important; box-shadow: 0 1px 2px rgba(15,23,42,.035) !important; }

body.az-erp-shell #main-screen .view h1,
body.az-erp-shell #main-screen .view h2,
body.az-erp-shell #main-screen .view h3,
body.az-erp-shell #main-screen .view h4 { color: var(--erp-text) !important; font-family: var(--erp-font) !important; }
body.az-erp-shell #main-screen .view h1 { font-size: 22px !important; line-height: 1.18 !important; }
body.az-erp-shell #main-screen .view h2 { font-size: 19px !important; line-height: 1.2 !important; }
body.az-erp-shell #main-screen .view h3 { font-size: 16px !important; line-height: 1.25 !important; }
body.az-erp-shell #main-screen .view p,
body.az-erp-shell #main-screen .view .muted,
body.az-erp-shell #main-screen .view small { color: var(--erp-muted) !important; }
body.az-erp-shell #main-screen [data-rise] { animation: none !important; opacity: 1 !important; transform: none !important; }

body.az-erp-shell #main-screen .view .btn,
body.az-erp-shell #main-screen .view button:not(.erp-context-tab):not(.erp-context-action):not(.erp-menu-item):not(.erp-primary-nav-btn) {
  border-radius: var(--erp-radius-md) !important;
  box-shadow: none !important;
  transform: none !important;
}
body.az-erp-shell #main-screen .view .btn:hover,
body.az-erp-shell #main-screen .view button:hover { transform: none !important; }

body.az-erp-shell #main-screen .view .control,
body.az-erp-shell #main-screen .view input:not([type="checkbox"]):not([type="radio"]),
body.az-erp-shell #main-screen .view select,
body.az-erp-shell #main-screen .view textarea {
  min-height: var(--erp-control-height) !important;
  border: 1px solid var(--erp-border-strong) !important;
  border-radius: var(--erp-radius-md) !important;
  color: var(--erp-text) !important;
  background: #fff !important;
  box-shadow: none !important;
  font-family: var(--erp-font) !important;
}
body.az-erp-shell #main-screen .view .control:focus,
body.az-erp-shell #main-screen .view input:focus,
body.az-erp-shell #main-screen .view select:focus,
body.az-erp-shell #main-screen .view textarea:focus {
  border-color: var(--erp-focus) !important;
  outline: 3px solid rgba(37,99,235,.12) !important;
}

body.az-erp-shell #main-screen .table-wrap,
body.az-erp-shell #main-screen .mission-table-wrap,
body.az-erp-shell #main-screen .view [class*="table-wrap"] {
  width: 100% !important;
  max-width: 100% !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  -webkit-overflow-scrolling: touch;
}
body.az-erp-shell #main-screen table {
  width: 100% !important;
  min-width: 720px;
  border-collapse: separate !important;
  border-spacing: 0 !important;
  overflow: visible !important;
  font-size: 12px !important;
}
body.az-erp-shell #main-screen table thead th {
  position: sticky;
  top: 0;
  z-index: 2;
  height: 38px !important;
  padding: 8px 10px !important;
  border-bottom: 1px solid var(--erp-border) !important;
  color: var(--erp-muted) !important;
  background: var(--erp-surface-muted) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .025em !important;
  text-transform: uppercase !important;
}
body.az-erp-shell #main-screen table tbody td {
  min-height: 44px !important;
  padding: 9px 10px !important;
  border-bottom: 1px solid #e8edf3 !important;
  color: var(--erp-text) !important;
  background: #fff !important;
  vertical-align: middle !important;
}
body.az-erp-shell #main-screen table tbody tr:hover td { background: #f8fbfc !important; }

body.az-erp-shell #main-screen .panel-tools,
body.az-erp-shell #main-screen .mission-filterbar,
body.az-erp-shell #main-screen .collab-pro-filterbar {
  border: 1px solid var(--erp-border) !important;
  border-radius: var(--erp-radius-lg) !important;
  background: #fff !important;
  box-shadow: none !important;
}

body.az-erp-shell #main-screen .collab-dashboard-hero,
body.az-erp-shell #main-screen .modules-hero,
body.az-erp-shell #main-screen .profitability-head,
body.az-erp-shell #main-screen .mission-human-hero,
body.az-erp-shell #main-screen .legal-hero,
body.az-erp-shell #main-screen .audio-hero,
body.az-erp-shell #main-screen .collab-pro-head {
  min-height: 0 !important;
  margin-bottom: 14px !important;
  padding: 16px 18px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: var(--erp-radius-lg) !important;
  color: var(--erp-text) !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.035) !important;
}

body.az-erp-shell #main-screen .collab-dashboard-hero::before,
body.az-erp-shell #main-screen .modules-hero::before,
body.az-erp-shell #main-screen .collab-pro-head::before { display: none !important; }

body.az-erp-shell #main-screen .collab-dashboard-hero h1,
body.az-erp-shell #main-screen .profitability-head h1 { margin: 3px 0 5px !important; font-size: 21px !important; }
body.az-erp-shell #main-screen .collab-dashboard-hero p,
body.az-erp-shell #main-screen .legal-hero p,
body.az-erp-shell #main-screen .audio-hero p,
body.az-erp-shell #main-screen .collab-pro-head p { max-width: 820px !important; margin: 3px 0 0 !important; font-size: 12px !important; line-height: 1.45 !important; }

body.az-erp-shell #main-screen .collab-hero-actions,
body.az-erp-shell #main-screen .modules-hero-actions,
body.az-erp-shell #main-screen .profitability-actions,
body.az-erp-shell #main-screen .mission-human-actions,
body.az-erp-shell #main-screen .legal-hero-actions,
body.az-erp-shell #main-screen .collab-pro-actions { gap: 7px !important; }

body.az-erp-shell #main-screen #view-collaborateurs { padding: 20px 22px 36px !important; background: transparent !important; }
body.az-erp-shell #main-screen .collab-pro-wrap { max-width: none !important; gap: 12px !important; }
body.az-erp-shell #main-screen .collab-pro-head h3 { font-size: 19px !important; }
body.az-erp-shell #main-screen .collab-pro-kpi,
body.az-erp-shell #main-screen .legal-kpi { border-radius: var(--erp-radius-lg) !important; box-shadow: none !important; }

/* Les titres et actions sont déjà portés par la topbar et la barre contextuelle. */
body.az-erp-shell #main-screen #view-supervision .az-admin-hero,
body.az-erp-shell #main-screen #view-taches .mission-human-hero,
body.az-erp-shell #main-screen #view-modules .modules-hero,
body.az-erp-shell #main-screen #view-profitability .profitability-head,
body.az-erp-shell #main-screen #view-collaborateurs .collab-pro-head {
  display: none !important;
}

/* Le rappel juridique reste visible comme règle métier compacte, sans second titre. */
body.az-erp-shell #main-screen #view-legal-internal .legal-hero {
  min-height: 0 !important;
  margin: 0 0 12px !important;
  padding: 8px 12px !important;
  border-radius: var(--erp-radius-md) !important;
  background: var(--erp-surface-muted) !important;
}
body.az-erp-shell #main-screen #view-legal-internal .legal-hero .legal-eyebrow,
body.az-erp-shell #main-screen #view-legal-internal .legal-hero h3,
body.az-erp-shell #main-screen #view-legal-internal .legal-hero p,
body.az-erp-shell #main-screen #view-legal-internal .legal-hero-actions { display: none !important; }
body.az-erp-shell #main-screen #view-legal-internal .legal-rules { margin: 0 !important; gap: 6px !important; }
body.az-erp-shell #main-screen #view-legal-internal .legal-rules span { padding: 5px 8px !important; border-radius: 6px !important; font-size: 10px !important; }

/* La navigation client native est remplacée par le sous-menu ERP horizontal. */
body.az-erp-shell #main-screen .client-mode-tabs { display: none !important; }
body.az-erp-shell #main-screen .client-premium-hero {
  margin: 0 !important;
  padding: 18px 20px !important;
  border-radius: var(--erp-radius-lg) !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.06) !important;
}
body.az-erp-shell #main-screen .client-premium-hero-inner {
  grid-template-columns: minmax(0,1fr) minmax(280px,360px) !important;
  gap: 18px !important;
  align-items: center !important;
}
body.az-erp-shell #main-screen .client-premium-kicker { padding: 5px 9px !important; font-size: 10px !important; }
body.az-erp-shell #main-screen .client-premium-hero h1 { margin: 10px 0 5px !important; font-size: 22px !important; line-height: 1.15 !important; letter-spacing: -.025em !important; }
body.az-erp-shell #main-screen .client-premium-hero h1 { color: #fff !important; }
body.az-erp-shell #main-screen .client-premium-hero p { max-width: 680px !important; color: rgba(255,255,255,.82) !important; font-size: 12px !important; line-height: 1.5 !important; }
body.az-erp-shell #main-screen .client-premium-hero-actions { margin-top: 12px !important; gap: 7px !important; }
body.az-erp-shell #main-screen .client-premium-hero-actions .btn { min-height: 34px !important; padding: 7px 10px !important; border-radius: 7px !important; font-size: 11px !important; box-shadow: none !important; }
body.az-erp-shell #main-screen .client-premium-hero-actions .btn.ghost { display: none !important; }
body.az-erp-shell #main-screen .client-premium-status { grid-template-columns: repeat(2,minmax(0,1fr)) !important; gap: 8px !important; }
body.az-erp-shell #main-screen .client-premium-status-card { min-width: 0 !important; padding: 10px 11px !important; border-radius: 8px !important; }
body.az-erp-shell #main-screen .client-premium-status-card small { color: rgba(255,255,255,.72) !important; font-size: 9px !important; }
body.az-erp-shell #main-screen .client-premium-status-card strong { margin-top: 3px !important; color: #fff !important; font-size: 18px !important; }

body.az-erp-shell #main-screen #view-supervision .az-kpi-premium,
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium.primary,
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium.danger,
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium.warning,
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium.success {
  padding: 16px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: var(--erp-radius-lg) !important;
  color: var(--erp-text) !important;
  background: #fff !important;
  box-shadow: none !important;
}
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium small { color: var(--erp-muted) !important; }
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium strong { margin-top: 7px !important; color: var(--erp-text) !important; font-size: 28px !important; }
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium span { margin-top: 5px !important; color: var(--erp-muted) !important; }
body.az-erp-shell #main-screen #view-supervision .az-kpi-premium button { display: none !important; }
body.az-erp-shell #main-screen #view-supervision .az-deadline strong,
body.az-erp-shell #main-screen #view-supervision .az-deadline span { display: block !important; }
body.az-erp-shell #main-screen #view-supervision .az-deadline span { margin-top: 2px !important; }

body.az-erp-shell #main-screen .modal {
  position: fixed !important;
  inset: 0 !important;
  z-index: 1000 !important;
  width: auto !important;
  height: auto !important;
  max-width: none !important;
  max-height: none !important;
  margin: 0 !important;
  padding: 22px !important;
  display: flex !important;
  align-items: center !important;
  justify-content: center !important;
  overflow: auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: rgba(11,46,69,.55) !important;
  box-shadow: none !important;
  backdrop-filter: blur(4px);
}
body.az-erp-shell #main-screen .modal.hidden { display: none !important; }
body.az-erp-shell #main-screen .modal > .modal-card,
body.az-erp-shell #main-screen .modal > .az-modal {
  width: min(760px, 100%) !important;
  max-height: calc(100vh - 44px) !important;
  overflow: auto !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 24px 64px rgba(15,23,42,.28) !important;
}

body.az-erp-shell #main-screen .erp-drawer-backdrop { display: none !important; }

/* Les déclencheurs flottants migrent vers la topbar ; leurs panneaux restent intacts. */
body.az-erp-shell #ai-robot-btn,
body.az-erp-shell #client-chat-btn,
body.az-erp-shell #cabinet-chat-btn,
body.az-erp-shell #internal-chat-btn { display: none !important; }
body.az-erp-shell .ai-floating-panel,
body.az-erp-shell .client-chat-panel,
body.az-erp-shell .cabinet-chat-panel,
body.az-erp-shell .internal-chat-panel { right: 14px !important; bottom: 14px !important; }

/* --------------------------------------------------------------------------
   Dossier métier legacy — rail de modules + navigation horizontale
   -------------------------------------------------------------------------- */

body.az-erp-legacy-shell #app-main {
  grid-template-columns: 94px minmax(0, 1fr) !important;
  width: 100% !important;
  min-height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  background: var(--erp-bg) !important;
}

body.az-erp-legacy-shell #app-main[style*="display: none"],
body.az-erp-legacy-shell #app-main[style*="display:none"] { display: none !important; }
body.az-erp-legacy-shell #app-main:not([style*="display: none"]):not([style*="display:none"]) { display: grid !important; }

body.az-erp-legacy-shell #app-main > .sidebar {
  position: relative !important;
  inset: auto !important;
  z-index: 80 !important;
  width: 94px !important;
  min-width: 94px !important;
  height: 100vh !important;
  padding: 0 !important;
  display: flex !important;
  flex-direction: column !important;
  overflow: hidden auto !important;
  border: 0 !important;
  border-radius: 0 !important;
  background: linear-gradient(180deg, var(--erp-navy), #082638) !important;
  box-shadow: none !important;
}

body.az-erp-legacy-shell #app-main > .sidebar .sidebar-logo {
  min-height: var(--erp-header-height) !important;
  padding: 10px 6px !important;
  display: grid !important;
  place-items: center !important;
  border-bottom: 1px solid rgba(255,255,255,.1) !important;
  text-align: center !important;
}
body.az-erp-legacy-shell #app-main > .sidebar .sidebar-logo h1 { margin: 0 !important; color: #fff !important; font-size: 12px !important; letter-spacing: .04em !important; }
body.az-erp-legacy-shell #app-main > .sidebar .sidebar-logo > span,
body.az-erp-legacy-shell #app-main > .sidebar .sidebar-logo > div { display: none !important; }
body.az-erp-legacy-shell #app-main > .sidebar .sidebar-nav { display: none !important; }

body.az-erp-legacy-shell .az-erp-module-rail {
  flex: 1 1 auto !important;
  padding: 9px 7px 14px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 5px !important;
  overflow: auto !important;
}

body.az-erp-legacy-shell .az-erp-module-btn {
  width: 100% !important;
  min-height: 54px !important;
  margin: 0 !important;
  padding: 6px 3px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  gap: 4px !important;
  border: 1px solid transparent !important;
  border-radius: 9px !important;
  color: #cbd8e1 !important;
  background: transparent !important;
  box-shadow: none !important;
  font: 700 9px/1.1 var(--erp-font) !important;
  text-align: center !important;
  transform: none !important;
}
body.az-erp-legacy-shell .az-erp-module-btn:hover { color: #fff !important; background: rgba(255,255,255,.07) !important; transform: none !important; }
body.az-erp-legacy-shell .az-erp-module-btn.active,
body.az-erp-legacy-shell .az-erp-module-btn[aria-current="page"] { color: #fff !important; border-color: rgba(94,234,212,.28) !important; background: rgba(15,118,110,.44) !important; }
body.az-erp-legacy-shell .az-erp-module-btn .az-erp-module-icon { font-size: 18px !important; line-height: 1 !important; }

body.az-erp-legacy-shell #app-main > .main {
  position: relative !important;
  inset: auto !important;
  width: auto !important;
  min-width: 0 !important;
  min-height: 100vh !important;
  margin: 0 !important;
  padding: 0 !important;
  overflow: auto !important;
  background: var(--erp-bg) !important;
}

body.az-erp-legacy-shell #app-main > .main > .topbar {
  position: sticky !important;
  top: 0 !important;
  z-index: 65 !important;
  width: 100% !important;
  min-height: var(--erp-header-height) !important;
  height: var(--erp-header-height) !important;
  margin: 0 !important;
  padding: 8px 18px !important;
  display: flex !important;
  align-items: center !important;
  gap: 12px !important;
  border: 0 !important;
  border-bottom: 1px solid var(--erp-border) !important;
  border-radius: 0 !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: none !important;
}

body.az-erp-legacy-shell #app-main .topbar-title {
  color: var(--erp-text) !important;
  font-size: 18px !important;
  font-weight: 780 !important;
  letter-spacing: -.02em !important;
}
body.az-erp-legacy-shell #dossier-current { border: 1px solid var(--erp-border) !important; border-radius: 7px !important; color: var(--erp-muted) !important; background: var(--erp-surface-muted) !important; }
body.az-erp-legacy-shell #topbar-actions {
  margin-left: auto !important;
  display: flex !important;
  align-items: center !important;
  gap: 6px !important;
}
body.az-erp-legacy-shell #ab-sidebar-toggle { display: none !important; }
body.az-erp-legacy-shell #ab-topbar-tools { align-items: center !important; gap: 6px !important; }
body.az-erp-legacy-shell #ab-topbar-tools .btn { min-height: 36px !important; border-radius: 8px !important; box-shadow: none !important; }
body.az-erp-legacy-shell #azalys-language-toggle { flex: 0 0 auto !important; min-height: 36px !important; border-radius: 8px !important; box-shadow: none !important; }

body.az-erp-legacy-shell #az-erp-mobile-toggle {
  display: none !important;
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
  padding: 0 !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 8px !important;
  color: var(--erp-navy) !important;
  background: #fff !important;
  box-shadow: none !important;
}
body.az-erp-legacy-shell .az-erp-mobile-toggle-bars { width: 18px !important; display: grid !important; gap: 3px !important; }
body.az-erp-legacy-shell .az-erp-mobile-toggle-bars i { display: block !important; width: 18px !important; height: 2px !important; border-radius: 2px !important; background: currentColor !important; }

body.az-erp-legacy-shell #az-erp-dossier-menu { position: relative !important; margin-left: auto !important; }
body.az-erp-legacy-shell #az-erp-dossier-menu > button {
  min-height: 36px !important;
  padding: 0 12px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 8px !important;
  color: var(--erp-text) !important;
  background: #fff !important;
  box-shadow: none !important;
  font-weight: 700 !important;
}
body.az-erp-legacy-shell #az-erp-dossier-menu [role="menu"] {
  position: absolute !important;
  z-index: 220 !important;
  top: calc(100% + 7px) !important;
  right: 0 !important;
  min-width: 220px !important;
  padding: 6px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: var(--erp-shadow-popover) !important;
}
body.az-erp-legacy-shell #az-erp-dossier-menu [role="menu"][hidden] { display: none !important; }
body.az-erp-legacy-shell #az-erp-dossier-menu [role="menu"] button {
  width: 100% !important;
  min-height: 36px !important;
  padding: 8px 10px !important;
  border: 0 !important;
  border-radius: 7px !important;
  color: var(--erp-text) !important;
  background: transparent !important;
  box-shadow: none !important;
  text-align: left !important;
  transform: none !important;
}
body.az-erp-legacy-shell #az-erp-dossier-menu [role="menu"] button:hover { color: var(--erp-primary) !important; background: var(--erp-primary-soft) !important; }

body.az-erp-legacy-shell .az-erp-context-nav {
  position: sticky !important;
  top: var(--erp-header-height) !important;
  z-index: 60 !important;
  min-height: var(--erp-context-height) !important;
  padding: 0 18px !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 4px !important;
  overflow-x: auto !important;
  overflow-y: visible !important;
  border-bottom: 1px solid var(--erp-border) !important;
  background: rgba(255,255,255,.97) !important;
  box-shadow: 0 2px 8px rgba(15,23,42,.035) !important;
  scrollbar-width: none;
}
body.az-erp-legacy-shell .az-erp-context-nav::-webkit-scrollbar { display: none; }
body.az-erp-legacy-shell .az-erp-context-track {
  min-width: max-content !important;
  display: flex !important;
  align-items: stretch !important;
  gap: 0 !important;
}
body.az-erp-legacy-shell .az-erp-context-group {
  min-width: max-content !important;
  display: flex !important;
  align-items: center !important;
  gap: 2px !important;
  border-right: 1px solid var(--erp-border) !important;
}
body.az-erp-legacy-shell .az-erp-context-group:last-child { border-right: 0 !important; }
body.az-erp-legacy-shell .az-erp-context-group-label {
  padding: 0 7px 0 12px !important;
  color: #8996a5 !important;
  font: 800 8px/1 var(--erp-font) !important;
  letter-spacing: .07em !important;
  text-transform: uppercase !important;
  white-space: nowrap !important;
}
body.az-erp-legacy-shell .az-erp-context-actions {
  display: flex !important;
  align-items: stretch !important;
  gap: 0 !important;
}
body.az-erp-legacy-shell .az-erp-context-btn,
body.az-erp-legacy-shell .az-erp-context-nav > button {
  flex: 0 0 auto !important;
  min-height: var(--erp-context-height) !important;
  margin: 0 !important;
  padding: 0 12px !important;
  border: 0 !important;
  border-radius: 0 !important;
  color: var(--erp-muted) !important;
  background: transparent !important;
  box-shadow: none !important;
  font: 700 12px/1 var(--erp-font) !important;
  transform: none !important;
}
body.az-erp-legacy-shell .az-erp-context-btn:hover { color: var(--erp-text) !important; background: var(--erp-surface-muted) !important; }
body.az-erp-legacy-shell .az-erp-context-btn.active,
body.az-erp-legacy-shell .az-erp-context-btn[aria-current="page"] { color: var(--erp-primary) !important; box-shadow: inset 0 -3px 0 var(--erp-primary) !important; }

body.az-erp-legacy-shell .az-erp-context-group { position: relative !important; flex: 0 0 auto !important; }
body.az-erp-legacy-shell .az-erp-context-group > [role="menu"] {
  position: fixed !important;
  z-index: 260 !important;
  min-width: 220px !important;
  max-height: min(420px, calc(100vh - 130px)) !important;
  padding: 6px !important;
  overflow: auto !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 10px !important;
  background: #fff !important;
  box-shadow: var(--erp-shadow-popover) !important;
}
body.az-erp-legacy-shell .az-erp-context-group > [role="menu"][hidden] { display: none !important; }
body.az-erp-legacy-shell .az-erp-context-group > [role="menu"] button { width: 100% !important; min-height: 42px !important; padding: 9px 11px !important; border: 0 !important; border-radius: 7px !important; background: transparent !important; text-align: left !important; box-shadow: none !important; transform: none !important; }
body.az-erp-legacy-shell .az-erp-context-group > [role="menu"] button:hover,
body.az-erp-legacy-shell .az-erp-context-group > [role="menu"] button:focus-visible { color: var(--erp-primary) !important; background: var(--erp-primary-soft) !important; }
body.az-erp-legacy-shell .az-erp-context-group > [role="menu"] button.active { color: var(--erp-primary) !important; background: var(--erp-primary-soft) !important; font-weight: 800 !important; }
body.az-erp-legacy-shell .az-erp-context-group-trigger {
  min-width: 138px !important;
  max-width: 200px !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  grid-template-rows: auto auto !important;
  align-content: center !important;
  column-gap: 8px !important;
  padding-inline: 14px !important;
  text-align: left !important;
}
body.az-erp-legacy-shell .az-erp-context-group-title {
  grid-column: 1 !important;
  color: inherit !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
body.az-erp-legacy-shell .az-erp-context-current {
  grid-column: 1 !important;
  color: var(--erp-muted) !important;
  font-size: 9px !important;
  font-weight: 650 !important;
  white-space: nowrap !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
}
body.az-erp-legacy-shell .az-erp-context-chevron { grid-column: 2 !important; grid-row: 1 / span 2 !important; align-self: center !important; color: var(--erp-muted) !important; }
body.az-erp-legacy-shell .az-erp-context-group-trigger[aria-expanded="true"] .az-erp-context-chevron { transform: rotate(180deg) !important; }
body.az-erp-legacy-shell .az-erp-context-menu-item { display: flex !important; align-items: center !important; gap: 8px !important; color: var(--erp-text) !important; font: 700 12px/1.2 var(--erp-font) !important; }
body.az-erp-legacy-shell .az-erp-context-menu-item .az-erp-context-icon { width: 20px !important; text-align: center !important; }

/* Les modales legacy sont des enfants directs de la grille #app-main. Une
   ancienne règle premium (#app-main > *) les transformait en cellules de 94px
   sous la page. Elles doivent toujours rester des fenêtres viewport. */
body.az-erp-legacy-shell #app-main > .modal-overlay {
  position: fixed !important;
  inset: 0 !important;
  z-index: 10000 !important;
  width: 100vw !important;
  height: 100dvh !important;
  max-width: none !important;
  grid-column: 1 / -1 !important;
  background: rgba(0,0,0,.45) !important;
}
body.az-erp-legacy-shell #app-main > .modal-overlay > .modal {
  width: min(90vw, 900px) !important;
  max-width: min(90vw, 900px) !important;
  max-height: 92dvh !important;
  min-width: 0 !important;
}

body.az-erp-legacy-shell #app-main .content {
  width: 100% !important;
  max-width: none !important;
  min-height: calc(100vh - var(--erp-header-height) - var(--erp-context-height)) !important;
  margin: 0 !important;
  padding: 20px 22px 38px !important;
  overflow: visible !important;
  background: transparent !important;
}

body.az-erp-legacy-shell #app-main .card {
  border: 1px solid var(--erp-border) !important;
  border-radius: var(--erp-radius-lg) !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.035) !important;
  transform: none !important;
}
body.az-erp-legacy-shell #app-main .card:hover { transform: none !important; box-shadow: 0 1px 2px rgba(15,23,42,.035) !important; }
body.az-erp-legacy-shell #app-main .card-header { border-bottom: 1px solid var(--erp-border) !important; background: var(--erp-surface-muted) !important; }
body.az-erp-legacy-shell #app-main .btn { border-radius: var(--erp-radius-md) !important; box-shadow: none !important; transform: none !important; }
body.az-erp-legacy-shell #app-main .btn:hover { transform: none !important; }
body.az-erp-legacy-shell #app-main .form-control { min-height: 36px !important; border: 1px solid var(--erp-border-strong) !important; border-radius: 8px !important; box-shadow: none !important; }
body.az-erp-legacy-shell #app-main .table-wrap { width: 100% !important; max-width: 100% !important; overflow-x: auto !important; overflow-y: visible !important; }
body.az-erp-legacy-shell #app-main table { min-width: 680px; overflow: visible !important; }

/* Synthèse dossier : cockpit de lecture rapide, sans dupliquer la navigation. */
body.az-erp-legacy-shell #erp-hub {
  min-height: 100vh !important;
  padding: 24px !important;
  color: var(--erp-text) !important;
  background: var(--erp-bg) !important;
}
body.az-erp-legacy-shell #erp-hub > div { max-width: 1320px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-header,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-section,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi,
body.az-erp-legacy-shell #erp-hub #ab-onboard-card {
  border: 1px solid var(--erp-border) !important;
  border-radius: 12px !important;
  background: #fff !important;
  box-shadow: 0 1px 2px rgba(15,23,42,.04) !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-header { gap: 20px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-eyebrow {
  margin-bottom: 4px !important;
  color: var(--erp-text-muted) !important;
  font-size: 10px !important;
  font-weight: 800 !important;
  letter-spacing: .11em !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-header-actions .btn {
  min-height: 40px !important;
  padding: 7px 12px !important;
  border-radius: 8px !important;
  box-shadow: none !important;
  transform: none !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-header-actions .btn:hover { box-shadow: none !important; transform: none !important; }
body.az-erp-legacy-shell #erp-hub #az-erp-summary-title:focus-visible { outline: 3px solid rgba(13,148,136,.24) !important; outline-offset: 4px !important; border-radius: 4px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-hub-module-registry { display: none !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary { display: grid !important; gap: 16px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-section { padding: 20px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-section-head {
  display: flex !important;
  align-items: flex-start !important;
  justify-content: space-between !important;
  gap: 16px !important;
  margin-bottom: 14px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-section h2,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-next h2,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent h2 {
  margin: 0 !important;
  color: var(--erp-text) !important;
  font-size: 15px !important;
  font-weight: 800 !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-section-head p {
  margin: 3px 0 0 !important;
  color: var(--erp-text-muted) !important;
  font-size: 12px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-modules {
  display: grid !important;
  grid-template-columns: repeat(auto-fit, minmax(145px,1fr)) !important;
  gap: 9px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-module {
  min-width: 0 !important;
  min-height: 48px !important;
  padding: 8px 11px !important;
  display: grid !important;
  grid-template-columns: 28px minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  border: 1px solid var(--erp-border) !important;
  border-radius: 9px !important;
  color: var(--erp-text) !important;
  background: var(--erp-surface-muted) !important;
  font: inherit !important;
  font-size: 12px !important;
  font-weight: 750 !important;
  text-align: left !important;
  cursor: pointer !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-module:hover {
  border-color: var(--erp-primary) !important;
  color: var(--erp-primary-strong) !important;
  background: var(--erp-primary-soft) !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-module:focus-visible,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume-button:focus-visible,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-action:focus-visible,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-text-action:focus-visible {
  outline: 3px solid rgba(13,148,136,.24) !important;
  outline-offset: 2px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-module-icon {
  width: 28px !important;
  height: 28px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 7px !important;
  background: #fff !important;
  font-size: 15px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-module-label {
  min-width: 0 !important;
  overflow: hidden !important;
  text-overflow: ellipsis !important;
  white-space: nowrap !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-module-arrow { color: var(--erp-text-muted) !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume {
  padding: 13px 16px !important;
  display: grid !important;
  grid-template-columns: 36px minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 12px !important;
  border: 1px solid #99f6e4 !important;
  border-radius: 11px !important;
  color: #134e4a !important;
  background: #f0fdfa !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume[hidden] { display: none !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume-icon {
  width: 34px !important;
  height: 34px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 9px !important;
  color: #fff !important;
  background: #0f766e !important;
  font-size: 18px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume-copy { min-width: 0 !important; display: grid !important; gap: 2px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume-copy strong { font-size: 13px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume-copy span { overflow: hidden !important; color: #3f6f6a !important; font-size: 11px !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume-button,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-action {
  min-height: 38px !important;
  padding: 7px 13px !important;
  border: 0 !important;
  border-radius: 8px !important;
  color: #fff !important;
  background: #0f766e !important;
  font: inherit !important;
  font-size: 12px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpis {
  display: grid !important;
  grid-template-columns: repeat(4,minmax(0,1fr)) !important;
  gap: 12px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi {
  min-width: 0 !important;
  min-height: 118px !important;
  padding: 17px 18px !important;
  display: grid !important;
  align-content: space-between !important;
  gap: 5px !important;
  border-top-width: 3px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi-blue { border-top-color: #2563eb !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi-amber { border-top-color: #d97706 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi-red { border-top-color: #dc2626 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi-green { border-top-color: #059669 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi-label { color: var(--erp-text-muted) !important; font-size: 11px !important; font-weight: 750 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi-value { color: var(--erp-text) !important; font-size: 27px !important; line-height: 1 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi-sub { overflow: hidden !important; color: var(--erp-text-muted) !important; font-size: 11px !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-body {
  display: grid !important;
  grid-template-columns: minmax(0,1.65fr) minmax(285px,.75fr) !important;
  align-items: start !important;
  gap: 16px !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-side { min-width: 0 !important; display: grid !important; gap: 16px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priorities,
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list { margin: 0 !important; padding: 0 !important; list-style: none !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority {
  min-width: 0 !important;
  padding: 12px 0 !important;
  display: grid !important;
  grid-template-columns: 32px minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 11px !important;
  border-top: 1px solid var(--erp-border) !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority:first-child { padding-top: 2px !important; border-top: 0 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-icon {
  width: 30px !important;
  height: 30px !important;
  display: grid !important;
  place-items: center !important;
  border-radius: 8px !important;
  font-size: 13px !important;
  font-weight: 900 !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-danger .az-erp-summary-priority-icon { color: #991b1b !important; background: #fee2e2 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-warning .az-erp-summary-priority-icon { color: #92400e !important; background: #fef3c7 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-info .az-erp-summary-priority-icon { color: #1e40af !important; background: #dbeafe !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-copy { min-width: 0 !important; display: grid !important; gap: 2px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-copy strong { overflow: hidden !important; color: var(--erp-text) !important; font-size: 12px !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-copy small { overflow: hidden !important; color: var(--erp-text-muted) !important; font-size: 10px !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-eyebrow { color: var(--erp-text-muted) !important; font-size: 9px !important; font-weight: 800 !important; letter-spacing: .06em !important; text-transform: uppercase !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-next { display: grid !important; gap: 9px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-next-date { color: var(--erp-primary-strong) !important; font-size: 21px !important; font-weight: 850 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-next-title { color: var(--erp-text) !important; font-size: 12px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-muted { margin: 0 !important; color: var(--erp-text-muted) !important; font-size: 11px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-text-action {
  width: fit-content !important;
  min-height: 36px !important;
  padding: 0 !important;
  border: 0 !important;
  color: var(--erp-primary-strong) !important;
  background: transparent !important;
  font: inherit !important;
  font-size: 11px !important;
  font-weight: 800 !important;
  cursor: pointer !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent { display: grid !important; gap: 10px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list li {
  padding: 8px 0 !important;
  display: grid !important;
  grid-template-columns: minmax(0,1fr) auto !important;
  align-items: center !important;
  gap: 8px !important;
  border-top: 1px solid var(--erp-border) !important;
}
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list li:first-child { padding-top: 0 !important; border-top: 0 !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list li > span { min-width: 0 !important; display: grid !important; gap: 1px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list small { color: var(--erp-text-muted) !important; font-size: 9px !important; text-transform: uppercase !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list strong { overflow: hidden !important; color: var(--erp-text) !important; font-size: 11px !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list time { color: var(--erp-text-muted) !important; font-size: 9px !important; white-space: nowrap !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-empty { min-height: 64px !important; padding: 14px !important; display: flex !important; align-items: center !important; gap: 10px !important; border: 1px dashed var(--erp-border-strong) !important; border-radius: 9px !important; color: var(--erp-text-muted) !important; background: var(--erp-surface-muted) !important; font-size: 11px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-empty > span { display: grid !important; gap: 2px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-empty small { color: var(--erp-text-muted) !important; font-size: 10px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-empty-success .az-erp-summary-empty-icon { color: #047857 !important; font-size: 20px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-empty-warning { color: #92400e !important; background: #fffbeb !important; border-color: #fcd34d !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-onboarding #ab-onboard-card { margin-top: 0 !important; padding: 20px !important; }
body.az-erp-legacy-shell #erp-hub .az-erp-summary-footer { border: 0 !important; background: transparent !important; box-shadow: none !important; }

@media (max-width: 980px) {
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpis { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-body { grid-template-columns: 1fr !important; }
}

@media (max-width: 640px) {
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-header { padding: 16px !important; align-items: flex-start !important; flex-direction: column !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-header-actions { width: 100% !important; display: grid !important; grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-header-actions .btn { width: 100% !important; min-height: 44px !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-header-actions .btn:last-child { grid-column: 1 / -1 !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-section { padding: 16px !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-modules { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume { grid-template-columns: 34px minmax(0,1fr) !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-resume-button { grid-column: 1 / -1 !important; width: 100% !important; min-height: 44px !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpis { grid-template-columns: 1fr 1fr !important; gap: 9px !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-kpi { min-height: 106px !important; padding: 14px !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority { grid-template-columns: 30px minmax(0,1fr) !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-priority-action { grid-column: 2 !important; width: 100% !important; min-height: 42px !important; }
  body.az-erp-legacy-shell #erp-hub .az-erp-summary-recent-list li { align-items: flex-start !important; grid-template-columns: 1fr !important; }
}

body.az-erp-legacy-shell #az-erp-drawer-backdrop { display: none !important; }

/* --------------------------------------------------------------------------
   Tablette
   -------------------------------------------------------------------------- */

@media (max-width: 1120px) and (min-width: 768px) {
  body.az-erp-shell #main-screen.erp-main-shell { grid-template-columns: var(--erp-sidebar-rail) minmax(0,1fr) !important; }
  body.az-erp-shell #main-screen .erp-side-brand { padding: 12px 10px !important; justify-content: center !important; }
  body.az-erp-shell #main-screen .erp-side-brand > div:last-child { display: none !important; }
  body.az-erp-shell #main-screen .erp-primary-nav {
    padding: 10px 7px !important;
    overflow-x: hidden !important;
    overflow-y: auto !important;
  }
  body.az-erp-shell #main-screen .erp-primary-nav-btn { min-height: 54px !important; padding: 7px 3px !important; grid-template-columns: 1fr !important; justify-items: center !important; gap: 4px !important; text-align: center !important; font-size: 9px !important; }
  body.az-erp-shell #main-screen .erp-primary-nav-icon { width: 28px !important; height: 28px !important; }
  body.az-erp-shell #main-screen .erp-primary-nav-label {
    width: 100% !important;
    min-width: 0 !important;
    max-width: 100% !important;
    overflow: hidden !important;
    text-overflow: ellipsis !important;
    white-space: nowrap !important;
  }
  body.az-erp-shell #main-screen .erp-topbar { grid-template-columns: minmax(160px,auto) minmax(180px,1fr) auto !important; padding-inline: 12px !important; gap: 9px !important; }
  body.az-erp-shell #main-screen .status-pill { display: none !important; }
  body.az-erp-shell #main-screen .top-user-main { display: none !important; }
  body.az-erp-shell #main-screen .erp-user-toggle { flex: 0 0 40px !important; width: 40px !important; }
  body.az-erp-shell #main-screen .erp-context-bar { padding-inline: 12px !important; }
}

@media (max-width: 980px) and (min-width: 768px) {
  body.az-erp-shell #main-screen .erp-utility-tray { display: none !important; }
  body.az-erp-shell #main-screen .erp-search-shortcut { display: none !important; }
  body.az-erp-shell #main-screen .erp-global-search { padding-right: 12px !important; }
}

/* --------------------------------------------------------------------------
   Mobile — drawer réel, champs 16px et navigation horizontale scrollable
   -------------------------------------------------------------------------- */

@media (max-width: 767px) {
  body.az-erp-shell #main-screen.erp-main-shell {
    display: block !important;
    height: 100dvh !important;
    overflow: hidden !important;
  }

  body.az-erp-shell #main-screen .side.erp-sidebar {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    z-index: 1002 !important;
    width: min(82vw, 292px) !important;
    height: 100dvh !important;
    transform: translateX(-105%) !important;
    transition: transform .2s ease !important;
    box-shadow: 18px 0 46px rgba(15,23,42,.25) !important;
  }
  body.az-erp-shell.az-erp-nav-open #main-screen .side.erp-sidebar { transform: translateX(0) !important; }

  body.az-erp-shell #main-screen .erp-primary-nav-btn { min-height: 46px !important; }
  body.az-erp-shell #main-screen .erp-drawer-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1001 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: rgba(11,46,69,.52) !important;
    opacity: 0 !important;
    pointer-events: none !important;
    transition: opacity .2s ease !important;
  }
  body.az-erp-shell.az-erp-nav-open #main-screen .erp-drawer-backdrop { display: block !important; opacity: 1 !important; pointer-events: auto !important; }

  body.az-erp-shell #main-screen .main.erp-main { width: 100% !important; height: 100dvh !important; }
  body.az-erp-shell #main-screen .erp-topbar {
    min-height: 60px !important;
    height: 60px !important;
    grid-template-columns: 42px minmax(0,1fr) auto !important;
    padding: 7px 10px !important;
    gap: 8px !important;
  }
  body.az-erp-shell #main-screen .erp-mobile-nav-toggle { display: grid !important; place-items: center !important; min-height: 40px !important; }
  body.az-erp-shell #main-screen .erp-global-search-wrap { display: none !important; }
  body.az-erp-shell #main-screen .erp-page-heading h2,
  body.az-erp-shell #main-screen #page-title { font-size: 16px !important; }
  body.az-erp-shell #main-screen .erp-breadcrumb { font-size: 9px !important; }
  body.az-erp-shell #main-screen .top-actions { gap: 4px !important; }
  body.az-erp-shell #main-screen .status-pill,
  body.az-erp-shell #main-screen .erp-utility-tray,
  body.az-erp-shell #main-screen .top-user-main { display: none !important; }
  body.az-erp-shell #main-screen .erp-user-toggle { flex: 0 0 40px !important; width: 40px !important; min-width: 40px !important; padding: 4px !important; }
  body.az-erp-shell #main-screen .erp-quick-create { width: 40px !important; min-width: 40px !important; padding: 0 !important; font-size: 0 !important; }
  body.az-erp-shell #main-screen .erp-quick-create::before { content: "+"; color: #fff !important; font-size: 20px !important; }
  body.az-erp-shell #main-screen .erp-user-menu { top: 54px !important; right: 8px !important; }

  body.az-erp-shell #main-screen .erp-context-bar {
    top: 60px !important;
    min-height: 48px !important;
    height: auto !important;
    padding: 0 10px !important;
    gap: 8px !important;
  }
  body.az-erp-shell #main-screen .erp-context-tabs { min-height: 48px !important; }
  body.az-erp-shell #main-screen .erp-context-tab { min-height: 48px !important; padding-inline: 11px !important; font-size: 11px !important; }
  body.az-erp-shell #main-screen .erp-context-actions { padding: 5px 0 !important; }
  body.az-erp-shell #main-screen .erp-context-action { min-width: 42px !important; min-height: 42px !important; padding: 0 9px !important; }
  body.az-erp-shell #main-screen .erp-context-action span:not(.erp-action-icon) { display: none !important; }

  body.az-erp-shell #main-screen .main.erp-main > .view { min-height: calc(100dvh - 108px) !important; padding: 14px 12px 28px !important; }
  body.az-erp-shell #main-screen #view-collaborateurs { padding: 14px 12px 28px !important; }
  body.az-erp-shell #main-screen .collab-dashboard-hero,
  body.az-erp-shell #main-screen .modules-hero,
  body.az-erp-shell #main-screen .profitability-head,
  body.az-erp-shell #main-screen .mission-human-hero,
  body.az-erp-shell #main-screen .legal-hero,
  body.az-erp-shell #main-screen .audio-hero,
  body.az-erp-shell #main-screen .collab-pro-head { padding: 14px !important; }

  body.az-erp-shell #main-screen .view input:not([type="checkbox"]):not([type="radio"]),
  body.az-erp-shell #main-screen .view select,
  body.az-erp-shell #main-screen .view textarea,
  body.az-erp-shell #main-screen .view .control { min-height: 44px !important; font-size: 16px !important; }
  body.az-erp-shell #main-screen .view .btn,
  body.az-erp-shell #main-screen .view button { min-height: 44px; }
  body.az-erp-shell #main-screen .client-premium-hero { padding: 15px !important; }
  body.az-erp-shell #main-screen .client-premium-hero-inner { grid-template-columns: 1fr !important; gap: 12px !important; }
  body.az-erp-shell #main-screen .client-premium-hero h1 { font-size: 19px !important; }
  body.az-erp-shell #main-screen .client-premium-status { grid-template-columns: repeat(2,minmax(0,1fr)) !important; }
  body.az-erp-shell #main-screen .client-premium-hero-actions .btn { min-height: 44px !important; }
  body.az-erp-shell #main-screen .table-wrap,
  body.az-erp-shell #main-screen .mission-table-wrap,
  body.az-erp-shell #main-screen .view [class*="table-wrap"] { overflow-x: auto !important; }
  body.az-erp-shell #main-screen table { min-width: 680px !important; }

  body.az-erp-shell #main-screen .modal { padding: 0 !important; align-items: flex-end !important; }
  body.az-erp-shell #main-screen .modal > .modal-card,
  body.az-erp-shell #main-screen .modal > .az-modal { width: 100% !important; max-height: 92dvh !important; border-radius: 14px 14px 0 0 !important; }

  body.az-erp-legacy-shell #app-main,
  body.az-erp-legacy-shell #app-main:not([style*="display: none"]):not([style*="display:none"]) { display: block !important; min-height: 100dvh !important; }
  body.az-erp-legacy-shell #app-main[style*="display: none"],
  body.az-erp-legacy-shell #app-main[style*="display:none"] { display: none !important; }
  body.az-erp-legacy-shell #app-main > .sidebar {
    position: fixed !important;
    inset: 0 auto 0 0 !important;
    z-index: 1002 !important;
    width: min(82vw, 292px) !important;
    min-width: 0 !important;
    height: 100dvh !important;
    transform: translateX(-105%) !important;
    transition: transform .2s ease !important;
    box-shadow: 18px 0 46px rgba(15,23,42,.25) !important;
  }
  body.az-erp-legacy-shell.az-erp-drawer-open #app-main > .sidebar { transform: translateX(0) !important; }
  body.az-erp-legacy-shell .az-erp-module-rail { padding: 10px !important; }
  body.az-erp-legacy-shell .az-erp-module-btn { min-height: 46px !important; padding: 8px 10px !important; flex-direction: row !important; justify-content: flex-start !important; gap: 10px !important; font-size: 12px !important; }
  body.az-erp-legacy-shell #app-main > .main { width: 100% !important; min-height: 100dvh !important; }
  body.az-erp-legacy-shell #app-main > .main > .topbar {
    min-height: 60px !important;
    height: 60px !important;
    padding: 7px 10px !important;
    display: grid !important;
    grid-template-columns: 42px minmax(0,1fr) auto !important;
    align-items: center !important;
    gap: 8px !important;
    overflow: visible !important;
  }
  body.az-erp-legacy-shell #az-erp-mobile-toggle { display: grid !important; place-items: center !important; }
  body.az-erp-legacy-shell #app-main > .main > .topbar > div:first-of-type { min-width: 0 !important; display: block !important; }
  body.az-erp-legacy-shell #app-main .topbar-title { font-size: 16px !important; white-space: nowrap !important; overflow: hidden !important; text-overflow: ellipsis !important; }
  body.az-erp-legacy-shell #dossier-current { display: none !important; }
  body.az-erp-legacy-shell #save-status { display: none !important; }
  body.az-erp-legacy-shell #topbar-actions { grid-column: 3 !important; margin: 0 !important; }
  body.az-erp-legacy-shell #ab-topbar-tools,
  body.az-erp-legacy-shell #azalys-language-toggle { display: none !important; }
  body.az-erp-legacy-shell #az-erp-dossier-menu > button { width: 42px !important; min-width: 42px !important; height: 42px !important; padding: 0 !important; display: grid !important; place-items: center !important; font-size: 0 !important; }
  body.az-erp-legacy-shell #az-erp-dossier-menu .az-erp-dossier-menu-icon { font-size: 16px !important; }
  body.az-erp-legacy-shell #az-erp-dossier-menu .az-erp-dossier-menu-chevron,
  body.az-erp-legacy-shell #az-erp-dossier-menu .az-erp-dossier-menu-label { display: none !important; }
  body.az-erp-legacy-shell .az-erp-context-nav { top: 60px !important; min-height: 48px !important; padding-inline: 8px !important; }
  body.az-erp-legacy-shell .az-erp-context-btn { min-height: 48px !important; }
  body.az-erp-legacy-shell .az-erp-context-group-trigger { min-width: 132px !important; max-width: 172px !important; }
  body.az-erp-legacy-shell .az-erp-context-group > [role="menu"] { max-width: calc(100vw - 16px) !important; }
  body.az-erp-legacy-shell #app-main > .modal-overlay { padding: 8px !important; }
  body.az-erp-legacy-shell #app-main > .modal-overlay > .modal { width: calc(100vw - 16px) !important; max-width: calc(100vw - 16px) !important; max-height: calc(100dvh - 16px) !important; }
  body.az-erp-legacy-shell #app-main .content { min-height: calc(100dvh - 108px) !important; padding: 14px 12px 28px !important; }
  body.az-erp-legacy-shell #app-main .form-control { min-height: 44px !important; font-size: 16px !important; }
  body.az-erp-legacy-shell #app-main .btn { min-height: 44px; }
  body.az-erp-legacy-shell #az-erp-drawer-backdrop {
    position: fixed !important;
    inset: 0 !important;
    z-index: 1001 !important;
    width: 100% !important;
    height: 100% !important;
    padding: 0 !important;
    border: 0 !important;
    border-radius: 0 !important;
    background: rgba(11,46,69,.52) !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
  body.az-erp-legacy-shell.az-erp-drawer-open #az-erp-drawer-backdrop { display: block !important; opacity: 1 !important; pointer-events: auto !important; }
  body.az-erp-legacy-shell #erp-hub { padding: 14px !important; }
  body.az-erp-legacy-shell #erp-hub div[style*="grid-template-columns:repeat(4"] { grid-template-columns: 1fr !important; }
}

@media print {
  body.az-erp-legacy-shell #app-main,
  body.az-erp-legacy-shell #app-main:not([style*="display: none"]):not([style*="display:none"]) {
    display: block !important;
    width: 100% !important;
    min-height: 0 !important;
    height: auto !important;
    overflow: visible !important;
  }
  body.az-erp-legacy-shell #app-main > .sidebar,
  body.az-erp-legacy-shell #app-main > .main > .topbar,
  body.az-erp-legacy-shell .az-erp-context-nav,
  body.az-erp-legacy-shell #az-erp-drawer-backdrop,
  body.az-erp-legacy-shell #az-erp-dossier-menu-panel { display: none !important; }
  body.az-erp-legacy-shell #app-main > .main,
  body.az-erp-legacy-shell #app-main .content {
    display: block !important;
    position: static !important;
    width: 100% !important;
    min-width: 0 !important;
    min-height: 0 !important;
    height: auto !important;
    margin: 0 !important;
    padding: 0 !important;
    overflow: visible !important;
    background: #fff !important;
  }
}

/* Cycle Ventes canonique — lecture/transformations SQL sans duplication data_json. */
body.az-erp-legacy-shell .sales-canonical-panel {
  margin-top: 20px;
  padding: 18px;
  border: 1px solid #cbdfe8;
  border-radius: 18px;
  background: linear-gradient(145deg,#fff 0%,#f5fbfa 100%);
  box-shadow: 0 12px 32px rgba(10,54,75,.07);
}
body.az-erp-legacy-shell .sales-canonical-head,
body.az-erp-legacy-shell .sales-canonical-card-head,
body.az-erp-legacy-shell .sales-canonical-actions { display:flex; align-items:center; justify-content:space-between; gap:10px; }
body.az-erp-legacy-shell .sales-canonical-head { align-items:flex-start; margin-bottom:14px; }
body.az-erp-legacy-shell .sales-canonical-head h3 { margin:2px 0 3px; color:#102a43; font-size:18px; }
body.az-erp-legacy-shell .sales-canonical-head p { margin:0; color:#64748b; font-size:12px; }
body.az-erp-legacy-shell .sales-canonical-kicker { color:#0f766e; font-size:10px; font-weight:800; letter-spacing:.09em; }
body.az-erp-legacy-shell .sales-canonical-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:12px; }
body.az-erp-legacy-shell .sales-canonical-card { min-width:0; padding:14px; border:1px solid #dce6ec; border-radius:14px; background:#fff; }
body.az-erp-legacy-shell .sales-canonical-card.is-finalized { border-color:#9bd7c7; box-shadow:inset 3px 0 #0f937f; }
body.az-erp-legacy-shell .sales-canonical-card h4 { margin:12px 0 3px; font-size:14px; color:#102a43; }
body.az-erp-legacy-shell .sales-canonical-card p { margin:0 0 9px; font-size:12px; color:#64748b; }
body.az-erp-legacy-shell .sales-canonical-progress { margin:8px 0 12px; padding:8px 10px; list-style:none; border-radius:10px; background:#f5f8fb; }
body.az-erp-legacy-shell .sales-canonical-progress li { display:flex; justify-content:space-between; gap:8px; padding:3px 0; font-size:11px; }
body.az-erp-legacy-shell .sales-canonical-progress li span { min-width:0; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
body.az-erp-legacy-shell .sales-canonical-actions { justify-content:flex-start; flex-wrap:wrap; }
body.az-erp-legacy-shell .sales-canonical-empty { margin:0; min-height:100px; }
body.az-erp-legacy-shell .sales-legacy-compat { margin-top:14px; border:1px solid #dce6ec; border-radius:14px; background:#fff; overflow:hidden; }
body.az-erp-legacy-shell .sales-legacy-compat > summary { min-height:48px; display:flex; align-items:center; cursor:pointer; padding:10px 14px; color:#375b68; font-size:12px; font-weight:800; }
body.az-erp-legacy-shell .sales-legacy-compat > summary::marker { color:#0f766e; }
body.az-erp-legacy-shell .sales-legacy-compat-body { padding:0 14px 14px; }
body.az-erp-legacy-shell .sales-canonical-modal { width:min(860px,calc(100vw - 32px)); max-height:calc(100vh - 32px); overflow:hidden; }
body.az-erp-legacy-shell .sales-canonical-modal .modal-body { overflow:auto; }
body.az-erp-legacy-shell .sales-canonical-source-list { display:grid; gap:6px; }
body.az-erp-legacy-shell .sales-canonical-source-list label { display:flex; align-items:center; gap:8px; min-height:42px; padding:8px 10px; border:1px solid #dce6ec; border-radius:10px; background:#fff; }
body.az-erp-legacy-shell .sales-canonical-transform-table { display:grid; gap:5px; margin-top:12px; }
body.az-erp-legacy-shell .sales-canonical-transform-row { display:grid; grid-template-columns:minmax(180px,1fr) 140px 170px; gap:10px; align-items:center; padding:8px 10px; border:1px solid #e4ecf1; border-radius:10px; }
body.az-erp-legacy-shell .sales-canonical-transform-row.is-head { background:#edf7f5; color:#375b68; font-size:11px; font-weight:800; text-transform:uppercase; }
body.az-erp-legacy-shell .sales-canonical-transform-row small { display:block; color:#64748b; }

@media (max-width: 760px) {
  body.az-erp-legacy-shell .sales-canonical-panel { padding:12px; border-radius:14px; }
  body.az-erp-legacy-shell .sales-canonical-head { align-items:stretch; flex-direction:column; }
  body.az-erp-legacy-shell .sales-canonical-grid { grid-template-columns:1fr; }
  body.az-erp-legacy-shell .sales-canonical-modal { width:calc(100vw - 16px); max-height:calc(100vh - 16px); }
  body.az-erp-legacy-shell .sales-canonical-transform-row { grid-template-columns:1fr 1fr; }
  body.az-erp-legacy-shell .sales-canonical-transform-row > :first-child { grid-column:1/-1; }
  body.az-erp-legacy-shell .sales-canonical-transform-row.is-head { display:none; }
  body.az-erp-legacy-shell .sales-canonical-actions .btn,
  body.az-erp-legacy-shell .sales-canonical-head .btn,
  body.az-erp-legacy-shell .sales-canonical-modal .btn,
  body.az-erp-legacy-shell .sales-canonical-modal input,
  body.az-erp-legacy-shell .sales-canonical-modal select { min-height:44px !important; }
}

@media (prefers-reduced-motion: reduce) {
  body.az-erp-shell *,
  body.az-erp-legacy-shell * { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; animation-iteration-count: 1 !important; }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-erp-shell-v2054.css */

/* AZALYS_BUNDLE_SOURCE 28/29: azalys-erp-tables-v2055.css | sha256=1106308afc471da4dabee3350b98ca0734591f4723648ca8998d2641a0fea152 */
/*
 * AZALYS V20.55.0 — Outils et tables ERP.
 *
 * Cette feuille ne crée aucun nouveau conteneur de défilement : elle conserve
 * l'overflow du parent historique et ne cible que le DOM émis par
 * `azalys-erp-tables-v2055.js`.
 */

.erp-table-host {
  --az-erp-table-sticky-offset: 0px;
  --az-erp-table-header-bg: var(--az-ds-color-surface-muted, #f8fafc);
  min-inline-size: 0;
}

body.az-erp-shell .erp-table-host,
body.az-erp-legacy-shell .erp-table-host {
  --az-erp-table-sticky-offset: calc(var(--erp-header-height, 64px) + var(--erp-context-height, 46px));
}

body.az-erp-shell .erp-table-host:is(.table-wrap, .journal-table-wrap),
body.az-erp-legacy-shell .erp-table-host:is(.table-wrap, .journal-table-wrap) {
  /*
   * Dans ces wrappers, le thead est sticky relativement au conteneur de
   * défilement, pas au viewport. Le décalage du shell recouvrirait donc la
   * première ligne. Les hosts non scrollables conservent l'offset global.
   */
  --az-erp-table-sticky-offset: 0px;
}

/* Barre d'outils ---------------------------------------------------------- */

.erp-table-tools {
  --az-erp-table-tools-control-height: var(--az-ds-control-height-sm, 2rem);
  position: sticky;
  left: 0;
  inset-inline-start: 0;
  z-index: calc(var(--az-ds-z-sticky, 40) + 3);
  box-sizing: border-box;
  inline-size: 100%;
  min-inline-size: 0;
  margin: 0 0 var(--az-ds-space-2, .5rem);
  padding: 7px 8px;
  display: grid;
  grid-template-columns: minmax(0, 1fr) auto;
  align-items: center;
  gap: 7px 12px;
  overflow: visible;
  border: 1px solid var(--az-ds-color-border, #dbe4ef);
  border-radius: var(--az-ds-radius-md, .75rem);
  color: var(--az-ds-color-text, #0f172a);
  background: var(--az-ds-color-surface, #fff);
  background: color-mix(in srgb, var(--az-ds-color-surface, #fff) 96%, transparent);
  box-shadow: var(--az-ds-shadow-xs, 0 1px 2px rgba(15, 23, 42, .05));
  font-family: var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
}

.erp-table-tools-density-comfortable {
  --az-erp-table-tools-control-height: 2.125rem;
  padding-block: 9px;
}

.erp-table-tools-density-normal {
  --az-erp-table-tools-control-height: var(--az-ds-control-height-sm, 2rem);
}

.erp-table-tools-density-compact {
  --az-erp-table-tools-control-height: 1.875rem;
  padding-block: 5px;
}

@supports not (background: color-mix(in srgb, white, transparent)) {
  .erp-table-tools { background: var(--az-ds-color-surface, #fff); }
}

.erp-table-tools-primary,
.erp-table-tools-secondary {
  min-inline-size: 0;
  display: flex;
  align-items: center;
  gap: 6px;
}

.erp-table-tools-primary {
  flex-wrap: nowrap;
}

.erp-table-tools-secondary {
  justify-content: flex-end;
  flex-wrap: wrap;
}

.erp-table-search-label,
.erp-table-density-label {
  flex: 0 0 auto;
  margin: 0;
  color: var(--az-ds-color-text-muted, #64748b);
  font: 750 11px/1.2 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
  letter-spacing: .01em;
  white-space: nowrap;
}

.erp-table-search-wrap {
  position: relative;
  flex: 1 1 18rem;
  min-inline-size: 8.5rem;
  max-inline-size: 34rem;
  block-size: var(--az-erp-table-tools-control-height, 2rem);
  display: grid;
  grid-template-columns: 28px minmax(0, 1fr) 28px;
  align-items: center;
  border: 1px solid var(--az-ds-color-border, #dbe4ef);
  border-radius: var(--az-ds-radius-sm, .5rem);
  color: var(--az-ds-color-text-muted, #64748b);
  background: var(--az-ds-color-surface, #fff);
  transition:
    border-color var(--az-ds-duration-fast, 120ms) var(--az-ds-ease-standard, ease),
    box-shadow var(--az-ds-duration-fast, 120ms) var(--az-ds-ease-standard, ease);
}

.erp-table-search-wrap:focus-within {
  border-color: var(--az-ds-color-brand-500, #2563eb);
  box-shadow: var(--az-ds-focus-ring, 0 0 0 3px rgba(37, 99, 235, .24));
}

.erp-table-search-icon {
  display: grid;
  place-items: center;
  color: var(--az-ds-color-text-soft, #94a3b8);
  font: 800 15px/1 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
  pointer-events: none;
}

.erp-table-search {
  box-sizing: border-box;
  inline-size: 100%;
  min-inline-size: 0;
  block-size: calc(var(--az-erp-table-tools-control-height, 2rem) - 2px);
  margin: 0;
  padding: 0 3px;
  border: 0;
  outline: 0;
  color: var(--az-ds-color-text, #0f172a);
  background: transparent;
  box-shadow: none;
  font: 550 var(--az-ds-text-sm, .8125rem)/1 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
}

.erp-table-search::-webkit-search-cancel-button {
  display: none;
}

.erp-table-search-clear {
  inline-size: 24px;
  min-inline-size: 24px;
  block-size: 24px;
  min-block-size: 24px;
  margin: 0 2px;
  padding: 0;
  border: 0;
  border-radius: 6px;
  color: var(--az-ds-color-text-muted, #64748b);
  background: transparent;
  font-size: 17px;
  line-height: 1;
}

.erp-table-search-clear:hover:not(:disabled) {
  color: var(--az-ds-color-text, #0f172a);
  background: var(--az-ds-color-surface-muted, #f8fafc);
  transform: none;
}

.erp-table-search-clear[hidden],
.erp-table-columns-panel[hidden],
.erp-table-export-link[hidden],
.erp-table-row-filtered[hidden],
.erp-table-cell-hidden[hidden] {
  display: none !important;
}

.erp-table-count {
  flex: 0 0 auto;
  min-block-size: 22px;
  padding-inline: 7px;
  white-space: nowrap;
}

.erp-table-density {
  box-sizing: border-box;
  block-size: var(--az-erp-table-tools-control-height, 2rem);
  min-inline-size: 7rem;
  margin: 0;
  padding: 0 27px 0 9px;
  border: 1px solid var(--az-ds-color-border, #dbe4ef);
  border-radius: var(--az-ds-radius-sm, .5rem);
  color: var(--az-ds-color-text, #0f172a);
  background-color: var(--az-ds-color-surface, #fff);
  font: 650 var(--az-ds-text-xs, .75rem)/1 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
  cursor: pointer;
}

.erp-table-density:hover {
  border-color: var(--az-ds-color-border-strong, #cbd5e1);
}

.erp-table-density:focus-visible {
  outline: 0;
  border-color: var(--az-ds-color-brand-500, #2563eb);
  box-shadow: var(--az-ds-focus-ring, 0 0 0 3px rgba(37, 99, 235, .24));
}

.erp-table-columns-toggle,
.erp-table-export {
  min-block-size: var(--az-erp-table-tools-control-height, 2rem);
  block-size: var(--az-erp-table-tools-control-height, 2rem);
  padding-inline: 10px;
  border-radius: var(--az-ds-radius-sm, .5rem);
  font-size: var(--az-ds-text-xs, .75rem);
  white-space: nowrap;
}

.erp-table-columns-toggle::after {
  margin-inline-start: 2px;
  content: "▾";
  color: var(--az-ds-color-text-soft, #94a3b8);
  font-size: 10px;
  transition: transform var(--az-ds-duration-fast, 120ms) var(--az-ds-ease-standard, ease);
}

.erp-table-columns-wrap.is-open .erp-table-columns-toggle {
  border-color: var(--az-ds-color-brand-500, #2563eb);
  color: var(--az-ds-color-brand-700, #1e40af);
  background: var(--az-ds-color-brand-50, #eff6ff);
}

.erp-table-columns-wrap.is-open .erp-table-columns-toggle::after {
  transform: rotate(180deg);
}

/* Choix des colonnes ------------------------------------------------------ */

.erp-table-columns-wrap {
  position: relative;
  flex: 0 0 auto;
}

.erp-table-columns-panel {
  position: absolute;
  top: calc(100% + 6px);
  right: 0;
  inset-inline-end: 0;
  z-index: var(--az-ds-z-dropdown, 1000);
  box-sizing: border-box;
  inline-size: min(18rem, calc(100vw - 2rem));
  max-block-size: 22rem;
  max-block-size: min(22rem, calc(100dvh - 7rem));
  padding: 8px;
  display: grid;
  gap: 2px;
  overflow: auto;
  overscroll-behavior: contain;
  border-radius: var(--az-ds-radius-md, .75rem);
  box-shadow: var(--az-ds-shadow-md, 0 14px 36px rgba(15, 23, 42, .12));
  scrollbar-gutter: stable;
}

.erp-table-columns-title {
  position: sticky;
  top: -8px;
  z-index: 1;
  display: block;
  margin: -8px -8px 4px;
  padding: 10px 11px 8px;
  border-bottom: 1px solid var(--az-ds-color-border, #dbe4ef);
  color: var(--az-ds-color-text, #0f172a);
  background: var(--az-ds-color-surface, #fff);
  font: 800 var(--az-ds-text-xs, .75rem)/1.2 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
}

.erp-table-column-option {
  min-inline-size: 0;
  min-block-size: 34px;
  padding: 5px 7px;
  display: grid;
  grid-template-columns: 18px minmax(0, 1fr);
  align-items: center;
  gap: 8px;
  border-radius: 7px;
  color: var(--az-ds-color-text, #0f172a);
  font: 600 var(--az-ds-text-xs, .75rem)/1.25 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
  cursor: pointer;
}

.erp-table-column-option:hover {
  background: var(--az-ds-color-surface-muted, #f8fafc);
}

.erp-table-column-option:has(.erp-table-column-checkbox:focus-visible) {
  box-shadow: var(--az-ds-focus-ring, 0 0 0 3px rgba(37, 99, 235, .24));
}

.erp-table-column-checkbox {
  inline-size: 16px;
  block-size: 16px;
  margin: 0;
  accent-color: var(--az-ds-color-brand-500, #2563eb);
}

.erp-table-column-checkbox:focus-visible {
  outline: 2px solid var(--az-ds-color-brand-500, #2563eb);
  outline-offset: 2px;
}

.erp-table-column-checkbox:disabled {
  opacity: .55;
  cursor: not-allowed;
}

.erp-table-column-label {
  min-inline-size: 0;
  overflow-wrap: anywhere;
}

/* Table, densités et tri -------------------------------------------------- */

.erp-table-enhanced {
  --az-erp-table-cell-padding-block: .55rem;
}

.erp-table-enhanced.erp-table-density-comfortable {
  --az-erp-table-cell-padding-block: .75rem;
}

.erp-table-enhanced.erp-table-density-normal {
  --az-erp-table-cell-padding-block: .55rem;
}

.erp-table-enhanced.erp-table-density-compact {
  --az-erp-table-cell-padding-block: .34rem;
}

.erp-table-enhanced > :is(thead, tbody, tfoot) > tr > :is(th, td) {
  padding-block: var(--az-erp-table-cell-padding-block) !important;
}

body.az-erp-shell #main-screen table.erp-table-enhanced > :is(thead, tbody, tfoot) > tr > :is(th, td),
body.az-erp-legacy-shell #app-main table.erp-table-enhanced > :is(thead, tbody, tfoot) > tr > :is(th, td) {
  padding-block: var(--az-erp-table-cell-padding-block) !important;
}

.erp-table-enhanced thead th {
  position: sticky;
  top: var(--az-erp-table-sticky-offset, 0px);
  z-index: var(--az-ds-z-sticky, 40);
  background-color: var(--az-erp-table-header-bg, var(--az-ds-color-surface-muted, #f8fafc));
  background-clip: padding-box;
  box-shadow: inset 0 -1px 0 var(--az-ds-color-border-strong, #cbd5e1);
}

body.az-erp-shell #main-screen table.erp-table-enhanced thead th,
body.az-erp-legacy-shell #app-main table.erp-table-enhanced thead th {
  position: sticky !important;
  top: var(--az-erp-table-sticky-offset, 0px) !important;
  z-index: var(--az-ds-z-sticky, 40) !important;
  background-color: var(--az-erp-table-header-bg, var(--az-ds-color-surface-muted, #f8fafc)) !important;
  background-clip: padding-box !important;
  box-shadow: inset 0 -1px 0 var(--az-ds-color-border-strong, #cbd5e1) !important;
}

.erp-table-enhanced .erp-table-sortable {
  padding-inline-end: 2.25rem !important;
}

body.az-erp-shell #main-screen table.erp-table-enhanced .erp-table-sortable,
body.az-erp-legacy-shell #app-main table.erp-table-enhanced .erp-table-sortable {
  padding-inline-end: 2.25rem !important;
}

.erp-table-enhanced .erp-table-sortable.is-sorted {
  color: var(--az-ds-color-brand-700, #1e40af);
  background-color: var(--az-ds-color-brand-50, #eff6ff);
}

.erp-table-sort-button {
  position: absolute;
  top: 50%;
  right: 5px;
  inset-inline-end: 5px;
  inline-size: 25px;
  min-inline-size: 25px;
  block-size: 25px;
  min-block-size: 25px;
  padding: 0;
  border-color: transparent;
  border-radius: 6px;
  color: var(--az-ds-color-text-muted, #64748b);
  background: transparent;
  box-shadow: none;
  transform: translateY(-50%);
}

.erp-table-sort-button:hover:not(:disabled),
.erp-table-sort-button:focus-visible {
  color: var(--az-ds-color-brand-700, #1e40af);
  background: var(--az-ds-color-brand-100, #dbeafe);
  transform: translateY(-50%);
}

.erp-table-sort-button.is-sorted {
  border-color: rgba(37, 99, 235, .24);
  border-color: color-mix(in srgb, var(--az-ds-color-brand-500, #2563eb) 24%, transparent);
  color: var(--az-ds-color-brand-700, #1e40af);
  background: var(--az-ds-color-brand-100, #dbeafe);
}

@supports not (border-color: color-mix(in srgb, white, transparent)) {
  .erp-table-sort-button.is-sorted { border-color: var(--az-ds-color-brand-500, #2563eb); }
}

.erp-table-sort-indicator {
  display: block;
  font: 850 13px/1 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
}

.erp-table-status {
  position: absolute !important;
  inline-size: 1px !important;
  block-size: 1px !important;
  margin: -1px !important;
  padding: 0 !important;
  overflow: hidden !important;
  clip: rect(0 0 0 0) !important;
  clip-path: inset(50%) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

/* Adaptation progressive de 1440 px à 320 px ----------------------------- */

@media (max-width: 1100px) {
  .erp-table-tools {
    grid-template-columns: minmax(0, 1fr);
  }

  .erp-table-tools-secondary {
    justify-content: flex-start;
  }
}

@media (max-width: 720px) {
  .erp-table-tools {
    position: sticky;
    padding: 8px;
    gap: 8px;
  }

  .erp-table-tools-primary,
  .erp-table-tools-secondary {
    inline-size: 100%;
    flex-wrap: wrap;
  }

  .erp-table-search-wrap {
    max-inline-size: none;
  }
}

@media (max-width: 480px) {
  .erp-table-tools {
    border-radius: var(--az-ds-radius-sm, .5rem);
  }

  .erp-table-tools-primary {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
  }

  .erp-table-search-label {
    grid-column: 1 / -1;
  }

  .erp-table-search-wrap {
    grid-column: 1;
    min-inline-size: 0;
  }

  .erp-table-search {
    font-size: 16px;
  }

  .erp-table-count {
    grid-column: 2;
  }

  .erp-table-tools-secondary {
    align-items: stretch;
  }

  .erp-table-density-label {
    flex-basis: 100%;
  }

  .erp-table-density,
  .erp-table-columns-wrap,
  .erp-table-export {
    flex: 1 1 8.5rem;
  }

  .erp-table-columns-wrap {
    flex-basis: 100%;
  }

  .erp-table-columns-toggle,
  .erp-table-export {
    inline-size: 100%;
  }

  .erp-table-columns-panel {
    right: auto;
    inset-inline: 0;
    inline-size: auto;
    max-block-size: 18rem;
    max-block-size: min(18rem, calc(100dvh - 6rem));
  }
}

@media (prefers-reduced-motion: reduce) {
  .erp-table-search-wrap,
  .erp-table-columns-toggle::after {
    transition: none;
  }
}

@media print {
  .erp-table-tools,
  .erp-table-sort-button,
  .erp-table-columns-panel,
  .erp-table-export-link {
    display: none !important;
  }

  .erp-table-enhanced thead th,
  body.az-erp-shell #main-screen table.erp-table-enhanced thead th,
  body.az-erp-legacy-shell #app-main table.erp-table-enhanced thead th {
    position: static !important;
    top: auto !important;
    color: inherit !important;
    background: transparent !important;
    box-shadow: none !important;
  }

  .erp-table-enhanced .erp-table-sortable,
  body.az-erp-shell #main-screen table.erp-table-enhanced .erp-table-sortable,
  body.az-erp-legacy-shell #app-main table.erp-table-enhanced .erp-table-sortable {
    padding-inline-end: .5rem !important;
  }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-erp-tables-v2055.css */

/* AZALYS_BUNDLE_SOURCE 29/29: azalys-erp-inbox-v2055.css | sha256=6c1ff478d865e6901f783625d87dd37259f7b1fb4f94a20cb3aab4704d4d456c */
/* AZALYS V20.55.0 — Centre d'attention ERP. Tous les sélecteurs sont isolés. */
body.az-erp-inbox-open { overflow: hidden !important; }

.erp-inbox-sr-only {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}

.erp-inbox-trigger { position: relative !important; }
.erp-inbox-trigger-badge {
  position: absolute !important;
  top: -4px !important;
  right: -5px !important;
  min-width: 18px !important;
  min-height: 18px !important;
  padding: 0 4px !important;
  display: inline-grid !important;
  place-items: center !important;
  border: 2px solid var(--az-ds-color-surface, #fff) !important;
  border-radius: 999px !important;
  color: #fff !important;
  background: var(--az-ds-color-danger-500, #dc2626) !important;
  font: 800 10px/1 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif) !important;
}
.erp-inbox-menu-badge { margin-left: auto !important; }
.erp-inbox-trigger-badge[hidden],
.erp-inbox-menu-badge[hidden],
#erp-inbox-backdrop[hidden],
#erp-inbox-panel[hidden] { display: none !important; }

#erp-inbox-backdrop {
  position: fixed;
  inset: 0;
  z-index: var(--az-ds-z-overlay, 1100);
  border: 0;
  background: rgba(15, 23, 42, 0.42);
  backdrop-filter: blur(2px);
}

#erp-inbox-panel {
  position: fixed;
  inset: 0 0 0 auto;
  z-index: var(--az-ds-z-modal, 1200);
  width: min(460px, 100vw);
  height: 100dvh;
  display: grid;
  grid-template-rows: auto auto minmax(0, 1fr) auto;
  overflow: hidden;
  color: var(--az-ds-color-text, #0f172a);
  background: var(--az-ds-color-surface, #fff);
  border: 0;
  border-left: 1px solid var(--az-ds-color-border, #dbe4ef);
  border-radius: 0;
  box-shadow: -18px 0 44px rgba(15, 23, 42, 0.18);
  font-family: var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
}

.erp-inbox-header {
  padding: var(--az-ds-space-4, 1rem);
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--az-ds-space-3, .75rem);
  border-bottom: 1px solid var(--az-ds-color-border, #dbe4ef);
}
.erp-inbox-heading { min-width: 0; }
.erp-inbox-heading h2 {
  margin: 0;
  color: var(--az-ds-color-text, #0f172a);
  font-size: var(--az-ds-text-lg, 1.125rem);
  line-height: var(--az-ds-leading-tight, 1.25);
}
.erp-inbox-heading p {
  margin: 4px 0 0;
  color: var(--az-ds-color-text-muted, #64748b);
  font-size: var(--az-ds-text-sm, .8125rem);
  line-height: 1.4;
}

.erp-inbox-controls {
  padding: var(--az-ds-space-3, .75rem) var(--az-ds-space-4, 1rem);
  display: grid;
  gap: var(--az-ds-space-3, .75rem);
  border-bottom: 1px solid var(--az-ds-color-border, #dbe4ef);
  background: var(--az-ds-color-surface-muted, #f8fafc);
}
.erp-inbox-control-row { flex-wrap: nowrap; }
.erp-inbox-search {
  min-width: 0;
  width: 100%;
  min-height: var(--az-ds-control-height-md, 2.5rem);
  padding: 0 var(--az-ds-space-3, .75rem);
  border: 1px solid var(--az-ds-color-border, #dbe4ef);
  border-radius: var(--az-ds-radius-md, .75rem);
  color: var(--az-ds-color-text, #0f172a);
  background: var(--az-ds-color-surface, #fff);
  font: 500 var(--az-ds-text-sm, .8125rem)/1 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
}
.erp-inbox-search:focus-visible {
  outline: 0;
  border-color: var(--az-ds-color-brand-500, #2563eb);
  box-shadow: var(--az-ds-focus-ring, 0 0 0 3px rgba(37, 99, 235, .24));
}
.erp-inbox-filters { gap: 6px; }
.erp-inbox-filter {
  min-height: 30px;
  padding: 0 10px;
  border: 1px solid var(--az-ds-color-border, #dbe4ef);
  border-radius: 999px;
  color: var(--az-ds-color-text-muted, #64748b);
  background: var(--az-ds-color-surface, #fff);
  font: 700 11px/1 var(--az-ds-font-sans, Inter, "Segoe UI", sans-serif);
  cursor: pointer;
}
.erp-inbox-filter[aria-pressed="true"] {
  color: var(--az-ds-color-on-brand, #fff);
  border-color: var(--az-ds-color-brand-500, #2563eb);
  background: var(--az-ds-color-brand-500, #2563eb);
}
.erp-inbox-filter:focus-visible {
  outline: 0;
  box-shadow: var(--az-ds-focus-ring, 0 0 0 3px rgba(37, 99, 235, .24));
}
.erp-inbox-live {
  min-height: 18px;
  margin: 0;
  color: var(--az-ds-color-text-muted, #64748b);
  font-size: var(--az-ds-text-xs, .75rem);
}
.erp-inbox-live[data-tone="error"] { color: var(--az-ds-color-danger-500, #dc2626); }

.erp-inbox-scroll {
  min-height: 0;
  overflow: auto;
  overscroll-behavior: contain;
  padding: var(--az-ds-space-3, .75rem) var(--az-ds-space-4, 1rem);
  background: var(--az-ds-color-canvas, #f4f7fb);
}
.erp-inbox-list {
  margin: 0;
  padding: 0;
  display: grid;
  gap: var(--az-ds-space-3, .75rem);
  list-style: none;
}
.erp-inbox-item {
  padding: var(--az-ds-space-3, .75rem);
  border-left: 4px solid var(--az-ds-color-info-500, #0284c7);
  border-radius: var(--az-ds-radius-md, .75rem);
}
.erp-inbox-item[data-priority="critique"] { border-left-color: var(--az-ds-color-danger-500, #dc2626); }
.erp-inbox-item[data-priority="haute"] { border-left-color: var(--az-ds-color-warning-500, #d97706); }
.erp-inbox-item[data-priority="basse"] { border-left-color: var(--az-ds-color-text-soft, #94a3b8); }
.erp-inbox-item-head {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  gap: var(--az-ds-space-2, .5rem);
}
.erp-inbox-item h3 {
  margin: 0;
  overflow-wrap: anywhere;
  color: var(--az-ds-color-text, #0f172a);
  font-size: var(--az-ds-text-sm, .8125rem);
  line-height: 1.35;
}
.erp-inbox-item p {
  margin: 7px 0;
  overflow-wrap: anywhere;
  color: var(--az-ds-color-text-muted, #64748b);
  font-size: var(--az-ds-text-xs, .75rem);
  line-height: 1.45;
}
.erp-inbox-meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 5px 9px;
  color: var(--az-ds-color-text-soft, #94a3b8);
  font-size: 11px;
}
.erp-inbox-meta [data-overdue="true"] { color: var(--az-ds-color-danger-500, #dc2626); font-weight: 800; }
.erp-inbox-source-badge { flex: 0 0 auto; }
.erp-inbox-item-actions {
  margin-top: var(--az-ds-space-3, .75rem);
  display: flex;
  justify-content: flex-end;
}
.erp-inbox-open-item { min-height: 34px; }

.erp-inbox-empty {
  margin: var(--az-ds-space-6, 1.5rem) 0;
  padding: var(--az-ds-space-5, 1.25rem);
  text-align: center;
}
.erp-inbox-empty strong { display: block; margin-bottom: 5px; }
.erp-inbox-empty span { color: var(--az-ds-color-text-muted, #64748b); font-size: var(--az-ds-text-sm, .8125rem); }

.erp-inbox-footer {
  padding: var(--az-ds-space-3, .75rem) var(--az-ds-space-4, 1rem);
  display: flex;
  justify-content: center;
  border-top: 1px solid var(--az-ds-color-border, #dbe4ef);
  background: var(--az-ds-color-surface, #fff);
}

@media (max-width: 600px) {
  #erp-inbox-panel { width: 100vw; border-left: 0; }
  .erp-inbox-search { font-size: 16px; }
  .erp-inbox-header, .erp-inbox-controls, .erp-inbox-scroll, .erp-inbox-footer { padding-inline: 12px; }
}

@media (prefers-reduced-motion: no-preference) {
  #erp-inbox-panel:not([hidden]) { animation: erp-inbox-enter 180ms cubic-bezier(.2, 0, 0, 1); }
  @keyframes erp-inbox-enter { from { transform: translateX(20px); opacity: .65; } to { transform: translateX(0); opacity: 1; } }
}

@media print {
  #erp-inbox-backdrop, #erp-inbox-panel, .erp-inbox-trigger, .erp-inbox-menu-entry { display: none !important; }
}
/* AZALYS_BUNDLE_SOURCE_END: azalys-erp-inbox-v2055.css */
.client-payroll-import-preview{display:grid;gap:10px;padding:14px 16px;border:1px solid #cbd5e1;border-radius:14px;background:#f8fafc;color:#17324d}.client-payroll-import-preview>div{display:grid;gap:4px}.client-payroll-import-preview strong{font-size:13px}.client-payroll-import-preview span,.client-payroll-import-preview small{font-size:12px;line-height:1.45}.client-payroll-import-preview ul{display:grid;gap:6px;margin:0;padding:0 0 0 18px;font-size:12px;line-height:1.4}.client-payroll-import-preview.is-loading{border-color:#93c5fd;background:#eff6ff}.client-payroll-import-preview.is-error{border-color:#fca5a5;background:#fff1f2;color:#991b1b}.client-payroll-import-preview.is-clean{border-color:#86efac;background:#f0fdf4;color:#166534}.client-payroll-import-preview.is-idle{border-style:dashed}
