@font-face{font-family:Vazirmatn;src:url('/static/fonts/Vazirmatn.woff2') format('woff2');font-display:swap}
:root{--blue:#087df2;--cyan:#00c6ff;--ink:#15243a;--muted:#78869a;--line:#e7edf5;--soft:#f5f8fc;--shadow:0 24px 70px rgba(24,70,120,.12)}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:#f4f8fd;color:var(--ink);font-family:Vazirmatn,Tahoma,sans-serif;font-size:14px;line-height:1.8}
button,input,textarea{font:inherit}.survey-shell{max-width:760px;margin:auto;padding:24px 18px 30px}.hero{position:relative;overflow:hidden;text-align:center;color:#fff;padding:38px 22px 74px;border-radius:28px;background:linear-gradient(135deg,#0072ff 0%,#00c6ff 100%);box-shadow:0 18px 45px rgba(0,114,255,.22)}
.hero:before,.hero:after{content:"";position:absolute;border:1px solid rgba(255,255,255,.2);border-radius:50%;width:310px;height:310px;pointer-events:none}.hero:before{top:-230px;right:-100px}.hero:after{bottom:-260px;left:-100px}
.brand-mark{width:42px;height:42px;border-radius:14px;background:#fff;color:#087df2;display:grid;place-items:center;font-weight:900;font-size:24px;margin:0 auto 12px;box-shadow:0 8px 24px #005ac455}
.eyebrow{font-size:10px;letter-spacing:2px;font-weight:800;opacity:.8}.hero h1{font-size:clamp(25px,5vw,36px);line-height:1.5;margin:10px 0 2px;font-weight:850}.hero p{margin:0;color:#eaf7ff;font-size:14px}.hero-line{height:4px;width:48px;background:#fff;border-radius:9px;margin:20px auto 0}
.form-card{position:relative;margin:-42px 12px 0;background:#fff;border:1px solid #edf2f8;border-radius:24px;padding:30px 32px;box-shadow:var(--shadow)}
.form-intro{padding-bottom:18px;border-bottom:1px solid var(--line)}.step-pill{display:inline-flex;padding:4px 11px;border-radius:20px;background:#eaf5ff;color:#087df2;font-size:11px;font-weight:800}.form-intro h2{font-size:22px;margin:10px 0 0}.form-intro p{color:var(--muted);margin:3px 0 0;font-size:13px}
.optional-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;padding:20px 0 4px}.optional-grid label,.login-card label{display:block;font-weight:700;font-size:13px}.optional-grid small,.comment-label small{font-weight:400;color:#98a5b5;margin-right:5px}
input:not([type=radio]),textarea{width:100%;border:1px solid var(--line);background:#fbfcfe;border-radius:12px;padding:12px 13px;margin-top:7px;outline:none;transition:.2s;color:var(--ink)}input:focus,textarea:focus{border-color:#55a9ff;box-shadow:0 0 0 3px #087df214;background:#fff}
.question{padding:22px 0;border-bottom:1px solid var(--line)}.q-heading{display:flex;align-items:flex-start;gap:12px;margin-bottom:15px}.q-number{display:grid;place-items:center;flex:0 0 36px;height:36px;border-radius:12px;color:#087df2;background:#eaf5ff;font-weight:850;font-size:12px}.q-heading h3{font-size:15px;line-height:1.7;margin:0 0 2px}.q-heading small{color:#9aa7b7;font-size:11px}
.options{display:flex;flex-wrap:wrap;gap:8px}.option{cursor:pointer;position:relative}.option input,.nps input{position:absolute;opacity:0;pointer-events:none}.option span{display:block;border:1px solid var(--line);border-radius:11px;padding:8px 13px;background:#fff;color:#59697d;font-size:12px;transition:.18s}.option input:checked+span{background:#eaf5ff;border-color:#168bff;color:#006bd8;font-weight:800;box-shadow:0 0 0 2px #168bff12}.option:focus-within span{outline:2px solid #168bff}
.rating-options{gap:7px}.rating-options .option{flex:1;min-width:76px;text-align:center}.rating-options .option span{padding:10px 5px}
.nps{display:grid;grid-template-columns:repeat(11,minmax(0,1fr));gap:5px}.nps label{cursor:pointer}.nps span{display:grid;place-items:center;height:39px;border:1px solid var(--line);border-radius:10px;font-weight:800;color:#52657c;background:#fff}.nps input:checked+span{background:linear-gradient(135deg,#0072ff,#00c6ff);color:#fff;border-color:transparent}.nps-labels{display:flex;justify-content:space-between;color:#9aa7b7;font-size:10px;margin-top:7px}
.comment-label{font-weight:800}.comment-label small{font-weight:400}textarea{resize:vertical;min-height:90px}.submit-btn{border:0;width:100%;margin-top:22px;padding:14px 18px;border-radius:14px;background:linear-gradient(135deg,#0072ff 0%,#00c6ff 100%);color:#fff;font-weight:850;display:flex;align-items:center;justify-content:space-between;cursor:pointer;box-shadow:0 12px 24px #087df22c;transition:transform .2s,box-shadow .2s}.submit-btn:hover{transform:translateY(-2px);box-shadow:0 16px 28px #087df23d}.submit-btn:disabled{opacity:.65;cursor:wait;transform:none}.submit-btn b{font-size:20px}.privacy-note{text-align:center;color:#a1adbb;font-size:10px;margin:12px 0 0}.form-message{display:none;padding:12px;border-radius:12px;margin-top:14px;font-size:13px}.form-message.error{display:block;background:#fff0f0;color:#b42318}.form-message.success{display:block;background:#eafaf1;color:#087443}
footer{text-align:center;color:#99a6b6;font-size:11px;padding:24px 0}footer span{padding:0 6px;color:#39a2ff}
.center-card,.login-card{max-width:430px;margin:12vh auto;background:#fff;padding:34px;border-radius:24px;box-shadow:var(--shadow);text-align:center}.success-icon{width:58px;height:58px;border-radius:50%;display:grid;place-items:center;background:#e8f9f0;color:#15945b;font-size:30px;margin:auto}.center-card p{color:var(--muted)}.link-btn{text-decoration:none}
.login-wrap{padding:20px}.login-card{text-align:right}.login-card h1{font-size:24px;margin:0 0 20px}.login-card .brand-mark{margin:0 0 12px}.login-card label{margin:15px 0}.alert{background:#fff0f0;color:#b42318;padding:10px;border-radius:10px}
.admin-shell{max-width:1200px;margin:auto;padding:32px 22px}.admin-top{display:flex;align-items:center;justify-content:space-between;margin-bottom:28px}.admin-top h1{margin:3px 0;font-size:28px}.admin-top p,.section-head p{margin:0;color:var(--muted)}.admin-top .eyebrow{color:#168bff}.ghost-btn,.export-btn{border:1px solid var(--line);border-radius:11px;padding:9px 16px;background:#fff;color:#42536a;text-decoration:none;cursor:pointer}
.stats-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.stat-card{background:#fff;border:1px solid var(--line);border-radius:17px;padding:19px;box-shadow:0 8px 25px #24466b08}.stat-card small,.stat-card span{display:block;color:var(--muted)}.stat-card strong{display:block;font-size:32px;color:#087df2;line-height:1.5}.section-head{display:flex;justify-content:space-between;align-items:center;margin:32px 0 13px}.section-head h2{font-size:18px;margin:0}.table-wrap{overflow:auto;background:#fff;border:1px solid var(--line);border-radius:16px}table{width:100%;border-collapse:collapse;white-space:nowrap;font-size:12px}th,td{text-align:right;padding:13px 15px;border-bottom:1px solid #eff2f6}th{background:#f8fafd;color:#718096;font-weight:800}td{color:#34445a}.comment-cell{max-width:220px;white-space:normal}.empty{text-align:center;color:#9aa7b7;padding:28px}.status{padding:4px 9px;border-radius:20px;font-size:10px}.status.done{background:#e8f8ef;color:#13824e}.status.pending{background:#fff5df;color:#9b6900}
@media(max-width:640px){.survey-shell{padding:12px 10px 22px}.hero{padding:29px 15px 65px;border-radius:22px}.hero h1{font-size:25px}.form-card{margin:-38px 2px 0;padding:22px 17px;border-radius:20px}.form-intro h2{font-size:19px}.optional-grid{grid-template-columns:1fr;gap:8px}.question{padding:19px 0}.q-heading h3{font-size:14px}.rating-options{display:grid;grid-template-columns:repeat(5,1fr);gap:5px}.rating-options .option{min-width:0}.rating-options .option span{font-size:10px;padding:9px 2px}.options:not(.rating-options){display:grid;grid-template-columns:1fr 1fr}.options:not(.rating-options) .option span{height:100%;display:flex;align-items:center;font-size:11px;padding:9px}.nps{gap:3px}.nps span{height:34px;border-radius:8px;font-size:11px}.admin-shell{padding:20px 12px}.admin-top h1{font-size:22px}.stats-grid{grid-template-columns:repeat(2,1fr);gap:9px}.stat-card{padding:13px}.stat-card strong{font-size:26px}.section-head{gap:10px}.section-head h2{font-size:16px}.center-card{margin:12vh 15px;padding:25px}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important}}
