/* C'BEZT Public Survey Engagement Family
   Visual parity with the public claim journey while preserving native Survey forms. */

.survey-engagement{
  --survey-surface:#ffffff;
  --survey-surface-soft:#f8fbff;
  --survey-surface-muted:#f4f7fb;
  --survey-text:#0a1929;
  --survey-muted:#60758a;
  --survey-border:rgba(21,101,192,.12);
  --survey-blue:#1565c0;
  --survey-blue-strong:#0d47a1;
  --survey-orange:#f57c00;
  --survey-yellow:#ffc107;
  --survey-green:#2f855a;
  --survey-danger:#c53030;
  --survey-shadow:0 18px 46px rgba(21,101,192,.12);
  color:var(--survey-text);
  background:linear-gradient(180deg,#eef7ff 0,#f8fbff 22rem,#fff 48rem);
  min-height:70vh;
}

.survey-engagement *{box-sizing:border-box}
.survey-engagement svg{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}

.survey-engagement-hero{
  position:relative;
  overflow:hidden;
  padding:80px 0 140px;
  color:#fff;
  background:linear-gradient(135deg,var(--cbz-dark) 0%,var(--cbz-dark2) 100%);
}
.survey-engagement-hero::before,
.survey-engagement-hero::after{content:"";position:absolute;border-radius:50%;pointer-events:none}
.survey-engagement-hero::before{top:-80px;right:-80px;width:400px;height:400px;background:rgba(21,101,192,.15)}
.survey-engagement-hero::after{bottom:-100px;left:-60px;width:300px;height:300px;background:rgba(245,124,0,.1)}
.survey-engagement-hero--compact{padding-bottom:118px}
.survey-engagement-hero-inner{position:relative;z-index:1}
.survey-engagement-hero-inner--center{max-width:920px;margin-inline:auto;text-align:center}
.survey-engagement-hero-copy{max-width:760px;margin-inline:auto;min-width:0}
.survey-engagement-eyebrow{
  display:inline-flex;
  align-items:center;
  min-height:2rem;
  padding:.4rem .85rem;
  border:1px solid rgba(255,255,255,.25);
  border-radius:999px;
  background:rgba(255,255,255,.12);
  color:#fff4c2;
  font-size:.7rem;
  font-weight:900;
  letter-spacing:.14em;
  text-transform:uppercase;
  backdrop-filter:blur(8px);
}
.survey-engagement-title{
  max-width:18ch;
  margin:.9rem auto .7rem;
  font-family:var(--font-display,'Bebas Neue',sans-serif);
  font-size:clamp(2.5rem,8vw,5rem);
  line-height:.98;
  letter-spacing:.035em;
  color:#fff;
}
.survey-engagement-lead{
  max-width:34rem;
  margin:0 auto;
  color:rgba(255,255,255,.72);
  font-size:1rem;
  font-weight:500;
  line-height:1.7;
}
.survey-engagement-meta{display:flex;flex-wrap:wrap;justify-content:center;gap:.55rem;margin-top:1.25rem}
.survey-engagement-meta-chip{
  display:inline-flex;
  align-items:center;
  gap:.45rem;
  min-height:2rem;
  padding:.38rem .72rem;
  border:1px solid rgba(255,255,255,.18);
  border-radius:999px;
  background:rgba(8,45,86,.24);
  color:#eaf4ff;
  font-size:.72rem;
  font-weight:800;
}
.survey-engagement-meta-chip svg{width:1rem;height:1rem;flex:0 0 auto}
.survey-engagement-meta-chip--reward{background:rgba(255,193,7,.14);border-color:rgba(255,215,92,.3);color:#fff0a8}

.survey-engagement-stage{position:relative;z-index:10;margin-top:-80px;padding-bottom:80px}
.survey-engagement-stage--done{max-width:760px}
.survey-engagement-workspace{max-width:880px;margin:0 auto}
.survey-engagement-banner{margin:0 0 1rem;overflow:hidden;border:1px solid var(--survey-border);border-radius:1.4rem;background:var(--survey-surface);box-shadow:var(--survey-shadow)}
.survey-engagement-banner-image{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover}
.survey-engagement-points-policy{display:flex;align-items:flex-start;gap:.8rem;margin:0 0 1rem;padding:.95rem 1rem;border:1px solid rgba(245,124,0,.2);border-radius:1rem;background:linear-gradient(135deg,#fff7e8,#fffdf7);box-shadow:0 10px 26px rgba(245,124,0,.08)}
.survey-engagement-points-policy-icon{display:inline-flex;align-items:center;justify-content:center;width:2.35rem;height:2.35rem;flex:0 0 2.35rem;border-radius:.78rem;background:#fff0d6;color:var(--survey-orange)}
.survey-engagement-points-policy-icon svg{width:1.15rem;height:1.15rem}
.survey-engagement-points-policy strong{display:block;margin:.05rem 0 .22rem;color:var(--survey-text);font-size:.82rem;font-weight:900}
.survey-engagement-points-policy p{margin:0;color:var(--survey-muted);font-size:.75rem;font-weight:600;line-height:1.55}
.survey-engagement-stepper{
  display:flex;
  align-items:center;
  gap:.65rem;
  margin:0 auto 1rem;
  padding:.8rem 1rem;
  border:1px solid var(--survey-border);
  border-radius:1.1rem;
  background:rgba(255,255,255,.96);
  box-shadow:0 12px 30px rgba(21,101,192,.09);
}
.survey-engagement-step{display:flex;align-items:center;gap:.48rem;min-width:0;color:#91a0ae;font-size:.75rem;font-weight:800;white-space:nowrap}
.survey-engagement-step-number{display:inline-flex;align-items:center;justify-content:center;width:1.7rem;height:1.7rem;flex:0 0 1.7rem;border-radius:50%;background:#e9eff5;color:#78909c;font-size:.7rem;font-weight:900}
.survey-engagement-step.is-active{color:var(--survey-blue)}
.survey-engagement-step.is-active .survey-engagement-step-number{background:var(--survey-blue);color:#fff}
.survey-engagement-step.is-done{color:#2f855a}
.survey-engagement-step.is-done .survey-engagement-step-number{background:#38a169;color:#fff}
.survey-engagement-step-line{height:2px;flex:1;min-width:1.2rem;background:#e6edf4;border-radius:999px}
.survey-engagement-step-line.is-done{background:#68c78d}

.survey-engagement-card,
.survey-engagement-submit-card,
.survey-engagement-result-card{
  border:1px solid var(--survey-border);
  border-radius:1.4rem;
  background:var(--survey-surface);
  box-shadow:var(--survey-shadow);
}
.survey-engagement-card{padding:1.4rem;margin-bottom:1rem}
.survey-engagement-card--compact{max-width:620px;margin-inline:auto}
.survey-engagement-card--questions{padding:0;overflow:hidden}
.survey-engagement-card-heading{display:flex;align-items:center;gap:.8rem;margin-bottom:1.1rem}
.survey-engagement-card-heading--questions{padding:1.3rem 1.4rem;margin:0;border-bottom:1px solid var(--survey-border)}
.survey-engagement-card-icon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;flex:0 0 2.5rem;border-radius:.82rem;background:#eaf4ff;color:var(--survey-blue)}
.survey-engagement-card-icon svg{width:1.2rem;height:1.2rem}
.survey-engagement-card-heading h2{margin:.1rem 0 0;font-size:1rem;font-weight:900;color:var(--survey-text)}
.survey-engagement-kicker{display:block;color:var(--survey-orange);font-size:.65rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.survey-engagement-question-count{margin-left:auto;display:inline-flex;align-items:center;justify-content:center;min-width:2.3rem;height:2.3rem;padding:0 .55rem;border-radius:.75rem;background:#f0f6fc;color:var(--survey-blue);font-size:.8rem;font-weight:900}
.survey-engagement-card-copy{margin:-.15rem 0 1rem;color:var(--survey-muted);font-size:.88rem;font-weight:600;line-height:1.65}

.survey-engagement-form{display:grid;gap:1rem}
.survey-engagement-field{display:grid;gap:.45rem}
.survey-engagement-field--flush{margin:0}
.survey-engagement-field label{font-size:.78rem;font-weight:850;color:var(--survey-text)}
.survey-engagement-field label span,.survey-engagement-question-label>span{color:#dc2626}
.survey-engagement-field input,
.survey-engagement-field select,
.survey-engagement-field textarea{
  width:100%;
  min-height:2.9rem;
  padding:.75rem .9rem;
  border:1.5px solid #dbe5ee;
  border-radius:.85rem;
  background:#fff;
  color:var(--survey-text);
  font:600 .87rem/1.45 var(--font-sans,'Plus Jakarta Sans',sans-serif);
  outline:none;
  transition:border-color .15s ease,box-shadow .15s ease,background .15s ease;
}
.survey-engagement-field textarea{min-height:7rem;resize:vertical}
.survey-engagement-field input:focus,
.survey-engagement-field select:focus,
.survey-engagement-field textarea:focus{border-color:var(--survey-blue);box-shadow:0 0 0 3px rgba(21,101,192,.12)}
.survey-engagement-hint{margin:0;color:var(--survey-muted);font-size:.73rem;font-weight:600;line-height:1.5}
.survey-engagement-field-error{margin:.35rem 0 0;color:var(--survey-danger);font-size:.75rem;font-weight:800;line-height:1.45}
.survey-engagement-otp{text-align:center;font-size:1.55rem!important;font-weight:900!important;letter-spacing:.42em;padding-left:1.2rem!important}
.survey-engagement-resend-form{margin-top:.85rem;text-align:center}

.survey-engagement-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:.5rem;
  min-height:2.9rem;
  padding:.72rem 1rem;
  border:0;
  border-radius:.85rem;
  font:850 .82rem/1.2 var(--font-sans,'Plus Jakarta Sans',sans-serif);
  text-decoration:none;
  cursor:pointer;
  transition:transform .15s ease,background .15s ease,border-color .15s ease,box-shadow .15s ease;
}
.survey-engagement-btn:hover{transform:translateY(-1px)}
.survey-engagement-btn svg{width:1.05rem;height:1.05rem}
.survey-engagement-btn--primary{width:100%;background:var(--survey-blue);color:#fff;box-shadow:0 10px 24px rgba(21,101,192,.22)}
.survey-engagement-btn--primary:hover{background:var(--survey-blue-strong)}
.survey-engagement-btn--reward{width:100%;background:var(--survey-yellow);color:#0d47a1;box-shadow:0 10px 24px rgba(255,193,7,.25)}
.survey-engagement-btn--reward:hover{background:#ffb300}
.survey-engagement-btn--ghost{background:#f5f8fb;color:var(--survey-blue);border:1px solid #dce6ef}
.survey-engagement-btn--home{max-width:22rem;margin-inline:auto}

.survey-engagement-alert{display:flex;align-items:flex-start;gap:.65rem;margin-bottom:1rem;padding:.85rem 1rem;border:1px solid;border-radius:1rem;font-size:.8rem;font-weight:700;line-height:1.55}
.survey-engagement-alert svg{width:1.1rem;height:1.1rem;flex:0 0 1.1rem;margin-top:.08rem}
.survey-engagement-alert--error{background:#fff5f5;border-color:#fecaca;color:#b91c1c}
.survey-engagement-alert--success{background:#f0fff4;border-color:#bbf7d0;color:#237a47}

.survey-engagement-questionnaire{display:grid;gap:1rem}
.survey-engagement-question{padding:1.35rem 1.4rem;border-bottom:1px solid #edf2f7}
.survey-engagement-question:last-child{border-bottom:0}
.survey-engagement-question-heading{display:grid;grid-template-columns:auto minmax(0,1fr);gap:.8rem;align-items:flex-start;margin-bottom:.9rem}
.survey-engagement-question-number{display:inline-flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border-radius:.72rem;background:#eef6ff;color:var(--survey-blue);font-size:.72rem;font-weight:900}
.survey-engagement-question-label{padding-top:.2rem;color:var(--survey-text);font-size:.9rem;font-weight:800;line-height:1.55}

.survey-engagement-star-group{display:flex;flex-wrap:wrap;gap:.35rem}
.survey-engagement-star-choice{position:relative;cursor:pointer}
.survey-engagement-star-choice>input{position:absolute;opacity:0;pointer-events:none}
.survey-engagement-star{display:flex;padding:.22rem;color:#cfd8e3;transition:transform .12s ease,color .12s ease}
.survey-engagement-star svg{width:2rem;height:2rem;fill:transparent;stroke:currentColor}
.survey-engagement-star-choice:hover .survey-engagement-star{transform:scale(1.08);color:#f59e0b}
.survey-engagement-star-choice>input:focus-visible+.survey-engagement-star{outline:3px solid rgba(21,101,192,.22);outline-offset:2px;border-radius:.5rem}
.survey-engagement-star-choice>input:checked+.survey-engagement-star svg{fill:#f59e0b;stroke:#f59e0b}
.survey-engagement-star-group:has(.survey-engagement-star-choice:nth-child(2)>input:checked) .survey-engagement-star-choice:nth-child(-n+2) svg,
.survey-engagement-star-group:has(.survey-engagement-star-choice:nth-child(3)>input:checked) .survey-engagement-star-choice:nth-child(-n+3) svg,
.survey-engagement-star-group:has(.survey-engagement-star-choice:nth-child(4)>input:checked) .survey-engagement-star-choice:nth-child(-n+4) svg,
.survey-engagement-star-group:has(.survey-engagement-star-choice:nth-child(5)>input:checked) .survey-engagement-star-choice:nth-child(-n+5) svg{fill:#f59e0b;stroke:#f59e0b}

.survey-engagement-scale-group{display:grid;grid-template-columns:repeat(10,minmax(0,1fr));gap:.35rem}
.survey-engagement-scale-choice{position:relative;cursor:pointer}
.survey-engagement-scale-choice>input{position:absolute;opacity:0;pointer-events:none}
.survey-engagement-scale-choice>span{display:flex;align-items:center;justify-content:center;min-height:2.45rem;border:1.5px solid #dce6ef;border-radius:.62rem;background:#fff;color:#44566a;font-size:.78rem;font-weight:900;transition:all .12s ease}
.survey-engagement-scale-choice:hover>span{border-color:var(--survey-blue);color:var(--survey-blue);background:#f1f7ff}
.survey-engagement-scale-choice>input:checked+span{border-color:var(--survey-blue);background:var(--survey-blue);color:#fff}
.survey-engagement-scale-choice>input:focus-visible+span{outline:3px solid rgba(21,101,192,.22);outline-offset:2px}
.survey-engagement-scale-labels{display:flex;justify-content:space-between;gap:1rem;margin-top:.42rem;color:#8a9aaa;font-size:.7rem;font-weight:700}

.survey-engagement-options{display:grid;gap:.55rem}
.survey-engagement-option{display:flex;align-items:flex-start;gap:.7rem;padding:.8rem .9rem;border:1.5px solid #dce6ef;border-radius:.85rem;background:#fff;color:#3d4d5e;font-size:.82rem;font-weight:700;line-height:1.5;cursor:pointer;transition:all .12s ease}
.survey-engagement-option:hover{border-color:#8dc0ef;background:#f7fbff}
.survey-engagement-option:has(input:checked){border-color:var(--survey-blue);background:#edf6ff;color:#164f88}
.survey-engagement-option input{margin-top:.15rem;accent-color:var(--survey-blue);flex:0 0 auto}

.survey-engagement-submit-card{display:grid;grid-template-columns:minmax(0,1fr) minmax(220px,.42fr);gap:1rem;align-items:center;padding:1.05rem 1.15rem}
.survey-engagement-submit-card p{margin:0;color:var(--survey-muted);font-size:.77rem;font-weight:600;line-height:1.6}

.survey-engagement-result-card{max-width:650px;margin:0 auto;padding:1.6rem;text-align:center}
.survey-engagement-success-icon,.survey-engagement-state-icon{display:flex;align-items:center;justify-content:center;width:4.5rem;height:4.5rem;margin:0 auto 1.15rem;border-radius:50%}
.survey-engagement-success-icon{background:#dcfce7;color:#21864a}
.survey-engagement-success-icon svg,.survey-engagement-state-icon svg{width:2rem;height:2rem}
.survey-engagement-state-icon--not-found{background:#eaf4ff;color:var(--survey-blue)}
.survey-engagement-state-icon--expired{background:#fff4df;color:var(--survey-orange)}
.survey-engagement-state-icon--inactive{background:#f3e8ff;color:#8b5cf6}
.survey-engagement-reward{position:relative;overflow:hidden;margin-bottom:1rem;padding:1.35rem;border-radius:1.1rem;background:linear-gradient(145deg,#ffc928,#ffc107,#ffb300);color:#0d47a1}
.survey-engagement-reward--voucher{background:linear-gradient(145deg,#eaf4ff,#fff,#fff8df);border:1px solid #dcebf8}
.survey-engagement-reward-label{display:block;margin-bottom:.55rem;font-size:.68rem;font-weight:900;letter-spacing:.12em;text-transform:uppercase}
.survey-engagement-reward strong{display:block;font-family:var(--font-display,'Bebas Neue',sans-serif);font-size:2.55rem;letter-spacing:.04em;line-height:1}
.survey-engagement-reward p{margin:.6rem auto 0;max-width:32rem;color:rgba(10,25,41,.68);font-size:.78rem;font-weight:650;line-height:1.55}
.survey-engagement-voucher-code{font-family:ui-monospace,SFMono-Regular,Menlo,monospace!important;font-size:1.45rem!important;letter-spacing:.14em!important;overflow-wrap:anywhere}
.survey-engagement-reward .survey-engagement-btn{margin-top:.9rem}
.survey-engagement-reward-note{margin-bottom:1rem;padding:1.1rem;border:1px solid var(--survey-border);border-radius:1rem;background:var(--survey-surface-soft);text-align:left}
.survey-engagement-reward-note h2{margin:0 0 .35rem;color:var(--survey-text);font-size:.9rem;font-weight:900}
.survey-engagement-reward-note p{margin:0;color:var(--survey-muted);font-size:.78rem;font-weight:600;line-height:1.6}
.survey-engagement-reward-note .survey-engagement-btn{margin-top:.85rem}
.survey-engagement-result-card>.survey-engagement-btn--home{margin-top:.35rem}

html.cbz-dark .survey-engagement{
  --survey-surface:#0d2034;
  --survey-surface-soft:#0b1c2e;
  --survey-surface-muted:#102b47;
  --survey-text:#f7fafc;
  --survey-muted:#a9bacb;
  --survey-border:rgba(148,163,184,.16);
  --survey-shadow:0 18px 46px rgba(0,0,0,.28);
  background:linear-gradient(180deg,#071525 0,#091a2a 22rem,#081522 48rem);
}
html.cbz-dark .survey-engagement-stepper{background:rgba(13,32,52,.97);border-color:var(--survey-border);box-shadow:0 12px 30px rgba(0,0,0,.2)}
html.cbz-dark .survey-engagement-step-number{background:#16324d;color:#94a8bb}
html.cbz-dark .survey-engagement-step-line{background:#1c344b}
html.cbz-dark .survey-engagement-card-icon,
html.cbz-dark .survey-engagement-question-number,
html.cbz-dark .survey-engagement-question-count{background:#102b47;color:#8ac3f8}
html.cbz-dark .survey-engagement-field input,
html.cbz-dark .survey-engagement-field select,
html.cbz-dark .survey-engagement-field textarea,
html.cbz-dark .survey-engagement-scale-choice>span,
html.cbz-dark .survey-engagement-option{background:#0b1c2e;border-color:rgba(148,163,184,.2);color:#dce7f1}
html.cbz-dark .survey-engagement-field input::placeholder,
html.cbz-dark .survey-engagement-field textarea::placeholder{color:#73879a}
html.cbz-dark .survey-engagement-question{border-color:rgba(148,163,184,.14)}
html.cbz-dark .survey-engagement-scale-choice:hover>span,
html.cbz-dark .survey-engagement-option:hover{background:#102b47;border-color:#4c9be8;color:#b8daf8}
html.cbz-dark .survey-engagement-scale-choice>input:checked+span{background:#1565c0;border-color:#4c9be8;color:#fff}
html.cbz-dark .survey-engagement-option:has(input:checked){background:#102b47;border-color:#4c9be8;color:#cbe7ff}
html.cbz-dark .survey-engagement-btn--ghost{background:#102b47;border-color:rgba(148,163,184,.18);color:#93c5fd}
html.cbz-dark .survey-engagement-alert--error{background:rgba(127,29,29,.25);border-color:rgba(248,113,113,.42);color:#fca5a5}
html.cbz-dark .survey-engagement-alert--success{background:rgba(20,83,45,.25);border-color:rgba(74,222,128,.3);color:#9ae6b4}
html.cbz-dark .survey-engagement-success-icon{background:rgba(22,101,52,.28);color:#86efac}
html.cbz-dark .survey-engagement-state-icon--not-found{background:#102b47;color:#93c5fd}
html.cbz-dark .survey-engagement-state-icon--expired{background:rgba(245,124,0,.18);color:#ffb45e}
html.cbz-dark .survey-engagement-state-icon--inactive{background:rgba(139,92,246,.18);color:#c4b5fd}
html.cbz-dark .survey-engagement-reward--voucher{background:linear-gradient(145deg,#102b47,#0d2034,#2a250c);border-color:rgba(148,163,184,.18);color:#f7fafc}
html.cbz-dark .survey-engagement-reward--voucher p{color:#a9bacb}
html.cbz-dark .survey-engagement-reward-note{background:#0b1c2e;border-color:var(--survey-border)}
html.cbz-dark .survey-engagement-points-policy{background:linear-gradient(135deg,rgba(120,53,15,.28),rgba(13,32,52,.96));border-color:rgba(251,146,60,.24);box-shadow:0 10px 26px rgba(0,0,0,.2)}
html.cbz-dark .survey-engagement-points-policy-icon{background:rgba(245,124,0,.16);color:#ffb45e}
html.cbz-dark .survey-engagement-reward-note--pending{background:linear-gradient(135deg,rgba(120,53,15,.2),#0b1c2e);border-color:rgba(251,146,60,.22)}
html.cbz-dark .survey-engagement-star{color:#53677a}

@media(max-width:900px){
  .survey-engagement-title{font-size:clamp(2.7rem,9vw,4.4rem)}
}

@media(max-width:720px){
  .survey-engagement-hero{padding:58px 0 118px}
  .survey-engagement-hero--compact{padding-bottom:108px}
  .survey-engagement-stage{margin-top:-70px;padding-bottom:56px}
  .survey-engagement-banner{border-radius:1.15rem}
  .survey-engagement-stepper{gap:.35rem;padding:.7rem .75rem;overflow-x:auto;scrollbar-width:none}
  .survey-engagement-stepper::-webkit-scrollbar{display:none}
  .survey-engagement-step{font-size:.68rem}
  .survey-engagement-step-number{width:1.55rem;height:1.55rem;flex-basis:1.55rem}
  .survey-engagement-card{padding:1.05rem}
  .survey-engagement-card-heading--questions{padding:1.05rem}
  .survey-engagement-question{padding:1.1rem 1.05rem}
  .survey-engagement-submit-card{grid-template-columns:1fr;padding:1rem}
  .survey-engagement-submit-card .survey-engagement-btn{width:100%}
  .survey-engagement-result-card{padding:1.25rem}
  .survey-engagement-scale-group{grid-template-columns:repeat(5,minmax(0,1fr))}
}

@media(max-width:480px){
  .survey-engagement-hero{padding-top:46px}
  .survey-engagement-eyebrow{font-size:.62rem}
  .survey-engagement-title{font-size:clamp(2.45rem,13vw,3.3rem)}
  .survey-engagement-lead{font-size:.86rem}
  .survey-engagement-meta{gap:.4rem}
  .survey-engagement-meta-chip{font-size:.65rem;padding:.34rem .6rem}
  .survey-engagement-step span:not(.survey-engagement-step-number){display:none}
  .survey-engagement-step-line{min-width:1.8rem}
  .survey-engagement-card-heading{align-items:flex-start}
  .survey-engagement-question-heading{gap:.65rem}
  .survey-engagement-question-number{width:2rem;height:2rem}
  .survey-engagement-star svg{width:1.85rem;height:1.85rem}
  .survey-engagement-voucher-code{font-size:1.2rem!important;letter-spacing:.1em!important}
}
