:root{
  --ink:#111827;--muted:#6b7280;--line:#e5e7eb;--soft:#f5f7fb;--card:#fff;--accent:#111827;
}
*{box-sizing:border-box}body{margin:0;background:var(--soft);color:var(--ink);font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif}
.boot-screen{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#f8fafc;z-index:9999}.boot-mark{width:74px;height:74px;border-radius:24px;background:#111827;color:#fff;display:grid;place-items:center;font-size:34px;box-shadow:0 18px 45px rgba(17,24,39,.18)}
.auth-screen{min-height:100vh;background:radial-gradient(circle at 20% 20%,#eef2ff 0,transparent 33%),#f8fafc}.auth-hero{min-height:620px;border-radius:34px;padding:52px;background:#111827;color:#fff;display:flex;flex-direction:column;justify-content:center;box-shadow:0 26px 70px rgba(15,23,42,.16)}.auth-hero h1{font-size:clamp(42px,5vw,68px);line-height:1.02;letter-spacing:-.04em;max-width:780px;margin:34px 0 20px}.auth-hero>p{font-size:20px;color:#cbd5e1;max-width:650px}.brand-pill{display:inline-flex;align-items:center;gap:10px;align-self:flex-start;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.12);padding:10px 14px;border-radius:999px;font-weight:700}.hero-points{display:grid;gap:14px;margin-top:40px}.hero-points>div{display:flex;align-items:center;gap:12px;color:#e5e7eb}.hero-points i{font-size:20px}.auth-card{background:#fff;border:1px solid rgba(15,23,42,.06);box-shadow:0 22px 60px rgba(15,23,42,.08);padding:42px;border-radius:30px;min-height:100%;display:flex;flex-direction:column;justify-content:center}.mobile-brand{font-weight:800;font-size:20px;margin-bottom:32px}.eyebrow{text-transform:uppercase;letter-spacing:.12em;font-size:11px;font-weight:800;color:#7c3aed;margin-bottom:7px}.eyebrow.light{color:#c4b5fd}.form-control,.form-select{border-radius:15px;border-color:#dfe3ea}.input-group .form-control{border-radius:15px 0 0 15px}.input-group .btn{border-radius:0 15px 15px 0}.btn{border-radius:14px;font-weight:650}.btn-dark{background:#111827;border-color:#111827}
.topbar{background:rgba(255,255,255,.92);backdrop-filter:blur(18px);border-bottom:1px solid rgba(17,24,39,.06);position:sticky;top:0;z-index:100}.brand-button{border:0;background:transparent;padding:0;display:flex;gap:10px;align-items:center;font-weight:850;font-size:20px;color:#111827}.brand-button i{width:38px;height:38px;border-radius:13px;background:#111827;color:white;display:grid;place-items:center}.user-avatar{border:0;width:42px;height:42px;border-radius:50%;background:#ede9fe;color:#5b21b6;font-weight:800}
.welcome-card{background:linear-gradient(135deg,#111827,#312e81);color:#fff;border-radius:30px;padding:36px;display:flex;justify-content:space-between;align-items:center;gap:24px;box-shadow:0 20px 50px rgba(30,41,59,.16)}.welcome-card h1{font-size:clamp(28px,4vw,44px);letter-spacing:-.03em}.welcome-card p{color:#dbeafe;max-width:680px}.welcome-icon{font-size:82px;opacity:.24;padding-right:18px}.section-title-row{display:flex;align-items:center;justify-content:space-between}.recent-list{display:grid;gap:12px}.recent-card{background:white;border:1px solid var(--line);border-radius:19px;padding:18px;display:flex;align-items:center;justify-content:space-between;gap:16px}.recent-card.clickable{cursor:pointer}.recent-card.clickable:hover{border-color:#c4b5fd;box-shadow:0 12px 30px rgba(17,24,39,.06)}.status-pill{font-size:12px;font-weight:750;padding:6px 9px;border-radius:999px}.status-draft{background:#fff7ed;color:#c2410c}.status-final{background:#ecfdf5;color:#047857}.empty-state{background:white;border:1px dashed #cbd5e1;border-radius:20px;padding:38px;text-align:center;color:#64748b}.empty-state i{font-size:34px}
.form-shell{background:#fff;border:1px solid var(--line);border-radius:26px;padding:30px;box-shadow:0 14px 36px rgba(15,23,42,.05)}.narrow-shell{max-width:720px;margin:0 auto}.step-badge{display:inline-block;background:#ede9fe;color:#6d28d9;border-radius:999px;padding:7px 10px;font-size:12px;font-weight:800;margin-bottom:16px}
.form-topbar{background:rgba(245,247,251,.94);backdrop-filter:blur(12px);padding:8px 0 18px;z-index:80}.form-progress{height:8px;border-radius:999px}.form-progress .progress-bar{background:#7c3aed}.progress-label{font-size:24px;font-weight:850}.questionnaire-root{display:grid;gap:20px}.section-card{background:#fff;border:1px solid var(--line);border-radius:25px;overflow:hidden}.section-head{padding:22px 24px;border-bottom:1px solid #eef0f4;background:linear-gradient(180deg,#fff,#fafafa)}.section-head h3{margin:0;font-size:20px}.question-item{padding:24px;border-bottom:1px solid #eef0f4}.question-item:last-child{border-bottom:0}.question-number{color:#7c3aed;font-weight:800;font-size:12px;text-transform:uppercase;letter-spacing:.08em}.question-text{font-size:17px;font-weight:700;line-height:1.45;margin:7px 0 16px}.answer-buttons{display:grid;grid-template-columns:1fr 1fr;gap:10px;max-width:420px}.answer-choice{position:relative}.answer-choice input{position:absolute;opacity:0;pointer-events:none}.answer-choice label{display:flex;align-items:center;justify-content:center;gap:8px;border:1px solid #d9dde6;border-radius:14px;padding:11px 14px;font-weight:750;cursor:pointer;background:#fff;transition:.15s}.answer-choice input:checked+label.yes{background:#ecfdf5;border-color:#86efac;color:#047857}.answer-choice input:checked+label.no{background:#fef2f2;border-color:#fca5a5;color:#b91c1c}.evidence-zone{margin-top:18px;padding-top:16px;border-top:1px dashed #dfe3ea}.evidence-title{font-size:12px;font-weight:800;color:#64748b;text-transform:uppercase;letter-spacing:.08em;margin-bottom:10px}.media-actions{display:flex;flex-wrap:wrap;gap:8px}.media-actions .btn{border-radius:12px}.comment-box{margin-top:12px}.comment-box textarea{min-height:88px;resize:vertical}.media-list{display:flex;flex-wrap:wrap;gap:10px;margin-top:12px}.media-chip{border:1px solid #e5e7eb;background:#f8fafc;border-radius:14px;padding:8px 10px;display:flex;align-items:center;gap:8px;max-width:100%}.media-chip a{color:#334155;text-decoration:none;max-width:250px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.recording{animation:pulse 1.15s infinite;background:#fee2e2!important;border-color:#fecaca!important;color:#b91c1c!important}@keyframes pulse{50%{opacity:.62}}.save-state{font-size:12px;color:#94a3b8;margin-top:8px}.finish-card{background:#fff;border:1px solid var(--line);border-radius:24px;padding:24px;display:flex;align-items:center;justify-content:space-between;gap:20px;margin-top:22px}.page-loader{position:fixed;inset:0;background:rgba(255,255,255,.78);backdrop-filter:blur(6px);z-index:2000;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px;font-weight:700}.toast{border-radius:15px!important}
@media(max-width:767.98px){body{background:#f8fafc}.auth-card{padding:28px 22px;border-radius:24px;min-height:auto}.welcome-card{padding:26px 22px;border-radius:24px}.welcome-icon{display:none}.form-shell{padding:22px 18px;border-radius:22px}.question-item{padding:20px 17px}.section-head{padding:18px 17px}.question-text{font-size:16px}.finish-card{align-items:stretch;flex-direction:column}.finish-card .btn{width:100%}.recent-card{align-items:flex-start}.answer-buttons{max-width:none}.form-topbar{margin:0 -12px;padding:8px 12px 16px}.brand-button span{font-size:18px}.media-actions .btn{flex:1 1 auto}.media-chip{width:100%}.media-chip a{max-width:calc(100vw - 130px)}}
