/* ═══ CSS CONSULT ABSENTEISME CALCULATOR v2.0 — LIGHT MODE (PRINT-READY) ═══ */

/* NUCLEAR RESET */
.cssa,.cssa *,.cssa *::before,.cssa *::after{box-sizing:border-box !important;margin:0 !important;padding:0 !important;border:0 !important;outline:0 !important;float:none !important;list-style:none !important;text-indent:0 !important;text-shadow:none !important;text-decoration:none !important;vertical-align:baseline !important}

/* ROOT CONTAINER — Light / print-ready */
.cssa{
  --bg:#ffffff;--text:#111827;--muted:#374151;
  --muted2:#6B7280;--muted3:#9CA3AF;
  --accent:#E85D04;--accent-light:#F97316;--accent-glow:rgba(232,93,4,.20);
  --indigo:#7C2D12;--indigo-glow:rgba(124,45,18,.15);
  --red:#DC2626;--red-dark:#991B1B;--red-light:#FCA5A5;--red-bg:#FEF2F2;
  --green:#15803D;--green-dark:#166534;--green-light:#DCFCE7;
  --amber:#D97706;--purple:#7C3AED;
  --stroke:rgba(0,0,0,.12);--panel:rgba(0,0,0,.03);
  --mono:'JetBrains Mono',monospace;--sans:'Inter',system-ui,sans-serif;
  font-family:var(--sans) !important;color:var(--text) !important;font-size:15px !important;line-height:1.6 !important;
  background:#F8FAFC !important;
  min-height:100vh !important;padding:28px 20px 80px !important;max-width:960px !important;margin:0 auto !important;-webkit-font-smoothing:antialiased !important;
}

/* STEPS */
.cssa .cssa-step{display:none !important;animation:cssaFadeUp .5s ease !important}
.cssa .cssa-step.active{display:block !important}
@keyframes cssaFadeUp{from{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}

/* BRAND */
.cssa .brand-bar{display:flex !important;align-items:center !important;gap:12px !important;margin-bottom:22px !important}
.cssa .brand-logo{display:flex !important;align-items:center !important;gap:8px !important;font-size:18px !important;font-weight:900 !important;letter-spacing:-.3px !important;color:var(--text) !important}
.cssa .brand-icon{width:36px !important;height:36px !important;border-radius:10px !important;background:linear-gradient(135deg,var(--accent),var(--indigo)) !important;display:flex !important;align-items:center !important;justify-content:center !important;font-size:18px !important;color:#fff !important;font-weight:900 !important;box-shadow:0 4px 16px var(--accent-glow) !important}
.cssa .brand-sep{width:1px !important;height:20px !important;background:rgba(0,0,0,.15) !important}
.cssa .brand-sub{font-size:12px !important;color:var(--muted2) !important;font-weight:500 !important}

/* STEP NAV */
.cssa .step-nav{display:flex !important;align-items:center !important;justify-content:center !important;margin-bottom:26px !important}
.cssa .step-dot{width:38px !important;height:38px !important;border-radius:999px !important;border:2px solid rgba(0,0,0,.15) !important;background:#fff !important;display:flex !important;align-items:center !important;justify-content:center !important;font-size:13px !important;font-weight:800 !important;color:var(--muted3) !important;transition:all .35s !important}
.cssa .step-dot.active{border-color:var(--accent) !important;color:#fff !important;background:linear-gradient(135deg,var(--accent),var(--indigo)) !important;box-shadow:0 0 22px var(--accent-glow) !important}
.cssa .step-dot.done{border-color:var(--accent-light) !important;color:var(--accent-light) !important;background:rgba(232,93,4,.08) !important}
.cssa .step-line{width:56px !important;height:2px !important;background:rgba(0,0,0,.1) !important}
.cssa .step-line.done{background:linear-gradient(90deg,var(--accent-light),var(--indigo)) !important}

/* HERO */
.cssa header.hero{position:relative !important;border:1px solid var(--stroke) !important;background:#fff !important;border-radius:24px !important;box-shadow:0 4px 24px rgba(0,0,0,.08) !important;overflow:hidden !important}
.cssa .hero-inner{padding:30px 28px 24px !important;display:grid !important;grid-template-columns:1.4fr .9fr !important;gap:20px !important}
.cssa .hero-bg{position:absolute !important;inset:-110px -130px auto auto !important;width:500px !important;height:500px !important;background:radial-gradient(circle at 35% 35%,rgba(232,93,4,.08),transparent 50%),radial-gradient(circle at 70% 50%,rgba(124,45,18,.06),transparent 50%) !important;filter:blur(18px) !important;opacity:.8 !important;transform:rotate(8deg) !important;pointer-events:none !important}
.cssa .badge{display:inline-flex !important;align-items:center !important;gap:10px !important;padding:8px 14px !important;border-radius:999px !important;border:1px solid var(--stroke) !important;background:#F1F5F9 !important;color:var(--muted) !important;font-weight:600 !important;font-size:12.5px !important;letter-spacing:.3px !important;width:fit-content !important;text-transform:uppercase !important}
.cssa .dot{width:10px !important;height:10px !important;border-radius:999px !important;background:radial-gradient(circle at 30% 30%,var(--accent-light),var(--indigo)) !important;box-shadow:0 0 10px var(--accent-glow) !important}
.cssa h1{margin:14px 0 10px !important;font-size:clamp(24px,3vw,36px) !important;line-height:1.08 !important;letter-spacing:-.5px !important;font-weight:900 !important;color:var(--text) !important}
.cssa h2{color:var(--text) !important;font-weight:900 !important}
.cssa .accent{color:var(--accent) !important}
.cssa .sub{margin:0 0 18px !important;color:var(--muted) !important;font-size:15px !important;line-height:1.5 !important;max-width:58ch !important}
.cssa .split{display:flex !important;gap:8px !important;flex-wrap:wrap !important;align-items:center !important}
.cssa .pill{padding:5px 10px !important;border:1px solid rgba(0,0,0,.12) !important;border-radius:999px !important;color:var(--muted) !important;font-size:11.5px !important;font-weight:700 !important;background:#F1F5F9 !important;white-space:nowrap !important}
.cssa .mini{border:1px solid var(--stroke) !important;background:#F8FAFC !important;border-radius:14px !important;padding:14px !important}
.cssa .mini .k{color:var(--muted2) !important;font-size:11.5px !important;letter-spacing:.3px !important;text-transform:uppercase !important;font-weight:700 !important}
.cssa .mini .v{margin-top:5px !important;font-size:15.5px !important;font-weight:700 !important;color:var(--text) !important}
.cssa .mini .v span{font-family:var(--mono) !important;font-weight:800 !important}
.cssa .hero-cards{display:grid !important;gap:10px !important;align-content:start !important}

/* CURRENCY */
.cssa .curr-switch{display:inline-flex !important;border:1px solid rgba(0,0,0,.15) !important;border-radius:999px !important;overflow:hidden !important;background:#F1F5F9 !important}
.cssa .curr{padding:5px 12px !important;border:none !important;border-radius:0 !important;background:transparent !important;color:var(--muted) !important;font-size:11.5px !important;font-weight:700 !important;cursor:pointer !important;white-space:nowrap !important;font-family:var(--sans) !important;display:inline-block !important}
.cssa .curr:hover{color:var(--text) !important;background:rgba(0,0,0,.05) !important}
.cssa .curr.active{background:linear-gradient(135deg,rgba(232,93,4,.20),rgba(124,45,18,.10)) !important;color:var(--accent) !important;box-shadow:none !important}
.cssa .curr+.curr{border-left:1px solid rgba(0,0,0,.1) !important}

/* PANELS */
.cssa .panel{border:1px solid var(--stroke) !important;background:#fff !important;border-radius:16px !important;box-shadow:0 2px 12px rgba(0,0,0,.06) !important;overflow:hidden !important}
.cssa .panel-head{padding:13px 16px 11px !important;border-bottom:1px solid rgba(0,0,0,.08) !important;display:flex !important;align-items:center !important;justify-content:space-between !important;gap:10px !important;background:#F8FAFC !important}
.cssa .panel-title{font-weight:800 !important;font-size:14.5px !important;display:flex !important;align-items:center !important;gap:9px !important;color:var(--text) !important}
.cssa .panel-body{padding:16px !important}

/* FORMS */
.cssa .form-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important}
.cssa .form-grid .full{grid-column:1/-1 !important}
.cssa label{display:block !important;font-weight:700 !important;font-size:12.5px !important;color:var(--muted) !important;margin-bottom:5px !important}
.cssa .req{color:var(--red) !important;font-weight:800 !important}.cssa .opt{color:var(--muted3) !important;font-weight:400 !important;font-size:11px !important}
.cssa .hint{color:var(--muted2) !important;font-size:11.5px !important;line-height:1.35 !important}
.cssa .hr{height:1px !important;background:rgba(0,0,0,.08) !important;margin:14px 0 10px !important}

/* NUCLEAR INPUT/SELECT — Light mode */
.cssa input[type="text"],.cssa input[type="email"],.cssa input[type="tel"],.cssa input[type="number"],.cssa input[type="password"],.cssa select{
  width:100% !important;padding:10px 12px !important;border-radius:10px !important;
  border:1px solid rgba(0,0,0,.18) !important;
  background:#fff !important;background-color:#fff !important;
  -webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;
  color:#111827 !important;font-weight:600 !important;
  font-size:13.5px !important;font-family:var(--sans) !important;
  outline:none !important;box-shadow:none !important;
  -webkit-text-fill-color:#111827 !important;
  transition:border-color .2s,box-shadow .2s !important;
}
/* Autofill — light */
.cssa input:-webkit-autofill,.cssa input:-webkit-autofill:hover,.cssa input:-webkit-autofill:focus,.cssa input:-webkit-autofill:active,.cssa select:-webkit-autofill{
  -webkit-box-shadow:0 0 0 9999px #fff inset !important;
  box-shadow:0 0 0 9999px #fff inset !important;
  -webkit-text-fill-color:#111827 !important;
  background-color:#fff !important;
  border:1px solid rgba(0,0,0,.18) !important;
  caret-color:#111827 !important;
  transition:background-color 600000s 0s,color 600000s 0s !important;
}
.cssa input:autofill,.cssa select:autofill{
  -webkit-text-fill-color:#111827 !important;
  box-shadow:0 0 0 9999px #fff inset !important;
  transition:background-color 600000s 0s,color 600000s 0s !important;
}
.cssa .form-grid input,.cssa .form-grid select,.cssa .panel-body input,.cssa .panel-body select,
.cssa .form-grid input:-webkit-autofill,.cssa .panel-body input:-webkit-autofill{
  background:#fff !important;background-color:#fff !important;
  color:#111827 !important;-webkit-text-fill-color:#111827 !important;
}
.cssa input::placeholder{color:rgba(0,0,0,.35) !important;-webkit-text-fill-color:rgba(0,0,0,.35) !important}
.cssa select{
  cursor:pointer !important;
  -webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;
  background-color:#fff !important;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='rgba(0,0,0,.45)' viewBox='0 0 16 16'%3E%3Cpath d='M7.247 11.14 2.451 5.658C1.885 5.013 2.345 4 3.204 4h9.592a1 1 0 0 1 .753 1.659l-4.796 5.48a1 1 0 0 1-1.506 0z'/%3E%3C/svg%3E") !important;
  background-repeat:no-repeat !important;background-position:right 12px center !important;
  padding-right:36px !important;
}
.cssa select,.cssa select:focus,.cssa select:hover,.cssa select:active,.cssa select:visited{
  -webkit-appearance:none !important;-moz-appearance:none !important;appearance:none !important;
  background-color:#fff !important;color:#111827 !important;
  outline:none !important;
}
.cssa select option{background:#fff !important;background-color:#fff !important;color:#111827 !important}
.cssa input:focus,.cssa select:focus{border-color:rgba(232,93,4,.7) !important;box-shadow:0 0 0 3px rgba(232,93,4,.12) !important}
.cssa input::placeholder{color:rgba(0,0,0,.32) !important;font-weight:400 !important}

/* CONSENT */
.cssa .consent-area{margin-top:20px !important;display:grid !important;gap:10px !important}
.cssa .ctxt{font-size:12px !important;color:var(--muted) !important;line-height:1.55 !important}
.cssa .notice-box{background:rgba(232,93,4,.06) !important;border:1px solid rgba(232,93,4,.20) !important;border-radius:12px !important;padding:14px 18px !important;font-size:12.5px !important;color:#0F766E !important;line-height:1.55 !important}
.cssa .notice-box a{color:var(--accent) !important;text-decoration:underline !important;font-weight:700 !important}

/* BUTTONS */
.cssa button,.cssa .btn{cursor:pointer !important;font-family:var(--sans) !important;border:1px solid rgba(0,0,0,.15) !important;padding:11px 18px !important;border-radius:12px !important;font-weight:800 !important;font-size:13.5px !important;transition:all .25s !important;display:inline-flex !important;align-items:center !important;gap:8px !important;background:#F1F5F9 !important;color:var(--text) !important}
.cssa .btn-primary{background:linear-gradient(135deg,var(--accent),var(--indigo)) !important;color:white !important;box-shadow:0 4px 14px rgba(232,93,4,.22) !important;border-color:transparent !important}
.cssa .btn-primary:hover{box-shadow:0 6px 20px rgba(232,93,4,.35) !important;transform:translateY(-1px) !important}
.cssa .btn-secondary{background:#F1F5F9 !important;border-color:rgba(0,0,0,.15) !important}
.cssa .btn-ghost{background:transparent !important;border-color:transparent !important;color:var(--muted) !important}
.cssa .actions-bar{display:flex !important;gap:10px !important;flex-wrap:wrap !important;margin-top:20px !important;justify-content:space-between !important}

/* ═══ ALERT HERO — Red urgency ═══ */
.cssa .alert-hero{background:linear-gradient(135deg,#7F1D1D 0%,#B91C1C 50%,#DC2626 100%) !important;border-radius:20px !important;padding:36px 28px !important;text-align:center !important;margin-bottom:24px !important;position:relative !important;overflow:hidden !important}
.cssa .alert-hero::before{content:'' !important;position:absolute !important;top:0 !important;left:0 !important;right:0 !important;bottom:0 !important;background:radial-gradient(circle at 30% 20%,rgba(255,255,255,.10),transparent 50%) !important;pointer-events:none !important}
.cssa .alert-hero *{color:#fff !important}
.cssa .alert-icon{font-size:52px !important;margin-bottom:10px !important}
.cssa .alert-label{font-size:12px !important;text-transform:uppercase !important;letter-spacing:3px !important;margin-bottom:8px !important;opacity:.85 !important}
.cssa .alert-amount{font-size:clamp(42px,7vw,68px) !important;font-weight:900 !important;font-family:var(--mono) !important;line-height:1 !important;margin-bottom:8px !important}
.cssa .alert-sub{font-size:16px !important;opacity:.85 !important}

/* ═══ ICEBERG ═══ */
.cssa .iceberg{margin:24px 0 !important;border-radius:20px !important;overflow:hidden !important;box-shadow:0 8px 30px rgba(0,0,0,.12) !important}
.cssa .iceberg-title{font-size:18px !important;font-weight:800 !important;text-align:center !important;margin-bottom:18px !important;display:flex !important;align-items:center !important;justify-content:center !important;gap:10px !important;color:var(--text) !important}
.cssa .ice-visible{background:linear-gradient(180deg,#DBEAFE 0%,#EFF6FF 100%) !important;border:2px solid #93C5FD !important;border-bottom:none !important;padding:22px !important;border-radius:20px 20px 0 0 !important}
.cssa .ice-visible *{color:#1E293B !important}
.cssa .ice-header{display:flex !important;align-items:center !important;gap:10px !important;margin-bottom:14px !important}
.cssa .ice-label{font-size:11px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:1.5px !important}
.cssa .ice-sublabel{font-size:12px !important}
.cssa .ice-visible .ice-label{color:#1E40AF !important}
.cssa .ice-visible .ice-sublabel{color:#3B82F6 !important}
.cssa .cost-row{display:flex !important;justify-content:space-between !important;align-items:center !important;padding:11px 0 !important;border-bottom:1px solid rgba(59,130,246,.2) !important}
.cssa .cost-row:last-of-type{border-bottom:none !important}
.cssa .cost-name{font-size:14px !important;font-weight:600 !important;display:flex !important;align-items:center !important;gap:8px !important}
.cssa .cost-val{font-size:17px !important;font-weight:800 !important;font-family:var(--mono) !important}
.cssa .ice-visible .cost-val{color:#1E40AF !important}
.cssa .subtotal{display:flex !important;justify-content:space-between !important;align-items:center !important;padding:12px 16px !important;border-radius:10px !important;margin-top:10px !important}
.cssa .ice-visible .subtotal{background:rgba(59,130,246,.12) !important}
.cssa .subtotal-label{font-size:13px !important;font-weight:700 !important}
.cssa .subtotal-val{font-size:19px !important;font-weight:900 !important;font-family:var(--mono) !important}
.cssa .ice-visible .subtotal-label,.cssa .ice-visible .subtotal-val{color:#1E40AF !important}

/* WATERLINE */
.cssa .waterline{background:linear-gradient(90deg,#0EA5E9,#38BDF8,#0EA5E9) !important;height:6px !important;position:relative !important;overflow:visible !important;z-index:2 !important}
.cssa .waterline::before{content:'〰️ LIGNE DE FLOTTAISON' !important;position:absolute !important;left:50% !important;top:50% !important;transform:translate(-50%,-50%) !important;background:#0284C7 !important;color:#fff !important;font-size:10px !important;font-weight:700 !important;letter-spacing:1px !important;padding:6px 18px !important;border-radius:20px !important;white-space:nowrap !important;border:2px solid #0EA5E9 !important}

/* HIDDEN PART — light version */
.cssa .ice-hidden{background:linear-gradient(180deg,#FEF2F2 0%,#FFF5F5 100%) !important;border:2px solid #FCA5A5 !important;border-top:none !important;padding:22px !important;border-radius:0 0 20px 20px !important}
.cssa .ice-hidden *{color:#7F1D1D !important}
.cssa .ice-hidden .ice-label{color:#DC2626 !important}
.cssa .ice-hidden .ice-sublabel{color:#EF4444 !important}
.cssa .ice-hidden .cost-row{border-bottom-color:rgba(239,68,68,.18) !important}
.cssa .ice-hidden .cost-val{color:#B91C1C !important}
.cssa .ice-hidden .subtotal{background:rgba(239,68,68,.10) !important}
.cssa .ice-hidden .subtotal-label{color:#991B1B !important}
.cssa .ice-hidden .subtotal-val{color:#DC2626 !important}
.cssa .ice-hidden .cost-name{color:#7F1D1D !important}

/* INFO TOOLTIP */
.cssa .info{display:inline-flex !important;align-items:center !important;justify-content:center !important;width:16px !important;height:16px !important;border-radius:50% !important;font-size:10px !important;font-weight:700 !important;cursor:help !important;position:relative !important;flex-shrink:0 !important}
.cssa .ice-visible .info{background:#BFDBFE !important;color:#1E40AF !important}
.cssa .ice-hidden .info{background:#FECACA !important;color:#B91C1C !important}
.cssa .info:hover::after{content:attr(data-tip) !important;position:absolute !important;bottom:130% !important;left:50% !important;transform:translateX(-50%) !important;background:#1E293B !important;color:#fff !important;font-size:11px !important;font-weight:400 !important;padding:8px 12px !important;border-radius:6px !important;width:200px !important;text-align:center !important;z-index:100 !important;line-height:1.4 !important;pointer-events:none !important}

/* ═══ LOI 27 COUNTDOWN ═══ */
.cssa .loi27-card{background:linear-gradient(135deg,#4C1D95 0%,#7C3AED 100%) !important;border-radius:20px !important;padding:26px !important;margin:24px 0 !important;position:relative !important;overflow:hidden !important}
.cssa .loi27-card *{color:#fff !important}
.cssa .loi27-badge{display:inline-block !important;background:rgba(255,255,255,.22) !important;padding:5px 14px !important;border-radius:999px !important;font-size:11px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:1px !important;margin-bottom:14px !important}
.cssa .loi27-title{font-size:18px !important;font-weight:800 !important;margin-bottom:16px !important}
.cssa .loi27-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important}
.cssa .loi27-item{background:rgba(255,255,255,.18) !important;border-radius:14px !important;padding:16px !important}
.cssa .loi27-item-label{font-size:12px !important;opacity:.85 !important;margin-bottom:5px !important}
.cssa .loi27-item-val{font-size:24px !important;font-weight:900 !important;font-family:var(--mono) !important}
.cssa .loi27-item-note{font-size:11px !important;opacity:.75 !important;margin-top:3px !important}

/* ═══ COMPARATOR A/B ═══ */
.cssa .comparator{margin:24px 0 !important}
.cssa .comp-title{font-size:18px !important;font-weight:800 !important;text-align:center !important;margin-bottom:16px !important;color:var(--text) !important}
.cssa .comp-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important}
.cssa .scenario{border-radius:16px !important;padding:22px !important;position:relative !important}
.cssa .scenario-a{background:#FEF2F2 !important;border:2px solid #FECACA !important}
.cssa .scenario-a *{color:#991B1B !important}
.cssa .scenario-b{background:#F0FDF4 !important;border:2px solid #BBF7D0 !important}
.cssa .scenario-b *{color:#166534 !important}
.cssa .scenario-badge{display:inline-block !important;font-size:10px !important;font-weight:700 !important;padding:4px 10px !important;border-radius:4px !important;text-transform:uppercase !important;letter-spacing:1px !important;margin-bottom:10px !important}
.cssa .scenario-a .scenario-badge{background:#DC2626 !important;color:#fff !important}
.cssa .scenario-b .scenario-badge{background:#16A34A !important;color:#fff !important}
.cssa .scenario-name{font-size:15px !important;font-weight:800 !important;margin-bottom:8px !important}
.cssa .scenario-amount{font-size:26px !important;font-weight:900 !important;font-family:var(--mono) !important;margin-bottom:14px !important}
.cssa .scenario-a .scenario-amount{color:#DC2626 !important}
.cssa .scenario-b .scenario-amount{color:#16A34A !important}
.cssa .scenario-list li{font-size:12.5px !important;padding:7px 0 !important;display:flex !important;align-items:flex-start !important;gap:7px !important}
.cssa .scenario-a .scenario-list li{border-bottom:1px solid #FECACA !important}
.cssa .scenario-b .scenario-list li{border-bottom:1px solid #BBF7D0 !important}
.cssa .scenario-list li:last-child{border-bottom:0 !important}
.cssa .scenario-a .scenario-list li::before{content:'✗' !important;color:#DC2626 !important;font-weight:700 !important;flex-shrink:0 !important}
.cssa .scenario-b .scenario-list li::before{content:'✓' !important;color:#16A34A !important;font-weight:700 !important;flex-shrink:0 !important}
.cssa .rci-badge{display:inline-block !important;background:linear-gradient(135deg,#16A34A,#22C55E) !important;color:#fff !important;font-size:14px !important;font-weight:700 !important;padding:10px 18px !important;border-radius:10px !important;margin-top:12px !important;text-align:center !important}

/* ═══ PROJECTION TABLE ═══ */
.cssa .projection{margin:24px 0 !important}
.cssa .proj-title{font-size:18px !important;font-weight:800 !important;text-align:center !important;margin-bottom:16px !important;color:var(--text) !important}
.cssa .proj-table{width:100% !important;border-collapse:collapse !important;border-radius:14px !important;overflow:hidden !important;border:1px solid rgba(0,0,0,.12) !important;display:table !important}
.cssa .proj-table thead{display:table-header-group !important}
.cssa .proj-table tbody{display:table-row-group !important}
.cssa .proj-table tr{display:table-row !important}
.cssa .proj-table th{padding:10px !important;font-size:11px !important;text-transform:uppercase !important;letter-spacing:.3px !important;font-weight:700 !important;background:#F1F5F9 !important;color:var(--muted) !important;display:table-cell !important;text-align:center !important}
.cssa .proj-table td{padding:10px !important;font-size:13px !important;font-family:var(--mono) !important;font-weight:700 !important;border-bottom:1px solid rgba(0,0,0,.06) !important;text-align:center !important;display:table-cell !important}
.cssa .proj-table .yr{color:var(--muted) !important;font-family:var(--sans) !important;font-weight:800 !important}
.cssa .proj-table .bad{color:#DC2626 !important}
.cssa .proj-table .good{color:#16A34A !important}
.cssa .proj-table .accent{color:var(--accent) !important}
.cssa .proj-table tr:last-child td{border-bottom:0 !important;background:rgba(232,93,4,.05) !important}

/* RADIO CARDS */
.cssa .confirm-options{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important}
.cssa .radio-card{cursor:pointer !important;border:2px solid rgba(0,0,0,.10) !important;border-radius:16px !important;padding:20px 18px !important;background:#fff !important;transition:all .3s !important;user-select:none !important}
.cssa .radio-card:hover{border-color:rgba(232,93,4,.30) !important;background:#F0FDFA !important}
.cssa .radio-card input[type="radio"]{display:none !important;width:0 !important;height:0 !important;opacity:0 !important;position:absolute !important}
.cssa .radio-card:has(input:checked){border-color:var(--accent) !important;background:rgba(232,93,4,.05) !important;box-shadow:0 0 0 3px rgba(232,93,4,.10) !important}
.cssa .card-icon{font-size:30px !important;margin-bottom:8px !important}
.cssa .card-title{font-weight:900 !important;font-size:15px !important;margin-bottom:5px !important;color:var(--text) !important}
.cssa .card-desc{font-size:12px !important;color:var(--muted) !important;line-height:1.55 !important}

/* SUCCESS */
.cssa .success-icon{font-size:52px !important;margin-bottom:14px !important;animation:csscPop .5s cubic-bezier(.22,1,.36,1) !important}
@keyframes csscPop{0%{transform:scale(0);opacity:0}60%{transform:scale(1.12)}100%{transform:scale(1);opacity:1}}
.cssa .success-title{font-size:24px !important;font-weight:900 !important;margin-bottom:8px !important;color:var(--text) !important}
.cssa .success-sub{color:var(--muted) !important;font-size:14.5px !important;line-height:1.5 !important;max-width:460px !important;margin:0 auto 24px !important}
.cssa .success-sub strong{color:var(--accent) !important}
.cssa .privacy-footer{margin-top:28px !important;padding-top:18px !important;border-top:1px solid rgba(0,0,0,.08) !important}
.cssa .privacy-footer p{font-size:11.5px !important;color:var(--muted3) !important;line-height:1.5 !important}
.cssa .privacy-footer a{color:var(--accent) !important;font-weight:700 !important}

/* ═══ PROJECTION CHART ═══ */
.cssa .proj-bars{display:grid !important;gap:16px !important}
.cssa .proj-bar-group{animation:csscSlideIn .6s ease both !important}
@keyframes csscSlideIn{from{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}
.cssa .proj-bar-label{font-size:13px !important;font-weight:800 !important;color:var(--muted) !important;margin-bottom:6px !important}
.cssa .proj-bar-stack{display:grid !important;gap:5px !important}
.cssa .proj-bar-item{display:flex !important;align-items:center !important;gap:10px !important;height:28px !important}
.cssa .proj-bar-fill{height:100% !important;border-radius:6px !important;min-width:8px !important;transition:width 1.2s cubic-bezier(.22,1,.36,1) !important;position:relative !important}
.cssa .bar-red{background:linear-gradient(90deg,#991B1B,#DC2626,#EF4444) !important;box-shadow:0 2px 8px rgba(220,38,38,.2) !important}
.cssa .bar-green{background:linear-gradient(90deg,#166534,#16A34A,#22C55E) !important;box-shadow:0 2px 8px rgba(22,163,74,.2) !important}
.cssa .bar-gold{background:linear-gradient(90deg,#92400E,#D97706,#F59E0B) !important;box-shadow:0 2px 8px rgba(217,119,6,.2) !important}
.cssa .proj-bar-val{font-size:12px !important;font-family:var(--mono) !important;font-weight:700 !important;white-space:nowrap !important}
.cssa .bar-red-text{color:#DC2626 !important}
.cssa .bar-green-text{color:#16A34A !important}
.cssa .bar-gold-text{color:#D97706 !important}
.cssa .proj-total-card{border:1px solid var(--stroke) !important;border-radius:14px !important;padding:16px !important;text-align:center !important;background:#fff !important}
.cssa .proj-total-icon{font-size:24px !important;margin-bottom:6px !important}
.cssa .proj-total-label{font-size:11px !important;color:var(--muted2) !important;line-height:1.4 !important;margin-bottom:6px !important}
.cssa .proj-total-val{font-size:22px !important;font-weight:900 !important;font-family:var(--mono) !important}
.cssa .total-red{border-color:rgba(220,38,38,.20) !important;background:#FEF2F2 !important}
.cssa .total-green{border-color:rgba(22,163,74,.20) !important;background:#F0FDF4 !important}
.cssa .total-gold{border-color:rgba(217,119,6,.20) !important;background:#FFFBEB !important}
.cssa details{color:var(--muted) !important}
.cssa summary{color:var(--accent) !important;font-size:13px !important;font-weight:700 !important;padding:8px 0 !important;cursor:pointer !important}

/* Kill WP/Bootstrap constraints */
.cssa .container,.cssa .row,.cssa .col{max-width:none !important;width:auto !important;padding:0 !important;margin:0 !important;float:none !important;flex:none !important}

/* RESPONSIVE */
@media(max-width:700px){
  .cssa .hero-inner{grid-template-columns:1fr !important}
  .cssa .form-grid,.cssa .comp-grid,.cssa .loi27-grid,.cssa .confirm-options{grid-template-columns:1fr !important}
  .cssa .split{flex-direction:column !important;align-items:flex-start !important}
}

/* ═══ SEVERITY STRIP ═══ */
.cssa .severity-strip{display:none;text-align:center !important;margin-bottom:18px !important;animation:cssaFadeUp .6s ease !important}
.cssa .severity-badge{display:inline-block !important;font-size:16px !important;font-weight:900 !important;letter-spacing:1.5px !important;padding:10px 24px !important;border-radius:12px !important;border:2px solid !important}
.cssa .severity-detail{font-size:13px !important;color:var(--muted) !important;margin-top:8px !important;line-height:1.5 !important}

/* ═══ TANGIBLE COMPARISON ═══ */
.cssa .tangible-strip{background:#fff !important;border:1px solid var(--stroke) !important;border-radius:16px !important;padding:20px 22px !important;margin-bottom:22px !important;box-shadow:0 2px 12px rgba(0,0,0,.05) !important;animation:cssaFadeUp .6s ease !important}
.cssa .tangible-intro{font-size:13px !important;font-weight:600 !important;color:var(--muted) !important;text-align:center !important;margin-bottom:14px !important;line-height:1.4 !important}
.cssa .tangible-grid{display:grid !important;grid-template-columns:1fr 1fr 1fr !important;gap:14px !important}
.cssa .tangible-card{background:#F8FAFC !important;border:1px solid var(--stroke) !important;border-radius:12px !important;padding:16px 12px !important;text-align:center !important}
.cssa .tangible-icon{font-size:24px !important;margin-bottom:4px !important;line-height:1 !important}
.cssa .tangible-val{font-size:28px !important;font-weight:900 !important;font-family:var(--mono) !important;color:var(--red) !important;line-height:1.1 !important;margin:4px 0 !important}
.cssa .tangible-label{font-size:11.5px !important;color:var(--muted2) !important;font-weight:600 !important;line-height:1.3 !important}

/* ═══ LIVE INVEST SELECTOR (in scenario B) ═══ */
.cssa .invest-selector-wrap{margin:10px 0 6px !important;display:flex !important;align-items:center !important;gap:8px !important;flex-wrap:wrap !important}
.cssa .invest-selector-label{font-size:11px !important;font-weight:700 !important;text-transform:uppercase !important;letter-spacing:.4px !important;color:#166534 !important;margin:0 !important}
.cssa .invest-selector{flex:1 !important;min-width:0 !important;padding:6px 10px !important;font-size:12px !important;font-weight:700 !important;border:1px solid rgba(22,163,74,.35) !important;border-radius:8px !important;background:#fff !important;color:#166534 !important;cursor:pointer !important}
.cssa .invest-selector:focus{outline:none !important;border-color:#16A34A !important;box-shadow:0 0 0 3px rgba(22,163,74,.15) !important}

/* ═══ PRINT ═══ */
@media print{
  .cssa{background:#fff !important;padding:0 !important;min-height:auto !important}
  .cssa button,.cssa .btn,.cssa .step-nav,.cssa .brand-bar,.cssa .consent-area,.cssa .actions-bar,.cssa .curr-switch,.cssa .invest-selector-wrap{display:none !important}
  .cssa .panel,.cssa header.hero{box-shadow:none !important;border:1px solid #d1d5db !important}
  .cssa .proj-bar-fill{-webkit-print-color-adjust:exact !important;print-color-adjust:exact !important}
  .cssa .alert-hero,.cssa .loi27-card,.cssa .scenario,.cssa .severity-badge,.cssa .tangible-strip{-webkit-print-color-adjust:exact !important;print-color-adjust:exact !important}
}

/* ═══ RESPONSIVE ═══ */
@media(max-width:700px){
  .cssa .tangible-grid{grid-template-columns:1fr !important}
  .cssa .tangible-val{font-size:22px !important}
}

/* ═══ ABSENTÉISME-SPECIFIC COMPONENTS (v1.0) ═══ */

/* KPI GRID for results panel */
.cssa .kpi-grid{display:grid !important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr)) !important;gap:14px !important;margin-bottom:18px !important}
.cssa .kpi{background:#F8FAFC !important;border:1px solid var(--stroke) !important;border-left:4px solid var(--accent) !important;border-radius:12px !important;padding:14px 16px !important}
.cssa .kpi .k{font-size:11px !important;color:var(--muted2) !important;text-transform:uppercase !important;font-weight:700 !important;letter-spacing:.4px !important}
.cssa .kpi .v{font-size:22px !important;font-weight:900 !important;color:var(--text) !important;margin-top:4px !important;font-family:var(--mono) !important}
.cssa .kpi .v.accent{color:var(--accent) !important}
.cssa .kpi .hint{font-size:11px !important;color:var(--muted3) !important;margin-top:4px !important;font-weight:500 !important}

/* BREAKDOWN LIST (5 components) */
.cssa .breakdown-list{display:flex !important;flex-direction:column !important;gap:8px !important;margin:14px 0 !important}
.cssa .bd-row{display:flex !important;justify-content:space-between !important;align-items:center !important;padding:10px 14px !important;background:#F8FAFC !important;border:1px solid var(--stroke) !important;border-radius:10px !important;transition:all .2s !important}
.cssa .bd-row:hover{background:#F1F5F9 !important;border-color:var(--accent-glow) !important}
.cssa .bd-label{color:var(--muted) !important;font-size:14px !important;font-weight:600 !important}
.cssa .bd-value{color:var(--text) !important;font-weight:800 !important;font-family:var(--mono) !important;font-size:15px !important}

/* SUCCESS BANNER (step 3) */
.cssa .success-banner{padding:24px !important;background:linear-gradient(135deg,#FEF3C7,#FED7AA) !important;border:1px solid var(--accent-glow) !important;border-radius:16px !important;margin:8px 0 !important}
.cssa .success-banner h2{font-size:24px !important;color:var(--text) !important;margin-bottom:10px !important}
.cssa .success-banner p{color:var(--muted) !important;font-size:14px !important}

/* HINT TEXT */
.cssa .hint{font-size:12px !important;color:var(--muted3) !important;margin-top:4px !important}

.cssa .consent-area{margin-top:16px !important;display:flex !important;flex-direction:column !important;gap:10px !important}

/* NOTICE BOX */
.cssa .notice-box{padding:12px 14px !important;background:rgba(232,93,4,.06) !important;border-left:3px solid var(--accent) !important;border-radius:8px !important;font-size:13px !important;color:var(--muted) !important;line-height:1.5 !important}
.cssa .notice-box a{color:var(--accent) !important;font-weight:700 !important;text-decoration:underline !important}

/* BUTTONS */
.cssa .btn-primary{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;padding:12px 22px !important;background:linear-gradient(135deg,var(--accent),var(--accent-light)) !important;color:#fff !important;border:none !important;border-radius:10px !important;font-weight:800 !important;font-size:14px !important;cursor:pointer !important;transition:all .25s !important;box-shadow:0 4px 14px var(--accent-glow) !important}
.cssa .btn-primary:hover{transform:translateY(-1px) !important;box-shadow:0 6px 18px var(--accent-glow) !important}
.cssa .btn-secondary{display:inline-flex !important;align-items:center !important;justify-content:center !important;gap:8px !important;padding:12px 22px !important;background:#fff !important;color:var(--muted) !important;border:1px solid var(--stroke) !important;border-radius:10px !important;font-weight:700 !important;font-size:14px !important;cursor:pointer !important;transition:all .25s !important}
.cssa .btn-secondary:hover{background:#F8FAFC !important;border-color:var(--accent) !important;color:var(--accent) !important}

/* PANELS */
.cssa .panel{background:#fff !important;border:1px solid var(--stroke) !important;border-radius:16px !important;box-shadow:0 2px 12px rgba(0,0,0,.04) !important;overflow:hidden !important}
.cssa .panel-head{display:flex !important;justify-content:space-between !important;align-items:center !important;padding:16px 22px !important;border-bottom:1px solid var(--stroke) !important;background:#F8FAFC !important}
.cssa .panel-title{font-size:16px !important;font-weight:800 !important;color:var(--text) !important}
.cssa .panel-body{padding:22px !important}

/* FORM GRID */
.cssa .form-grid{display:grid !important;grid-template-columns:1fr 1fr !important;gap:14px !important}
.cssa .form-grid .full{grid-column:1 / -1 !important}
.cssa label{display:block !important;font-size:13px !important;font-weight:700 !important;color:var(--muted) !important;margin-bottom:5px !important}
.cssa input[type="text"],.cssa input[type="email"],.cssa input[type="tel"],.cssa input[type="number"],.cssa select{width:100% !important;padding:10px 12px !important;border:1px solid var(--stroke) !important;border-radius:8px !important;font-size:14px !important;background:#fff !important;color:var(--text) !important;font-family:var(--sans) !important;transition:border-color .2s !important}
.cssa input:focus,.cssa select:focus{outline:none !important;border-color:var(--accent) !important;box-shadow:0 0 0 3px var(--accent-glow) !important}
.cssa .req{color:var(--red) !important;font-weight:800 !important}
.cssa .opt{color:var(--muted3) !important;font-size:11px !important;font-weight:500 !important}

/* HR */
.cssa .hr{height:1px !important;background:var(--stroke) !important;margin:20px 0 !important;border:0 !important}

/* CURRENCY SWITCHER */
.cssa .curr-switch{display:inline-flex !important;border:1px solid var(--stroke) !important;border-radius:10px !important;overflow:hidden !important;background:#fff !important}
.cssa .curr-switch .curr{padding:8px 14px !important;background:transparent !important;border:none !important;color:var(--muted) !important;font-weight:700 !important;font-size:13px !important;cursor:pointer !important;transition:all .2s !important;border-right:1px solid var(--stroke) !important}
.cssa .curr-switch .curr:last-child{border-right:none !important}
.cssa .curr-switch .curr.active{background:var(--accent) !important;color:#fff !important}

/* Mobile */
@media (max-width: 720px) {
  .cssa .form-grid{grid-template-columns:1fr !important}
  .cssa .hero-inner{grid-template-columns:1fr !important}
  .cssa .kpi-grid{grid-template-columns:1fr !important}
}

/* ═══ CONSENT CHECKBOXES (v1.0.2) — Pattern: hide native input, render .check span ═══ */
/* Spécificité maximale pour résister aux resets et optimiseurs CSS tiers */

.cssa .consent-area {
  margin-top: 16px !important;
  display: flex !important;
  flex-direction: column !important;
  gap: 10px !important;
}

label.consent-box.consent-box {
  display: flex !important;
  flex-direction: row !important;
  gap: 13px !important;
  cursor: pointer !important;
  padding: 14px 16px !important;
  border-radius: 12px !important;
  border: 1px solid rgba(0, 0, 0, 0.10) !important;
  background: #F8FAFC !important;
  transition: all 0.25s !important;
  align-items: flex-start !important;
  user-select: none !important;
  position: relative !important;
}

label.consent-box.consent-box:hover {
  border-color: rgba(232, 93, 4, 0.35) !important;
  background: rgba(232, 93, 4, 0.04) !important;
}

label.consent-box.consent-box > input[type="checkbox"] {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  opacity: 0 !important;
  pointer-events: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

label.consent-box.consent-box > span.check {
  flex-shrink: 0 !important;
  display: inline-block !important;
  width: 22px !important;
  height: 22px !important;
  min-width: 22px !important;
  min-height: 22px !important;
  border: 2px solid rgba(0, 0, 0, 0.30) !important;
  border-radius: 7px !important;
  background: #FFFFFF !important;
  margin-top: 1px !important;
  transition: all 0.2s !important;
  position: relative !important;
  box-sizing: border-box !important;
}

label.consent-box.consent-box > input[type="checkbox"]:checked + span.check {
  background: #E85D04 !important;
  background-color: #E85D04 !important;
  border-color: #E85D04 !important;
  box-shadow: 0 0 8px rgba(232, 93, 4, 0.40) !important;
}

label.consent-box.consent-box > input[type="checkbox"]:checked + span.check::after {
  content: '\2713' !important;
  position: absolute !important;
  top: 50% !important;
  left: 50% !important;
  transform: translate(-50%, -50%) !important;
  color: #FFFFFF !important;
  font-size: 14px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  display: block !important;
}

label.consent-box.consent-box > input[type="checkbox"]:focus + span.check {
  outline: 3px solid rgba(232, 93, 4, 0.40) !important;
  outline-offset: 1px !important;
  border-color: #E85D04 !important;
}

label.consent-box.consent-box > span.ctxt {
  font-size: 12.5px !important;
  color: #374151 !important;
  line-height: 1.55 !important;
  flex: 1 !important;
  display: block !important;
}
