:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page-bg:#f6f7f3;--surface:#fff;--surface-raised:#fff;--surface-soft:#f1f4ef;--surface-leaf:#e6f1e8;--surface-blue:#e8f2f7;--text:#17211c;--text-soft:#2a362f;--muted:#5c6a62;--border:#d8ded6;--border-strong:#b7c3ba;--primary:#175f45;--primary-hover:#104b36;--primary-text:#134532;--accent:#245c77;--accent-text:#1f5068;--focus-ring:#245c7742;--error-bg:#fff2ef;--error-border:#ecaa9b;--error-text:#802112;--warning-bg:#fff3d8;--warning-text:#7b4a13;background:var(--page-bg);color:var(--text);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,Segoe UI,Roboto,Helvetica,Arial,sans-serif}html{-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{background:var(--page-bg);min-width:320px;min-height:100vh;margin:0}button,input,textarea{font:inherit}button{cursor:pointer}button,label,input,textarea{-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.55}.hero{isolation:isolate;align-items:center;min-height:100svh;display:flex;position:relative;overflow:hidden}.hero-image,.hero-overlay{position:absolute;inset:0}.hero-image{object-fit:cover;z-index:-2;width:100%;height:100%}.hero-overlay{z-index:-1;background:#0b1512ad}.hero-content{color:#fff;width:min(1120px,100% - 32px);margin:0 auto;padding:54px 0}.welcome-screen{background:#0e1b18;min-height:100svh}.welcome-content{text-align:center;align-content:center;justify-items:center;min-height:100svh;display:grid}.brand-lockup{letter-spacing:0;text-transform:uppercase;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#ffffff24;border:1px solid #ffffff47;border-radius:999px;align-items:center;gap:10px;padding:8px 12px;font-size:.8rem;font-weight:800;display:inline-flex}.hero h1{letter-spacing:0;max-width:760px;margin:22px 0 12px;font-size:clamp(2.2rem,6vw,5.4rem);line-height:.96}.hero p{color:#ffffffe6;max-width:620px;margin:0;font-size:clamp(1rem,2vw,1.35rem);line-height:1.5}.welcome-actions{flex-wrap:wrap;justify-content:center;gap:12px;margin-top:30px;display:flex}.welcome-start,.welcome-demo{min-height:56px;padding:0 22px}.welcome-demo{color:#fff;background:#ffffff1f;border-color:#ffffff5c}.welcome-guide{color:#13251f;background:#ffffffeb;border-color:#ffffffeb}.welcome-demo:hover,.welcome-guide:hover{background:#ffffff2e}.welcome-guide:hover{color:#fff}.welcome-meta{color:#ffffffdb;flex-wrap:wrap;justify-content:center;gap:8px;margin-top:24px;display:flex}.welcome-meta span{background:#ffffff1a;border:1px solid #ffffff47;border-radius:999px;padding:8px 11px;font-size:.88rem;font-weight:760}.welcome-demo-toggle{color:#ffffffe6;align-items:center;gap:10px;width:fit-content;margin-top:18px;font-weight:760;display:inline-flex}.welcome-demo-toggle input{accent-color:#9ddfbd;width:20px;height:20px}.survey-screen{min-height:100vh}.survey-topbar{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f7f3f5;position:sticky;top:0;box-shadow:0 1px #17211c0f}.survey-topbar-inner{justify-content:space-between;align-items:center;gap:16px;width:min(1120px,100% - 32px);margin:0 auto;padding:12px 0;display:flex}.topbar-question{flex:auto;min-width:0}.topbar-section{color:var(--primary);text-transform:uppercase;align-items:center;gap:8px;font-size:.82rem;font-weight:900;display:inline-flex}.survey-topbar p{max-width:920px;color:var(--text);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:clamp(.95rem,1.6vw,1.08rem);font-weight:830;line-height:1.28;display:-webkit-box;overflow:hidden}.progress-shell{width:min(1120px,100% - 32px);margin:20px auto 0}.compact-progress{margin-top:14px}.progress-meta{color:var(--muted);justify-content:space-between;align-items:center;gap:14px;margin-bottom:8px;font-size:.88rem;display:flex}.demo-toggle{border:1px solid var(--border);background:var(--surface);min-height:34px;color:var(--text-soft);border-radius:999px;align-items:center;gap:7px;padding:0 12px;font-weight:800;display:inline-flex}.demo-toggle.active{border-color:var(--accent);background:var(--surface-blue);color:var(--accent-text)}.progress-track{background:#d8e5db;border-radius:999px;height:8px;overflow:hidden}.progress-fill{border-radius:inherit;background:var(--primary);height:100%;transition:width .22s}.survey-panel{background:var(--surface-raised);border-radius:8px;width:min(980px,100% - 32px);margin:24px auto 56px;padding:clamp(20px,4vw,42px);box-shadow:0 18px 55px #1c27211c}.step-header{margin-bottom:32px;padding-bottom:0}.step-kicker{color:var(--primary);text-transform:uppercase;margin:0 0 8px;font-size:.86rem;font-weight:800}.step-header h2{letter-spacing:0;margin:0;font-size:clamp(1.7rem,4vw,2.7rem);line-height:1.08}.step-context{justify-content:space-between;align-items:flex-start;gap:18px;margin-top:12px;display:flex}.step-context p{max-width:680px;color:var(--muted);margin:0;line-height:1.5}.status-chip{border:1px solid var(--border-strong);background:var(--surface-leaf);color:var(--primary-text);border-radius:999px;flex:none;padding:5px 10px;font-size:.78rem;font-weight:850}.status-chip.optional{border-color:var(--border);background:var(--surface-soft);color:var(--muted)}.step-tabs{flex-wrap:wrap;gap:8px;margin-top:22px;display:flex}.step-tabs span,.step-tabs button{border:1px solid var(--border);color:var(--muted);background:var(--surface-soft);border-radius:999px;padding:7px 10px;font-size:.8rem;font-weight:700}.step-tabs button{min-height:34px}.step-tabs button:hover{border-color:var(--border-strong);color:var(--text-soft)}.step-tabs .active{color:#fff;border-color:var(--primary);background:var(--primary)}.step-tabs .done{color:var(--primary-text);background:var(--surface-leaf);border-color:var(--border-strong)}.section-body{gap:28px;display:grid}.demo-notice{background:var(--surface-blue);color:var(--accent-text);border:1px solid #b8d4e6;border-radius:8px;margin:0 0 24px;padding:12px 14px;font-weight:800}.section-instruction{background:var(--surface-soft);color:var(--text-soft);border-radius:8px;padding:18px 20px}.section-instruction p,.instruction{margin:0;line-height:1.55}.instruction{color:var(--muted);font-size:.94rem}.question-block,.bio-block,.likert-row{border:0;margin:0;padding:0}.question-block>legend,.bio-block>legend,.likert-row>legend{width:100%;color:var(--text);margin-bottom:14px;font-size:1.08rem;font-weight:800;line-height:1.35;display:block}.option-grid,.check-grid{grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:10px;margin-top:12px;display:grid}.option-pill,.check-row{border:1px solid var(--border);background-color:var(--surface);min-height:48px;color:var(--text-soft);border-radius:8px;align-items:center;gap:10px;padding:12px 14px;display:flex}.primary-button:focus-visible,.secondary-button:focus-visible,.demo-toggle:focus-visible,.step-tabs button:focus-visible{outline:3px solid var(--focus-ring);outline-offset:2px}.option-pill.selected,.check-row.selected{border-color:var(--primary);background-color:var(--surface-leaf);box-shadow:inset 0 0 0 1px #176b4a38}.option-pill input:focus-visible,.check-row input:focus-visible{outline:2px solid var(--focus-ring);outline-offset:2px}.consent-block{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:20px}.consent-block>legend{width:auto;margin-left:-8px;padding:0 8px}.consent-list{gap:12px;margin-top:14px;display:grid}.consent-intro{border:1px solid var(--border);background:var(--surface-soft);border-radius:8px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:12px 14px;line-height:1.4;display:flex}.consent-intro span{color:var(--muted)}.consent-row{align-items:flex-start;min-height:0;padding:14px 15px;line-height:1.42}.consent-row input{margin-top:2px}.option-pill input,.check-row input{width:18px;height:18px;accent-color:var(--primary);flex:none}.text-label{color:var(--text);gap:9px;margin-top:14px;font-weight:800;display:grid}.text-label input,.text-label textarea{border:1px solid var(--border);background:var(--surface);width:100%;color:var(--text);border-radius:8px;outline:none;padding:12px 13px}.text-label input:focus,.text-label textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px var(--focus-ring)}.postcode-block .check-row{width:fit-content;max-width:100%;margin-top:16px}textarea{resize:vertical;min-height:116px}.bio-block{gap:18px;padding:8px 0 12px;display:grid}.bio-block>legend{align-items:flex-start;gap:10px;font-size:1.24rem;display:flex}.question-code{background:var(--surface-leaf);color:var(--primary-text);border-radius:999px;flex:none;padding:3px 9px;font-size:.9rem;line-height:1.6}.scale-block{background:var(--surface-soft);border-radius:8px;grid-template-columns:1fr auto;align-items:start;gap:10px 16px;padding:18px;display:grid}.scale-title{color:var(--text-soft);font-weight:760;line-height:1.4}.scale-hint{color:var(--muted);grid-column:1/-1;margin-top:-2px;font-size:.92rem;line-height:1.5}.scale-value{text-align:center;white-space:nowrap;min-width:112px;height:30px;color:var(--primary-text);background:var(--surface-leaf);border-radius:999px;justify-content:center;place-self:start end;align-items:center;padding:4px 10px;font-size:.86rem;font-weight:800;line-height:1;display:inline-flex}.unanswered .scale-value{color:var(--warning-text);background:var(--warning-bg)}.scale-block input[type=range]{--range-thumb:32px;--range-track:12px;width:100%;accent-color:var(--accent);appearance:none;touch-action:pan-y;cursor:pointer;background:0 0;border-radius:999px;grid-column:1/-1;min-height:60px;margin:0;padding:20px 0}.scale-block input[type=range]:focus-visible{outline:3px solid var(--focus-ring);outline-offset:-8px}.scale-block input[type=range]::-webkit-slider-runnable-track{height:var(--range-track);border:1px solid var(--border-strong);background:var(--surface);border-radius:999px}.scale-block input[type=range]::-webkit-slider-thumb{width:var(--range-thumb);height:var(--range-thumb);margin-top:calc((var(--range-track) - var(--range-thumb)) / 2);border:3px solid var(--surface);background:var(--accent);appearance:none;border-radius:50%;box-shadow:0 2px 10px #235f8642}.scale-block input[type=range]::-moz-range-track{height:var(--range-track);border:1px solid var(--border-strong);background:var(--surface-soft);border-radius:999px}.scale-block input[type=range]::-moz-range-progress{height:var(--range-track);background:var(--accent);border-radius:999px}.scale-block input[type=range]::-moz-range-thumb{width:var(--range-thumb);height:var(--range-thumb);border:3px solid var(--surface);background:var(--accent);border-radius:50%;box-shadow:0 2px 10px #235f8642}.scale-ticks{color:var(--muted);font-variant-numeric:tabular-nums;grid-column:1/-1;grid-template-columns:1fr 1fr 1fr;margin-top:-6px;font-size:.75rem;display:grid}.scale-ticks span:nth-child(2){text-align:center}.scale-ticks span:last-child{text-align:right}.scale-labels{color:var(--muted);grid-column:1/-1;gap:10px;font-size:.83rem;line-height:1.3;display:grid}.scale-labels.three-point{grid-template-columns:1fr 1fr 1fr}.scale-labels.two-point{grid-template-columns:1fr 1fr}.scale-labels span:nth-child(2){text-align:center}.scale-labels span:last-child{text-align:right}.likert-intro{border:1px solid var(--border);background:var(--surface-soft);color:var(--muted);border-radius:8px;grid-template-columns:repeat(3,1fr);gap:12px;padding:14px 16px;font-size:.9rem;font-weight:800;line-height:1.35;display:grid}.likert-intro span{min-width:0}.likert-intro span:nth-child(2){text-align:center}.likert-intro span:last-child{text-align:right}.likert-list{gap:16px;display:grid}.likert-row{border:1px solid var(--border);background:var(--surface);border-radius:8px;grid-template-columns:minmax(260px,.9fr) minmax(440px,1.1fr);align-items:center;gap:20px;padding:18px;display:grid}.likert-row>legend{color:var(--text);margin:0}.likert-options{grid-template-columns:repeat(7,minmax(52px,1fr));gap:8px;display:grid}.likert-options label{cursor:pointer;place-items:center;display:grid}.likert-options input{opacity:0;pointer-events:none;position:absolute}.likert-choice{border:1px solid var(--border);width:100%;min-height:56px;color:var(--text-soft);background:var(--surface);border-radius:8px;flex-direction:column;justify-content:center;place-items:center;gap:2px;font-weight:800;transition:background-color .14s,border-color .14s,color .14s,box-shadow .14s;display:flex}.likert-option-number{line-height:1}.likert-option-caption{color:var(--muted);font-size:.66rem;font-weight:800;line-height:1}.likert-options input:checked+.likert-choice{background:var(--accent);color:#fff;border-color:var(--accent);box-shadow:0 6px 16px #235f8633}.likert-options input:checked+.likert-choice .likert-option-caption{color:#ffffffdb}.likert-options input:focus-visible+.likert-choice{outline:3px solid var(--focus-ring);outline-offset:2px}.final-comment{margin-top:0}.error-summary,.submit-error{border:1px solid var(--error-border);background:var(--error-bg);color:var(--error-text);border-radius:8px;margin-bottom:24px;padding:14px 16px}.error-summary ul{margin:8px 0 0;padding-left:20px}.submit-error{margin:24px 0 0}.form-actions{justify-content:space-between;gap:14px;margin-top:36px;padding-top:0;display:flex}.primary-button,.secondary-button{border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;gap:9px;min-height:48px;padding:0 18px;font-weight:850;display:inline-flex}.primary-button{background:var(--primary);color:#fff;border-color:var(--primary)}.primary-button:hover{background:var(--primary-hover)}.secondary-button{background:var(--surface);color:var(--text-soft);border-color:var(--border)}.secondary-button:hover{background:var(--surface-soft)}.terminal-panel{text-align:center;max-width:720px}.terminal-panel h2{margin:14px 0 10px;font-size:clamp(1.8rem,4vw,3rem)}.terminal-panel p{color:var(--muted);max-width:560px;margin:0 auto;line-height:1.55}.terminal-icon{width:54px;height:54px;color:var(--primary)}.response-reference{font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.85rem;margin-top:18px!important}.guide-screen{background:var(--page-bg);min-height:100vh;color:var(--text)}.guide-header{z-index:10;-webkit-backdrop-filter:blur(18px);backdrop-filter:blur(18px);background:#f6f7f3f5;position:sticky;top:0;box-shadow:0 1px #17211c14}.guide-header-inner{justify-content:space-between;gap:12px;width:min(1120px,100% - 32px);margin:0 auto;padding:12px 0;display:flex}.guide-back{text-decoration:none}.guide-hero,.guide-section{width:min(980px,100% - 32px);margin:0 auto}.guide-hero{padding:clamp(44px,8vw,86px) 0 28px}.guide-brand{background:var(--surface-leaf);border-color:var(--border-strong);color:var(--primary-text);-webkit-backdrop-filter:none;backdrop-filter:none}.guide-hero h1{letter-spacing:0;max-width:780px;margin:18px 0 12px;font-size:clamp(2.2rem,5vw,4.4rem);line-height:.98}.guide-hero p,.guide-section p,.guide-references li{color:var(--text-soft);line-height:1.6}.guide-hero p{max-width:740px;margin:0 0 10px;font-size:1.1rem}.guide-attribution{font-weight:800;color:var(--muted)!important}.guide-section{padding:28px 0}.guide-section h2{margin:0 0 16px;font-size:clamp(1.55rem,3vw,2.2rem);line-height:1.1}.guide-section-list{gap:18px;display:grid}.guide-instrument-section{border:1px solid var(--border);background:var(--surface);border-radius:8px;gap:18px;padding:clamp(18px,3vw,28px);display:grid;box-shadow:0 10px 28px #1c272112}.guide-instrument-section h3,.guide-two-column h4{color:var(--text);margin:0}.guide-instrument-section h3{font-size:1.35rem}.guide-instrument-section p{margin:0}.guide-question-list{gap:8px;display:grid}.guide-question{background:var(--surface-soft);border-radius:8px;grid-template-columns:62px 1fr;align-items:start;gap:12px;padding:12px;display:grid}.guide-question>span{background:var(--surface-leaf);color:var(--primary-text);border-radius:999px;justify-content:center;padding:4px 8px;font-weight:900;display:inline-flex}.guide-question p{color:var(--text);font-weight:800}.guide-question small{color:var(--muted);margin-top:5px;line-height:1.45;display:block}.guide-two-column{grid-template-columns:repeat(2,minmax(0,1fr));gap:18px;display:grid}.guide-two-column ul,.guide-references ol{margin:10px 0 0;padding-left:22px}.guide-two-column li{color:var(--text-soft);margin:8px 0;line-height:1.55}.guide-references{padding-bottom:72px}.guide-references li{margin:0 0 14px}.guide-references a{color:var(--accent-text);overflow-wrap:anywhere}@media (width<=720px){.hero-content,.progress-shell,.survey-panel{width:min(100% - 24px,980px)}.hero,.welcome-content{min-height:100svh}.hero-overlay{background:#0b1512b8}.welcome-actions,.welcome-start,.welcome-demo,.welcome-guide{width:100%}.guide-header-inner{flex-direction:column;width:min(100% - 24px,1120px)}.guide-header-inner .primary-button,.guide-header-inner .secondary-button{width:100%}.guide-hero,.guide-section{width:min(100% - 24px,980px)}.guide-question,.guide-two-column{grid-template-columns:1fr}.survey-topbar-inner{flex-direction:column;align-items:flex-start;width:min(100% - 24px,1120px)}.step-context,.consent-intro{flex-direction:column;align-items:flex-start}.option-grid,.check-grid,.scale-block{grid-template-columns:1fr}.scale-value{justify-self:start}.scale-labels,.scale-labels.three-point{grid-template-columns:1fr}.scale-labels.two-point{grid-template-columns:1fr 1fr}.scale-labels span,.scale-labels span:nth-child(2),.scale-labels span:last-child{text-align:left}.scale-labels.two-point span:last-child{text-align:right}.likert-row{grid-template-columns:1fr}.likert-intro{gap:8px;padding:12px;font-size:.78rem}.likert-options{grid-template-columns:repeat(7,minmax(28px,1fr));gap:6px}.likert-choice{width:100%;min-width:0;min-height:48px}.likert-option-caption{display:none}.form-actions{flex-direction:column-reverse}.primary-button,.secondary-button{width:100%}}@media (width>=721px) and (width<=1180px){.survey-panel{width:min(920px,100% - 40px)}.option-grid,.check-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (pointer:coarse){.option-pill,.check-row{min-height:58px;padding:15px 16px}.option-pill input,.check-row input{width:22px;height:22px}.primary-button,.secondary-button{min-height:56px;padding:0 22px}.demo-toggle{min-height:42px;padding:0 15px}.step-tabs span,.step-tabs button{min-height:40px;padding:9px 13px}.scale-block{padding:20px 0}.scale-block input[type=range]{--range-thumb:38px;--range-track:14px;min-height:72px;padding:26px 0}.likert-choice{min-height:48px}}
