/* ── BASE ── */
#ss-survey-wrap{max-width:860px;margin:0 auto;font-family:"Nunito","Segoe UI",Arial,sans-serif;color:#1e293b;line-height:1.6;}

/* ── HERO ── */
.ss-hero{background:linear-gradient(135deg,#0d1b3e 0%,#1e3a8a 60%,#1d4ed8 100%);padding:48px 32px;text-align:center;border-radius:20px;margin-bottom:24px;}
.ss-hero-badge{display:inline-block;background:#fbbf24;color:#0d1b3e;font-size:11px;font-weight:800;letter-spacing:2px;text-transform:uppercase;padding:6px 18px;border-radius:20px;margin-bottom:16px;}
.ss-hero-title{font-size:clamp(1.6rem,4vw,2.4rem);font-weight:900;color:#fff;margin:0 0 10px;line-height:1.2;}
.ss-hero-title span{color:#fbbf24;}
.ss-hero-intro{color:rgba(255,255,255,.75);font-size:.88rem;max-width:600px;margin:0 auto 20px;line-height:1.7;}
.ss-pillars{display:flex;gap:10px;justify-content:center;flex-wrap:wrap;}
.ss-ptag{padding:5px 16px;border-radius:20px;font-size:.76rem;font-weight:800;}
.ss-pt-a{background:#eff6ff;color:#1e40af;}
.ss-pt-b{background:#f0fdf4;color:#065f46;}
.ss-pt-c{background:#fff7ed;color:#92400e;}

/* ── SUCCESS ── */
.ss-success{background:#f0fdf4;border:2px solid #10b981;border-radius:16px;padding:40px;text-align:center;margin-bottom:24px;}
.ss-success h2{color:#065f46;font-size:1.4rem;font-weight:800;margin:0 0 8px;}
.ss-success p{color:#374151;font-size:.9rem;margin:4px 0;}

/* ── PARTS ── */
.ss-part{background:#fff;border:1.5px solid #e2e8f0;border-radius:16px;margin-bottom:20px;overflow:hidden;}
.ss-part-header{display:flex;align-items:flex-start;gap:16px;padding:20px 24px;border-bottom:2px solid #f1f5f9;}
.ss-part-header h2{font-size:1rem;font-weight:800;color:#0d1b3e;margin:0 0 3px;}
.ss-part-header p{font-size:.8rem;color:#64748b;margin:0;}
.ss-part-letter{width:46px;height:46px;border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;font-weight:900;flex-shrink:0;background:#f1f5f9;color:#0d1b3e;}
.ss-ph-demog .ss-part-letter{background:#f8fafc;color:#475569;}
.ss-ph-a{background:linear-gradient(to right,#eff6ff,#fff);}
.ss-pl-a{background:#eff6ff;color:#1e40af;}
.ss-ph-b{background:linear-gradient(to right,#f0fdf4,#fff);}
.ss-pl-b{background:#f0fdf4;color:#065f46;}
.ss-ph-c{background:linear-gradient(to right,#fff7ed,#fff);}
.ss-pl-c{background:#fff7ed;color:#92400e;}
.ss-ph-open{background:linear-gradient(to right,#faf5ff,#fff);}
.ss-pl-open{background:#faf5ff;color:#7c3aed;font-size:.9rem;}

/* ── QUESTION BLOCKS ── */
.ss-questions{padding:8px 0;}
.ss-q-block{padding:18px 24px;border-bottom:1px solid #f1f5f9;}
.ss-q-block:last-child{border-bottom:none;}
.ss-q-label{font-size:.88rem;font-weight:800;color:#0d1b3e;margin-bottom:12px;display:flex;align-items:center;gap:8px;flex-wrap:wrap;}
.ss-qn{display:inline-flex;align-items:center;justify-content:center;background:#0d1b3e;color:#fbbf24;border-radius:8px;padding:2px 8px;font-size:.72rem;font-weight:900;flex-shrink:0;}
.ss-opt-tag{background:#f1f5f9;color:#475569;border-radius:6px;padding:2px 8px;font-size:.7rem;font-weight:600;}
.ss-q-sublabel{font-size:.82rem;color:#374151;margin:-6px 0 12px;font-style:italic;}

/* ── RADIO CARDS ── */
.ss-radio-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:8px;}
.ss-radio-card{cursor:pointer;display:block;}
.ss-radio-card input{display:none;}
.ss-radio-card span{display:block;border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 14px;font-size:.84rem;font-weight:600;color:#374151;transition:all .2s;background:#f8fafc;text-align:center;}
.ss-radio-card input:checked+span{border-color:#1e40af;background:#eff6ff;color:#1e40af;font-weight:800;}
.ss-radio-card:hover span{border-color:#93c5fd;background:#f0f9ff;}

/* ── CHECKBOX CARDS ── */
.ss-check-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;}
.ss-check-wide{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));}
.ss-check-card{cursor:pointer;display:block;}
.ss-check-card input{display:none;}
.ss-check-card span{display:block;border:1.5px solid #e2e8f0;border-radius:10px;padding:10px 14px;font-size:.84rem;font-weight:600;color:#374151;transition:all .2s;background:#f8fafc;text-align:center;}
.ss-check-card input:checked+span{border-color:#065f46;background:#f0fdf4;color:#065f46;font-weight:800;}
.ss-check-none input:checked+span{border-color:#94a3b8;background:#f1f5f9;color:#475569;}

/* ── LIKERT TABLE ── */
.ss-likert-table{border:1.5px solid #e2e8f0;border-radius:12px;overflow:hidden;}
.ss-lt-header{display:grid;grid-template-columns:1fr repeat(5,52px);background:#f8fafc;border-bottom:2px solid #e2e8f0;}
.ss-lt-header .ss-lt-col{padding:10px 4px;text-align:center;font-size:.72rem;font-weight:800;color:#64748b;}
.ss-lt-row{display:grid;grid-template-columns:1fr repeat(5,52px);border-bottom:1px solid #f1f5f9;align-items:center;transition:background .15s;}
.ss-lt-row:last-child{border-bottom:none;}
.ss-lt-row:hover{background:#fafbfc;}
.ss-lt-question{padding:12px 16px;font-size:.84rem;color:#1e293b;font-weight:600;}
.ss-lt-col{display:flex;align-items:center;justify-content:center;padding:10px 4px;}
.ss-lt-radio{cursor:pointer;}
.ss-lt-radio input{display:none;}
.ss-lt-radio span{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:2px solid #e2e8f0;border-radius:50%;background:#f8fafc;transition:all .2s;}
.ss-lt-radio:hover span{border-color:#93c5fd;background:#eff6ff;}
.ss-lt-radio input:checked+span{border-color:#1e40af;background:#1e40af;}
.ss-lt-b input:checked+span{border-color:#065f46;background:#065f46;}
.ss-lt-c input:checked+span{border-color:#92400e;background:#92400e;}

/* ── SEMANTIC DIFFERENTIAL ── */
.ss-semantic-list{display:flex;flex-direction:column;gap:16px;}
.ss-sem-row{display:flex;align-items:center;gap:16px;padding:12px 0;border-bottom:1px solid #f1f5f9;}
.ss-sem-row:last-child{border-bottom:none;}
.ss-sem-left{font-size:.84rem;font-weight:700;color:#991b1b;width:120px;text-align:right;flex-shrink:0;}
.ss-sem-right{font-size:.84rem;font-weight:700;color:#065f46;width:120px;flex-shrink:0;}
.ss-sem-scale{display:flex;gap:12px;align-items:center;flex:1;justify-content:center;}
.ss-sem-opt{cursor:pointer;}
.ss-sem-opt input{display:none;}
.ss-sem-dot{display:block;width:28px;height:28px;border:2px solid #e2e8f0;border-radius:50%;background:#f8fafc;transition:all .2s;}
.ss-sem-opt:hover .ss-sem-dot{border-color:#93c5fd;background:#eff6ff;}
.ss-sem-opt input:checked+.ss-sem-dot{border-color:#1e40af;background:#1e40af;}

/* ── RANKING ── */
.ss-ranking-list{display:flex;flex-direction:column;gap:10px;}
.ss-rank-row{display:flex;align-items:center;gap:16px;background:#f8fafc;border:1.5px solid #e2e8f0;border-radius:10px;padding:12px 16px;}
.ss-rank-label{flex:1;font-size:.86rem;font-weight:600;color:#1e293b;}
.ss-rank-select{border:1.5px solid #e2e8f0;border-radius:8px;padding:6px 12px;font-size:.86rem;font-weight:700;color:#0d1b3e;background:#fff;cursor:pointer;min-width:70px;}
.ss-rank-note{display:block;margin-top:10px;font-size:.74rem;color:#92400e;font-style:italic;}

/* ── NPS ── */
.ss-nps-scale{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px;}
.ss-nps-opt{cursor:pointer;flex:1;min-width:44px;}
.ss-nps-opt input{display:none;}
.ss-nps-opt span{display:flex;align-items:center;justify-content:center;height:44px;border:2px solid #e2e8f0;border-radius:10px;font-size:.95rem;font-weight:800;transition:all .2s;background:#f8fafc;}
.ss-nps-low input:checked+span{border-color:#dc2626;background:#dc2626;color:#fff;}
.ss-nps-mid input:checked+span{border-color:#f59e0b;background:#f59e0b;color:#fff;}
.ss-nps-high input:checked+span{border-color:#16a34a;background:#16a34a;color:#fff;}
.ss-nps-opt:hover span{border-color:#93c5fd;background:#eff6ff;}
.ss-nps-labels{display:flex;justify-content:space-between;font-size:.75rem;color:#64748b;margin-top:6px;}

/* ── OPEN QUESTIONS ── */
.ss-open-label{display:flex;align-items:flex-start;gap:10px;font-size:.86rem;font-weight:600;color:#1e293b;margin-bottom:10px;line-height:1.5;}
.ss-open-num{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#faf5ff;color:#7c3aed;border-radius:8px;font-weight:900;font-size:.8rem;flex-shrink:0;}
.ss-q-block textarea{width:100%;border:1.5px solid #e2e8f0;border-radius:10px;padding:12px;font-family:inherit;font-size:.85rem;color:#1e293b;outline:none;resize:vertical;transition:border-color .2s;box-sizing:border-box;}
.ss-q-block textarea:focus{border-color:#7c3aed;box-shadow:0 0 0 3px rgba(124,58,237,.1);}

/* ── SUBMIT ── */
.ss-submit-wrap{background:#fff;border:1.5px solid #e2e8f0;border-radius:16px;padding:24px;margin-bottom:20px;}
.ss-progress-row{display:flex;align-items:center;gap:14px;margin-bottom:14px;font-size:.82rem;color:#64748b;font-weight:600;}
.ss-pbar{flex:1;height:8px;background:#f1f5f9;border-radius:4px;overflow:hidden;}
.ss-pfill{height:100%;background:linear-gradient(90deg,#1e40af,#10b981);border-radius:4px;transition:width .4s;width:0%;}
.ss-consent-label{display:flex;align-items:flex-start;gap:8px;background:#f0fdf4;border:1.5px solid #bbf7d0;border-radius:10px;padding:12px;font-size:.82rem;color:#065f46;font-weight:600;line-height:1.5;margin-bottom:14px;cursor:pointer;}
.ss-consent-label input{width:17px;height:17px;accent-color:#10b981;margin-top:2px;flex-shrink:0;}
.ss-btn{width:100%;background:#0d1b3e;color:#fbbf24;border:none;border-radius:12px;padding:16px;font-family:inherit;font-size:1rem;font-weight:800;cursor:pointer;transition:background .2s,transform .1s;}
.ss-btn:hover{background:#1e3a8a;transform:translateY(-1px);}
.ss-error{background:#fef2f2;border:1.5px solid #fecaca;border-radius:10px;padding:12px;color:#991b1b;font-size:.84rem;margin-top:12px;}

@media(max-width:600px){
  .ss-hero{padding:28px 16px;}
  .ss-lt-header,.ss-lt-row{grid-template-columns:1fr repeat(5,38px);}
  .ss-lt-radio span{width:26px;height:26px;}
  .ss-check-grid{grid-template-columns:1fr 1fr;}
  .ss-sem-left,.ss-sem-right{width:80px;font-size:.76rem;}
  .ss-nps-opt span{height:36px;font-size:.82rem;}
  .ss-radio-grid{grid-template-columns:1fr 1fr;}
}
/* ── TOKEN GATE ── */
.ss-gate-box{border-radius:16px;padding:36px;text-align:center;margin-top:0;}
.ss-gate-info{background:#eff6ff;border:2px solid #bfdbfe;}
.ss-gate-error{background:#fef2f2;border:2px solid #fecaca;}
.ss-gate-used{background:#f0fdf4;border:2px solid #bbf7d0;}
.ss-gate-icon{font-size:52px;margin-bottom:14px;}
.ss-gate-box h2{font-size:1.3rem;font-weight:800;color:#0d1b3e;margin:0 0 10px;}
.ss-gate-box p{font-size:.88rem;color:#374151;margin:6px 0;line-height:1.6;}
.ss-gate-steps{background:rgba(255,255,255,.6);border-radius:12px;padding:16px;margin:18px 0;text-align:left;display:flex;flex-direction:column;gap:10px;}
.ss-gate-step{display:flex;align-items:center;gap:12px;font-size:.85rem;color:#1e293b;font-weight:600;}
.ss-gate-step span{display:inline-flex;align-items:center;justify-content:center;width:26px;height:26px;background:#1e40af;color:#fff;border-radius:50%;font-size:.75rem;font-weight:900;flex-shrink:0;}
.ss-gate-contact{color:#64748b;font-size:.82rem;margin-top:16px;}
