:root{color-scheme:light;font-family:Atkinson Hyperlegible,Aptos,Segoe UI,sans-serif;background:#f3fbf7;color:#12302a;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;--color-bg: #f3fbf7;--color-surface: #ffffff;--color-primary: #0f8f6b;--color-primary-dark: #08664e;--color-primary-soft: #dff5ee;--color-border: #cfe7dc;--color-text: #12302a;--color-muted: #637b73;--color-danger: #b42318;--shadow-card: 0 18px 50px rgba(10, 70, 55, .12);--surface: var(--color-bg);--paper: var(--color-surface);--ink: var(--color-text);--muted: var(--color-muted);--line: var(--color-border);--green: var(--color-primary);--green-soft: var(--color-primary-soft);--gold: #c89b2c;--danger: var(--color-danger)}*{box-sizing:border-box}html,body,#root{block-size:100%;inline-size:100%;margin:0;overflow:hidden;overscroll-behavior:none;touch-action:manipulation}body{min-block-size:100%;background:var(--surface);user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent}button,input,textarea{font:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.48}.app-shell{block-size:100dvh;inline-size:100%;background:radial-gradient(circle at 50% -10%,rgba(15,143,107,.12),transparent 38%),var(--color-bg)}.kiosk-screen{position:relative;display:grid;block-size:100dvh;inline-size:100%;min-block-size:0;overflow:hidden;padding:max(clamp(12px,2.5vw,28px),env(safe-area-inset-top)) max(clamp(12px,2.5vw,28px),env(safe-area-inset-right)) max(clamp(84px,10vh,112px),calc(env(safe-area-inset-bottom) + 84px)) max(clamp(12px,2.5vw,28px),env(safe-area-inset-left))}.question-screen{grid-template-rows:auto minmax(0,1fr);gap:clamp(10px,1.6vh,18px)}.progress-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;inline-size:min(100%,860px);margin-inline:auto;color:var(--muted);font-size:clamp(.92rem,1.6vh,1.08rem);font-weight:750}.progress-track{block-size:10px;overflow:hidden;border:1px solid var(--line);border-radius:999px;background:#ffffffb8}.progress-value{block-size:100%;border-radius:inherit;background:var(--green);transition:inline-size .24s ease}.question-panel,.thank-you-panel,.error-panel,.language-panel{display:flex;flex-direction:column;min-block-size:0;inline-size:min(100%,860px);max-block-size:100%;margin-inline:auto;background:var(--color-surface);border:1px solid var(--color-border);border-radius:clamp(20px,3vw,32px);box-shadow:var(--shadow-card);padding:clamp(18px,3vw,36px)}.question-panel,.language-panel{align-items:center;justify-items:center;align-self:center}.question-kicker{margin:0 0 clamp(6px,1vh,10px);color:var(--color-primary);font-size:clamp(.82rem,1.5vh,1rem);font-weight:850;letter-spacing:0;text-transform:uppercase}h1{max-inline-size:26ch;margin:0 0 clamp(12px,2vh,22px);color:var(--ink);font-size:clamp(1.65rem,3.9vh,2.8rem);line-height:1.08;letter-spacing:0}.question-panel h1,.language-panel h1{text-align:center}.answer-stack,.language-list{display:flex;flex-direction:column;gap:clamp(.35rem,1vh,.75rem);inline-size:100%;flex:0 1 auto;min-block-size:0;overflow:visible;overscroll-behavior:contain;padding:2px 4px 8px}.question-panel[data-density=dense]{padding:clamp(14px,2.3vw,28px)}.question-panel[data-density=dense] .question-kicker{margin-block-end:clamp(4px,.6vh,8px);font-size:clamp(.76rem,1.2vh,.9rem)}.question-panel[data-density=dense] h1{max-inline-size:34ch;margin-block-end:clamp(8px,1.1vh,14px);font-size:clamp(1.35rem,2.8vh,2.15rem);line-height:1.1}.answer-stack:is([data-option-count="7"],[data-option-count="8"],[data-option-count="9"]){gap:clamp(5px,.7vh,8px);padding-block-end:2px}.answer-button{display:grid;grid-template-columns:1fr;align-items:center;min-block-size:clamp(44px,6.5vh,68px);padding:clamp(10px,1.7vh,16px) clamp(16px,3vw,28px);border:2px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);box-shadow:0 8px 22px #0a46370d;font-size:clamp(1rem,2.2vw,1.35rem);font-weight:700;line-height:1.15;text-align:start;transition:border-color .14s ease,background .14s ease,transform .14s ease}.answer-stack:is([data-option-count="7"],[data-option-count="8"],[data-option-count="9"]) .answer-button{min-block-size:clamp(40px,5.2vh,54px);padding-block:clamp(6px,.9vh,10px);padding-inline:clamp(14px,2.4vw,22px);border-radius:14px;font-size:clamp(.94rem,1.9vw,1.12rem);line-height:1.12}.answer-button:active{transform:scale(.985)}.answer-button.is-selected{border-color:var(--color-primary);background:var(--color-primary-soft);color:var(--color-primary-dark)}.answer-button--check{grid-template-columns:clamp(34px,5vh,48px) 1fr;gap:clamp(10px,2vw,18px)}.check-mark{display:grid;place-items:center;inline-size:clamp(32px,5vh,44px);block-size:clamp(32px,5vh,44px);border:2px solid var(--green);border-radius:8px;color:var(--green);font-size:clamp(1.3rem,3vh,1.8rem);font-weight:900}.answer-stack:is([data-option-count="7"],[data-option-count="8"],[data-option-count="9"]) .answer-button--check{grid-template-columns:clamp(28px,4.2vh,38px) 1fr;gap:clamp(8px,1.4vw,14px)}.answer-stack:is([data-option-count="7"],[data-option-count="8"],[data-option-count="9"]) .check-mark{inline-size:clamp(28px,4.2vh,36px);block-size:clamp(28px,4.2vh,36px);font-size:clamp(1rem,2.3vh,1.35rem)}.question-hint{margin:0 0 clamp(8px,1.2vh,12px);color:var(--muted);font-size:clamp(.95rem,1.8vh,1.1rem);font-weight:700;text-align:center}.primary-action,.secondary-action,.submit-action,.language-button{inline-size:100%;min-block-size:clamp(54px,7.5vh,78px);margin-block-start:clamp(10px,2vh,22px);padding:clamp(12px,2vh,18px) clamp(24px,4vw,36px);border:0;border-radius:18px;background:var(--color-primary);color:#fff;font-size:clamp(1.2rem,2.8vh,1.8rem);font-weight:850;box-shadow:0 14px 34px #0f8f6b33}.secondary-action{border:2px solid var(--line);background:var(--paper);color:var(--color-primary-dark);box-shadow:none}.language-button{margin-block-start:0;background:var(--paper);color:var(--ink);border:2px solid var(--line);text-align:center}.submit-action{background:var(--gold);color:#20170b}.text-answer-group{display:grid;grid-template-rows:minmax(0,1fr) auto;gap:clamp(12px,2vh,18px);inline-size:min(100%,860px);flex:1 1 auto;min-block-size:0}.text-answer-group input,.text-answer-group textarea{inline-size:100%;min-block-size:clamp(60px,10vh,92px);padding:clamp(14px,2vh,20px) clamp(16px,3vw,24px);border:2px solid var(--line);border-radius:18px;background:var(--paper);color:var(--ink);font-size:clamp(1.25rem,3vh,1.8rem);font-weight:650}.text-answer-group textarea{min-block-size:clamp(160px,32vh,280px);resize:none;line-height:1.35}.text-answer-group input:focus,.text-answer-group textarea:focus,.answer-button:focus-visible,.primary-action:focus-visible,.secondary-action:focus-visible,.submit-action:focus-visible,.language-button:focus-visible,.kiosk-reset-button:focus-visible,.debug-overlay button:focus-visible{outline:5px solid rgba(215,144,40,.45);outline-offset:4px}.thank-you-screen,.error-screen,.language-screen,.loading-screen{place-items:center;text-align:center}.thank-you-panel,.error-panel{align-items:center;justify-content:center}.thank-you-panel h1,.error-panel h1{max-inline-size:18ch;margin-block-end:18px}.thank-you-panel p,.error-panel p,.loading-screen p{max-inline-size:34ch;margin:0;color:var(--muted);font-size:1.55rem;font-weight:650;line-height:1.35}.error-detail{margin-block-start:12px!important;color:var(--danger)!important;font-size:.95rem!important;font-weight:750!important}.error-actions{display:grid;grid-template-columns:1fr 1fr;gap:14px;inline-size:100%;margin-block-start:clamp(12px,2vh,22px)}.error-actions .primary-action,.error-actions .secondary-action{margin-block-start:0}.loader-mark{inline-size:74px;block-size:74px;border:8px solid var(--color-primary-soft);border-block-start-color:var(--color-primary);border-radius:50%;animation:spin .9s linear infinite}.kiosk-reset-button{position:fixed;inset-inline-start:max(16px,env(safe-area-inset-left));inset-block-end:max(16px,env(safe-area-inset-bottom));z-index:50;min-block-size:48px;padding:9px 16px;border:1px solid var(--line);border-radius:999px;background:#ffffffeb;color:var(--color-primary-dark);font-size:.95rem;font-weight:850;box-shadow:0 10px 24px #0a463714}.fallback-warning{position:fixed;inset-block-start:max(14px,env(safe-area-inset-top));inset-inline:max(14px,env(safe-area-inset-left)) max(14px,env(safe-area-inset-right));z-index:55;width:fit-content;max-inline-size:min(720px,calc(100vw - 28px));margin-inline:auto;padding:10px 16px;border:1px solid rgba(180,35,24,.24);border-radius:999px;background:#fff4ed;color:var(--danger);box-shadow:0 12px 30px #501e141f;font-size:.95rem;font-weight:850;text-align:center}.debug-hotspot{position:fixed;right:0;bottom:0;z-index:60;inline-size:96px;block-size:96px;border:0;background:transparent;opacity:0}.debug-overlay{position:fixed;inset:16px;z-index:9999;display:flex;flex-direction:column;gap:12px;max-block-size:calc(100dvh - 32px);padding:16px;border:1px solid #d1d5db;border-radius:16px;background:#fff;color:#111827;box-shadow:0 24px 80px #11182738;-webkit-user-select:text;user-select:text}.debug-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px;padding-block-end:12px;border-block-end:1px solid #e5e7eb}.debug-header h2{margin:0;color:#111827;font-size:1.25rem}.debug-header-actions{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:8px}.debug-content{display:flex;flex:1 1 auto;flex-direction:column;gap:12px;min-block-size:0;overflow-y:auto;padding-inline-end:4px}.debug-overlay button{min-block-size:38px;padding:7px 11px;border:1px solid #d1d5db;border-radius:8px;background:#f9fafb;color:#111827;font-size:.88rem;font-weight:800}.debug-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin:0}.debug-grid div{min-inline-size:0;padding:8px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb}.debug-grid dt{color:#6b7280;font-size:.72rem;font-weight:800;text-transform:uppercase}.debug-grid dd{margin:3px 0 0;overflow-wrap:anywhere;color:#111827;font-size:.86rem;font-weight:750}.debug-section{padding:10px;border:1px solid #e5e7eb;border-radius:10px;background:#fff}.debug-section h3,.debug-section h4{margin:0 0 8px;color:#111827}.debug-section h3{font-size:1rem}.debug-section h4{margin-block-start:10px;color:#374151;font-size:.82rem;text-transform:uppercase}.debug-pre{max-block-size:260px;margin:0;overflow:auto;padding:10px;border:1px solid #e5e7eb;border-radius:8px;background:#f9fafb;color:#111827;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:12px;line-height:1.42;white-space:pre-wrap;word-break:break-word}.debug-log-list{display:grid;gap:8px;margin:8px 0 0;padding:0;list-style:none}.debug-log-list li{display:grid;grid-template-columns:84px minmax(0,1fr);gap:8px;padding-block:8px;border-block-start:1px solid #e5e7eb;color:#111827;font-size:.84rem}.debug-log-list time{color:#6b7280}.debug-log-list strong{display:block;margin-block-end:4px}.visually-hidden{position:absolute;inline-size:1px;block-size:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}@keyframes spin{to{transform:rotate(360deg)}}@media(max-width:640px){.kiosk-screen{padding:18px 18px max(88px,calc(env(safe-area-inset-bottom) + 88px))}h1{font-size:1.9rem}.debug-grid,.error-actions{grid-template-columns:1fr}}@media(max-height:760px){.answer-stack{flex:1 1 auto;overflow-y:auto}.question-panel[data-density=dense]{align-self:stretch}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
