:root{
  --bg:#080b12;
  --panel:#111827;
  --panel-2:#172033;
  --text:#f8fafc;
  --muted:#9ca3af;
  --line:#273244;
  --accent:#f5b642;
  --accent-2:#ffe1a1;
  --good:#22c55e;
  --mid:#f59e0b;
  --low:#ef4444;
  --white:#ffffff;
  --shadow:0 24px 80px rgba(0,0,0,.32);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth}
body{margin:0;font-family:Inter,Segoe UI,Roboto,Arial,sans-serif;color:var(--text);background:var(--bg);line-height:1.5}
a{color:inherit;text-decoration:none}
input,select,textarea{width:100%;border:1px solid rgba(255,255,255,.14);border-radius:14px;padding:13px 14px;background:rgba(255,255,255,.06);color:var(--text);font:inherit;outline:none}
select option{color:#111827;background:#fff}
textarea{resize:vertical;min-height:90px}
label{display:block;color:#dbe5f1;font-weight:650;font-size:.93rem}
label input,label select,label textarea{margin-top:7px}
button{font:inherit}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid rgba(255,255,255,.16);border-radius:999px;padding:11px 18px;background:rgba(255,255,255,.06);color:var(--text);font-weight:800;cursor:pointer;transition:.2s ease}
.btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.1)}
.btn.primary{background:linear-gradient(135deg,var(--accent),#ffcf70);color:#171717;border-color:transparent}
.btn.ghost{background:transparent}.btn.small{padding:7px 12px;font-size:.85rem}.btn.large{padding:15px 24px;font-size:1rem}
.muted{color:var(--muted)}.lead{color:#dbe5f1;font-size:1.05rem}.eyebrow{letter-spacing:.16em;text-transform:uppercase;color:var(--accent-2);font-size:.75rem;font-weight:900}.brand-mark{width:58px;height:58px;border-radius:18px;background:linear-gradient(135deg,var(--accent),#ffdf9a);display:grid;place-items:center;color:#111;font-weight:950;font-size:1.25rem;margin-bottom:18px}.code-inline{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;background:rgba(245,182,66,.14);color:#ffd787;border:1px solid rgba(245,182,66,.3);padding:5px 8px;border-radius:9px;white-space:nowrap}
.install-bg,.public-bg{min-height:100vh;background:radial-gradient(circle at top left,rgba(245,182,66,.22),transparent 34%),radial-gradient(circle at bottom right,rgba(34,197,94,.12),transparent 32%),var(--bg)}
.install-card{width:min(760px,92vw);margin:6vh auto;background:rgba(17,24,39,.92);border:1px solid rgba(255,255,255,.12);border-radius:28px;padding:34px;box-shadow:var(--shadow)}.login-card{width:min(480px,92vw)}.install-card h1{font-size:clamp(2rem,5vw,3.2rem);line-height:1.02;margin:0 0 10px}.stacked-form{display:grid;gap:16px;margin-top:22px}.form-grid{display:grid;gap:14px}.form-grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.checkline{display:flex;align-items:center;gap:10px}.checkline input{width:auto;margin:0}.notice{padding:13px 15px;border-radius:16px;margin:16px 0;font-weight:700}.notice.success{background:rgba(34,197,94,.14);border:1px solid rgba(34,197,94,.38);color:#bbf7d0}.notice.error{background:rgba(239,68,68,.14);border:1px solid rgba(239,68,68,.36);color:#fecaca}.notice.warning{background:rgba(245,158,11,.14);border:1px solid rgba(245,158,11,.36);color:#fde68a}
.public-header,.survey-header{display:flex;justify-content:space-between;align-items:center;padding:22px min(5vw,64px);position:relative;z-index:1}.brand,.admin-brand{display:flex;align-items:center;gap:12px}.brand span,.admin-brand span{width:44px;height:44px;border-radius:14px;background:linear-gradient(135deg,var(--accent),#ffdf9a);color:#111;display:grid;place-items:center;font-weight:950}.brand b,.admin-brand b{font-size:1rem}.public-header a{color:#fef3c7;font-weight:750}.hero-wrap{min-height:calc(100vh - 92px);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(300px,.8fr);gap:24px;align-items:center;width:min(1180px,92vw);margin:0 auto;padding:30px 0 70px}.hero-wrap.single{grid-template-columns:1fr}.hero-card,.side-panel,.card,.survey-card{background:rgba(17,24,39,.9);border:1px solid rgba(255,255,255,.12);border-radius:30px;padding:34px;box-shadow:var(--shadow)}.hero-card h1{font-size:clamp(2.6rem,6vw,5rem);line-height:.96;margin:12px 0 18px}.hero-card p{font-size:1.12rem;color:#d8e1ed;max-width:740px}.hero-card.center{text-align:center;margin:0 auto;width:min(780px,100%)}.hero-card.center .brand-mark{margin-left:auto;margin-right:auto}.side-panel{align-self:stretch;display:flex;flex-direction:column;justify-content:center}.side-panel h2{margin-top:0}.side-panel li{margin:14px 0;color:#dbe5f1}.access-form{margin-top:26px}.access-form div{display:flex;gap:12px;margin-top:8px}.access-form input{text-transform:uppercase}
.survey-bg{min-height:100vh;background:linear-gradient(180deg,#070a11,#121928)}.survey-main{width:min(980px,92vw);margin:0 auto;padding:15px 0 70px}.survey-card h1{font-size:clamp(2rem,5vw,3.8rem);line-height:1.04;margin:10px 0 12px}.privacy-note{background:rgba(245,182,66,.12);border:1px solid rgba(245,182,66,.27);color:#fdecc3;padding:13px 15px;border-radius:18px;margin:20px 0}.question-block,.form-section{padding:24px 0;border-top:1px solid rgba(255,255,255,.1)}.question-block h2,.form-section h2{font-size:1.3rem;margin:0 0 16px}.scale-labels{display:flex;justify-content:space-between;color:#b6c1cf;font-size:.86rem;margin-bottom:10px}.scale-labels span:last-child{text-align:right}.nps-scale{display:grid;grid-template-columns:repeat(11,1fr);gap:8px}.score-option input{position:absolute;opacity:0;pointer-events:none}.score-option span{height:54px;border-radius:16px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.06);display:grid;place-items:center;font-weight:950;font-size:1.08rem;cursor:pointer;transition:.2s ease}.score-option:hover span,.score-option.selected span{background:linear-gradient(135deg,var(--accent),#ffdf9a);color:#111;transform:translateY(-2px)}.followup-box{background:rgba(255,255,255,.035);border-radius:20px;padding:20px;margin-bottom:22px}.followup-fields{margin-top:14px}
.admin-body{background:#0a0f1a}.admin-header{position:sticky;top:0;z-index:5;background:rgba(10,15,26,.9);backdrop-filter:blur(18px);border-bottom:1px solid rgba(255,255,255,.08);display:flex;justify-content:space-between;align-items:center;padding:14px min(4vw,52px)}.admin-header nav{display:flex;gap:8px;flex-wrap:wrap}.admin-header nav a{padding:9px 12px;border-radius:999px;color:#dbeafe;font-weight:750}.admin-header nav a:hover{background:rgba(255,255,255,.08)}.admin-main{width:min(1280px,94vw);margin:0 auto;padding:34px 0 70px}.admin-title-row{display:flex;justify-content:space-between;gap:18px;align-items:center;margin-bottom:24px}.admin-title-row h1{margin:4px 0 0;font-size:clamp(2rem,4vw,3.4rem);line-height:1}.admin-footer{text-align:center;color:#748094;border-top:1px solid rgba(255,255,255,.08);padding:26px}.card{border-radius:24px;padding:24px;margin-bottom:22px}.card h2{margin:0 0 16px}.filter-card{display:grid;grid-template-columns:repeat(7,minmax(120px,1fr));gap:13px;align-items:end}.kpi-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin:20px 0}.kpi{margin:0}.kpi span{display:block;color:#9fb0c5;font-weight:800}.kpi strong{display:block;font-size:2.4rem;line-height:1;margin:10px 0}.kpi em{font-style:normal;color:#93a4b8;font-size:.88rem}.nps-number{font-size:4rem!important}.good-text{color:#86efac}.mid-text{color:#fcd34d}.low-text{color:#fca5a5}.classification-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px}.classification{border-radius:22px;padding:22px;border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045)}.classification b{font-size:2.4rem;display:block}.classification span{display:block;font-weight:900;font-size:1.1rem}.classification em{font-style:normal;color:#9fb0c5}.classification.promoter{border-color:rgba(34,197,94,.36)}.classification.passive{border-color:rgba(245,158,11,.36)}.classification.detractor{border-color:rgba(239,68,68,.36)}.distribution-grid{display:grid;grid-template-columns:repeat(11,1fr);gap:9px;align-items:end;min-height:180px}.dist-col{text-align:center;display:grid;gap:8px;align-items:end}.dist-bar{background:linear-gradient(180deg,rgba(245,182,66,.95),rgba(245,182,66,.35));border:1px solid rgba(245,182,66,.42);border-radius:12px 12px 4px 4px;display:flex;align-items:flex-start;justify-content:center;padding-top:6px;color:#111;font-weight:950}.dist-col b{font-size:.9rem;color:#cbd5e1}.scale-legend{display:flex;justify-content:space-between;color:#9fb0c5;margin-top:10px}.segment-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.segment-card{background:rgba(255,255,255,.035);border:1px solid rgba(255,255,255,.08);border-radius:20px;padding:18px}.segment-card h3{margin:0 0 12px}.score-row{display:grid;grid-template-columns:minmax(0,1fr) minmax(100px,.9fr) 70px;gap:14px;align-items:center;padding:14px 0;border-bottom:1px solid rgba(255,255,255,.08)}.score-row.compact{grid-template-columns:minmax(0,1fr) 55px}.score-row:last-child{border-bottom:0}.score-row span{display:block;color:#8fa0b6;font-size:.86rem}.bar{height:12px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}.bar i{display:block;height:100%;background:linear-gradient(90deg,var(--accent),#ffe2a2);border-radius:999px}.feedback-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:18px}.section-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.keyword-cloud{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0 16px}.keyword-cloud span{padding:7px 10px;border-radius:999px;background:rgba(255,255,255,.07);color:#dbeafe;font-size:.86rem}.keyword-cloud b{color:#ffd787}blockquote{margin:12px 0;padding:14px 16px;border-left:4px solid rgba(245,182,66,.7);background:rgba(255,255,255,.045);border-radius:0 16px 16px 0;color:#e5e7eb}.setup-grid{display:grid;grid-template-columns:.8fr 1.2fr;gap:18px}.table-wrap{overflow:auto}table{width:100%;border-collapse:collapse;min-width:760px}th,td{padding:13px 12px;border-bottom:1px solid rgba(255,255,255,.08);text-align:left;vertical-align:top}th{color:#b8c6d8;font-size:.82rem;text-transform:uppercase;letter-spacing:.05em}td{color:#e5e7eb}.pill{display:inline-flex;border-radius:999px;padding:5px 9px;font-weight:850;font-size:.82rem}.pill.good{background:rgba(34,197,94,.14);color:#bbf7d0}.pill.mid{background:rgba(245,158,11,.14);color:#fde68a}.pill.low{background:rgba(239,68,68,.14);color:#fecaca}.edit-row td{padding-top:0;background:rgba(255,255,255,.02)}details summary{cursor:pointer;color:#ffd787;font-weight:800}.inline-edit{margin-top:14px;padding:14px;background:rgba(255,255,255,.035);border-radius:18px}
@media (max-width:1050px){.hero-wrap,.setup-grid,.feedback-grid,.segment-grid{grid-template-columns:1fr}.filter-card{grid-template-columns:repeat(2,minmax(0,1fr))}.kpi-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.classification-grid{grid-template-columns:1fr}.admin-title-row{align-items:flex-start;flex-direction:column}.nps-scale{grid-template-columns:repeat(6,1fr)}.form-grid.two,.form-grid.three{grid-template-columns:1fr}}
@media (max-width:640px){.public-header,.survey-header,.admin-header{align-items:flex-start;flex-direction:column;gap:14px}.admin-header nav{width:100%}.hero-card,.side-panel,.survey-card,.card,.install-card{padding:22px;border-radius:22px}.hero-card h1{font-size:2.55rem}.access-form div{flex-direction:column}.filter-card,.kpi-grid{grid-template-columns:1fr}.nps-scale{grid-template-columns:repeat(4,1fr)}.score-option span{height:48px}.distribution-grid{gap:4px}.dist-bar span{font-size:.75rem}.section-head{align-items:flex-start;flex-direction:column}}
