@import "https://fonts.googleapis.com/css2?family=Bricolage+Grotesque:wght@400;500;600;700&family=Geist:wght@400;500;600&display=swap";
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-bg-canvas:#fafafa;--color-bg-surface:#fff;--color-bg-surface-sunken:#f3f4f7;--color-bg-alt:#ecebe8;--color-text-primary:#000;--color-text-secondary:#0000008f;--color-text-tertiary:#0000007a;--color-brand-primary:#1a56db;--color-brand-hover:#2563eb;--color-brand-subtle:#1a56db12;--color-brand-ring:#1a56db21;--color-success:#10b981;--color-success-subtle:#ecfdf5;--color-error:#ef4444;--color-border:#00000014;--color-border-subtle:#0000000f;--font-display:"Bricolage Grotesque",system-ui,sans-serif;--font-body:"Geist","Inter",system-ui,sans-serif;--radius-input:12px;--radius-card:24px;--radius-pill:200px}*{box-sizing:border-box}html{scroll-behavior:smooth}body{background:var(--color-bg-canvas);min-height:100vh;color:var(--color-text-primary);font-family:var(--font-body);-webkit-font-smoothing:antialiased;margin:0;font-size:16px;line-height:1.5}a{color:var(--color-brand-primary);text-decoration:none}:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:2px;border-radius:4px}.card-shadow{border:1px solid var(--color-border-subtle);box-shadow:0 .7px .7px -.4px #00000008,0 1.8px 1.8px -.8px #00000008,0 3.6px 3.6px -1.25px #00000008,0 6.9px 6.9px -1.7px #00000008,0 13.6px 13.6px -2.1px #00000008,0 30px 30px -2.5px #00000008}.topbar{-webkit-backdrop-filter:saturate(160%)blur(10px);backdrop-filter:saturate(160%)blur(10px);border-bottom:1px solid var(--color-border-subtle);z-index:30;background:#fafafad9;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:16px;max-width:880px;margin:0 auto;padding:18px 24px;display:flex}.brand-right{text-align:right;flex-direction:column;gap:2px;display:flex}.brand-right .client-name{color:var(--color-text-primary);font-size:14px;font-weight:600}.brand-right .meta{letter-spacing:.08em;text-transform:uppercase;color:var(--color-text-tertiary);font-size:11px}.progress-wrap{z-index:20;-webkit-backdrop-filter:saturate(150%)blur(8px);backdrop-filter:saturate(150%)blur(8px);border-bottom:1px solid var(--color-border-subtle);background:#fafafae6;position:sticky;top:61px}.progress-inner{align-items:center;gap:14px;max-width:880px;margin:0 auto;padding:10px 24px;display:flex}.progress-bar{background:var(--color-bg-alt);border-radius:var(--radius-pill);flex:1;height:6px;overflow:hidden}.progress-fill{background:var(--color-brand-primary);border-radius:var(--radius-pill);height:100%;transition:width .4s cubic-bezier(.16,1,.3,1)}.progress-count{font-variant-numeric:tabular-nums;color:var(--color-text-secondary);white-space:nowrap;font-size:13px}.save-state{color:var(--color-text-tertiary);white-space:nowrap;text-align:right;min-width:88px;font-size:12px}.save-state.saved{color:var(--color-success)}.save-state.error{color:var(--color-error)}main.page{max-width:880px;margin:0 auto;padding:32px 24px 120px}.intro{background:var(--color-bg-surface);border-radius:var(--radius-card);margin-bottom:30px;padding:30px 32px}.intro h1{font-family:var(--font-display);letter-spacing:-.04em;margin:0 0 12px;font-size:clamp(1.75rem,2vw + 1rem,2.5rem);font-weight:600;line-height:1.08}.intro p{color:var(--color-text-secondary);margin:0;font-size:1.0625rem;line-height:1.55}.banner{border-radius:16px;margin-bottom:22px;padding:14px 18px;font-size:14px}.banner.ok{background:var(--color-success-subtle);color:#0f6848;border:1px solid #10b98140}.banner.warn{color:#8a5a00;background:#fffbeb;border:1px solid #f59e0b4d}.domain{margin-bottom:34px}.domain-head{margin:0 0 14px;padding-left:2px}.domain-head h2{font-family:var(--font-body);letter-spacing:-.32px;color:var(--color-brand-primary);align-items:center;gap:9px;margin:0 0 4px;font-size:16px;font-weight:600;display:inline-flex}.domain-head h2:before{content:"";background:var(--color-brand-primary);border-radius:50%;flex:none;width:7px;height:7px}.domain-head p{color:var(--color-text-tertiary);margin:0;font-size:14px}.q-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:20px;margin-bottom:14px;padding:20px 22px;transition:border-color .3s;box-shadow:0 .7px .7px -.4px #00000008,0 1.8px 1.8px -.8px #00000008,0 3.6px 3.6px -1.25px #00000008,0 6.9px 6.9px -1.7px #00000008,0 13.6px 13.6px -2.1px #00000008}.q-card.answered{border-color:#10b9814d}.q-top{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.q-label{color:var(--color-text-primary);margin:0;font-size:1rem;font-weight:600;line-height:1.4}.q-hint{color:var(--color-text-tertiary);margin:5px 0 12px;font-size:13.5px;line-height:1.5}textarea.answer,input.answer.short{border:1px solid var(--color-border);border-radius:var(--radius-input);width:100%;font:inherit;color:var(--color-text-primary);background:var(--color-bg-surface-sunken);outline:none;padding:12px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s,background .2s}textarea.answer{resize:vertical;min-height:96px}textarea.answer:focus,input.answer.short:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-ring);background:var(--color-bg-surface)}textarea.answer::placeholder,input.answer.short::placeholder{color:var(--color-text-tertiary)}.badge,.tag-optional{letter-spacing:.04em;border-radius:var(--radius-pill);flex:none;padding:4px 10px;font-size:11px;font-weight:600}.badge.high{background:var(--color-brand-subtle);color:var(--color-brand-primary)}.badge.medium{background:var(--color-bg-sunken,#f3f4f7);color:var(--color-text-secondary)}.tag-optional{text-transform:uppercase;color:var(--color-text-tertiary);border:1px solid var(--color-border);background:0 0}.actions{-webkit-backdrop-filter:saturate(150%)blur(10px);backdrop-filter:saturate(150%)blur(10px);border-top:1px solid var(--color-border-subtle);background:#fafafaeb;position:sticky;bottom:0}.actions-inner{flex-wrap:wrap;align-items:center;gap:12px;max-width:880px;margin:0 auto;padding:14px 24px;display:flex}.actions .spacer{flex:1}button.btn,a.btn{font-family:var(--font-body);border-radius:var(--radius-pill);border:1px solid var(--color-border);background:var(--color-bg-surface);color:var(--color-text-secondary);cursor:pointer;align-items:center;gap:8px;padding:11px 24px;font-size:14px;font-weight:600;text-decoration:none;transition:transform .12s,background .2s,border-color .2s,color .2s;display:inline-flex}button.btn:hover,a.btn:hover{color:var(--color-text-primary);border-color:#00000026}button.btn.primary{color:#fff;background:#000;border-color:#000;padding:11px 28px}button.btn.primary:hover{background:#1a1a1a;border-color:#1a1a1a;transform:scale(1.02)}button.btn.primary:active{transform:scale(.98)}button.btn:disabled{opacity:.5;cursor:default;transform:none}.btn.ghost{color:var(--color-text-tertiary);background:0 0;border-color:#0000}.btn.ghost:hover{color:var(--color-text-primary);border-color:#0000}.login-wrap{background:radial-gradient(circle at 50% 38%,#1a56db0f,transparent 38%),var(--color-bg-canvas);place-items:center;min-height:100vh;padding:24px;display:grid}.login-card{background:var(--color-bg-surface);border:1px solid var(--color-border-subtle);border-radius:var(--radius-card);width:100%;max-width:400px;padding:34px 32px;box-shadow:0 .7px .7px -.4px #00000008,0 3.6px 3.6px -1.25px #00000008,0 13.6px 13.6px -2.1px #00000008,0 30px 30px -2.5px #00000008}.login-card .wordmark-wrap{margin-bottom:20px}.login-card h1{font-family:var(--font-display);letter-spacing:-.03em;margin:0 0 6px;font-size:1.5rem;font-weight:600}.login-card p{color:var(--color-text-secondary);margin:0 0 22px;font-size:14px}.login-card label{margin-bottom:6px;font-size:13px;font-weight:600;display:block}.login-card input{width:100%;font:inherit;border:1px solid var(--color-border);border-radius:var(--radius-input);background:var(--color-bg-surface-sunken);outline:none;padding:12px 14px;font-size:15px;transition:border-color .2s,box-shadow .2s}.login-card input:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-brand-ring);background:var(--color-bg-surface)}.login-card button{justify-content:center;width:100%;margin-top:18px}.login-error{color:var(--color-error);min-height:16px;margin-top:12px;font-size:13px}.footnote{max-width:880px;color:var(--color-text-tertiary);margin:24px auto 0;font-size:12px;line-height:1.5}@media (max-width:560px){.brand-right .meta{display:none}main.page{padding:24px 16px 120px}.progress-inner,.actions-inner,.topbar-inner{padding-left:16px;padding-right:16px}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}
