/* Duka Manager Premium v25 — additive interface layer */
:root {
  --premium-accent: var(--brand, #2374e1);
  --premium-soft: color-mix(in srgb, var(--premium-accent) 10%, #fff);
  --premium-border: #dfe7f1;
  --premium-shadow: 0 18px 45px rgba(24, 39, 75, .12);
}

.business-switcher {
  display: grid;
  grid-template-columns: auto minmax(130px, 190px) auto auto;
  align-items: center;
  gap: 6px;
  padding: 5px 7px;
  border: 1px solid var(--premium-border);
  border-radius: 12px;
  background: #fff;
  min-width: 250px;
}
.business-switcher-label { font-size: 10px; text-transform: uppercase; letter-spacing: .08em; color: #64748b; }
.business-switcher select { border: 0; background: transparent; font-weight: 700; min-width: 0; outline: none; color: #172033; }
.business-count { font-size: 11px; font-weight: 800; color: var(--premium-accent); white-space: nowrap; }
#premium-new-business { width: 29px; height: 29px; border: 0; border-radius: 9px; background: var(--premium-accent); color: #fff; font-size: 18px; cursor: pointer; }
.portfolio-mini { margin: 0 12px 10px; padding: 10px 12px; display: flex; align-items: center; justify-content: space-between; gap: 8px; border-radius: 12px; background: linear-gradient(135deg, var(--premium-soft), #fff); border: 1px solid color-mix(in srgb, var(--premium-accent) 18%, #e8eef6); font-size: 12px; }
.portfolio-mini span { color: var(--premium-accent); font-weight: 800; text-transform: uppercase; }
.portfolio-mini strong { color: #27364c; }

.premium-icon-button { position: relative; width: 42px; height: 42px; border: 1px solid var(--premium-border); border-radius: 12px; background: #fff; cursor: pointer; font-size: 18px; }
.premium-notification-count { position: absolute; right: -5px; top: -6px; min-width: 20px; height: 20px; padding: 0 5px; display: grid; place-items: center; border: 2px solid #fff; border-radius: 999px; background: #e11d48; color: #fff; font-size: 10px; font-weight: 800; }
.premium-notification-count:empty { display: none; }

.premium-overlay-backdrop { position: fixed; inset: 0; z-index: 9999; display: grid; place-items: center; padding: 18px; background: rgba(15, 23, 42, .55); backdrop-filter: blur(5px); }
.premium-modal { position: relative; width: min(720px, 96vw); max-height: min(86vh, 820px); overflow: auto; padding: 26px; border-radius: 20px; background: #fff; box-shadow: var(--premium-shadow); }
.premium-search-dialog { width: min(760px, 96vw); }
.premium-modal-close { position: absolute; right: 14px; top: 14px; width: 34px; height: 34px; border: 0; border-radius: 10px; background: #f1f5f9; cursor: pointer; font-size: 20px; }
.premium-search-input { display: flex; align-items: center; gap: 10px; border: 2px solid color-mix(in srgb, var(--premium-accent) 35%, #dbe4ef); border-radius: 14px; padding: 11px 14px; }
.premium-search-input input { width: 100%; border: 0; outline: 0; font-size: 16px; }
.premium-search-result { width: 100%; display: grid; grid-template-columns: 90px 1fr auto; align-items: center; gap: 12px; margin-top: 8px; padding: 12px 14px; text-align: left; border: 1px solid var(--premium-border); border-radius: 12px; background: #fff; cursor: pointer; }
.premium-search-result:hover { border-color: var(--premium-accent); background: var(--premium-soft); }
.premium-search-result span { font-size: 11px; color: var(--premium-accent); font-weight: 800; text-transform: uppercase; }
.premium-search-result small { color: #64748b; }

.premium-quick-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; margin-top: 18px; }
.premium-quick-grid button { min-height: 112px; display: grid; place-items: center; gap: 6px; border: 1px solid var(--premium-border); border-radius: 15px; background: #fff; cursor: pointer; }
.premium-quick-grid button:hover { transform: translateY(-2px); border-color: var(--premium-accent); box-shadow: 0 10px 24px rgba(31, 65, 114, .1); }
.premium-quick-grid span { font-size: 25px; color: var(--premium-accent); }

.premium-hero-panel { background: linear-gradient(125deg, #111c33, #263f70); color: #fff; border: 0; }
.premium-hero-panel .muted { color: #d3dded; }
.premium-hero-panel .badge { background: rgba(255,255,255,.14); color: #fff; }
.premium-dashboard-alert { border-left: 4px solid var(--premium-accent); }
.premium-dashboard-alert.warn { border-left-color: #f59e0b; background: #fff8e7; }
.premium-dashboard-alert.danger { border-left-color: #dc2626; background: #fff1f2; }

.premium-onboarding { margin-bottom: 18px; border: 1px solid color-mix(in srgb, var(--premium-accent) 22%, #dfe7f1); background: linear-gradient(135deg, var(--premium-soft), #fff); }
.premium-checklist { display: grid; gap: 9px; margin-top: 14px; }
.premium-checklist button { display: grid; grid-template-columns: 28px 1fr auto; align-items: center; gap: 10px; padding: 10px 12px; border: 0; border-radius: 11px; background: rgba(255,255,255,.85); text-align: left; cursor: pointer; }
.premium-checklist button.done { opacity: .7; }
.premium-checklist .check { width: 24px; height: 24px; display: grid; place-items: center; border-radius: 999px; background: #e9eef5; }
.premium-checklist .done .check { background: #d1fae5; color: #047857; }
.premium-progress { height: 8px; overflow: hidden; border-radius: 999px; background: #e6edf6; }
.premium-progress > span { display: block; height: 100%; border-radius: inherit; background: var(--premium-accent); transition: width .25s ease; }

.premium-pos-layout { display: grid; grid-template-columns: minmax(0, 1.55fr) minmax(310px, .75fr); gap: 18px; align-items: start; }
.premium-pos-products { min-width: 0; }
.premium-product-grid { display: grid; grid-template-columns: repeat(auto-fill, minmax(190px, 1fr)); gap: 11px; margin-top: 14px; max-height: 68vh; overflow: auto; padding-right: 4px; }
.premium-product-card { display: grid; gap: 8px; padding: 13px; border: 1px solid var(--premium-border); border-radius: 14px; background: #fff; }
.premium-product-card:hover { border-color: var(--premium-accent); box-shadow: 0 8px 18px rgba(31,65,114,.08); }
.premium-product-card button { justify-self: stretch; }
.premium-pos-cart { position: sticky; top: 82px; }
.premium-cart-lines { display: grid; gap: 8px; max-height: 280px; overflow: auto; }
.premium-cart-line { display: grid; grid-template-columns: 1fr auto auto; align-items: center; gap: 8px; padding: 9px; border-radius: 10px; background: #f6f8fb; }
.premium-cart-line button { width: 28px; height: 28px; border: 0; border-radius: 8px; cursor: pointer; }
.premium-pos-total { display: flex; justify-content: space-between; align-items: center; padding: 14px 0; font-size: 18px; }

.premium-notification-list { display: grid; gap: 10px; }
.premium-notification { display: grid; grid-template-columns: 1fr auto; align-items: center; gap: 12px; padding: 13px 15px; border: 1px solid var(--premium-border); border-left: 4px solid #3b82f6; border-radius: 12px; background: #fff; }
.premium-notification.warn { border-left-color: #f59e0b; }
.premium-notification.danger { border-left-color: #dc2626; }
.premium-notification.bad { border-left-color: #dc2626; background: #fff8f8; }
.premium-notification.ok { border-left-color: #10b981; }
.premium-notification p { margin: 4px 0 0; color: #64748b; }
.premium-notification-list.compact { max-height: 440px; overflow: auto; }

.quality-score-panel { display: grid; grid-template-columns: auto 1fr; align-items: center; gap: 22px; }
.quality-score-ring { --score: 0; width: 112px; height: 112px; display: grid; place-items: center; border-radius: 50%; background: conic-gradient(var(--premium-accent) calc(var(--score) * 1%), #e8edf4 0); position: relative; font-weight: 900; font-size: 22px; }
.quality-score-ring::before { content: ""; position: absolute; inset: 10px; border-radius: inherit; background: #fff; }
.quality-score-ring > span { position: relative; z-index: 1; }

.premium-settings-fieldset { border: 1px solid var(--premium-border); border-radius: 14px; padding: 15px; }
.premium-settings-fieldset legend { padding: 0 7px; color: #334155; font-weight: 800; }

.badge.stock-low, .badge.warn.stock-low { background: #fff4cf !important; color: #9a6500 !important; border-color: #f1c96a !important; }
.badge.bad { background: #ffe2e5; color: #c5152d; }
.badge.ok { background: #dff8ed; color: #07815e; }
.badge.near-expiry, .badge.stock-near-expiry { background: #fff1d6 !important; color: #a85a00 !important; border-color: #f4bd62 !important; }
.badge.stock-expired { background: #ffe3e7 !important; color: #b8142c !important; border-color: #f3a4af !important; }

.premium-undo-snackbar { position: fixed; left: 50%; bottom: 26px; z-index: 10020; display: flex; align-items: center; gap: 18px; max-width: calc(100vw - 32px); padding: 13px 16px; border-radius: 13px; background: #172033; color: #fff; box-shadow: var(--premium-shadow); transform: translate(-50%, 140%); opacity: 0; transition: .22s ease; }
.premium-undo-snackbar.show { transform: translate(-50%, 0); opacity: 1; }
.premium-undo-snackbar button { border: 0; background: transparent; color: #80b7ff; font-weight: 800; cursor: pointer; }

@media (max-width: 1120px) {
  .business-switcher-label { display: none; }
  .business-switcher { min-width: 190px; grid-template-columns: minmax(110px,1fr) auto auto; }
  .premium-pos-layout { grid-template-columns: 1fr; }
  .premium-pos-cart { position: static; }
}

@media (max-width: 760px) {
  .topbar-right { gap: 6px; }
  .business-switcher { width: 100%; min-width: 0; order: 3; grid-column: 1 / -1; }
  .topbar { flex-wrap: wrap; }
  .topbar-right { flex-wrap: wrap; justify-content: flex-end; }
  .premium-global-search { order: 4; width: 100%; }
  .premium-quick-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .premium-search-result { grid-template-columns: 70px 1fr; }
  .premium-search-result small { grid-column: 2; }
  .quality-score-panel { grid-template-columns: 1fr; justify-items: center; text-align: center; }
  .premium-modal { padding: 22px 16px; border-radius: 16px; }
  .premium-product-grid { grid-template-columns: repeat(2, minmax(0,1fr)); }
  .premium-notification { grid-template-columns: 1fr; }
  .premium-notification > button { justify-self: start; }
  .table-wrap table { min-width: 720px; }
}

@media (max-width: 480px) {
  .premium-product-grid, .premium-quick-grid { grid-template-columns: 1fr; }
  .business-count { display: none; }
  .business-switcher { grid-template-columns: 1fr auto; }
  .premium-modal { max-height: 92vh; }
  .premium-cart-line { grid-template-columns: 1fr auto; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}

/* Contextual premium help */
.premium-help-search{display:flex;align-items:center;gap:.65rem;margin:1rem 0;padding:.72rem .9rem;border:1px solid var(--border,#dbe3ef);border-radius:12px;background:#fff}
.premium-help-search input{width:100%;border:0;outline:0;background:transparent;font:inherit}
.premium-help-guides{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.8rem;margin-bottom:1rem}
.premium-help-guide{display:flex;flex-direction:column;align-items:flex-start;gap:.35rem;text-align:left;padding:1rem;border:1px solid var(--border,#dbe3ef);border-radius:14px;background:#fff;cursor:pointer;transition:transform .15s ease,box-shadow .15s ease,border-color .15s ease}
.premium-help-guide:hover,.premium-help-guide:focus-visible{transform:translateY(-1px);border-color:var(--primary,#2374e1);box-shadow:0 10px 24px rgba(15,23,42,.08)}
.premium-help-guide strong{font-size:.98rem;color:#15213a}
.premium-help-guide span{font-size:.88rem;line-height:1.45;color:#64748b}
.premium-help-guide em{font-size:.78rem;font-style:normal;font-weight:700;color:var(--primary,#2374e1)}
@media(max-width:760px){.premium-help-guides{grid-template-columns:1fr}.premium-help-guide{padding:.9rem}}

/* v25.5 notification overlay stacking repair */
.premium-overlay-root {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 18px;
}
.premium-overlay-root .premium-overlay-backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  padding: 0;
}
.premium-overlay-root .premium-modal {
  position: relative;
  z-index: 1;
}

/* v25.5 overlay stacking and notification accessibility */
.premium-overlay-root {
  position: fixed;
  inset: 0;
  z-index: 9999;
  display: grid;
  place-items: center;
  padding: 18px;
}
.premium-overlay-root .premium-overlay-backdrop {
  position: absolute;
  inset: 0;
  z-index: 0;
  display: block;
  padding: 0;
}
.premium-overlay-root .premium-modal {
  position: relative;
  z-index: 1;
}

/* ========================================================================== 
   DCOMPT PREMIUM EXPERIENCE V3 — 2026-08-10
   Mobile-first visual system inspired by the supplied reference while keeping
   DCompt's own navy/emerald identity and all business logic unchanged.
   ========================================================================== */
:root {
  --dc-navy-950:#041d34;
  --dc-navy-900:#062846;
  --dc-navy-800:#0a3659;
  --dc-green-700:#07895f;
  --dc-green-600:#0aa673;
  --dc-green-500:#14b77f;
  --dc-green-100:#dff8ee;
  --dc-green-50:#effbf6;
  --dc-gold:#f0b323;
  --dc-ink:#111827;
  --dc-copy:#6f746f;
  --dc-muted:#8a8f89;
  --dc-warm:#f8f6f1;
  --dc-card:#ffffff;
  --dc-line:#e4e0d7;
  --dc-danger:#cf3f4f;
  --dc-danger-soft:#fff0f2;
  --dc-warn:#bd7200;
  --dc-warn-soft:#fff7e7;
  --dc-shadow:0 14px 40px rgba(21,32,40,.08);
  --dc-shadow-sm:0 5px 16px rgba(21,32,40,.07);
  --dc-radius:22px;
  --dc-radius-sm:15px;
  --premium-accent:var(--dc-green-600);
  --premium-border:var(--dc-line);
  --premium-shadow:var(--dc-shadow);
}

html { scroll-behavior:smooth; }
body,button,input,select,textarea { font-family:"Manrope","Segoe UI",Arial,sans-serif !important; }
body { color:var(--dc-ink); }
button,a,input,select,textarea { -webkit-tap-highlight-color:transparent; }
button { font-weight:750; }

/* ---------- PUBLIC LANDING ---------- */
.public-v3-shell { display:block !important; min-height:100vh; background:var(--dc-warm); }
.dcompt-landing { min-height:100vh; overflow:hidden; background:var(--dc-warm); color:var(--dc-ink); }
.dcompt-landing * { box-sizing:border-box; }
.landing-utility { min-height:34px; display:flex; align-items:center; justify-content:space-between; gap:12px; padding:0 5vw; background:var(--dc-navy-950); color:#cfe3df; font-size:12px; font-weight:650; }
.landing-utility button { border:0; background:transparent; color:#fff; cursor:pointer; font:inherit; }
.landing-nav { position:sticky; top:0; z-index:60; display:flex; align-items:center; gap:28px; min-height:78px; padding:10px 5vw; border-bottom:1px solid rgba(17,24,39,.08); background:rgba(255,255,255,.94); backdrop-filter:blur(16px); }
.landing-brand { flex:0 0 auto; display:flex; align-items:center; }
.landing-brand img { width:155px; height:48px; object-fit:contain; object-position:left center; }
.landing-nav nav { flex:1; display:flex; justify-content:center; gap:30px; }
.landing-nav nav a { color:#424944; text-decoration:none; font-size:14px; font-weight:700; }
.landing-nav nav a:hover { color:var(--dc-green-700); }
.landing-nav-actions { display:flex; align-items:center; gap:10px; }
.landing-login { min-height:42px; padding:0 14px; border:0; background:transparent; color:var(--dc-ink); cursor:pointer; }
.landing-cta { min-height:54px; display:inline-flex; align-items:center; justify-content:center; gap:8px; padding:0 24px; border:0; border-radius:13px; background:var(--dc-green-600); color:#fff; box-shadow:0 10px 25px rgba(10,166,115,.18); cursor:pointer; font-size:15px; font-weight:800; transition:transform .18s ease,box-shadow .18s ease,background .18s ease; }
.landing-cta:hover { transform:translateY(-1px); background:var(--dc-green-700); box-shadow:0 14px 30px rgba(10,166,115,.25); }
.landing-cta.compact { min-height:44px; padding:0 18px; }
.landing-cta.full { width:100%; }
.landing-hero { max-width:1220px; margin:0 auto; padding:74px 28px 38px; display:grid; grid-template-columns:minmax(0,1.05fr) minmax(480px,.95fr); gap:66px; align-items:center; }
.landing-hero-copy { min-width:0; }
.landing-pill { width:max-content; max-width:100%; display:inline-flex; align-items:center; gap:8px; padding:9px 14px; border-radius:999px; background:var(--dc-green-100); color:var(--dc-green-700); font-size:13px; font-weight:800; }
.landing-hero h1 { margin:24px 0 22px; max-width:760px; font-size:clamp(44px,5.1vw,72px); line-height:1.03; letter-spacing:-.055em; font-weight:800; }
.landing-hero h1 em { color:var(--dc-green-600); font-style:normal; }
.landing-hero-text { max-width:680px; margin:0; color:#77766f; font-size:18px; line-height:1.7; font-weight:500; }
.landing-benefit-pills { display:flex; flex-wrap:wrap; gap:9px; margin:28px 0 26px; }
.landing-benefit-pills span { padding:9px 12px; border:1px solid var(--dc-line); border-radius:999px; background:#fff; color:#444a46; box-shadow:0 3px 10px rgba(15,23,42,.04); font-size:12.5px; font-weight:750; }
.landing-hero-actions { display:flex; align-items:center; gap:20px; flex-wrap:wrap; }
.landing-demo-link { color:#666b66; text-decoration:none; font-weight:800; }
.landing-demo-link span { color:var(--dc-green-600); }
.landing-microcopy { margin:16px 0 0; color:#98948a; font-size:12px; font-weight:600; }

.landing-dashboard-demo { padding:0 0 18px; border:1px solid #e5e0d6; border-radius:28px; background:#fff; box-shadow:0 30px 80px rgba(29,38,43,.13); overflow:hidden; transform:perspective(1200px) rotateY(-1deg); }
.demo-browser-bar { height:48px; display:flex; align-items:center; gap:7px; padding:0 16px; background:#ebe8e0; color:#8d8b83; font-size:12px; }
.demo-browser-bar i { width:10px; height:10px; border-radius:50%; background:#d8d4ca; }
.demo-browser-bar span { flex:1; margin-left:8px; padding:7px 12px; border-radius:8px; background:#f8f7f3; }
.demo-app-head { display:flex; justify-content:space-between; align-items:center; padding:20px 22px 12px; }
.demo-app-head div { display:grid; gap:2px; }
.demo-app-head small { color:#98948a; }
.demo-app-head strong { font-size:19px; }
.demo-sync { padding:7px 10px; border-radius:999px; background:var(--dc-green-50); color:var(--dc-green-700); font-size:11px; font-weight:800; }
.demo-kpi-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px; padding:0 22px 14px; }
.demo-kpi { min-height:105px; display:flex; flex-direction:column; justify-content:center; padding:15px; border:1px solid var(--dc-line); border-radius:16px; background:#fff; }
.demo-kpi span,.demo-kpi small { color:#8b887f; font-size:11px; }
.demo-kpi strong { margin:5px 0; font-size:24px; }
.demo-kpi.primary { background:var(--dc-green-600); border-color:var(--dc-green-600); color:#fff; }
.demo-kpi.primary span,.demo-kpi.primary small { color:#dff8ee; }
.demo-kpi.danger strong { color:var(--dc-danger); }
.demo-ai-card { margin:0 22px; display:grid; grid-template-columns:auto 1fr; gap:12px; padding:15px; border-radius:16px; background:var(--dc-navy-950); color:#fff; }
.demo-ai-icon { width:38px; height:38px; display:grid; place-items:center; border-radius:12px; background:rgba(20,183,127,.18); color:#7de5ba; font-size:18px; }
.demo-ai-card div { display:grid; gap:3px; }
.demo-ai-card small { color:#8ed8bc; font-size:10px; font-weight:800; letter-spacing:.08em; }
.demo-ai-card strong { font-size:13px; }
.demo-ai-card p { margin:0; color:#b8c9c3; font-size:11px; line-height:1.45; }

.landing-trust-card { max-width:1110px; margin:36px auto 86px; display:grid; grid-template-columns:repeat(3,1fr); border:1px solid var(--dc-line); border-radius:24px; background:#fff; box-shadow:var(--dc-shadow-sm); overflow:hidden; }
.landing-trust-card div { display:grid; gap:5px; padding:24px 28px; border-right:1px solid var(--dc-line); }
.landing-trust-card div:last-child { border-right:0; }
.landing-trust-card strong { font-size:15px; }
.landing-trust-card span { color:#89867e; font-size:13px; line-height:1.45; }

.landing-section { padding:92px 28px; }
.landing-section-heading { max-width:850px; margin-bottom:44px; }
.landing-section-heading.centered { margin:0 auto 48px; text-align:center; }
.landing-eyebrow { display:inline-block; margin-bottom:14px; color:var(--dc-green-600); font-size:12px; font-weight:850; letter-spacing:.14em; }
.landing-section-heading h2,.landing-ai-copy h2,.migration-copy h2,.landing-final-cta h2 { margin:0; font-size:clamp(34px,4vw,58px); line-height:1.08; letter-spacing:-.045em; font-weight:800; }
.landing-section-heading p,.migration-copy>p { margin:18px 0 0; color:#817e76; font-size:17px; line-height:1.7; }

.landing-problems { max-width:1180px; margin:0 auto; }
.problem-list { display:grid; gap:15px; max-width:970px; }
.problem-list article { display:grid; grid-template-columns:54px 1fr; gap:18px; align-items:start; padding:22px 24px; border:1px solid var(--dc-line); border-radius:18px; background:#fff; box-shadow:0 4px 13px rgba(15,23,42,.035); }
.problem-icon { width:52px; height:52px; display:grid; place-items:center; border-radius:13px; background:#f0ede5; color:#77736b; font-size:22px; font-weight:900; }
.problem-list strong { display:block; margin:2px 0 7px; font-size:17px; }
.problem-list p { margin:0; color:#817f79; line-height:1.55; }

.landing-features { background:#fff; }
.landing-features>.landing-section-heading,.feature-card-grid { max-width:1180px; }
.feature-card-grid { margin:0 auto; display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:18px; }
.feature-card-grid article { min-height:245px; display:flex; flex-direction:column; align-items:flex-start; padding:28px; border:1px solid var(--dc-line); border-radius:22px; background:#faf8f3; }
.feature-icon { width:54px; height:54px; display:grid; place-items:center; margin-bottom:28px; border-radius:16px; background:var(--dc-green-100); color:var(--dc-green-700); font-size:23px; font-weight:900; }
.feature-card-grid h3 { margin:0 0 12px; font-size:20px; }
.feature-card-grid p { margin:0; color:#85827b; line-height:1.65; }

.landing-ai-section { background:#fff; padding-top:28px; }
.landing-ai-card { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1.05fr .75fr; gap:64px; align-items:center; padding:62px; border-radius:34px; background:var(--dc-navy-950); color:#fff; box-shadow:0 26px 65px rgba(4,29,52,.2); }
.landing-eyebrow.light { color:#68ddb1; }
.landing-ai-copy p { color:#b7cbc3; font-size:16px; line-height:1.7; }
.landing-ai-copy ul { display:grid; gap:10px; margin:24px 0 30px; padding:0; list-style:none; }
.landing-ai-copy li { position:relative; padding-left:28px; color:#e6f1ed; line-height:1.5; }
.landing-ai-copy li:before { content:"✓"; position:absolute; left:0; top:0; color:#5de0ab; font-weight:900; }
.light-cta { background:#fff; color:var(--dc-green-700); box-shadow:none; }
.light-cta:hover { background:#f0fbf6; color:var(--dc-green-700); }
.ai-phone-mockup { display:grid; gap:12px; padding:20px; border:1px solid rgba(255,255,255,.12); border-radius:24px; background:#0a2740; box-shadow:0 20px 45px rgba(0,0,0,.25); }
.ai-phone-head { display:flex; align-items:center; gap:10px; padding-bottom:12px; border-bottom:1px solid rgba(255,255,255,.1); }
.ai-phone-head>span { width:42px; height:42px; display:grid; place-items:center; border-radius:13px; background:var(--dc-green-600); }
.ai-phone-head div { display:grid; }
.ai-phone-head small { color:#89b9a9; }
.ai-message { padding:14px; border-radius:15px; background:rgba(255,255,255,.07); }
.ai-message.warning { background:rgba(240,179,35,.11); }
.ai-message small { color:#71ddb5; font-weight:800; }
.ai-message strong { display:block; margin:5px 0; font-size:14px; }
.ai-message p { margin:0; color:#aac1b9; font-size:12px; line-height:1.5; }

.landing-migration { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:1fr 1fr; gap:70px; align-items:center; }
.migration-steps-mini { display:grid; gap:12px; margin-top:30px; }
.migration-steps-mini span { display:grid; grid-template-columns:30px 1fr; align-items:center; gap:11px; color:#626761; font-weight:650; }
.migration-steps-mini b { width:30px; height:30px; display:grid; place-items:center; border-radius:50%; background:var(--dc-green-600); color:#fff; }
.migration-visual { display:grid; grid-template-columns:1fr auto 1.25fr auto 1fr; gap:12px; align-items:center; }
.migration-visual article { min-height:150px; display:flex; flex-direction:column; align-items:center; justify-content:center; gap:6px; padding:16px; border:1px solid var(--dc-line); border-radius:20px; background:#fff; text-align:center; box-shadow:var(--dc-shadow-sm); }
.migration-visual article>span { font-size:30px; }
.migration-visual small { color:#908d86; }
.migration-visual i { color:var(--dc-green-600); font-style:normal; font-size:22px; font-weight:900; }
.migration-visual .migration-center { min-height:185px; background:var(--dc-green-600); border-color:var(--dc-green-600); color:#fff; }
.migration-visual .migration-center small { color:#d8f7eb; }

.landing-how { background:#fff; }
.how-grid { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; }
.how-grid article { min-height:310px; position:relative; padding:30px; border:1px solid var(--dc-line); border-radius:24px; background:#fff; box-shadow:var(--dc-shadow-sm); }
.step-number { width:42px; height:42px; display:grid; place-items:center; border-radius:50%; background:var(--dc-green-600); color:#fff; font-weight:850; }
.step-icon { display:block; margin:25px 0; color:var(--dc-green-600); font-size:30px; }
.how-grid h3 { margin:0 0 12px; font-size:21px; }
.how-grid p { margin:0; color:#85827b; line-height:1.65; }

.landing-why { max-width:1180px; margin:0 auto; }
.why-grid { display:grid; grid-template-columns:repeat(2,1fr); gap:18px; }
.why-grid article { display:grid; grid-template-columns:58px 1fr; gap:18px; padding:28px; border:1px solid var(--dc-line); border-radius:22px; background:#fff; }
.why-grid article>span { width:58px; height:58px; display:grid; place-items:center; border-radius:16px; background:var(--dc-green-100); color:var(--dc-green-700); font-size:22px; font-weight:900; }
.why-grid h3 { margin:2px 0 9px; font-size:19px; }
.why-grid p { margin:0; color:#85827b; line-height:1.6; }

.landing-faq { background:#f5f2eb; }
.faq-list { max-width:970px; margin:0 auto; display:grid; gap:12px; }
.faq-list details { border:1px solid var(--dc-line); border-radius:18px; background:#fff; box-shadow:0 4px 13px rgba(15,23,42,.035); overflow:hidden; }
.faq-list summary { position:relative; padding:21px 58px 21px 24px; cursor:pointer; list-style:none; font-size:16px; font-weight:800; }
.faq-list summary::-webkit-details-marker { display:none; }
.faq-list summary:after { content:"+"; position:absolute; right:24px; top:50%; transform:translateY(-50%); color:#827f77; font-size:24px; font-weight:500; }
.faq-list details[open] summary:after { content:"−"; }
.faq-list details p { margin:0; padding:0 24px 23px; color:#85827b; line-height:1.7; }

.landing-pricing { background:#fff; }
.pricing-grid { max-width:1180px; margin:0 auto; display:grid; grid-template-columns:repeat(3,1fr); gap:20px; align-items:stretch; }
.price-card { position:relative; display:flex; flex-direction:column; padding:31px; border:1px solid var(--dc-line); border-radius:26px; background:#faf8f3; }
.price-card.featured { background:var(--dc-green-600); border-color:var(--dc-green-600); color:#fff; box-shadow:0 25px 55px rgba(10,166,115,.23); transform:translateY(-10px); }
.price-label { color:#817f78; font-size:12px; font-weight:850; letter-spacing:.12em; }
.featured .price-label { color:#d7f7ea; }
.price-card h3 { margin:12px 0 7px; font-size:42px; letter-spacing:-.04em; }
.price-card h3 small { font-size:14px; font-weight:650; }
.price-card p { color:#817f78; line-height:1.55; }
.featured p { color:#d7f7ea; }
.price-card ul { display:grid; gap:10px; margin:20px 0 30px; padding:0; list-style:none; }
.price-card li:before { content:"✓"; margin-right:9px; color:var(--dc-green-600); font-weight:900; }
.featured li:before { color:#fff; }
.price-card button { min-height:52px; margin-top:auto; border:1px solid var(--dc-green-600); border-radius:13px; background:transparent; color:var(--dc-green-700); cursor:pointer; }
.featured button { background:#fff; border-color:#fff; color:var(--dc-green-700); }
.popular-badge { position:absolute; right:22px; top:-15px; padding:7px 15px; border-radius:999px; background:#fff; color:var(--dc-green-700); box-shadow:var(--dc-shadow-sm); font-size:12px; font-weight:850; }

.landing-final-cta { max-width:1130px; margin:92px auto; padding:70px 56px; border-radius:34px; background:var(--dc-navy-950); color:#fff; text-align:center; box-shadow:0 24px 55px rgba(4,29,52,.2); }
.dark-pill { background:rgba(20,183,127,.16); color:#82e5be; }
.landing-final-cta h2 { max-width:780px; margin:22px auto 17px; }
.landing-final-cta p { max-width:720px; margin:0 auto 30px; color:#afc4bd; font-size:16px; line-height:1.7; }
.landing-final-cta small { display:block; margin-top:17px; color:#839d94; }
.landing-footer { display:grid; grid-template-columns:2fr 1fr 1fr 1fr; gap:44px; padding:60px 5vw 28px; background:var(--dc-navy-950); color:#a6bdb5; }
.landing-footer-brand img { width:150px; height:50px; object-fit:contain; object-position:left center; filter:brightness(0) invert(1); }
.landing-footer-brand p { max-width:430px; line-height:1.7; }
.landing-footer>div:not(.landing-footer-brand) { display:flex; flex-direction:column; gap:11px; }
.landing-footer strong { color:#e4efeb; font-size:11px; letter-spacing:.12em; }
.landing-footer a,.landing-footer button { width:max-content; padding:0; border:0; background:none; color:#a6bdb5; text-decoration:none; cursor:pointer; font:inherit; }
.landing-footer a:hover,.landing-footer button:hover { color:#fff; }
.landing-footer-bottom { grid-column:1/-1; padding-top:24px; border-top:1px solid rgba(255,255,255,.1); font-size:12px; }

/* ---------- PUBLIC MODALS / SIGNUP WIZARD ---------- */
.public-modal-root { z-index:10050 !important; }
.public-modal { width:min(720px,calc(100vw - 24px)) !important; max-height:min(92vh,900px) !important; padding:30px !important; border:1px solid var(--dc-line) !important; border-radius:25px !important; background:#fff !important; box-shadow:0 30px 90px rgba(4,29,52,.22) !important; }
.public-modal>h2 { margin:0 0 20px; font-size:26px; letter-spacing:-.03em; }
.public-modal-close { width:38px !important; height:38px !important; border-radius:11px !important; }
.signup-wizard { display:grid; gap:18px; }
.signup-progress { display:grid; grid-template-columns:auto 1fr auto 1fr auto; align-items:center; gap:8px; }
.signup-progress>span { width:32px; height:32px; display:grid; place-items:center; border-radius:50%; background:#ebe7de; color:#77736b; font-size:12px; font-weight:850; }
.signup-progress>span.active,.signup-progress>span.done { background:var(--dc-green-600); color:#fff; }
.signup-progress>i { height:3px; border-radius:999px; background:#ebe7de; }
.signup-progress-labels { display:flex; justify-content:space-between; margin-top:-12px; color:#938f86; font-size:10px; font-weight:750; }
.signup-step { display:none; gap:14px; }
.signup-step.active { display:grid; }
.signup-step-icon { width:54px; height:54px; display:grid; place-items:center; margin:6px auto 0; border-radius:17px; background:var(--dc-green-100); font-size:25px; }
.signup-step h3 { margin:2px 0 0; text-align:center; font-size:24px; letter-spacing:-.025em; }
.signup-step>p { margin:0 0 7px; text-align:center; color:#85827b; line-height:1.5; }
.signup-step label { display:grid; gap:6px; color:#343936; font-size:13px; font-weight:750; }
.signup-step input,.signup-step select { width:100%; min-height:50px; padding:0 14px; border:1px solid #ded9cf; border-radius:13px; background:#fbfaf7; color:var(--dc-ink); font:inherit; outline:none; }
.signup-step input:focus,.signup-step select:focus { border-color:var(--dc-green-600); box-shadow:0 0 0 3px rgba(10,166,115,.1); background:#fff; }
.signup-two { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
.signup-nav { display:flex; justify-content:space-between; gap:12px; margin-top:5px; }
.signup-back { min-height:50px; padding:0 18px; border:1px solid var(--dc-line); border-radius:13px; background:#fff; color:#555b56; cursor:pointer; }
.signup-start-options { display:grid; gap:10px; }
.signup-start-options label { display:grid; grid-template-columns:auto auto 1fr; grid-template-rows:auto auto; align-items:center; gap:4px 10px; padding:13px; border:1px solid var(--dc-line); border-radius:15px; background:#fbfaf7; cursor:pointer; }
.signup-start-options input { width:18px; min-height:18px; grid-row:1/3; padding:0; }
.signup-start-options label>span { grid-row:1/3; font-size:23px; }
.signup-start-options strong { font-size:13px; }
.signup-start-options small { color:#89867e; font-size:11px; font-weight:550; }
.public-form-note { color:#8c8981 !important; font-size:11px !important; line-height:1.55; text-align:center; }

/* ---------- LOGIN ---------- */
.auth-v3-shell { min-height:100vh; background:var(--dc-warm) !important; }
.auth-v3-screen { min-height:100vh; padding:0 5vw 50px; }
.auth-v3-header { min-height:86px; display:flex; align-items:center; justify-content:space-between; }
.auth-v3-brand { border:0; background:transparent; cursor:pointer; }
.auth-v3-brand img { width:150px; height:52px; object-fit:contain; }
.auth-v3-lang { display:flex; padding:3px; border:1px solid var(--dc-line); border-radius:10px; background:#fff; }
.auth-v3-lang button { min-width:38px; min-height:34px; border:0; border-radius:7px; background:transparent; color:#7e7b73; cursor:pointer; }
.auth-v3-lang button.active { background:var(--dc-green-600); color:#fff; }
.auth-v3-layout { width:min(1050px,100%); min-height:620px; margin:38px auto; display:grid; grid-template-columns:1.05fr .95fr; border:1px solid var(--dc-line); border-radius:30px; background:#fff; box-shadow:0 26px 70px rgba(27,36,42,.12); overflow:hidden; }
.auth-v3-promise { padding:62px; background:var(--dc-navy-950); color:#fff; }
.auth-v3-promise h1 { margin:24px 0 17px; font-size:48px; line-height:1.05; letter-spacing:-.045em; }
.auth-v3-promise>p { color:#b1c6be; font-size:16px; line-height:1.7; }
.auth-v3-benefits { display:grid; gap:13px; margin-top:34px; color:#e7f2ee; }
.auth-v3-benefits span::first-letter { color:var(--dc-green-500); }
.auth-v3-card { align-self:center; padding:48px; }
.auth-v3-card .auth-back-home { margin:0 0 35px; border:0; background:transparent; color:#7f7c74; cursor:pointer; }
.auth-v3-card h2 { margin:0 0 8px; font-size:30px; letter-spacing:-.035em; }
.auth-v3-subtitle { margin:0 0 26px; color:#8a877f; }
.auth-v3-form { display:grid; gap:14px; }
.auth-v3-form label { display:grid; gap:7px; font-size:13px; font-weight:750; }
.auth-v3-form input { min-height:52px; padding:0 14px; border:1px solid var(--dc-line); border-radius:13px; background:#fbfaf7; font:inherit; outline:none; }
.auth-v3-form input:focus { border-color:var(--dc-green-600); box-shadow:0 0 0 3px rgba(10,166,115,.1); background:#fff; }
.auth-v3-form .forgot-password-link { margin-top:-5px; color:var(--dc-green-700); font-size:12px; text-decoration:none; font-weight:750; }
.auth-divider { display:flex; align-items:center; gap:12px; margin:20px 0; color:#a09d95; font-size:11px; }
.auth-divider:before,.auth-divider:after { content:""; flex:1; height:1px; background:var(--dc-line); }
.auth-google { width:100%; min-height:50px; border-radius:13px !important; }
.auth-v3-new { display:grid; justify-items:center; gap:6px; margin-top:26px; padding-top:22px; border-top:1px solid var(--dc-line); text-align:center; }
.auth-v3-new span { color:#77746d; font-size:12px; }
.auth-v3-new button { border:0; background:transparent; color:var(--dc-green-700); cursor:pointer; font-size:14px; font-weight:850; }
.auth-v3-new small { color:#a09d95; font-size:10px; }

/* ---------- INTERNAL APP SHELL ---------- */
.layout-v3 { min-height:100vh; display:grid; grid-template-columns:264px minmax(0,1fr); background:#f7f7f4; }
.sidebar-v3 { position:sticky; top:0; height:100vh; padding:18px 14px 14px; border-right:0; background:var(--dc-navy-950); color:#fff; overflow:hidden; display:flex; flex-direction:column; }
.sidebar-brand-row { display:flex; align-items:center; justify-content:space-between; padding:0 4px 16px; }
.sidebar-v3 .brand { display:flex; align-items:center; gap:10px; min-width:0; }
.sidebar-v3 .brand .brand-mark { width:38px; height:38px; border-radius:11px; overflow:hidden; background:#fff; }
.sidebar-v3 .brand .brand-mark img { width:100%; height:100%; object-fit:cover; }
.sidebar-v3 .brand>div { display:grid; min-width:0; }
.sidebar-v3 .brand strong { color:#fff; font-size:18px; }
.sidebar-v3 .brand small { max-width:160px; overflow:hidden; color:#8faea4; font-size:10px; text-overflow:ellipsis; white-space:nowrap; }
.sidebar-v3 .user-box-v3 { margin:0 2px 13px; padding:12px; border:1px solid rgba(255,255,255,.08); border-radius:14px; background:rgba(255,255,255,.05); }
.sidebar-v3 .user-box-v3 strong { color:#fff; font-size:12px; }
.sidebar-v3 .user-box-v3 span,.sidebar-v3 .user-box-v3 small { color:#90aca4; font-size:10px; }
.sidebar-v3 .nav-v3 { flex:1; overflow:auto; padding:2px 2px 20px; scrollbar-width:thin; scrollbar-color:rgba(255,255,255,.13) transparent; }
.sidebar-v3 .nav-section { display:block; margin:19px 10px 6px; color:#63877c; font-size:9px; font-weight:850; letter-spacing:.14em; text-transform:uppercase; }
.sidebar-v3 .nav-v3 button { width:100%; min-height:43px; display:flex; align-items:center; gap:11px; margin:2px 0; padding:0 11px; border:0; border-radius:11px; background:transparent; color:#adc2bc; text-align:left; cursor:pointer; }
.sidebar-v3 .nav-v3 button:hover { background:rgba(255,255,255,.055); color:#fff; }
.sidebar-v3 .nav-v3 button.active { background:var(--dc-green-600); color:#fff; box-shadow:0 8px 20px rgba(0,0,0,.15); }
.sidebar-v3 .nav-icon { width:22px; height:22px; flex:0 0 22px; display:grid; place-items:center; }
.sidebar-v3 .nav-icon svg,.sidebar-footer-v3 svg,.mobile-bottom-nav svg,.dashboard-welcome-actions svg,.ai-coach-head svg { width:19px; height:19px; fill:currentColor; }
.sidebar-v3 .nav-label { font-size:12px; font-weight:720; }
.sidebar-footer-v3 { display:grid; gap:6px; padding-top:10px; border-top:1px solid rgba(255,255,255,.09); }
.sidebar-footer-v3 button { min-height:41px; display:flex; align-items:center; gap:10px; padding:0 11px; border:0; border-radius:10px; background:transparent; color:#9fb7af; cursor:pointer; text-align:left; }
.sidebar-footer-v3 .logout { color:#d0b4b5; }
.content-v3 { min-width:0; background:#f7f7f4; }
.topbar-v3 { min-height:72px; position:sticky; top:0; z-index:35; display:flex; align-items:center; justify-content:space-between; gap:20px; padding:0 26px; border-bottom:1px solid #e7e6e1; background:rgba(255,255,255,.95); backdrop-filter:blur(14px); }
.topbar-v3 .topbar-left { display:flex; align-items:center; gap:18px; min-width:0; flex:1; }
.topbar-context { display:grid; min-width:150px; }
.topbar-context small { color:#8b8c86; font-size:10px; }
.topbar-context strong { font-size:15px; }
.topbar-v3 .search-box { width:min(360px,36vw); min-height:40px; display:flex; align-items:center; gap:8px; padding:0 12px; border:1px solid #e2e1dc; border-radius:12px; background:#f8f8f6; }
.topbar-v3 .search-box input { width:100%; border:0; outline:0; background:transparent; font-size:12px; }
.topbar-v3 .topbar-right { display:flex; align-items:center; gap:10px; }
.topbar-status { display:flex; align-items:center; gap:6px; padding:7px 10px; border-radius:999px; background:#f4f5f2; color:#777b77; font-size:10px; font-weight:750; }
.topbar-status i { width:7px; height:7px; border-radius:50%; background:#aaa; }
.topbar-status i.online { background:var(--dc-green-500); }
.topbar-status i.offline { background:#e0992e; }
.topbar-v3 .topbar-logo { width:36px; height:36px; border-radius:10px; overflow:hidden; }
.topbar-v3 .add-button { width:38px; height:38px; border:0; border-radius:11px; background:var(--dc-green-600); color:#fff; font-size:22px; cursor:pointer; }
.page-title-v3 { padding:23px 28px 0; background:#f7f7f4; }
.page-title-v3 .eyebrow { margin:0 0 4px; color:#8a8b86; font-size:9px; letter-spacing:.09em; }
.page-title-v3 h1 { margin:0; font-size:28px; letter-spacing:-.035em; }
.workspace-v3 { padding:22px 28px 70px; }
.workspace-v3>.panel,.workspace-v3 .panel { border:1px solid #e6e4de; border-radius:var(--dc-radius); background:#fff; box-shadow:none; }
.workspace-v3 .panel { padding:22px; }
.workspace-v3 .panel-head h2 { font-size:18px; letter-spacing:-.02em; }
.workspace-v3 .panel-head p.eyebrow,.workspace-v3 .eyebrow { color:var(--dc-green-600); font-size:9px; font-weight:850; letter-spacing:.12em; }
.workspace-v3 button:not(.primary):not(.subscribe-button):not(.add-button):not(.link-button):not(.ai-chat-launcher) { border-color:#deddd7; border-radius:11px; background:#fff; }
.workspace-v3 button.primary,.workspace-v3 .primary { border-radius:11px; background:var(--dc-green-600); border-color:var(--dc-green-600); color:#fff; }
.workspace-v3 input,.workspace-v3 select,.workspace-v3 textarea { border:1px solid #deddD7; border-radius:11px; background:#fbfbf9; font-family:inherit; }
.workspace-v3 input:focus,.workspace-v3 select:focus,.workspace-v3 textarea:focus { border-color:var(--dc-green-600); box-shadow:0 0 0 3px rgba(10,166,115,.09); outline:none; }
.workspace-v3 .table-wrap { border:1px solid #e7e5de; border-radius:16px; background:#fff; overflow:auto; }
.workspace-v3 table { border-collapse:separate; border-spacing:0; }
.workspace-v3 th { background:#f6f6f3; color:#777b75; font-size:10px; font-weight:850; letter-spacing:.035em; text-transform:uppercase; }
.workspace-v3 th,.workspace-v3 td { border-bottom:1px solid #efeee9; padding:12px 13px; }
.workspace-v3 tbody tr:hover td { background:#fbfcfa; }
.workspace-v3 .badge { border-radius:999px; font-weight:800; }
.mobile-bottom-nav { display:none; }

/* ---------- DASHBOARD ---------- */
.dashboard-welcome-v3 { display:flex; align-items:center; justify-content:space-between; gap:24px; margin-bottom:18px; padding:28px 30px; border-radius:24px; background:linear-gradient(135deg,var(--dc-navy-950),#0a3a4e); color:#fff; box-shadow:0 14px 35px rgba(4,29,52,.16); }
.dashboard-date { color:#7edfb9; font-size:11px; font-weight:850; text-transform:capitalize; }
.dashboard-welcome-v3 h2 { margin:7px 0 5px; font-size:31px; letter-spacing:-.04em; }
.dashboard-welcome-v3 p { margin:0; color:#b7c9c3; }
.dashboard-welcome-v3 p strong { color:#fff; }
.dashboard-welcome-actions { display:flex; flex-wrap:wrap; gap:9px; justify-content:flex-end; }
.dashboard-welcome-actions button { min-height:44px; display:flex; align-items:center; gap:8px; padding:0 14px; border:1px solid rgba(255,255,255,.15) !important; border-radius:11px !important; background:rgba(255,255,255,.08) !important; color:#fff; cursor:pointer; }
.dashboard-welcome-actions button.primary { background:var(--dc-green-600) !important; border-color:var(--dc-green-600) !important; }
.dashboard-welcome-actions button.ai-action { color:#bff3dd; }
.dashboard-kpis-v3 { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); gap:14px; margin-bottom:18px; }
.kpi-v3 { min-height:130px; display:flex; flex-direction:column; justify-content:center; padding:21px; border:1px solid #e5e3dd; border-radius:20px; background:#fff; }
.kpi-v3 span { color:#777a75; font-size:11px; font-weight:750; }
.kpi-v3 strong { margin:6px 0 3px; color:var(--dc-ink); font-size:27px; letter-spacing:-.035em; }
.kpi-v3 small { color:#9a9891; font-size:10px; }
.kpi-v3.revenue { background:var(--dc-green-600); border-color:var(--dc-green-600); }
.kpi-v3.revenue span,.kpi-v3.revenue small { color:#d9f7eb; }
.kpi-v3.revenue strong { color:#fff; }
.kpi-v3.warning strong { color:var(--dc-warn); }
.kpi-v3.danger strong { color:var(--dc-danger); }
.kpi-v3.ok strong { color:var(--dc-green-700); }
.dashboard-focus-grid { display:grid; grid-template-columns:1fr 1fr; gap:18px; margin-bottom:18px; }
.dashboard-attention-v3 { min-width:0; }
.attention-list { display:grid; gap:8px; }
.attention-item { min-height:56px; display:grid !important; grid-template-columns:auto 1fr auto; align-items:center; gap:11px; width:100%; padding:9px 11px !important; border:1px solid #ebe9e3 !important; border-radius:12px !important; background:#fbfbf9 !important; text-align:left; cursor:pointer; }
.attention-dot { width:9px; height:9px; border-radius:50%; background:#aaa; }
.attention-item.warn .attention-dot { background:#e49a26; }
.attention-item.danger .attention-dot { background:#d24a58; }
.attention-item div { display:grid; gap:2px; }
.attention-item strong { font-size:12px; }
.attention-item small { color:#888981; font-size:10px; }
.attention-item i { color:#999; font-style:normal; }
.dashboard-all-good { min-height:180px; display:flex; align-items:center; justify-content:center; gap:14px; padding:24px; text-align:left; }
.dashboard-all-good>span { width:46px; height:46px; display:grid; place-items:center; border-radius:50%; background:var(--dc-green-100); color:var(--dc-green-700); font-weight:900; }
.dashboard-all-good p { margin:5px 0 0; color:#8b8a84; font-size:12px; }
.dashboard-ai-coach-v3 { min-width:0; padding:24px; border-radius:22px; background:var(--dc-navy-950); color:#fff; box-shadow:0 12px 28px rgba(4,29,52,.14); }
.ai-coach-head { display:flex; align-items:center; gap:11px; }
.ai-coach-head>span { width:44px; height:44px; display:grid; place-items:center; border-radius:13px; background:rgba(20,183,127,.16); color:#75dfb6; }
.ai-coach-head small { color:#6fdcb1; font-size:9px; font-weight:850; letter-spacing:.12em; }
.ai-coach-head h2 { margin:2px 0 0; font-size:18px; }
.dashboard-ai-coach-v3>p { color:#afc2bc; font-size:12px; line-height:1.6; }
.dashboard-ai-coach-v3 ol { display:grid; gap:8px; margin:16px 0 20px; padding-left:20px; color:#e0ece8; font-size:11px; line-height:1.55; }
.dashboard-ai-coach-v3 button { min-height:40px; padding:0 13px; border:1px solid rgba(255,255,255,.13) !important; border-radius:10px !important; background:rgba(255,255,255,.08) !important; color:#c8f5e4; cursor:pointer; }
.dashboard-overview-v3 { display:grid; grid-template-columns:1.35fr .65fr; gap:18px; margin-bottom:18px; }
.dashboard-cash-v3 .cashflow-layout { grid-template-columns:minmax(0,1fr) 190px; }
.dashboard-health-v3 .health-score { min-width:58px; padding:7px 10px; border-radius:999px; text-align:center; font-size:11px; font-weight:850; }
.health-score.good { background:var(--dc-green-100); color:var(--dc-green-700); }
.health-score.mid { background:var(--dc-warn-soft); color:var(--dc-warn); }
.health-score.bad { background:var(--dc-danger-soft); color:var(--dc-danger); }
.health-row { display:grid; grid-template-columns:1fr auto auto; align-items:center; gap:10px; min-height:49px; border-bottom:1px solid #efeee9; }
.health-row:last-child { border-bottom:0; }
.health-row span { color:#747872; font-size:11px; }
.health-row strong { font-size:12px; }
.health-row button { padding:5px 8px !important; border:0 !important; background:transparent !important; color:var(--dc-green-700); font-size:10px; }
.dashboard-activity-v3 { margin-bottom:18px; }

/* ---------- GUIDED ONBOARDING ---------- */
.premium-onboarding-v3 { margin-bottom:18px !important; padding:24px !important; border-color:#dfe8e3 !important; background:linear-gradient(145deg,#f5fbf8,#fff) !important; }
.premium-onboarding-head { display:flex; justify-content:space-between; gap:20px; align-items:start; }
.premium-onboarding-head h2 { margin:4px 0 5px; font-size:22px; letter-spacing:-.03em; }
.premium-onboarding-head p { margin:0; color:#7e817c; font-size:12px; }
.premium-onboarding-head>button { border:0 !important; background:transparent !important; color:#8c8d88; font-size:10px; }
.premium-progress-v3 { height:6px; margin:18px 0; overflow:hidden; border-radius:999px; background:#e1e9e5; }
.premium-progress-v3 span { display:block; height:100%; border-radius:inherit; background:var(--dc-green-600); }
.premium-next-step { width:100%; min-height:86px; display:grid !important; grid-template-columns:auto 1fr auto; align-items:center; gap:14px; padding:13px 15px !important; border:1px solid rgba(10,166,115,.2) !important; border-radius:15px !important; background:var(--dc-green-600) !important; color:#fff !important; text-align:left; cursor:pointer; }
.next-step-index { width:40px; height:40px; display:grid; place-items:center; border-radius:50%; background:rgba(255,255,255,.16); font-weight:850; }
.premium-next-step div { display:grid; gap:2px; }
.premium-next-step small { color:#d7f7ea; font-size:8px; font-weight:850; letter-spacing:.11em; }
.premium-next-step strong { font-size:13px; }
.premium-next-step p { margin:0; color:#d7f7ea; font-size:10px; font-weight:550; }
.premium-next-step i { font-style:normal; font-size:20px; }
.premium-checklist-v3 { grid-template-columns:repeat(2,minmax(0,1fr)); gap:8px; margin-top:13px; }
.premium-checklist-v3 button { min-height:66px; grid-template-columns:30px 1fr auto !important; gap:10px !important; padding:10px !important; border:1px solid #e8e7e2 !important; border-radius:13px !important; background:#fff !important; }
.premium-checklist-v3 .check { width:28px !important; height:28px !important; color:#737771; font-size:10px; font-weight:850; }
.premium-checklist-v3 button.done .check { background:var(--dc-green-100) !important; color:var(--dc-green-700) !important; }
.premium-checklist-v3 button div { display:grid; gap:2px; }
.premium-checklist-v3 button strong { font-size:11px; color:#333834; }
.premium-checklist-v3 button small { color:#8d8e89; font-size:9px; line-height:1.35; }
.premium-checklist-v3 button>i { color:#9a9b96; font-size:9px; font-style:normal; }

/* ---------- GENERAL MODULE POLISH ---------- */
.workspace-v3 .metrics,.workspace-v3 .contextual-metrics,.workspace-v3 .compact-metrics { gap:12px; }
.workspace-v3 .metric { border:1px solid #e6e4de; border-radius:17px; background:#fff; box-shadow:none; }
.workspace-v3 .metric strong { letter-spacing:-.025em; }
.workspace-v3 .form-grid,.workspace-v3 .register-grid { gap:13px; }
.workspace-v3 label { color:#454a46; font-size:11px; font-weight:750; }
.workspace-v3 .notice { border-radius:15px; }
.workspace-v3 .empty { border-radius:14px; color:#888b86; }
.workspace-v3 .toolbar { gap:8px; }
.workspace-v3 .toolbar button { min-height:39px; }
.workspace-v3 h2 { color:#1d2320; }
.workspace-v3 p { line-height:1.55; }
.premium-icon-button { border-color:#e3e2dd; border-radius:11px; }
.premium-modal { border-radius:22px; }
.business-switcher { border-color:#e2e1dc; border-radius:11px; box-shadow:none; }
.ai-chat-launcher { right:22px !important; bottom:24px !important; border-radius:18px !important; background:var(--dc-navy-950) !important; box-shadow:0 15px 35px rgba(4,29,52,.22) !important; }
.ai-chat-panel { border-radius:22px !important; overflow:hidden; }

/* ---------- RESPONSIVE ---------- */
@media (max-width:1120px) {
  .landing-hero { grid-template-columns:1fr 440px; gap:38px; }
  .landing-nav nav { gap:18px; }
  .landing-ai-card { gap:36px; padding:48px; }
  .dashboard-kpis-v3 { grid-template-columns:repeat(2,1fr); }
  .dashboard-overview-v3 { grid-template-columns:1fr; }
}

@media (max-width:980px) {
  .landing-utility { display:none; }
  .landing-nav { min-height:70px; padding:8px 18px; }
  .landing-brand img { width:128px; height:44px; }
  .landing-nav nav,.landing-login { display:none; }
  .landing-nav-actions { margin-left:auto; }
  .landing-hero { grid-template-columns:1fr; padding:54px 22px 20px; text-align:center; }
  .landing-pill { margin-inline:auto; }
  .landing-hero h1 { margin-inline:auto; font-size:clamp(42px,8vw,62px); }
  .landing-hero-text { margin-inline:auto; }
  .landing-benefit-pills,.landing-hero-actions { justify-content:center; }
  .landing-dashboard-demo { width:min(660px,100%); margin:10px auto 0; transform:none; text-align:left; }
  .landing-trust-card { margin:28px 22px 60px; }
  .feature-card-grid { grid-template-columns:repeat(2,1fr); }
  .landing-ai-card { grid-template-columns:1fr; }
  .ai-phone-mockup { max-width:580px; }
  .landing-migration { grid-template-columns:1fr; gap:35px; }
  .migration-visual { max-width:720px; }
  .how-grid { grid-template-columns:1fr; max-width:760px; }
  .pricing-grid { grid-template-columns:1fr; max-width:760px; }
  .price-card.featured { transform:none; }
  .landing-footer { grid-template-columns:2fr 1fr 1fr; }
  .landing-footer>div:nth-child(4) { display:none; }

  .layout-v3 { display:block; }
  .sidebar-v3 { position:fixed !important; left:0; top:0; z-index:1001; width:min(86vw,310px) !important; height:100dvh; transform:translateX(-105%); transition:transform .22s ease; box-shadow:18px 0 45px rgba(4,29,52,.22); }
  body.mobile-nav-open .sidebar-v3 { transform:translateX(0); }
  .content-v3 { width:100%; }
  .topbar-v3 { min-height:62px; padding:0 14px; }
  .topbar-v3 .topbar-context { min-width:0; }
  .topbar-v3 .topbar-context small { display:none; }
  .topbar-v3 .topbar-context strong { max-width:42vw; overflow:hidden; text-overflow:ellipsis; white-space:nowrap; font-size:14px; }
  .topbar-v3 .search-box,.topbar-status,.topbar-v3 .mini-language-switch,.topbar-v3 .topbar-logo { display:none; }
  .page-title-v3 { display:none; }
  .workspace-v3 { padding:14px 13px 92px; }
  .mobile-bottom-nav { position:fixed; left:10px; right:10px; bottom:10px; z-index:950; height:64px; display:grid; grid-template-columns:repeat(5,1fr); padding:5px; border:1px solid #e0dfda; border-radius:20px; background:rgba(255,255,255,.96); box-shadow:0 14px 40px rgba(18,29,35,.18); backdrop-filter:blur(14px); }
  .mobile-bottom-nav button { display:grid; place-items:center; align-content:center; gap:3px; border:0; border-radius:14px; background:transparent; color:#81847f; cursor:pointer; }
  .mobile-bottom-nav button.active { background:var(--dc-green-50); color:var(--dc-green-700); }
  .mobile-bottom-nav span { width:22px; height:22px; display:grid; place-items:center; }
  .mobile-bottom-nav svg { width:20px; height:20px; }
  .mobile-bottom-nav small { font-size:9px; font-weight:800; }
  .ai-chat-launcher { bottom:86px !important; right:15px !important; }
  .dashboard-welcome-v3 { align-items:flex-start; padding:22px; }
  .dashboard-welcome-actions { max-width:310px; }
  .dashboard-focus-grid { grid-template-columns:1fr; }
  .premium-checklist-v3 { grid-template-columns:1fr; }
}

@media (max-width:680px) {
  .landing-nav-actions .landing-cta.compact { min-height:42px; padding:0 15px; font-size:13px; }
  .landing-hero { padding:42px 16px 16px; gap:36px; }
  .landing-pill { font-size:11px; }
  .landing-hero h1 { font-size:42px; line-height:1.06; letter-spacing:-.048em; }
  .landing-hero-text { font-size:16px; line-height:1.65; }
  .landing-benefit-pills { gap:7px; }
  .landing-benefit-pills span { font-size:11px; }
  .landing-hero-actions { display:grid; gap:14px; }
  .landing-hero-actions .landing-cta { width:100%; }
  .landing-dashboard-demo { border-radius:22px; }
  .demo-app-head { padding:17px 15px 10px; }
  .demo-kpi-grid { padding:0 15px 12px; gap:8px; }
  .demo-kpi { min-height:92px; padding:12px; }
  .demo-kpi strong { font-size:20px; }
  .demo-ai-card { margin:0 15px; }
  .landing-trust-card { grid-template-columns:1fr; margin:26px 16px 50px; border-radius:20px; }
  .landing-trust-card div { border-right:0; border-bottom:1px solid var(--dc-line); padding:18px 20px; }
  .landing-trust-card div:last-child { border-bottom:0; }
  .landing-section { padding:68px 16px; }
  .landing-section-heading { margin-bottom:30px; }
  .landing-section-heading h2,.landing-ai-copy h2,.migration-copy h2,.landing-final-cta h2 { font-size:34px; }
  .landing-section-heading p,.migration-copy>p { font-size:15px; }
  .problem-list article { grid-template-columns:44px 1fr; padding:18px; gap:13px; }
  .problem-icon { width:44px; height:44px; border-radius:12px; }
  .problem-list strong { font-size:15px; }
  .problem-list p { font-size:13px; }
  .feature-card-grid { grid-template-columns:1fr; }
  .feature-card-grid article { min-height:220px; padding:24px; }
  .landing-ai-section { padding-inline:12px; }
  .landing-ai-card { padding:30px 22px; border-radius:26px; }
  .landing-migration { padding-inline:18px; }
  .migration-visual { grid-template-columns:1fr; }
  .migration-visual i { transform:rotate(90deg); }
  .migration-visual article,.migration-visual .migration-center { min-height:120px; }
  .why-grid { grid-template-columns:1fr; }
  .why-grid article { grid-template-columns:50px 1fr; padding:20px; }
  .why-grid article>span { width:50px; height:50px; }
  .faq-list summary { padding:18px 50px 18px 18px; font-size:14px; }
  .faq-list details p { padding:0 18px 19px; font-size:13px; }
  .price-card { padding:25px; }
  .landing-final-cta { margin:60px 12px; padding:46px 22px; border-radius:26px; }
  .landing-footer { grid-template-columns:1fr 1fr; gap:28px; padding:44px 22px 25px; }
  .landing-footer-brand { grid-column:1/-1; }

  .public-modal { padding:22px 16px !important; border-radius:20px !important; }
  .signup-two { grid-template-columns:1fr; }
  .signup-nav { display:grid; grid-template-columns:1fr 1.4fr; }
  .signup-start-options label { grid-template-columns:auto auto 1fr; }

  .auth-v3-screen { padding:0 14px 30px; }
  .auth-v3-header { min-height:70px; }
  .auth-v3-brand img { width:125px; }
  .auth-v3-layout { margin:18px auto; display:block; min-height:0; border-radius:24px; }
  .auth-v3-promise { padding:30px 24px; }
  .auth-v3-promise h1 { font-size:34px; }
  .auth-v3-promise>p,.auth-v3-benefits { display:none; }
  .auth-v3-card { padding:30px 22px; }
  .auth-v3-card .auth-back-home { margin-bottom:24px; }

  .dashboard-welcome-v3 { display:grid; padding:20px; border-radius:20px; }
  .dashboard-welcome-v3 h2 { font-size:25px; }
  .dashboard-welcome-v3 p { font-size:12px; }
  .dashboard-welcome-actions { display:grid; grid-template-columns:repeat(2,1fr); width:100%; max-width:none; }
  .dashboard-welcome-actions button { justify-content:center; font-size:10px; }
  .dashboard-kpis-v3 { gap:9px; }
  .kpi-v3 { min-height:112px; padding:15px; border-radius:17px; }
  .kpi-v3 strong { font-size:21px; }
  .dashboard-focus-grid,.dashboard-overview-v3 { gap:12px; }
  .workspace-v3 .panel { padding:17px; border-radius:18px; }
  .dashboard-cash-v3 .cashflow-layout { grid-template-columns:1fr; }
  .dashboard-cash-v3 .cash-legend { display:grid; grid-template-columns:repeat(2,1fr); }
  .premium-onboarding-v3 { padding:17px !important; }
  .premium-onboarding-head h2 { font-size:19px; }
  .premium-onboarding-head>div>p:last-child { max-width:270px; }
  .premium-next-step { min-height:92px; }
  .premium-next-step p { display:block; }
  .mobile-bottom-nav { left:7px; right:7px; bottom:7px; height:61px; border-radius:18px; }
}

@media (max-width:420px) {
  .landing-hero h1 { font-size:37px; }
  .demo-kpi-grid { grid-template-columns:1fr 1fr; }
  .demo-kpi span,.demo-kpi small { font-size:9px; }
  .landing-footer { grid-template-columns:1fr; }
  .landing-footer-brand { grid-column:auto; }
  .dashboard-kpis-v3 { grid-template-columns:1fr 1fr; }
  .kpi-v3 span { font-size:10px; }
  .kpi-v3 small { font-size:9px; }
  .dashboard-welcome-actions { grid-template-columns:1fr; }
  .topbar-v3 .topbar-context strong { max-width:48vw; }
}

/* DCOMPT V3.3 - Mobile login button fix */
@media (max-width:980px) {
  .landing-nav nav {
    display:none !important;
  }

  .landing-nav-actions {
    margin-left:auto !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
  }

  .landing-login {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:42px !important;
    padding:0 12px !important;
    border:1px solid #d9e3de !important;
    border-radius:12px !important;
    background:#fff !important;
    color:#111827 !important;
    font-size:13px !important;
    font-weight:800 !important;
    white-space:nowrap !important;
  }

  .landing-cta.compact {
    min-height:42px !important;
    padding:0 14px !important;
    white-space:nowrap !important;
  }

  .landing-brand img {
    width:118px !important;
    height:42px !important;
  }
}

@media (max-width:390px) {
  .landing-nav {
    padding-left:12px !important;
    padding-right:12px !important;
    gap:6px !important;
  }

  .landing-brand img {
    width:105px !important;
  }

  .landing-login {
    padding:0 9px !important;
    font-size:12px !important;
  }

  .landing-cta.compact {
    padding:0 10px !important;
    font-size:12px !important;
  }

  .landing-nav-actions {
    gap:5px !important;
  }
}

/* DCOMPT V3.3 - Mobile login button fix */
@media (max-width:980px) {
  .landing-nav nav {
    display:none !important;
  }

  .landing-nav-actions {
    margin-left:auto !important;
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
  }

  .landing-login {
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:42px !important;
    padding:0 12px !important;
    border:1px solid #d9e3de !important;
    border-radius:12px !important;
    background:#fff !important;
    color:#111827 !important;
    font-size:13px !important;
    font-weight:800 !important;
    white-space:nowrap !important;
  }

  .landing-cta.compact {
    min-height:42px !important;
    padding:0 14px !important;
    white-space:nowrap !important;
  }

  .landing-brand img {
    width:118px !important;
    height:42px !important;
  }
}

@media (max-width:390px) {
  .landing-nav {
    padding-left:12px !important;
    padding-right:12px !important;
    gap:6px !important;
  }

  .landing-brand img {
    width:105px !important;
  }

  .landing-login {
    padding:0 9px !important;
    font-size:12px !important;
  }

  .landing-cta.compact {
    padding:0 10px !important;
    font-size:12px !important;
  }

  .landing-nav-actions {
    gap:5px !important;
  }
}

/* =========================================================
   DCOMPT V3.3 FINAL - LOGIN MOBILE VISIBLE
   ========================================================= */

@media screen and (max-width: 980px) {

  .landing-nav {
    display: flex !important;
    align-items: center !important;
    justify-content: space-between !important;
    gap: 6px !important;
    padding: 10px 12px !important;
  }

  .landing-nav nav {
    display: none !important;
  }

  .landing-brand {
    flex: 0 0 auto !important;
    min-width: 0 !important;
  }

  .landing-brand img {
    width: 100px !important;
    max-width: 25vw !important;
    height: auto !important;
  }

  .landing-nav-actions {
    margin-left: auto !important;
    display: flex !important;
    align-items: center !important;
    justify-content: flex-end !important;
    gap: 6px !important;
    flex: 0 0 auto !important;
  }

  .landing-login {
    display: inline-flex !important;
    visibility: visible !important;
    opacity: 1 !important;
    align-items: center !important;
    justify-content: center !important;
    min-height: 42px !important;
    padding: 0 11px !important;
    margin: 0 !important;

    background: #ffffff !important;
    color: #0f172a !important;

    border: 1px solid #d8dfdc !important;
    border-radius: 12px !important;

    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    text-decoration: none !important;
    white-space: nowrap !important;
  }

  .landing-cta.compact {
    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    min-height: 42px !important;
    padding: 0 12px !important;
    margin: 0 !important;

    font-size: 12px !important;
    font-weight: 800 !important;
    line-height: 1 !important;
    white-space: nowrap !important;
  }
}

/* Très petits téléphones */
@media screen and (max-width: 370px) {

  .landing-nav {
    padding-left: 8px !important;
    padding-right: 8px !important;
    gap: 4px !important;
  }

  .landing-brand img {
    width: 82px !important;
  }

  .landing-nav-actions {
    gap: 4px !important;
  }

  .landing-login {
    min-height: 40px !important;
    padding: 0 8px !important;
    font-size: 11px !important;
  }

  .landing-cta.compact {
    min-height: 40px !important;
    padding: 0 9px !important;
    font-size: 11px !important;
  }
}

/* =========================================================
   FIN DCOMPT V3.3 FINAL
   ========================================================= */

/* ==========================================================
   DCOMPT V3.4
   LISIBILITE + COULEURS + EMOJIS
   Modification purement visuelle
   ========================================================== */


/* ==========================================================
   1. CARTES FONCEES DU DASHBOARD
   ========================================================== */

.dashboard-welcome-v3 h2,
.dashboard-welcome-v3 h2 *,
.dashboard-ai-coach-v3 h2,
.dashboard-ai-coach-v3 h2 * {
  color: #ffffff !important;
}

.dashboard-welcome-v3 p {
  color: #d6e3df !important;
}

.dashboard-welcome-v3 p strong {
  color: #ffffff !important;
}

.dashboard-date {
  color: #72deb7 !important;
}

/* Bonjour */
.dashboard-welcome-v3 h2::before {
  content: "👋 ";
}

/* Boutique IA */
.dashboard-ai-coach-v3 h2::before {
  content: "🤖 ";
}

.dashboard-ai-coach-v3 > p {
  color: #d2e0dc !important;
}

.dashboard-ai-coach-v3 ol,
.dashboard-ai-coach-v3 li {
  color: #f1f8f5 !important;
}

.ai-coach-head small {
  color: #76e5bb !important;
}


/* ==========================================================
   2. KPI - LISIBILITE
   ========================================================== */

.dashboard-kpis-v3 article span {
  color: #52635d !important;
}

.dashboard-kpis-v3 article strong {
  color: #111827 !important;
}

.dashboard-kpis-v3 article small {
  color: #76827e !important;
}

.dashboard-kpis-v3 .revenue span,
.dashboard-kpis-v3 .revenue strong,
.dashboard-kpis-v3 .revenue small {
  color: #ffffff !important;
}


/* ==========================================================
   3. SIDEBAR / MENU MOBILE
   ========================================================== */

@media screen and (max-width:980px) {

  .sidebar-v3 .brand strong {
    color: #15231f !important;
  }

  .sidebar-v3 .brand small {
    color: #60756e !important;
  }

  .sidebar-v3 .user-box-v3 strong {
    color: #20332c !important;
  }

  .sidebar-v3 .user-box-v3 span,
  .sidebar-v3 .user-box-v3 small,
  .sidebar-v3 .mobile-user-email {
    color: #6c7e77 !important;
  }

  .sidebar-v3 .nav-section {
    color: #527167 !important;
    font-weight: 850 !important;
    letter-spacing: .08em !important;
  }

  /* Tous les onglets */
  .sidebar-v3 .nav-v3 button {
    color: #334b43 !important;
    opacity: 1 !important;
  }

  .sidebar-v3 .nav-v3 button .nav-label {
    color: inherit !important;
    font-weight: 760 !important;
  }

  .sidebar-v3 .nav-v3 button .nav-icon {
    color: #397fc3 !important;
    opacity: 1 !important;
  }

  /* Onglet actif */
  .sidebar-v3 .nav-v3 button.active {
    background: #0caf7d !important;
    color: #ffffff !important;
  }

  .sidebar-v3 .nav-v3 button.active .nav-label,
  .sidebar-v3 .nav-v3 button.active .nav-icon {
    color: #ffffff !important;
  }

  /* Fonctions verrouillées */
  .sidebar-v3 .nav-v3 button.locked {
    color: #667b73 !important;
    opacity: 1 !important;
  }

  .sidebar-v3 .nav-v3 button.locked .nav-label {
    color: #667b73 !important;
  }

  .sidebar-v3 .nav-v3 button.locked .nav-icon {
    color: #7792aa !important;
  }


  /* ========================================================
     EMOJIS DES ONGLETS
     ======================================================== */

  .sidebar-v3 button[data-view="dashboard"] .nav-label::before {
    content: "🏠 ";
  }

  .sidebar-v3 button[data-view="stock"] .nav-label::before {
    content: "📦 ";
  }

  .sidebar-v3 button[data-view="purchaseOrders"] .nav-label::before {
    content: "📝 ";
  }

  .sidebar-v3 button[data-view="sales"] .nav-label::before {
    content: "📈 ";
  }

  .sidebar-v3 button[data-view="expenses"] .nav-label::before {
    content: "💸 ";
  }

  .sidebar-v3 button[data-view="consultations"] .nav-label::before {
    content: "🩺 ";
  }

  .sidebar-v3 button[data-view="debts"] .nav-label::before {
    content: "💳 ";
  }

  .sidebar-v3 button[data-view="suppliers"] .nav-label::before {
    content: "🚚 ";
  }

  .sidebar-v3 button[data-view="invoices"] .nav-label::before {
    content: "🧾 ";
  }

  .sidebar-v3 button[data-view="quotes"] .nav-label::before {
    content: "📄 ";
  }

  .sidebar-v3 button[data-view="accounting"] .nav-label::before {
    content: "🧮 ";
  }

  .sidebar-v3 button[data-view="documents"] .nav-label::before {
    content: "📁 ";
  }

  .sidebar-v3 button[data-view="costing"] .nav-label::before {
    content: "🧮 ";
  }

  .sidebar-v3 button[data-view="migration"] .nav-label::before {
    content: "📥 ";
  }

  .sidebar-v3 button[data-view="workflow"] .nav-label::before {
    content: "📨 ";
  }

  .sidebar-v3 button[data-view="smart"] .nav-label::before {
    content: "🤖 ";
  }

  .sidebar-v3 button[data-view="reports"] .nav-label::before {
    content: "📊 ";
  }

  .sidebar-v3 button[data-view="billing"] .nav-label::before {
    content: "💰 ";
  }

  .sidebar-v3 button[data-view="team"] .nav-label::before {
    content: "👥 ";
  }

  .sidebar-v3 button[data-view="hr"] .nav-label::before {
    content: "🧑‍💼 ";
  }

  .sidebar-v3 button[data-view="settings"] .nav-label::before {
    content: "⚙️ ";
  }

  .sidebar-v3 button[data-view="help"] .nav-label::before {
    content: "❓ ";
  }

  .sidebar-v3 button[data-view="support"] .nav-label::before {
    content: "💬 ";
  }


  /* ========================================================
     AIDE & DECONNEXION
     ======================================================== */

  .sidebar-footer-v3 button {
    color: #405c53 !important;
    opacity: 1 !important;
    font-weight: 760 !important;
  }

  .sidebar-footer-v3 button span {
    color: inherit !important;
  }

  .sidebar-footer-v3 button[data-view="help"] span::before {
    content: "❓ ";
  }

  .sidebar-footer-v3 .logout {
    color: #a15052 !important;
  }

  .sidebar-footer-v3 .logout::before {
    content: "🚪 ";
  }


  /* ========================================================
     4. BARRE DE NAVIGATION INFERIEURE
     ======================================================== */

  .mobile-bottom-nav button {
    color: #58645f !important;
    opacity: 1 !important;
  }

  .mobile-bottom-nav button small {
    color: inherit !important;
    font-weight: 820 !important;
  }

  .mobile-bottom-nav button svg {
    color: inherit !important;
    fill: currentColor !important;
  }

  .mobile-bottom-nav button.active {
    color: #078b65 !important;
  }

  .mobile-bottom-nav button.active small,
  .mobile-bottom-nav button.active svg {
    color: #078b65 !important;
  }

  /* Quelques emojis très discrets dans la barre basse */

  .mobile-bottom-nav button[data-view="dashboard"] small::before {
    content: "🏠 ";
  }

  .mobile-bottom-nav button[data-view="sales"] small::before {
    content: "📈 ";
  }

  .mobile-bottom-nav button[data-view="stock"] small::before {
    content: "📦 ";
  }

  .mobile-bottom-nav button[data-view="smart"] small::before {
    content: "✨ ";
  }

  #mobile-more-button small::before {
    content: "☰ ";
  }

}


/* ==========================================================
   5. ELEMENTS DU DASHBOARD
   ========================================================== */

.dashboard-attention-v3 .eyebrow::before {
  content: "⚠️ ";
}

.dashboard-cash-v3 .eyebrow::before {
  content: "💰 ";
}

.dashboard-health-v3 .eyebrow::before {
  content: "📊 ";
}


/* ==========================================================
   FIN V3.4
   ========================================================== */


/* ==========================================================
   DCOMPT PREMIUM POLISH V3.5
   UX / LISIBILITE / COULEURS / EMOJIS / MOBILE
   Aucun changement métier
   ========================================================== */


/* ==========================================================
   1. TYPOGRAPHIE ET LISIBILITE
   ========================================================== */

.workspace-v3 {
  color:#17231f !important;
}

.workspace-v3 h1,
.workspace-v3 h2,
.workspace-v3 h3,
.workspace-v3 h4,
.workspace-v3 strong {
  color:#16231f;
}

.workspace-v3 p,
.workspace-v3 .muted {
  color:#64746e;
}


/* ==========================================================
   2. CARTES BLEU MARINE
   ========================================================== */

.dashboard-welcome-v3 h2,
.dashboard-welcome-v3 h2 *,
.dashboard-ai-coach-v3 h2,
.dashboard-ai-coach-v3 h2 * {
  color:#ffffff !important;
}

.dashboard-welcome-v3 h2::before {
  content:"👋 ";
}

.dashboard-welcome-v3 p {
  color:#d2e2dc !important;
}

.dashboard-welcome-v3 p strong {
  color:#ffffff !important;
}

.dashboard-date {
  color:#76e3bc !important;
}

.dashboard-ai-coach-v3 h2::before {
  content:"✨ ";
}

.dashboard-ai-coach-v3 > p {
  color:#cfdfda !important;
}

.dashboard-ai-coach-v3 ol,
.dashboard-ai-coach-v3 li {
  color:#eef8f4 !important;
}

.ai-coach-head small {
  color:#77e5bb !important;
  font-weight:850 !important;
}


/* ==========================================================
   3. KPI
   ========================================================== */

.dashboard-kpis-v3 article {
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    border-color .18s ease;
}

.dashboard-kpis-v3 article span {
  color:#52615c !important;
}

.dashboard-kpis-v3 article strong {
  color:#14211d !important;
}

.dashboard-kpis-v3 article small {
  color:#78847f !important;
}

.dashboard-kpis-v3 .revenue span,
.dashboard-kpis-v3 .revenue strong,
.dashboard-kpis-v3 .revenue small {
  color:#ffffff !important;
}


/* ==========================================================
   4. PANELS ET CARTES
   ========================================================== */

.workspace-v3 .panel {
  transition:
    box-shadow .18s ease,
    transform .18s ease,
    border-color .18s ease;
}

@media (hover:hover) {

  .workspace-v3 .panel:hover {
    border-color:#d8e4de;
    box-shadow:0 10px 30px rgba(19,49,40,.06);
  }

  .dashboard-kpis-v3 article:hover {
    transform:translateY(-2px);
    box-shadow:0 12px 28px rgba(20,45,37,.08);
  }
}


/* ==========================================================
   5. BOUTONS
   ========================================================== */

.workspace-v3 button,
.premium-modal button {
  transition:
    transform .12s ease,
    box-shadow .16s ease,
    background-color .16s ease,
    border-color .16s ease,
    color .16s ease;
}

.workspace-v3 button:active,
.premium-modal button:active {
  transform:scale(.975);
}

.workspace-v3 button.primary {
  box-shadow:0 8px 20px rgba(10,166,115,.17);
}

.workspace-v3 button.primary:hover {
  box-shadow:0 11px 26px rgba(10,166,115,.24);
}


/* ==========================================================
   6. FORMULAIRES
   ========================================================== */

.workspace-v3 input,
.workspace-v3 select,
.workspace-v3 textarea {
  color:#19251f !important;
  transition:
    border-color .16s ease,
    box-shadow .16s ease,
    background .16s ease;
}

.workspace-v3 input::placeholder,
.workspace-v3 textarea::placeholder {
  color:#939d98 !important;
}

.workspace-v3 input:focus,
.workspace-v3 select:focus,
.workspace-v3 textarea:focus {
  background:#ffffff !important;
  border-color:#0aa673 !important;
  box-shadow:0 0 0 4px rgba(10,166,115,.10) !important;
}

button:focus-visible,
a:focus-visible,
input:focus-visible,
select:focus-visible,
textarea:focus-visible {
  outline:3px solid rgba(10,166,115,.22) !important;
  outline-offset:2px;
}


/* ==========================================================
   7. TABLEAUX
   ========================================================== */

.workspace-v3 table tbody tr {
  transition:background .14s ease;
}

.workspace-v3 table tbody tr:hover {
  background:#f7faf8;
}

.workspace-v3 table th {
  color:#53645e;
  font-weight:800;
}

.workspace-v3 table td {
  color:#273831;
}


/* ==========================================================
   8. ETATS VIDES
   ========================================================== */

.workspace-v3 div.empty {
  min-height:105px;
  display:flex;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:7px;
  padding:22px !important;
  border:1px dashed #d6ded9;
  border-radius:16px !important;
  background:#fafcfb;
  color:#75827d !important;
  text-align:center;
}

.workspace-v3 div.empty::before {
  content:"📭";
  display:block;
  font-size:27px;
  line-height:1;
  filter:saturate(.75);
}

.workspace-v3 div.empty.tall {
  min-height:150px;
}


/* ==========================================================
   9. ONBOARDING
   ========================================================== */

.premium-onboarding-v3 {
  overflow:hidden;
  border:1px solid #d7e8df !important;
  box-shadow:0 10px 28px rgba(17,62,47,.055) !important;
}

.premium-onboarding-head h2 {
  color:#162b24 !important;
}

.premium-onboarding-head h2::before {
  content:"🚀 ";
}

.premium-onboarding-head p {
  color:#697a74 !important;
}

.premium-next-step {
  box-shadow:0 10px 24px rgba(10,166,115,.15);
}

.premium-checklist-v3 button {
  transition:
    transform .15s ease,
    border-color .15s ease,
    box-shadow .15s ease;
}

@media (hover:hover) {
  .premium-checklist-v3 button:hover {
    transform:translateY(-1px);
    border-color:#cfe2d9 !important;
    box-shadow:0 8px 18px rgba(20,50,40,.06);
  }
}

.premium-checklist-v3 button.done {
  background:#f6fbf8 !important;
}

.premium-checklist-v3 button.done strong {
  color:#477166 !important;
}


/* ==========================================================
   10. MODALES
   ========================================================== */

.premium-modal,
.public-modal {
  box-shadow:0 28px 80px rgba(7,31,24,.18) !important;
}

.premium-modal-close,
.public-modal-close {
  transition:
    transform .15s ease,
    background .15s ease;
}

.premium-modal-close:hover,
.public-modal-close:hover {
  transform:rotate(4deg);
  background:#e9f4ef !important;
}


/* ==========================================================
   11. MENU MOBILE - LISIBILITE
   ========================================================== */

@media screen and (max-width:980px) {

  .sidebar-v3 .brand strong {
    color:#172720 !important;
  }

  .sidebar-v3 .brand small {
    color:#657972 !important;
  }

  .sidebar-v3 .user-box-v3 strong {
    color:#263b33 !important;
  }

  .sidebar-v3 .user-box-v3 span,
  .sidebar-v3 .user-box-v3 small,
  .sidebar-v3 .mobile-user-email {
    color:#71817b !important;
  }

  .sidebar-v3 .nav-section {
    color:#547167 !important;
    font-weight:850 !important;
  }

  .sidebar-v3 .nav-v3 button {
    color:#40534c !important;
    opacity:1 !important;
  }

  .sidebar-v3 .nav-v3 button .nav-label {
    color:inherit !important;
    font-weight:760 !important;
  }

  .sidebar-v3 .nav-v3 button .nav-icon {
    color:#4987bf !important;
    opacity:1 !important;
  }

  .sidebar-v3 .nav-v3 button.active {
    background:#0caf7d !important;
    color:#ffffff !important;
    box-shadow:0 9px 22px rgba(10,166,115,.18);
  }

  .sidebar-v3 .nav-v3 button.active .nav-label,
  .sidebar-v3 .nav-v3 button.active .nav-icon {
    color:#ffffff !important;
  }

  .sidebar-v3 .nav-v3 button.locked {
    color:#697a74 !important;
    opacity:1 !important;
  }

  .sidebar-v3 .nav-v3 button.locked .nav-label {
    color:#697a74 !important;
  }

  .sidebar-v3 .nav-v3 button.locked .nav-icon {
    color:#718aa1 !important;
  }


  /* Emojis ciblés - pas partout */

  .sidebar-v3 button[data-view="dashboard"] .nav-label::before {
    content:"🏠 ";
  }

  .sidebar-v3 button[data-view="sales"] .nav-label::before {
    content:"📈 ";
  }

  .sidebar-v3 button[data-view="stock"] .nav-label::before {
    content:"📦 ";
  }

  .sidebar-v3 button[data-view="expenses"] .nav-label::before {
    content:"💸 ";
  }

  .sidebar-v3 button[data-view="smart"] .nav-label::before {
    content:"✨ ";
  }

  .sidebar-v3 button[data-view="reports"] .nav-label::before {
    content:"📊 ";
  }

  .sidebar-v3 button[data-view="migration"] .nav-label::before {
    content:"📥 ";
  }

  .sidebar-v3 button[data-view="billing"] .nav-label::before {
    content:"💳 ";
  }

  .sidebar-v3 button[data-view="settings"] .nav-label::before {
    content:"⚙️ ";
  }


  /* Aide / déconnexion */

  .sidebar-footer-v3 button {
    color:#456158 !important;
    opacity:1 !important;
    font-weight:760 !important;
  }

  .sidebar-footer-v3 button[data-view="help"] span::before {
    content:"❓ ";
  }

  .sidebar-footer-v3 .logout {
    color:#a25355 !important;
  }

  .sidebar-footer-v3 .logout::before {
    content:"🚪 ";
  }


  /* ========================================================
     12. NAVIGATION BASSE
     ======================================================== */

  .mobile-bottom-nav {
    bottom:max(7px,env(safe-area-inset-bottom)) !important;
    min-height:64px;
  }

  .mobile-bottom-nav button {
    color:#596560 !important;
    opacity:1 !important;
    transition:
      color .15s ease,
      background .15s ease,
      transform .12s ease;
  }

  .mobile-bottom-nav button small {
    color:inherit !important;
    font-weight:800 !important;
  }

  .mobile-bottom-nav button svg {
    color:inherit !important;
  }

  .mobile-bottom-nav button.active {
    color:#078b65 !important;
    background:#e9f8f2 !important;
  }

  .mobile-bottom-nav button:active {
    transform:scale(.94);
  }


  /* ========================================================
     13. EVITER LES SUPERPOSITIONS IA / SYNCHRONISATION
     ======================================================== */

  .ai-chat-launcher {
    right:14px !important;
    bottom:88px !important;
  }

  .tenant-sync-status {
    left:16px !important;
    right:auto !important;
    bottom:84px !important;
    max-width:165px !important;
    min-height:34px;
    padding:0 12px;
    box-shadow:0 8px 22px rgba(20,50,40,.12);
  }


  /* ========================================================
     14. ESPACE POUR LA NAVIGATION BASSE
     ======================================================== */

  .workspace-v3 {
    padding-bottom:100px !important;
  }

}


/* ==========================================================
   15. EMOJIS DE SECTIONS
   ========================================================== */

.dashboard-attention-v3 .eyebrow::before {
  content:"⚠️ ";
}

.dashboard-cash-v3 .eyebrow::before {
  content:"💰 ";
}

.dashboard-health-v3 .eyebrow::before {
  content:"📊 ";
}


/* ==========================================================
   16. ACCESSIBILITE : REDUIRE LES ANIMATIONS SI DEMANDE
   ========================================================== */

@media (prefers-reduced-motion:reduce) {

  *,
  *::before,
  *::after {
    scroll-behavior:auto !important;
    transition-duration:.01ms !important;
    animation-duration:.01ms !important;
    animation-iteration-count:1 !important;
  }
}


/* ==========================================================
   FIN DCOMPT PREMIUM POLISH V3.5
   ========================================================== */





/* DCOMPT V3.8 SUBSCRIPTION NOTIFICATIONS START */

/* =========================================================
   1 — ONGLET ABONNEMENT
   ========================================================= */

/* En-tête abonnement */
.billing-header {
  background: #faf9f5 !important;
  border: 1px solid #e2dfd7 !important;
  border-radius: 24px !important;
  padding: 24px !important;
  box-shadow: 0 12px 35px rgba(16,40,32,.05) !important;
}

.billing-header h1,
.billing-header h2,
.billing-header h3 {
  color: #13231d !important;
  font-weight: 900 !important;
}

.billing-header p,
.billing-header .muted,
.billing-header .small-note {
  color: #68766f !important;
}


/* Mensuel / annuel */
.billing-cycle-toggle {
  background: #ffffff !important;
  border: 1px solid #deded8 !important;
  border-radius: 18px !important;
  padding: 5px !important;
  box-shadow: 0 5px 15px rgba(22,45,37,.04) !important;
}

.billing-cycle-toggle button {
  color: #485a53 !important;
  background: transparent !important;
  border-radius: 14px !important;
  font-weight: 800 !important;
  min-height: 48px !important;
}

.billing-cycle-toggle button.active {
  background: #0aaa7b !important;
  color: #ffffff !important;
  box-shadow: 0 8px 18px rgba(10,170,123,.18) !important;
}

.billing-cycle-toggle button.active span {
  color: #ffffff !important;
}


/* Formulaire promo */
.promo-form label {
  color: #283a33 !important;
  font-weight: 800 !important;
}

.promo-form input {
  background: #ffffff !important;
  color: #17241f !important;
  border: 1px solid #d9dedb !important;
  border-radius: 14px !important;
}

.promo-form button {
  background: #ffffff !important;
  color: #15221e !important;
  border: 1px solid #d9dedb !important;
  border-radius: 14px !important;
  font-weight: 850 !important;
}


/* Carte plan actuel — correction critique */
.billing-status-card {
  background: #073f34 !important;
  background-image: none !important;
  border: 0 !important;
  border-radius: 24px !important;
  padding: 24px !important;
  color: #ffffff !important;
  box-shadow: 0 15px 35px rgba(7,63,52,.16) !important;
  opacity: 1 !important;
}

.billing-status-card > span {
  color: #a4e4cf !important;
  font-weight: 800 !important;
}

.billing-status-card > strong {
  color: #ffffff !important;
  font-size: 30px !important;
  font-weight: 900 !important;
  line-height: 1.1 !important;
}

.billing-status-card > small {
  color: #d5e8e1 !important;
  font-weight: 650 !important;
  line-height: 1.55 !important;
}


/* =========================================================
   CARTES GRATUIT / BASIC / PRO
   ========================================================= */

.pricing-grid.pricing-upgrade {
  display: grid !important;
  gap: 22px !important;
}

.pricing-grid.pricing-upgrade .card.pricing {
  opacity: 1 !important;
  filter: none !important;
  border-radius: 26px !important;
  padding: 26px !important;
  overflow: visible !important;
}


/* GRATUIT */
.pricing-grid.pricing-upgrade .plan-free {
  background: #fffdf8 !important;
  background-image: none !important;
  border: 1px solid #e4dfd5 !important;
  color: #18241f !important;
}


/* BASIC - vraie carte premium verte */
.pricing-grid.pricing-upgrade .plan-basic {
  background: #0aa97a !important;
  background-image: none !important;
  border: 1px solid #0aa97a !important;
  color: #ffffff !important;
  opacity: 1 !important;
  filter: none !important;
  box-shadow: 0 20px 45px rgba(10,169,122,.20) !important;
}


/* PRO */
.pricing-grid.pricing-upgrade .plan-pro {
  background: #ffffff !important;
  background-image: none !important;
  border: 1px solid #dbe5e0 !important;
  color: #18241f !important;
}


/* Titres plans */
.pricing-grid .plan-head h2 {
  color: #17241f !important;
  font-weight: 900 !important;
}

.pricing-grid .plan-head small {
  color: #68766f !important;
  font-weight: 700 !important;
}

.pricing-grid .plan-basic .plan-head h2,
.pricing-grid .plan-basic .plan-head small {
  color: #ffffff !important;
}


/* Prix */
.pricing-grid .plan-price {
  color: #14211c !important;
  font-weight: 950 !important;
}

.pricing-grid .plan-price span {
  color: #67756f !important;
}

.pricing-grid .plan-basic .plan-price,
.pricing-grid .plan-basic .plan-price span {
  color: #ffffff !important;
}


/* Equivalent mensuel + promo */
.pricing-grid .annual-equivalent,
.pricing-grid .promo-price {
  color: #16835f !important;
  font-weight: 750 !important;
}

.pricing-grid .plan-basic .annual-equivalent,
.pricing-grid .plan-basic .promo-price {
  color: #d8f7ec !important;
}


/* Description */
.pricing-grid .plan-pitch {
  color: #65746e !important;
}

.pricing-grid .plan-basic .plan-pitch {
  color: #e0f4ed !important;
}


/* Chips limites */
.pricing-grid .plan-limits span {
  background: #f1f4f2 !important;
  color: #465751 !important;
  border: 0 !important;
  opacity: 1 !important;
}

.pricing-grid .plan-basic .plan-limits span {
  background: rgba(255,255,255,.16) !important;
  color: #ffffff !important;
}


/* Fonctionnalités */
.pricing-grid .plan-feature-list li {
  color: #34463f !important;
  opacity: 1 !important;
}

.pricing-grid .plan-feature-list li span:not(.check-icon) {
  color: inherit !important;
}

.pricing-grid .check-icon {
  color: #079a6e !important;
}

.pricing-grid .plan-basic .plan-feature-list li,
.pricing-grid .plan-basic .plan-feature-list li span,
.pricing-grid .plan-basic .check-icon {
  color: #ffffff !important;
}


/* Boutons */
.pricing-grid .subscribe-button {
  min-height: 58px !important;
  border-radius: 14px !important;
  font-weight: 900 !important;
  opacity: 1 !important;
}

.pricing-grid .plan-basic .subscribe-button {
  background: #ffffff !important;
  color: #087d5e !important;
  border: 1px solid #ffffff !important;
}

.pricing-grid .plan-pro .subscribe-button {
  background: #09233c !important;
  color: #ffffff !important;
  border-color: #09233c !important;
}

.pricing-grid .plan-free .subscribe-button {
  background: #eff1ef !important;
  color: #65716c !important;
}


/* Populaire */
.pricing-grid .recommended-ribbon {
  background: #ffffff !important;
  color: #087d5e !important;
  border-radius: 999px !important;
  padding: 9px 17px !important;
  font-weight: 900 !important;
  box-shadow: 0 8px 22px rgba(20,45,37,.10) !important;
}


/* Plan actuel badge */
.pricing-grid .current-plan-tag {
  background: #ece8df !important;
  color: #66645e !important;
}

.pricing-grid .plan-basic .current-plan-tag {
  background: rgba(255,255,255,.18) !important;
  color: #ffffff !important;
}



/* =========================================================
   2 — ONGLET NOTIFICATIONS
   ========================================================= */

/* Uniquement lorsque le centre de notifications est présent */
body:has(.premium-notification-list) .premium-hero-panel {
  background: #073f34 !important;
  background-image: none !important;
  color: #ffffff !important;
  border: 0 !important;
  border-radius: 26px !important;
  padding: 26px !important;
  box-shadow: 0 16px 38px rgba(7,63,52,.15) !important;
}

body:has(.premium-notification-list) .premium-hero-panel .eyebrow {
  color: #71d9b7 !important;
  font-weight: 900 !important;
}

body:has(.premium-notification-list) .premium-hero-panel h2 {
  color: #ffffff !important;
  font-weight: 900 !important;
}

body:has(.premium-notification-list) .premium-hero-panel p:not(.eyebrow) {
  color: #d4e8e1 !important;
}


/* Boutons hero */
body:has(.premium-notification-list) .premium-hero-panel .toolbar button {
  background: rgba(255,255,255,.11) !important;
  color: #ffffff !important;
  border: 1px solid rgba(255,255,255,.22) !important;
  border-radius: 13px !important;
  font-weight: 800 !important;
}

body:has(.premium-notification-list) #premium-mark-all-read {
  background: #ffffff !important;
  color: #087c5d !important;
  border-color: #ffffff !important;
}


/* Panel principal */
.premium-notification-list {
  display: grid !important;
  gap: 12px !important;
}


/* Carte notification */
.premium-notification {
  position: relative !important;
  display: grid !important;
  gap: 14px !important;

  background: #ffffff !important;
  border: 1px solid #e0e6e3 !important;
  border-left: 5px solid #6b8b80 !important;

  border-radius: 18px !important;
  padding: 18px !important;

  color: #17241f !important;

  box-shadow: 0 7px 20px rgba(20,50,40,.045) !important;
}


/* Sévérité */
.premium-notification.warn {
  border-left-color: #e6a21a !important;
  background: #fffdf7 !important;
}

.premium-notification.bad {
  border-left-color: #d8475e !important;
  background: #fffafb !important;
}

.premium-notification.info {
  border-left-color: #3188dc !important;
  background: #fbfdff !important;
}

.premium-notification.ok {
  border-left-color: #0aa97a !important;
  background: #f9fdfb !important;
}


/* Titres et détails */
.premium-notification strong {
  color: #17241f !important;
  font-size: 16px !important;
  font-weight: 900 !important;
}

.premium-notification p {
  color: #66756f !important;
  line-height: 1.5 !important;
  margin-top: 5px !important;
}


/* Actions notification */
.premium-notification .toolbar {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 7px !important;
}

.premium-notification .toolbar button {
  min-height: 40px !important;
  padding: 0 12px !important;

  background: #f3f7f5 !important;
  color: #345248 !important;

  border: 1px solid #dce6e1 !important;
  border-radius: 11px !important;

  font-size: 12px !important;
  font-weight: 800 !important;
}

.premium-notification button[data-notification-open] {
  background: #0aa97a !important;
  color: #ffffff !important;
  border-color: #0aa97a !important;
}


/* Etat aucune alerte */
.premium-notification-list .empty {
  background: #f7fbf9 !important;
  border: 1px dashed #cfe2da !important;
  border-radius: 20px !important;
  color: #66756f !important;
  text-align: center !important;
  padding: 32px 20px !important;
}

.premium-notification-list .empty strong {
  color: #17362c !important;
}


/* =========================================================
   MOBILE UNIQUEMENT
   ========================================================= */

@media (max-width:760px) {

  .billing-header {
    padding: 20px !important;
    border-radius: 22px !important;
  }

  .billing-status-card {
    padding: 22px !important;
    border-radius: 22px !important;
  }

  .pricing-grid.pricing-upgrade {
    grid-template-columns: 1fr !important;
    gap: 22px !important;
  }

  .pricing-grid.pricing-upgrade .card.pricing {
    padding: 24px !important;
    border-radius: 24px !important;
  }

  .pricing-grid .plan-price {
    font-size: 46px !important;
  }

  body:has(.premium-notification-list) .premium-hero-panel {
    padding: 22px !important;
    border-radius: 22px !important;
  }

  body:has(.premium-notification-list) .premium-hero-panel .toolbar {
    width: 100% !important;
    display: grid !important;
    grid-template-columns: 1fr !important;
    gap: 8px !important;
  }

  .premium-notification {
    padding: 16px !important;
    border-radius: 16px !important;
  }

  .premium-notification .toolbar {
    display: grid !important;
    grid-template-columns: 1fr 1fr 1fr !important;
  }

  .premium-notification .toolbar button {
    padding: 0 6px !important;
    font-size: 11px !important;
  }
}


/* DCOMPT V3.8 SUBSCRIPTION NOTIFICATIONS END */

/* ==========================================================
   DCOMPT V3.9 SUBSCRIPTION FINAL FIX START
   ABONNEMENT UNIQUEMENT
   ========================================================== */


/* ----------------------------------------------------------
   GRILLE
   ---------------------------------------------------------- */

.pricing-grid.pricing-upgrade {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;
  gap: 22px !important;
  align-items: stretch !important;
}


/* ----------------------------------------------------------
   BASE DE TOUTES LES CARTES
   ---------------------------------------------------------- */

.pricing-grid.pricing-upgrade .card.pricing {
  position: relative !important;
  display: flex !important;
  flex-direction: column !important;

  background: #ffffff !important;
  background-image: none !important;

  color: #17231f !important;

  border: 1px solid #dde5e1 !important;
  border-radius: 28px !important;

  padding: 26px !important;

  opacity: 1 !important;
  filter: none !important;

  overflow: visible !important;

  box-shadow:
    0 18px 45px rgba(20,45,37,.07),
    0 2px 8px rgba(20,45,37,.025) !important;
}


/* ==========================================================
   GRATUIT
   ========================================================== */

.pricing-grid.pricing-upgrade .plan-free {
  background: #fffefb !important;
  color: #17231f !important;
}

.pricing-grid .plan-free .plan-head {
  background: #fff1c8 !important;
  background-image: none !important;
  border-radius: 22px !important;
  padding: 18px !important;
}

.pricing-grid .plan-free .plan-icon {
  background: #f7a009 !important;
  color: #ffffff !important;
}

.pricing-grid .plan-free .plan-head h2 {
  color: #17231f !important;
}

.pricing-grid .plan-free .plan-head small {
  color: #68746f !important;
}


/* ==========================================================
   BASIC — CARTE PREMIUM PRINCIPALE
   ========================================================== */

.pricing-grid.pricing-upgrade .plan-basic {
  background: #ffffff !important;
  background-image: none !important;

  color: #17231f !important;

  border: 2px solid #0baa7b !important;

  box-shadow:
    0 22px 52px rgba(11,170,123,.15),
    0 4px 12px rgba(20,45,37,.05) !important;

  opacity: 1 !important;
  filter: none !important;
}


/* Bandeau populaire */

.pricing-grid .plan-basic .recommended-ribbon {
  position: relative !important;

  margin: -26px -26px 22px -26px !important;
  width: auto !important;

  min-height: 54px !important;

  display: flex !important;
  align-items: center !important;
  justify-content: center !important;

  background: #0baa7b !important;
  background-image: none !important;

  color: #ffffff !important;

  border: 0 !important;
  border-radius: 26px 26px 0 0 !important;

  padding: 0 20px !important;

  font-size: 15px !important;
  font-weight: 900 !important;

  box-shadow: none !important;
}


/* En-tête Basic */

.pricing-grid .plan-basic .plan-head {
  background: #eaf4ff !important;
  background-image: none !important;

  border: 1px solid #dbeaff !important;
  border-radius: 22px !important;

  padding: 18px !important;
}


/* IMPORTANT : retour des textes foncés */

.pricing-grid .plan-basic .plan-head h2 {
  color: #17231f !important;
  opacity: 1 !important;

  font-weight: 900 !important;
}

.pricing-grid .plan-basic .plan-head small {
  color: #60716a !important;
  opacity: 1 !important;

  font-weight: 750 !important;
}


/* Icône Basic */

.pricing-grid .plan-basic .plan-icon {
  background: #3487ee !important;
  color: #ffffff !important;

  box-shadow: 0 12px 26px rgba(52,135,238,.22) !important;
}


/* Prix Basic */

.pricing-grid .plan-basic .plan-price,
.pricing-grid .plan-basic .plan-price span {
  color: #17231f !important;
  opacity: 1 !important;
}

.pricing-grid .plan-basic .annual-equivalent,
.pricing-grid .plan-basic .promo-price {
  color: #087e5e !important;
}


/* Description Basic */

.pricing-grid .plan-basic .plan-pitch {
  color: #65736d !important;
  opacity: 1 !important;
}


/* Chips Basic */

.pricing-grid .plan-basic .plan-limits span {
  background: #f0f4f2 !important;

  color: #42574f !important;

  border: 0 !important;

  opacity: 1 !important;

  font-weight: 800 !important;
}


/* Fonctionnalités Basic */

.pricing-grid .plan-basic .plan-feature-list li,
.pricing-grid .plan-basic .plan-feature-list li span:not(.check-icon) {
  color: #374b43 !important;
  opacity: 1 !important;
}

.pricing-grid .plan-basic .check-icon {
  background: #e7f8f1 !important;
  color: #079b70 !important;
}


/* Bouton Basic */

.pricing-grid .plan-basic .subscribe-button {
  background: #0baa7b !important;

  color: #ffffff !important;

  border: 1px solid #0baa7b !important;
  border-radius: 16px !important;

  min-height: 62px !important;

  font-size: 17px !important;
  font-weight: 900 !important;

  opacity: 1 !important;

  box-shadow: 0 12px 28px rgba(11,170,123,.18) !important;
}


/* ==========================================================
   PRO
   ========================================================== */

.pricing-grid.pricing-upgrade .plan-pro {
  background: #ffffff !important;
  background-image: none !important;

  color: #17231f !important;

  border: 1px solid #d9e6e1 !important;
}

.pricing-grid .plan-pro .plan-head {
  background: #e2f7ef !important;
  background-image: none !important;

  border-radius: 22px !important;

  padding: 18px !important;
}

.pricing-grid .plan-pro .plan-icon {
  background: #18b986 !important;
  color: #ffffff !important;
}

.pricing-grid .plan-pro .plan-head h2 {
  color: #17231f !important;
}

.pricing-grid .plan-pro .plan-head small {
  color: #5d7068 !important;
}


/* ==========================================================
   PRIX — TOUTES LES CARTES
   ========================================================== */

.pricing-grid .plan-price {
  display: block !important;

  margin-top: 22px !important;

  color: #14221d !important;

  font-weight: 950 !important;
  letter-spacing: -1.5px !important;
}

.pricing-grid .plan-price span {
  color: #53645d !important;

  font-size: .42em !important;
  letter-spacing: 0 !important;
}


/* Equivalent mensuel */

.pricing-grid .annual-equivalent {
  display: block !important;

  margin-top: 4px !important;

  color: #087f5e !important;

  font-weight: 800 !important;
}


/* ==========================================================
   DESCRIPTION
   ========================================================== */

.pricing-grid .plan-pitch {
  color: #67756f !important;

  font-size: 15px !important;
  line-height: 1.65 !important;

  opacity: 1 !important;
}


/* ==========================================================
   LIMITES
   ========================================================== */

.pricing-grid .plan-limits {
  display: flex !important;
  flex-wrap: wrap !important;

  gap: 8px !important;

  margin-top: 4px !important;
}

.pricing-grid .plan-limits span {
  display: inline-flex !important;

  align-items: center !important;

  background: #f0f3f2 !important;

  color: #42564e !important;

  border-radius: 999px !important;

  padding: 8px 12px !important;

  font-weight: 800 !important;
  font-size: 13px !important;

  opacity: 1 !important;
}


/* ==========================================================
   LISTE DES FONCTIONNALITES
   ========================================================== */

.pricing-grid .plan-feature-list {
  display: grid !important;

  gap: 13px !important;

  margin-top: 20px !important;

  padding: 0 !important;
}

.pricing-grid .plan-feature-list li {
  display: flex !important;
  align-items: center !important;

  gap: 10px !important;

  color: #374940 !important;

  font-size: 15px !important;

  opacity: 1 !important;
}

.pricing-grid .check-icon {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  width: 30px !important;
  height: 30px !important;

  flex: 0 0 30px !important;

  border-radius: 999px !important;

  background: #e8f8f2 !important;

  color: #079b70 !important;

  font-size: 17px !important;
  font-weight: 900 !important;
}


/* ==========================================================
   BOUTONS
   ========================================================== */

.pricing-grid .subscribe-button {
  width: 100% !important;

  min-height: 60px !important;

  margin-top: 18px !important;

  border-radius: 16px !important;

  font-size: 16px !important;
  font-weight: 900 !important;

  opacity: 1 !important;
}


/* Gratuit */

.pricing-grid .plan-free .subscribe-button {
  background: #eff2f0 !important;

  color: #617169 !important;

  border: 1px solid #eff2f0 !important;
}


/* Pro */

.pricing-grid .plan-pro .subscribe-button {
  background: #092a45 !important;

  color: #ffffff !important;

  border: 1px solid #092a45 !important;

  box-shadow: 0 12px 28px rgba(9,42,69,.15) !important;
}


/* ==========================================================
   PLAN ACTUEL
   ========================================================== */

.pricing-grid .current-plan-tag {
  background: #ece9e1 !important;

  color: #65645e !important;

  border-radius: 999px !important;

  padding: 7px 12px !important;

  font-weight: 800 !important;
}


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width:760px) {

  .pricing-grid.pricing-upgrade {
    grid-template-columns: 1fr !important;

    gap: 24px !important;
  }

  .pricing-grid.pricing-upgrade .card.pricing {
    padding: 24px !important;

    border-radius: 26px !important;
  }

  .pricing-grid .plan-basic .recommended-ribbon {
    margin:
      -24px
      -24px
      20px
      -24px !important;

    border-radius:
      24px
      24px
      0
      0 !important;
  }

  .pricing-grid .plan-head {
    min-height: 112px !important;
  }

  .pricing-grid .plan-head h2 {
    font-size: 32px !important;
  }

  .pricing-grid .plan-price {
    font-size: 48px !important;
  }

  .pricing-grid .plan-pitch {
    font-size: 15px !important;
  }

  .pricing-grid .plan-limits span {
    font-size: 12px !important;
  }

  .pricing-grid .plan-feature-list li {
    font-size: 15px !important;
  }

}


/* ==========================================================
   DCOMPT V3.9 SUBSCRIPTION FINAL FIX END
   ========================================================== */


/* DCOMPT V4.0 BILLING START */


/* ==========================================================
   FR / EN — sélecteurs
   ========================================================== */

.dcompt-language-switch,
.mini-language-switch,
.mobile-sidebar-language {
  display: inline-flex !important;
  align-items: center !important;
  gap: 3px !important;

  padding: 4px !important;

  background: #f1f5f3 !important;

  border: 1px solid #dce5e1 !important;
  border-radius: 999px !important;

  box-shadow: none !important;
}

.dcompt-language-switch button,
.mini-language-switch button,
.mobile-sidebar-language button {
  min-width: 42px !important;
  min-height: 36px !important;

  padding: 0 10px !important;

  border: 0 !important;
  border-radius: 999px !important;

  background: transparent !important;
  color: #65736d !important;

  font-size: 12px !important;
  font-weight: 900 !important;

  box-shadow: none !important;
}

.dcompt-language-switch button.active,
.mini-language-switch button.active,
.mobile-sidebar-language button.active {
  background: #0aaa7b !important;
  color: #ffffff !important;
}

.dcompt-language-switch--sidebar,
.mobile-sidebar-language {
  margin: 14px 0 18px !important;
  width: fit-content !important;
}

.dcompt-settings-language {
  display: flex !important;
  align-items: center !important;
  justify-content: space-between !important;
  gap: 16px !important;

  padding: 16px 18px !important;

  background: #f6faf8 !important;

  border: 1px solid #dce9e3 !important;
  border-radius: 16px !important;
}

.dcompt-settings-language strong {
  display: block !important;
  color: #183229 !important;
  font-weight: 900 !important;
}

.dcompt-settings-language small {
  display: block !important;
  margin-top: 4px !important;
  color: #718079 !important;
}


/* ==========================================================
   ABONNEMENT — même langage que la landing
   GRATUIT / BASIC / PRO
   ========================================================== */

.workspace-v3 .pricing-grid.pricing-upgrade,
.pricing-grid.pricing-upgrade {
  display: grid !important;
  grid-template-columns: repeat(3,minmax(0,1fr)) !important;

  gap: 22px !important;

  align-items: stretch !important;

  margin-top: 26px !important;
}


/* ----------------------------------------------------------
   Base
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .card.pricing,
.pricing-grid.pricing-upgrade .card.pricing {
  position: relative !important;

  display: flex !important;
  flex-direction: column !important;

  padding: 34px 30px !important;

  border-radius: 28px !important;

  overflow: visible !important;

  opacity: 1 !important;
  filter: none !important;

  box-shadow: none !important;
}


/* ----------------------------------------------------------
   GRATUIT + PRO = crème
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .plan-free,
.workspace-v3 .pricing-grid .plan-pro,
.pricing-grid.pricing-upgrade .plan-free,
.pricing-grid.pricing-upgrade .plan-pro {

  background: #fbf9f4 !important;
  background-image: none !important;

  border: 1px solid #dedbd3 !important;

  color: #17202f !important;
}


/* ----------------------------------------------------------
   BASIC = vert
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .plan-basic,
.pricing-grid.pricing-upgrade .plan-basic {

  background: #0baa7b !important;
  background-image: none !important;

  border: 1px solid #0baa7b !important;

  color: #ffffff !important;

  box-shadow:
    0 22px 48px rgba(11,170,123,.20) !important;
}


/* ----------------------------------------------------------
   En-tête simplifié comme landing
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .plan-head,
.pricing-grid.pricing-upgrade .plan-head {

  display: block !important;

  min-height: 0 !important;

  margin: 0 0 22px !important;
  padding: 0 !important;

  background: transparent !important;
  background-image: none !important;

  border: 0 !important;
  border-radius: 0 !important;
}


/* On retire les gros pictogrammes des anciennes cartes */
.workspace-v3 .pricing-grid .plan-icon,
.pricing-grid.pricing-upgrade .plan-icon {
  display: none !important;
}


/* On retire le sous-titre ancien */
.workspace-v3 .pricing-grid .plan-head small,
.pricing-grid.pricing-upgrade .plan-head small {
  display: none !important;
}


/* GRatuit / Basic / Pro */
.workspace-v3 .pricing-grid .plan-head h2,
.pricing-grid.pricing-upgrade .plan-head h2 {

  margin: 0 !important;

  color: #817f78 !important;

  font-size: 15px !important;
  line-height: 1.2 !important;

  font-weight: 900 !important;

  letter-spacing: .12em !important;

  text-transform: uppercase !important;
}

.workspace-v3 .pricing-grid .plan-basic .plan-head h2,
.pricing-grid.pricing-upgrade .plan-basic .plan-head h2 {
  color: #dff8ef !important;
}


/* ----------------------------------------------------------
   POPULAIRE
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .recommended-ribbon,
.pricing-grid.pricing-upgrade .recommended-ribbon {

  position: absolute !important;

  top: -18px !important;
  right: 42px !important;

  width: auto !important;

  margin: 0 !important;
  padding: 10px 22px !important;

  background: #ffffff !important;

  color: #087c5d !important;

  border: 0 !important;
  border-radius: 999px !important;

  font-size: 13px !important;
  font-weight: 900 !important;

  box-shadow:
    0 8px 22px rgba(16,47,37,.08) !important;

  z-index: 4 !important;
}


/* ----------------------------------------------------------
   Prix
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .plan-price,
.pricing-grid.pricing-upgrade .plan-price {

  display: block !important;

  margin: 8px 0 26px !important;

  color: #121a2b !important;

  font-size: clamp(48px,5.3vw,68px) !important;
  line-height: .95 !important;

  font-weight: 900 !important;

  letter-spacing: -.05em !important;
}

.workspace-v3 .pricing-grid .plan-price span,
.pricing-grid.pricing-upgrade .plan-price span {

  margin-left: 3px !important;

  color: #121a2b !important;

  font-size: 16px !important;
  font-weight: 850 !important;

  letter-spacing: 0 !important;
}

.workspace-v3 .pricing-grid .plan-basic .plan-price,
.workspace-v3 .pricing-grid .plan-basic .plan-price span,
.pricing-grid.pricing-upgrade .plan-basic .plan-price,
.pricing-grid.pricing-upgrade .plan-basic .plan-price span {

  color: #ffffff !important;
}


/* ----------------------------------------------------------
   Équivalent mensuel
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .annual-equivalent,
.workspace-v3 .pricing-grid .promo-price,
.pricing-grid.pricing-upgrade .annual-equivalent,
.pricing-grid.pricing-upgrade .promo-price {

  color: #087e5e !important;
  font-weight: 800 !important;
}

.workspace-v3 .pricing-grid .plan-basic .annual-equivalent,
.workspace-v3 .pricing-grid .plan-basic .promo-price,
.pricing-grid.pricing-upgrade .plan-basic .annual-equivalent,
.pricing-grid.pricing-upgrade .plan-basic .promo-price {

  color: #dff8ef !important;
}


/* ----------------------------------------------------------
   Description
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .plan-pitch,
.pricing-grid.pricing-upgrade .plan-pitch {

  margin: 20px 0 28px !important;

  color: #817f78 !important;

  font-size: 16px !important;
  line-height: 1.65 !important;

  opacity: 1 !important;
}

.workspace-v3 .pricing-grid .plan-basic .plan-pitch,
.pricing-grid.pricing-upgrade .plan-basic .plan-pitch {

  color: #e2f7f0 !important;
}


/* ----------------------------------------------------------
   Limites = lignes simples avec ✓ comme landing
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .plan-limits,
.pricing-grid.pricing-upgrade .plan-limits {

  display: grid !important;

  grid-template-columns: 1fr !important;

  gap: 12px !important;

  margin: 0 0 24px !important;
}

.workspace-v3 .pricing-grid .plan-limits span,
.pricing-grid.pricing-upgrade .plan-limits span {

  display: flex !important;
  align-items: center !important;

  gap: 11px !important;

  padding: 0 !important;

  background: transparent !important;

  color: #29332f !important;

  border: 0 !important;
  border-radius: 0 !important;

  font-size: 15px !important;
  font-weight: 600 !important;

  opacity: 1 !important;
}

.workspace-v3 .pricing-grid .plan-limits span::before,
.pricing-grid.pricing-upgrade .plan-limits span::before {

  content: "✓";

  color: #0aaa7b !important;

  font-size: 19px !important;
  font-weight: 900 !important;
}

.workspace-v3 .pricing-grid .plan-basic .plan-limits span,
.pricing-grid.pricing-upgrade .plan-basic .plan-limits span {

  color: #ffffff !important;
}

.workspace-v3 .pricing-grid .plan-basic .plan-limits span::before,
.pricing-grid.pricing-upgrade .plan-basic .plan-limits span::before {

  color: #ffffff !important;
}


/* ----------------------------------------------------------
   CTA
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .subscribe-button,
.pricing-grid.pricing-upgrade .subscribe-button {

  width: 100% !important;

  min-height: 62px !important;

  margin: 8px 0 22px !important;

  border-radius: 15px !important;

  font-size: 16px !important;
  font-weight: 900 !important;

  opacity: 1 !important;

  box-shadow: none !important;
}


/* Gratuit + Pro : contour vert */
.workspace-v3 .pricing-grid .plan-free .subscribe-button,
.workspace-v3 .pricing-grid .plan-pro .subscribe-button,
.pricing-grid.pricing-upgrade .plan-free .subscribe-button,
.pricing-grid.pricing-upgrade .plan-pro .subscribe-button {

  background: transparent !important;

  color: #078c66 !important;

  border: 1.5px solid #0aaa7b !important;
}


/* Basic : bouton blanc */
.workspace-v3 .pricing-grid .plan-basic .subscribe-button,
.pricing-grid.pricing-upgrade .plan-basic .subscribe-button {

  background: #ffffff !important;

  color: #078c66 !important;

  border: 1px solid #ffffff !important;
}


/* ----------------------------------------------------------
   Fonctionnalités supplémentaires
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .plan-feature-list,
.pricing-grid.pricing-upgrade .plan-feature-list {

  display: grid !important;

  gap: 11px !important;

  margin: 0 !important;
  padding: 20px 0 0 !important;

  border-top: 1px solid rgba(40,65,55,.10) !important;

  list-style: none !important;
}

.workspace-v3 .pricing-grid .plan-feature-list li,
.pricing-grid.pricing-upgrade .plan-feature-list li {

  display: flex !important;
  align-items: flex-start !important;

  gap: 10px !important;

  color: #4f5954 !important;

  font-size: 14px !important;
  line-height: 1.45 !important;

  opacity: 1 !important;
}

.workspace-v3 .pricing-grid .check-icon,
.pricing-grid.pricing-upgrade .check-icon {

  background: transparent !important;

  color: #0aaa7b !important;
}

.workspace-v3 .pricing-grid .plan-basic .plan-feature-list,
.pricing-grid.pricing-upgrade .plan-basic .plan-feature-list {

  border-top-color:
    rgba(255,255,255,.20) !important;
}

.workspace-v3 .pricing-grid .plan-basic .plan-feature-list li,
.workspace-v3 .pricing-grid .plan-basic .plan-feature-list li span,
.workspace-v3 .pricing-grid .plan-basic .check-icon,
.pricing-grid.pricing-upgrade .plan-basic .plan-feature-list li,
.pricing-grid.pricing-upgrade .plan-basic .plan-feature-list li span,
.pricing-grid.pricing-upgrade .plan-basic .check-icon {

  color: #ffffff !important;
}


/* ----------------------------------------------------------
   Plan actuel
   ---------------------------------------------------------- */

.workspace-v3 .pricing-grid .current-plan-tag,
.pricing-grid.pricing-upgrade .current-plan-tag {

  position: absolute !important;

  top: 24px !important;
  right: 24px !important;

  padding: 8px 13px !important;

  background: #ece9e1 !important;

  color: #64635e !important;

  border-radius: 999px !important;

  font-size: 11px !important;
  font-weight: 850 !important;
}


/* ----------------------------------------------------------
   En-tête abonnement
   ---------------------------------------------------------- */

.billing-header {

  background: #fbfaf6 !important;

  border: 1px solid #e1ded6 !important;
  border-radius: 24px !important;

  box-shadow: none !important;
}

.billing-header h1,
.billing-header h2 {

  color: #131b2b !important;

  font-weight: 900 !important;
}

.billing-header p {

  color: #817f78 !important;
}


/* ----------------------------------------------------------
   On laisse notifications intactes.
   Aucun sélecteur .premium-notification ici.
   ---------------------------------------------------------- */


/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width:760px) {

  .dcompt-language-switch--desktop {
    display: none !important;
  }

  .dcompt-language-switch--landing {
    padding: 3px !important;
  }

  .dcompt-language-switch--landing button {
    min-width: 34px !important;
    min-height: 32px !important;
    padding: 0 7px !important;
    font-size: 11px !important;
  }

  .dcompt-settings-language {
    flex-direction: column !important;
    align-items: flex-start !important;
  }


  .workspace-v3 .pricing-grid.pricing-upgrade,
  .pricing-grid.pricing-upgrade {

    grid-template-columns: 1fr !important;

    gap: 36px !important;
  }


  .workspace-v3 .pricing-grid .card.pricing,
  .pricing-grid.pricing-upgrade .card.pricing {

    padding: 32px 26px !important;

    border-radius: 26px !important;
  }


  .workspace-v3 .pricing-grid .recommended-ribbon,
  .pricing-grid.pricing-upgrade .recommended-ribbon {

    top: -18px !important;
    right: 42px !important;
  }


  .workspace-v3 .pricing-grid .plan-price,
  .pricing-grid.pricing-upgrade .plan-price {

    font-size: 58px !important;
  }


  /*
   * Espace de sécurité au-dessus de la navigation inférieure.
   */
  body:has(.pricing-grid.pricing-upgrade) .workspace-v3,
  body:has(.pricing-grid.pricing-upgrade) .workspace {

    padding-bottom: 140px !important;
  }

}


/* DCOMPT V4.0 BILLING END */


/* DCOMPT V4.1 VISUAL START */


/* ==========================================================
   BASIC — OVERRIDE FINAL
   ========================================================== */

article.dcompt-basic-force,
.pricing-grid article.dcompt-basic-force,
.pricing-upgrade article.dcompt-basic-force {

  position: relative !important;

  display: flex !important;
  flex-direction: column !important;

  width: 100% !important;

  height: auto !important;
  min-height: 0 !important;
  max-height: none !important;

  padding: 34px 28px 40px !important;

  background: #0caf7d !important;
  background-color: #0caf7d !important;
  background-image: none !important;

  color: #ffffff !important;

  opacity: 1 !important;
  visibility: visible !important;
  filter: none !important;

  border: 1px solid #0caf7d !important;
  border-radius: 28px !important;

  overflow: visible !important;

  box-shadow:
    0 22px 52px rgba(11,175,125,.20) !important;

  isolation: isolate !important;
}


/*
 * Suppression de toute couche blanche héritée
 */
article.dcompt-basic-force::before,
article.dcompt-basic-force::after {
  content: none !important;
  display: none !important;
}


article.dcompt-basic-force .plan-head {

  display: block !important;

  margin: 0 0 20px !important;
  padding: 0 !important;

  background: transparent !important;
  background-image: none !important;

  border: 0 !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .plan-icon {
  display: none !important;
}


article.dcompt-basic-force .plan-head h2 {

  margin: 0 !important;

  color: #dff9f0 !important;

  font-size: 16px !important;
  line-height: 1.2 !important;

  font-weight: 900 !important;

  letter-spacing: .12em !important;
  text-transform: uppercase !important;
}


article.dcompt-basic-force .plan-head small {

  display: block !important;

  margin-top: 6px !important;

  color: rgba(255,255,255,.84) !important;

  font-weight: 700 !important;
}


article.dcompt-basic-force .plan-price {

  display: block !important;

  margin: 18px 0 8px !important;

  color: #ffffff !important;

  font-size: clamp(54px, 15vw, 74px) !important;
  line-height: .95 !important;

  font-weight: 900 !important;

  letter-spacing: -.045em !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .plan-price span {

  color: #ffffff !important;

  font-size: 17px !important;

  font-weight: 850 !important;
}


article.dcompt-basic-force .annual-equivalent,
article.dcompt-basic-force .promo-price {

  display: block !important;

  margin: 2px 0 22px !important;

  color: #dff9f0 !important;

  font-size: 14px !important;
  font-weight: 850 !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .plan-pitch {

  display: block !important;

  margin: 22px 0 24px !important;

  color: rgba(255,255,255,.92) !important;

  font-size: 16px !important;
  line-height: 1.58 !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .plan-limits {

  display: flex !important;
  flex-wrap: wrap !important;

  gap: 9px !important;

  margin: 0 0 26px !important;
}


article.dcompt-basic-force .plan-limits span {

  display: inline-flex !important;

  width: auto !important;

  padding: 9px 13px !important;

  background: rgba(255,255,255,.14) !important;

  color: #ffffff !important;

  border: 1px solid rgba(255,255,255,.10) !important;
  border-radius: 999px !important;

  font-size: 13px !important;
  font-weight: 850 !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .subscribe-button {

  display: flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 100% !important;

  min-height: 64px !important;

  margin: 4px 0 28px !important;

  padding: 0 20px !important;

  background: #ffffff !important;

  color: #087f60 !important;

  border: 0 !important;
  border-radius: 16px !important;

  font-size: 17px !important;
  font-weight: 900 !important;

  opacity: 1 !important;

  box-shadow:
    0 12px 28px rgba(0,70,48,.14) !important;
}


article.dcompt-basic-force .plan-feature-list {

  display: grid !important;

  gap: 12px !important;

  margin: 0 !important;
  padding: 24px 0 0 !important;

  list-style: none !important;

  border-top:
    1px solid rgba(255,255,255,.22) !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .plan-feature-list li {

  display: flex !important;

  align-items: flex-start !important;

  gap: 10px !important;

  color: #ffffff !important;

  font-size: 14px !important;
  line-height: 1.45 !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .plan-feature-list li *,
article.dcompt-basic-force .check-icon {

  color: #ffffff !important;

  opacity: 1 !important;
}


article.dcompt-basic-force .recommended-ribbon {

  position: absolute !important;

  top: -18px !important;
  right: 38px !important;

  z-index: 20 !important;

  width: auto !important;

  margin: 0 !important;

  padding: 10px 22px !important;

  background: #ffffff !important;

  color: #087f60 !important;

  border-radius: 999px !important;

  font-size: 13px !important;
  font-weight: 900 !important;

  opacity: 1 !important;

  box-shadow:
    0 10px 28px rgba(0,0,0,.08) !important;
}



/* ==========================================================
   EMOJIS LANDING
   ========================================================== */

.public-app-shell .dcompt-title-emoji,
.public-home .dcompt-title-emoji,
.public-home-v3 .dcompt-title-emoji,
.landing-page .dcompt-title-emoji,
.landing-v3 .dcompt-title-emoji {

  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 42px !important;
  height: 42px !important;

  margin-right: 10px !important;
  margin-bottom: 7px !important;

  vertical-align: middle !important;

  background: #ddf8ef !important;

  border: 1px solid #ccefe3 !important;
  border-radius: 13px !important;

  font-size: 21px !important;
  line-height: 1 !important;

  box-shadow: none !important;
}



/* ==========================================================
   MOBILE
   ========================================================== */

@media (max-width: 760px) {

  article.dcompt-basic-force {

    margin-top: 24px !important;
    margin-bottom: 40px !important;

    padding: 34px 26px 38px !important;

    border-radius: 26px !important;
  }


  article.dcompt-basic-force .plan-price {

    font-size: 62px !important;
  }


  article.dcompt-basic-force .recommended-ribbon {

    right: 28px !important;
  }


  .public-app-shell .dcompt-title-emoji,
  .public-home .dcompt-title-emoji,
  .public-home-v3 .dcompt-title-emoji,
  .landing-page .dcompt-title-emoji,
  .landing-v3 .dcompt-title-emoji {

    width: 38px !important;
    height: 38px !important;

    font-size: 19px !important;

    border-radius: 12px !important;
  }

}


/* DCOMPT V4.1 VISUAL END */


/* DCOMPT V4.2 CLEAN EMOJI START */


/* ==========================================================
   1. ANCIENS EMOJIS AJOUTES DEVANT LES TITRES
   ========================================================== */

.dcompt-v42-landing .dcompt-title-emoji {
  display: none !important;
}


/* ==========================================================
   2. EMOJI METIER UNIQUE
   ========================================================== */

.dcompt-v42-landing .dcompt-business-emoji {

  flex: 0 0 auto !important;

  display: inline-flex !important;

  align-items: center !important;
  justify-content: center !important;

  width: 58px !important;
  height: 58px !important;

  min-width: 58px !important;
  min-height: 58px !important;

  padding: 0 !important;
  margin: 0 !important;

  background:
    linear-gradient(
      145deg,
      #e6faf4 0%,
      #d8f5ec 100%
    ) !important;

  color: initial !important;

  border:
    1px solid rgba(12, 175, 125, .12) !important;

  border-radius: 17px !important;

  font-family:
    "Apple Color Emoji",
    "Segoe UI Emoji",
    "Noto Color Emoji",
    sans-serif !important;

  font-size: 29px !important;

  font-weight: 400 !important;

  line-height: 1 !important;

  letter-spacing: 0 !important;

  text-align: center !important;

  overflow: hidden !important;

  box-shadow:
    0 8px 22px rgba(15, 112, 83, .06) !important;

  opacity: 1 !important;

  filter: none !important;

  transform: none !important;
}


.dcompt-v42-landing
.dcompt-business-emoji svg,

.dcompt-v42-landing
.dcompt-business-emoji img,

.dcompt-v42-landing
.dcompt-business-emoji i {

  display: none !important;
}


/* ==========================================================
   3. CARTES LANDING POLIES
   ========================================================== */

.dcompt-v42-landing .dcompt-polished-card {

  height: auto !important;

  min-height: 0 !important;

  max-height: none !important;

  padding: 28px !important;

  border:
    1px solid rgba(129, 123, 105, .20) !important;

  border-radius: 25px !important;

  background: #ffffff !important;

  overflow: visible !important;

  box-shadow:
    0 8px 26px rgba(24, 35, 31, .045) !important;
}


/*
 * Les numéros 1 / 2 / 3 restent verts.
 * Ils ne sont PAS transformés en emojis.
 */
.dcompt-v42-landing
.dcompt-polished-card
[class*="step-number"],

.dcompt-v42-landing
.dcompt-polished-card
[class*="step-index"] {

  background: #0caf7d !important;

  color: #ffffff !important;
}


/* ==========================================================
   4. TITRES
   ========================================================== */

.dcompt-v42-landing
.dcompt-polished-card h2,

.dcompt-v42-landing
.dcompt-polished-card h3,

.dcompt-v42-landing
.dcompt-polished-card h4,

.dcompt-v42-landing
.dcompt-polished-card .card-title,

.dcompt-v42-landing
.dcompt-polished-card .step-title,

.dcompt-v42-landing
.dcompt-polished-card .feature-title {

  color: #111827 !important;

  font-family:
    "Manrope",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;

  font-size:
    clamp(21px, 5vw, 29px) !important;

  line-height: 1.20 !important;

  letter-spacing: -.025em !important;

  font-weight: 800 !important;

  text-wrap: balance;
}


/* ==========================================================
   5. DESCRIPTIONS
   ========================================================== */

.dcompt-v42-landing
.dcompt-polished-card p {

  color: #7c7b74 !important;

  font-family:
    "Manrope",
    -apple-system,
    BlinkMacSystemFont,
    "Segoe UI",
    sans-serif !important;

  font-size: 16px !important;

  line-height: 1.65 !important;

  font-weight: 450 !important;

  letter-spacing: -.008em !important;
}


/* ==========================================================
   6. ESPACEMENTS INTERNES
   ========================================================== */

.dcompt-v42-landing
.dcompt-polished-card
.dcompt-business-emoji + h2,

.dcompt-v42-landing
.dcompt-polished-card
.dcompt-business-emoji + h3,

.dcompt-v42-landing
.dcompt-polished-card
.dcompt-business-emoji + h4 {

  margin-top: 24px !important;
}


.dcompt-v42-landing
.dcompt-polished-card h2 + p,

.dcompt-v42-landing
.dcompt-polished-card h3 + p,

.dcompt-v42-landing
.dcompt-polished-card h4 + p {

  margin-top: 14px !important;
}


/* ==========================================================
   7. MOBILE FIRST
   ========================================================== */

@media (max-width: 760px) {

  .dcompt-v42-landing
  .dcompt-polished-card {

    padding:
      26px 26px 28px !important;

    margin-bottom: 18px !important;

    border-radius: 23px !important;
  }


  .dcompt-v42-landing
  .dcompt-business-emoji {

    width: 56px !important;
    height: 56px !important;

    min-width: 56px !important;
    min-height: 56px !important;

    font-size: 28px !important;

    border-radius: 16px !important;
  }


  .dcompt-v42-landing
  .dcompt-polished-card h2,

  .dcompt-v42-landing
  .dcompt-polished-card h3,

  .dcompt-v42-landing
  .dcompt-polished-card h4 {

    font-size: 23px !important;

    line-height: 1.23 !important;
  }


  .dcompt-v42-landing
  .dcompt-polished-card p {

    font-size: 16px !important;

    line-height: 1.62 !important;
  }


  /*
   * Supprime les énormes espaces verticaux
   * hérités d'anciens designs onboarding.
   */
  .dcompt-v42-landing
  .dcompt-polished-card {

    justify-content:
      flex-start !important;

    align-content:
      flex-start !important;
  }

}


/* ==========================================================
   8. GRAND ECRAN
   ========================================================== */

@media (min-width: 761px) {

  .dcompt-v42-landing
  .dcompt-polished-card {

    padding: 32px !important;

    transition:
      transform .18s ease,
      box-shadow .18s ease,
      border-color .18s ease;
  }


  .dcompt-v42-landing
  .dcompt-polished-card:hover {

    transform:
      translateY(-2px);

    border-color:
      rgba(12,175,125,.28) !important;

    box-shadow:
      0 15px 38px rgba(24,35,31,.07) !important;
  }

}


/* DCOMPT V4.2 CLEAN EMOJI END */


/* DCompt consolidated 2026-08-14 — guided notebook onboarding */
.notebook-onboarding-card{border:1px solid rgba(27,94,62,.18);background:linear-gradient(145deg,rgba(244,251,247,.98),rgba(255,255,255,.98));box-shadow:0 18px 45px rgba(21,60,43,.08)}
.notebook-onboarding-lead{max-width:760px;font-size:1rem;line-height:1.65;margin:.25rem 0 1rem}
.notebook-onboarding-steps{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.75rem;margin:1rem 0}
.notebook-onboarding-steps article{display:flex;gap:.75rem;align-items:flex-start;padding:.9rem;border:1px solid rgba(20,65,45,.1);border-radius:16px;background:rgba(255,255,255,.88)}
.notebook-onboarding-steps article>b{display:grid;place-items:center;min-width:32px;height:32px;border-radius:999px;background:#123f2d;color:#fff;font-size:.9rem}
.notebook-onboarding-steps article div{display:grid;gap:.25rem}.notebook-onboarding-steps article span{font-size:.9rem;line-height:1.45;color:var(--muted,#5b6570)}
.notebook-onboarding-actions{margin-top:1rem;flex-wrap:wrap}.notebook-onboarding-actions button{min-height:44px}
@media(max-width:720px){.notebook-onboarding-steps{grid-template-columns:1fr}.notebook-onboarding-card .panel-head{align-items:flex-start;gap:.6rem}.notebook-onboarding-card .badge{white-space:normal;text-align:left}.notebook-onboarding-actions{display:grid;grid-template-columns:1fr}.notebook-onboarding-actions button{width:100%}}
