
:root{
  --hiro-background:#f5f7fb;
  --hiro-background-soft:#eef2ff;
  --hiro-foreground:#0f172a;
  --hiro-card:#ffffff;
  --hiro-muted:#64748b;
  --hiro-border:#e2e8f0;
  --hiro-border-strong:#cfd8e3;
  --hiro-primary:#ec1c78;
  --hiro-secondary:#6f3ff5;
  --hiro-accent:#5c63ff;
  --hiro-gradient:linear-gradient(135deg,#ec1c78 0%,#8b3dff 55%,#5c63ff 100%);
  --hiro-gradient-soft:linear-gradient(180deg,rgba(236,28,120,.08),rgba(92,99,255,.05));
  --hiro-shadow:0 10px 30px rgba(15,23,42,.08),0 2px 8px rgba(15,23,42,.04);
  --hiro-shadow-strong:0 18px 50px rgba(15,23,42,.12),0 6px 18px rgba(15,23,42,.06);
  --hiro-radius:24px;
}
.hiro-scope-app,.hiro-scope-app *{box-sizing:border-box}
.hiro-scope-app{
  font-family:"Plus Jakarta Sans",system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
  color:var(--hiro-foreground);
  background:
    radial-gradient(circle at top left, rgba(111,63,245,.08), transparent 24%),
    radial-gradient(circle at top right, rgba(236,28,120,.08), transparent 20%),
    var(--hiro-background);
  padding:56px 16px 72px;
  min-height:100vh;
}
.hiro-scope-wrap{max-width:1120px;margin:0 auto}
.hiro-scope-center{max-width:760px;margin:0 auto}
.hiro-logo{height:52px;display:block;margin:0 auto 30px}
.hiro-lead-header,.hiro-result-header{text-align:center;margin-bottom:34px}
.hiro-title{font-size:clamp(32px,4vw,46px);line-height:1.06;margin:0 0 12px;font-weight:900;letter-spacing:-.03em}
.hiro-subtitle{font-size:18px;color:var(--hiro-muted);margin:0;line-height:1.65}
.hiro-card,.hiro-section{
  background:rgba(255,255,255,.94);
  border:1px solid rgba(255,255,255,.65);
  border-radius:var(--hiro-radius);
  box-shadow:var(--hiro-shadow);
  backdrop-filter:blur(12px);
}
.hiro-card{padding:34px}
.hiro-form-grid{display:grid;gap:18px}
.hiro-field label{display:block;font-size:14px;font-weight:800;margin-bottom:8px;color:#334155}
.hiro-input{
  width:100%;height:54px;border:1px solid var(--hiro-border);border-radius:16px;padding:0 16px;font-size:16px;background:#fff;
  transition:border-color .2s ease, box-shadow .2s ease, transform .2s ease;
}
.hiro-input:hover{border-color:var(--hiro-border-strong)}
.hiro-input:focus{outline:none;border-color:var(--hiro-primary);box-shadow:0 0 0 4px rgba(236,28,120,.12)}
.hiro-error{font-size:12px;color:#dc2626;margin-top:6px}
.hiro-btn{
  appearance:none;-webkit-appearance:none;border:0;border-radius:16px;height:54px;padding:0 20px;font-size:16px;font-weight:900;cursor:pointer;
  transition:transform .2s ease, box-shadow .2s ease, border-color .2s ease, background .2s ease, color .2s ease;
  display:inline-flex;align-items:center;justify-content:center;gap:10px;text-decoration:none;opacity:1;
  -webkit-text-fill-color:currentColor;
}
.hiro-btn:hover{transform:translateY(-1px);opacity:1}
.hiro-btn-primary{background:var(--hiro-gradient);color:#fff;width:100%;box-shadow:0 14px 28px rgba(111,63,245,.22)}
.hiro-btn-primary:hover{box-shadow:0 18px 36px rgba(111,63,245,.28)}
.hiro-btn-outline{background:#fff;border:2px solid rgba(236,28,120,.85);color:var(--hiro-primary)}
.hiro-btn-outline:hover{background:#fff7fb;border-color:var(--hiro-primary);box-shadow:0 10px 22px rgba(236,28,120,.1)}
.hiro-btn-ghost{background:transparent;color:var(--hiro-muted);text-decoration:underline;height:auto;padding:0}
.hiro-btn span,.hiro-option-label,.hiro-option-mark{
  color:inherit;
  -webkit-text-fill-color:currentColor;
  opacity:1;
}
.hiro-progress{display:flex;gap:8px;margin-bottom:22px}
.hiro-progress span{flex:1;height:7px;border-radius:999px;background:#e8edf5}
.hiro-progress span.active{background:var(--hiro-gradient);box-shadow:0 8px 18px rgba(111,63,245,.16)}
.hiro-question-meta{font-size:14px;color:var(--hiro-muted);font-weight:800;margin-bottom:8px}
.hiro-question{font-size:clamp(30px,4vw,40px);line-height:1.1;font-weight:900;margin:0 0 28px;letter-spacing:-.03em}
.hiro-options{display:grid;gap:14px}
.hiro-option{
  appearance:none;-webkit-appearance:none;width:100%;text-align:left;padding:18px 20px;border-radius:20px;border:2px solid var(--hiro-border);background:#fff;
  display:flex;align-items:center;gap:14px;cursor:pointer;transition:border-color .2s ease, box-shadow .2s ease, background .2s ease, transform .15s ease;
  opacity:1; min-height:64px; color:var(--hiro-foreground); -webkit-text-fill-color:currentColor;
}
.hiro-option:hover{
  border-color:rgba(236,28,120,.5);
  box-shadow:0 12px 24px rgba(15,23,42,.06);
  background:#fff;
  color:var(--hiro-foreground);
  opacity:1;
}
.hiro-option.active{
  border-color:var(--hiro-primary);
  background:linear-gradient(180deg,rgba(236,28,120,.08),rgba(236,28,120,.03));
  box-shadow:0 16px 30px rgba(236,28,120,.12);
  color:var(--hiro-primary);
}
.hiro-option-mark{width:24px;height:24px;border-radius:999px;border:2px solid #c4c7cf;display:flex;align-items:center;justify-content:center;flex:0 0 24px;font-size:14px;background:#fff}
.hiro-option.active .hiro-option-mark{background:var(--hiro-primary);border-color:var(--hiro-primary);color:#fff}
.hiro-nav{display:flex;gap:14px;margin-top:28px}
.hiro-nav .hiro-btn-primary{flex:1}
.hiro-summary-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px;margin-bottom:28px}
.hiro-summary-card{
  text-align:center;background:linear-gradient(180deg,#fff, #fbfcff);border:1px solid rgba(111,63,245,.08);border-radius:24px;
  box-shadow:var(--hiro-shadow);padding:26px 22px;position:relative;overflow:hidden;
}
.hiro-summary-card:before{content:"";position:absolute;inset:0 0 auto 0;height:4px;background:var(--hiro-gradient)}
.hiro-summary-icon{font-size:28px;margin-bottom:10px}
.hiro-gradient-text{background:var(--hiro-gradient);-webkit-background-clip:text;background-clip:text;color:transparent}
.hiro-summary-value{font-size:36px;font-weight:900;line-height:1;margin-bottom:8px;letter-spacing:-.03em}
.hiro-section{padding:30px;margin-bottom:22px;position:relative;overflow:hidden}
.hiro-section:before{content:"";position:absolute;left:0;right:0;top:0;height:1px;background:linear-gradient(90deg,rgba(236,28,120,.2),rgba(92,99,255,.2))}
.hiro-section h3{margin:0 0 16px;font-size:22px;letter-spacing:-.02em}
.hiro-section p{margin:0;color:#334155;line-height:1.75}
.hiro-table-wrap{
  border:1px solid #e8edf4;border-radius:20px;overflow:hidden;background:#fff;box-shadow:inset 0 1px 0 rgba(255,255,255,.7)
}
.hiro-table{width:100%;border-collapse:separate;border-spacing:0;background:#fff}
.hiro-table th,.hiro-table td{padding:20px 24px;border-bottom:1px solid #eef2f7;font-size:15px;vertical-align:middle}
.hiro-table thead th{
  text-align:left;color:#64748b;background:linear-gradient(180deg,#f8fafc,#f2f6fb);font-size:13px;font-weight:900;letter-spacing:.04em;text-transform:uppercase
}
.hiro-table thead th:last-child,.hiro-table tbody td:last-child{width:160px;text-align:center}
.hiro-table td:first-child{line-height:1.55;color:#0f172a}
.hiro-table tbody tr{transition:background .2s ease}
.hiro-table tbody tr:nth-child(even){background:#fbfcff}
.hiro-table tbody tr:hover{background:#f9f5ff}
.hiro-table tbody tr:last-child{
  background:linear-gradient(90deg,rgba(236,28,120,.08),rgba(111,63,245,.06));
}
.hiro-table tbody tr:last-child td{font-weight:900}
.hiro-table tbody tr:last-child td:last-child{font-size:18px}
.hiro-tags{display:flex;flex-wrap:wrap;gap:10px}
.hiro-tag{
  display:inline-flex;padding:10px 14px;border-radius:999px;background:linear-gradient(180deg,rgba(236,28,120,.12),rgba(236,28,120,.08));
  color:var(--hiro-primary);font-size:12px;font-weight:900;border:1px solid rgba(236,28,120,.12)
}
.hiro-fixed-cta{
  position:sticky;bottom:0;background:rgba(255,255,255,.92);backdrop-filter:blur(14px);padding:16px;border-radius:24px;box-shadow:var(--hiro-shadow-strong);
  display:flex;gap:12px;margin-top:22px;border:1px solid rgba(255,255,255,.75)
}
.hiro-fixed-cta .hiro-btn{flex:1}
.hiro-status{display:none !important}
@media (max-width: 780px){
 .hiro-scope-app{padding:36px 14px 52px}
 .hiro-card,.hiro-section{padding:22px}
 .hiro-summary-grid{grid-template-columns:1fr}
 .hiro-nav,.hiro-fixed-cta{flex-direction:column}
 .hiro-table th,.hiro-table td{padding:16px 14px}
 .hiro-table thead th:last-child,.hiro-table tbody td:last-child{width:96px}
}

.hiro-option:focus,.hiro-option:active,.hiro-btn:focus,.hiro-btn:active{
  outline:none;
  opacity:1;
  -webkit-text-fill-color:currentColor;
}
.hiro-option:focus-visible,.hiro-btn:focus-visible{
  box-shadow:0 0 0 4px rgba(236,28,120,.14), 0 14px 26px rgba(15,23,42,.08);
}


.hiro-fixed-cta .hiro-btn,
.hiro-fixed-cta .hiro-btn:link,
.hiro-fixed-cta .hiro-btn:visited,
.hiro-fixed-cta .hiro-btn:hover,
.hiro-fixed-cta .hiro-btn:focus,
.hiro-fixed-cta .hiro-btn:active,
.hiro-nav .hiro-btn,
.hiro-nav .hiro-btn:link,
.hiro-nav .hiro-btn:visited,
.hiro-nav .hiro-btn:hover,
.hiro-nav .hiro-btn:focus,
.hiro-nav .hiro-btn:active,
.hiro-option,
.hiro-option:hover,
.hiro-option:focus,
.hiro-option:active,
.hiro-option .hiro-option-label,
.hiro-option:hover .hiro-option-label,
.hiro-option:focus .hiro-option-label,
.hiro-option:active .hiro-option-label{
  text-decoration:none !important;
  opacity:1 !important;
  visibility:visible !important;
  filter:none !important;
  -webkit-text-fill-color:currentColor !important;
}

.hiro-fixed-cta{overflow:visible}
.hiro-fixed-cta .hiro-btn-outline{
  background:#fff !important;
  color:var(--hiro-primary) !important;
  box-shadow:none !important;
}
.hiro-fixed-cta .hiro-btn-outline:hover,
.hiro-fixed-cta .hiro-btn-outline:focus,
.hiro-fixed-cta .hiro-btn-outline:active{
  background:#fff7fb !important;
  color:var(--hiro-primary) !important;
  border-color:var(--hiro-primary) !important;
  box-shadow:0 10px 22px rgba(236,28,120,.10) !important;
}
