@font-face{font-family:OpenDyslexic;src:url(/fonts/OpenDyslexic-Regular.woff) format("woff");font-weight:400;font-style:normal;font-display:swap}@font-face{font-family:OpenDyslexic;src:url(/fonts/OpenDyslexic-Bold.woff) format("woff");font-weight:700;font-style:normal;font-display:swap}:root{font-family:Atkinson Hyperlegible,DM Sans,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;color:#0f172a;background-color:#0b1224;line-height:1.6;font-weight:400;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 10% 20%,rgba(136,184,255,.2),transparent 25%),radial-gradient(circle at 80% 0%,rgba(255,184,120,.2),transparent 20%),#0b1224;color:inherit;min-height:100vh}body.dyslexic-font{font-family:OpenDyslexic,Open Dyslexic,system-ui,sans-serif;letter-spacing:.01em}body.light-mode{background:radial-gradient(circle at 0% 22%,rgba(95,132,255,.25),transparent 28%),radial-gradient(circle at 82% 6%,rgba(255,193,120,.26),transparent 26%),linear-gradient(135deg,#f6f9ff,#fff6ed 72%,#f3f7ff);color:#0f172a}body.high-contrast-mode{background:#000;color:#fff}#root{min-height:100vh}a{color:inherit}.app{color:#0f172a;background:transparent;padding:32px 32px 140px;min-height:100vh}.skip-link{position:absolute;left:-999px;top:8px;background:#ffd500;color:#0b0f1d;padding:10px 14px;border-radius:10px;font-weight:700;z-index:100}.skip-link:focus-visible{left:16px;outline:3px solid #0b0f1d;outline-offset:2px}.app.wide-spacing{line-height:1.8;letter-spacing:.12em;word-spacing:.16em}.app.limit-line main{max-width:72ch;margin-left:auto;margin-right:auto}.app.text-s{font-size:14px}.app.text-m{font-size:16px}.app.text-l{font-size:18px}.app.high-contrast{color:#fff;background:#000}.app.high-contrast .card{background:#0f0f0f;border-color:#ffd500}.app.high-contrast .topbar{background:linear-gradient(120deg,#000,#1a1a1a)}.app.light{color:#0f233f;background:transparent}.app.light .topbar{background:linear-gradient(120deg,#edf4ff,#fef0d8);border:1px solid #c7d7f3;box-shadow:0 10px 30px #0c23461f}.app.light .topbar .micro{color:#1f355d}.app.light h1{color:#0c1c37}.app.light .segmented{border:1px solid #c9d8f5;background:linear-gradient(135deg,#eef2ff,#e7f5ff)}.app.light .segmented button{color:#1c2f52}.app.light .segmented button.active{background:linear-gradient(135deg,#d6e4ff,#cfe7ff);color:#0f1f3a;box-shadow:0 6px 18px #0c23461f}.app.light .card{background:linear-gradient(140deg,#fff,#f1f6ff 55%,#fff7ed);border:1px solid #c9d8f3;color:#0f1f3a;box-shadow:0 14px 36px #0c23461f}.app.light .card.subtle{background:linear-gradient(135deg,#f6f9ff,#fff3e6)}.app.light .consent{border-color:#c9d8f3;background:linear-gradient(135deg,#f5f8ff,#fff4e9)}.app.light .consent-info{border-color:#d9e3f7;background:#fff}.app.light .question{border-color:#c9d8f3;background:linear-gradient(135deg,#f7f9ff,#fff6ed)}.app.light .question h3{color:#0f1f3a}.app.light .question-progress-label{color:#1f355d}.app.light .question-progress-bar{background:#eef2ff;border:1px solid #c4d5f4;box-shadow:inset 0 1px 2px #0c23461f}.app.light .question-progress-fill{background:linear-gradient(120deg,#144272,#1c4e80)}.app.light .required{color:#7c2d12}.app.light .field input,.app.light .field textarea,.app.light input,.app.light select,.app.light textarea{background:#f7faff;border:1px solid #486594;color:#0f1f3a;box-shadow:0 1px #0c23460a}.app.light select{background:linear-gradient(140deg,#f7faff,#eef4ff);color:#0f1f3a}.app.light select option{background:#fff;color:#0f1f3a}.app.light .config-block{border-color:#c9d8f3;background:linear-gradient(135deg,#f6f9ff,#fff7ed)}.app.light .chip{border:1px solid #cbdcf2;background:#edf3ff;color:#0f1f3a}.app.light .chip.selected{border-color:#1c4e80;background:linear-gradient(135deg,#d6e4ff,#c9e7ff);color:#0b1b2d;box-shadow:0 6px 18px #0c234626}.app.light .list-item{border-color:#cbdcf2;background:linear-gradient(135deg,#f7faff,#fff6ed);color:#0f1f3a}.app.light .list-item.drag-over{border-color:#1c4e80;box-shadow:inset 0 0 0 1px #1c4e804d}.app.light .list-item.active{border-color:#1c4e80;box-shadow:0 6px 18px #1c4e8038}.app.light .result-question-card{border-color:#cbdcf2;background:linear-gradient(135deg,#f6f9ff,#fff7ed)}.app.light .result-answer{border-color:#cbdcf2;background:#fff}.app.light .result-chip{border-color:#cbdcf2;background:linear-gradient(135deg,#f6f9ff,#fff7ed)}.app.light .results-empty{border-color:#cbdcf2;background:#fff}.app.light .result-media a{color:#1c4e80}.app.light .warning{color:#6b0f0f;border:2px solid #9f1c1c;background:#fff1ee}.app.light .success{color:#0b2f1a;border:2px solid #0b2f1a;background:#e3f7eb}.app.light button.primary{background:linear-gradient(120deg,#1849a9,#0f3d7a);border:1px solid #0f3d7a;box-shadow:0 8px 18px #0f3d7a33}.app.light button.secondary{background:linear-gradient(120deg,#e7f0ff,#dfe9ff);color:#0f233f;border:1px solid #c4d5f4}.app.light button.danger{background:#f8d7d9;color:#6b0f0f;border:1px solid #9f1c1c}.app.light .attachment{border:1px dashed #cbdcf2;background:#fff}.app.light .divider{background:linear-gradient(90deg,#0c234614,#1c4e801f,#0c234614)}.app.light .accessibility-panel{background:linear-gradient(140deg,#fff,#f2f6ff 55%,#fff7ed);border:1px solid #cbdcf2;color:#0f1f3a;box-shadow:0 16px 36px #0c23462e}.app.light .accessibility-icon{background:linear-gradient(135deg,#123a74,#0f4c81);color:#fff}.app.light .accessibility-toggle{color:#0f1f3a}.app.light .icon-button{border:1px solid #cbdcf2;background:linear-gradient(135deg,#edf3ff,#e7f0ff);color:#0f233f}.app.light .ghost.icon-button{background:transparent}.app.light .icon-button:hover{background:linear-gradient(135deg,#e1ebff,#dce8ff)}.app.light .accessibility-fab{background:linear-gradient(135deg,#fff,#eef3ff);border:1px solid #cbdcf2;box-shadow:0 14px 28px #0c23462e}.app.dyslexic{font-family:OpenDyslexic,Open Dyslexic,system-ui,sans-serif;letter-spacing:.01em}.app.low-motion *{transition:none!important;animation:none!important}.topbar{background:linear-gradient(120deg,#ffffff1f,#ffffff0a);border:1px solid rgba(255,255,255,.08);padding:16px 20px;border-radius:18px;display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;box-shadow:0 8px 32px #00000040}.topbar .micro{color:#fff;opacity:.9}h1{margin:0;color:#e5edff;letter-spacing:-.02em}.topbar-actions{display:flex;align-items:center;gap:10px;flex-wrap:wrap;justify-content:flex-end}.segmented{display:inline-flex;border:1px solid rgba(255,255,255,.18);border-radius:12px;overflow:hidden;background:#ffffff0a}.segmented button{background:transparent;border:none;color:#e5edff;padding:8px 12px;cursor:pointer}.segmented button.active{background:linear-gradient(135deg,#8da2ff,#c084fc);color:#0b1224;font-weight:700;box-shadow:0 6px 16px #00000040}.app.high-contrast .segmented button.active{background:#ffd500;color:#000;box-shadow:0 0 0 2px #ffd500}main{margin-top:20px;display:flex;flex-direction:column;gap:16px}.grid{display:grid;gap:16px}.grid.two{grid-template-columns:repeat(2,minmax(0,1fr))}.grid.two.responsive{grid-template-columns:2fr 1fr}.grid.two .full{grid-column:1 / -1}@media(max-width:960px){.grid.two,.grid.two.responsive{grid-template-columns:1fr}}.card{background:#ffffff0f;border:1px solid rgba(255,255,255,.08);border-radius:18px;padding:20px;-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px);box-shadow:0 12px 32px #0000002e;color:#e5edff}.card.subtle{background:#ffffff08}.header-row{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.header-row select{min-width:180px}.workspace-tabs{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap}.workspace-panel{margin-top:10px;border:1px solid rgba(255,255,255,.08);background:#ffffff08;border-radius:14px;padding:14px}.workspace-panel.editing{border-color:#c084fc;box-shadow:0 0 0 1px #c084fc59}.workspace-panel-header{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;margin-bottom:8px}.results-panel{display:flex;flex-direction:column;gap:10px}.analytics-panel{display:flex;flex-direction:column;gap:12px}.analytics-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:12px}.analytics-card{border:1px solid rgba(255,255,255,.08);background:#ffffff08;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:6px}.analytics-value{font-size:22px;font-weight:600}.analytics-footer{margin-top:6px}.subject-access-panel{display:flex;flex-direction:column;gap:12px}.subject-access-card{border:1px solid rgba(255,255,255,.08);background:#ffffff05;border-radius:12px;padding:14px;display:flex;flex-direction:column;gap:8px}.subject-access-result{border:1px solid rgba(255,255,255,.08);background:#ffffff08;border-radius:12px;padding:12px;display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.subject-access-results .list-item{align-items:center}.results-controls,.result-stats{gap:8px}.results-toolbar{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.compact-input{width:auto;min-width:220px;padding:8px 10px}.result-question-card{margin-top:6px;border:1px solid rgba(255,255,255,.08);border-radius:12px;padding:12px;background:#ffffff08;display:flex;flex-direction:column;gap:10px}.result-question-header{display:flex;align-items:flex-start;justify-content:space-between;gap:10px;flex-wrap:wrap}.result-groups{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.result-chip{padding:8px 10px;border-radius:12px;border:1px solid rgba(255,255,255,.12);background:#ffffff0a;display:grid;gap:4px;min-width:120px}.result-answer-list{display:flex;flex-direction:column;gap:8px}.result-answer{border:1px dashed rgba(255,255,255,.16);border-radius:10px;padding:10px;background:#ffffff05;display:grid;gap:6px}.result-answer-meta{display:flex;justify-content:space-between;align-items:center;gap:8px;flex-wrap:wrap}.result-answer-value{white-space:pre-wrap;word-break:break-word}.results-empty{border:1px dashed rgba(255,255,255,.2);border-radius:10px;padding:12px;text-align:center;background:#ffffff05}.result-media a{color:#8ac6ff;text-decoration:underline}.pill{display:inline-flex;align-items:center;padding:6px 10px;border-radius:999px;background:#ffffff0f;border:1px solid rgba(255,255,255,.12);color:#e5edff}.muted{opacity:.65}.consent{border:1px solid rgba(255,255,255,.1);padding:12px;border-radius:12px;margin-top:12px;background:#ffffff0a;display:flex;flex-direction:column;gap:12px}.consent-info{border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px;background:#ffffff05;margin:0}.consent-body{margin:6px 0 0;opacity:.9}.consent-checkbox{display:flex;align-items:center;gap:10px}.questions{display:grid;gap:12px}.single-question-shell{margin-top:12px;margin-bottom:16px}.question-progress{margin:12px 0 18px}.question-progress-label{display:flex;justify-content:space-between;align-items:center;font-size:14px;color:#e5edff;gap:8px}.question-progress-bar{width:100%;height:10px;border-radius:999px;background:#ffffff14;overflow:hidden;box-shadow:inset 0 1px 2px #00000040}.question-progress-fill{height:100%;background:linear-gradient(120deg,#8ac6ff,#6d7dff);width:0;transition:width .3s ease}.question-nav{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-top:14px}.question-nav .inline{gap:6px}.question{border:1px solid rgba(255,255,255,.08);border-radius:14px;padding:14px;background:#ffffff08;margin:0}.question-legend{margin:0;padding:0;display:block}.question h3,.question-legend h3{margin:4px 0 6px;color:#e5edff}.question-header{display:flex;justify-content:space-between;align-items:center}.assistive-text{margin:0 0 8px;font-size:14px;opacity:.85}.required{color:#fbbf24;font-size:14px}.field input,.field textarea,input,select,textarea{width:100%;border-radius:10px;border:1px solid #6e7ca5;background:#0f172a;color:#e5edff;padding:10px}input[type=checkbox],input[type=radio]{width:auto;height:auto;padding:0}select{background:linear-gradient(140deg,#1b2744,#11192f);color:#e5edff;font-weight:600}input::placeholder,textarea::placeholder{color:#cbd5f5}select option{background:#0b1224;color:#e5edff}.config-block{margin-top:10px;padding:10px;border:1px solid rgba(255,255,255,.1);background:#ffffff0a;border-radius:10px;display:flex;flex-direction:column;gap:8px}textarea{resize:vertical}.likert{display:flex;gap:8px;flex-wrap:wrap}.chip{border:1px solid rgba(255,255,255,.12);background:#ffffff0d;color:#e5edff;padding:8px 12px;border-radius:10px;cursor:pointer}.chip.selected{border-color:#a5b4fc;background:#a5b4fc33}.choices{display:flex;flex-direction:column;gap:8px}.choice{display:flex;align-items:center;gap:8px}.micro{font-size:13px;opacity:.8;margin:0}.warning{color:#fef3f2;padding:10px 12px;border:2px solid #fef3f2;border-radius:10px;background:#2b0b0b}.success{color:#e8fff1;padding:10px 12px;border:2px solid #e8fff1;border-radius:10px;background:#0c2415}.actions{display:flex;justify-content:flex-end;gap:10px;margin-top:12px}button{border:none;border-radius:10px;padding:10px 14px;cursor:pointer;font-weight:700}button.small{padding:6px 10px;font-size:14px}button.primary{background:linear-gradient(120deg,#15407b,#0d3a66);color:#fff;border:1px solid #0d3a66}button.secondary{background:#ffffff1a;color:#e5edff;border:1px solid rgba(255,255,255,.08)}button.danger{background:#ffe8e2;color:#7a0c0c;border:2px solid #7a0c0c}button:disabled{opacity:.6;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,.chip:focus-visible,.list-item:focus-visible{outline:3px solid #ffd500;outline-offset:2px;box-shadow:0 0 0 3px #0b1224}.list{display:flex;flex-direction:column;gap:8px}.list-item{border:1px solid rgba(255,255,255,.08);border-radius:10px;padding:10px;background:#ffffff08;display:flex;align-items:center;justify-content:space-between;color:#e5edff}.list-item.draggable{cursor:grab}.list-item.dragging{opacity:.6;border-style:dashed}.list-item.drag-over{border-color:#8ac6ff;box-shadow:inset 0 0 0 1px #8ac6ff66}.list-item.with-editor{flex-direction:column;align-items:stretch;gap:10px}.list-item-top{display:flex;align-items:center;justify-content:space-between;gap:10px;flex-wrap:wrap}.list-item.editing{border-color:#c084fc;box-shadow:0 4px 16px #c084fc2e}.list-item.active{border-color:#c084fc;box-shadow:0 6px 16px #c084fc26}.list-item-actions{display:flex;gap:8px;flex-wrap:wrap;justify-content:flex-end}.inline{display:flex;align-items:center;gap:8px;flex-wrap:wrap}.inline.compact{align-items:flex-start;gap:12px}.compact-select{display:inline-block;width:auto;min-width:140px;padding:6px 8px;font-size:14px;min-height:0}.type-inline{display:inline-flex;align-items:center;gap:10px;flex-wrap:wrap;margin-top:4px}.required-star{color:#f87171;font-weight:700;margin-left:6px}.inline-editor{margin-top:10px;padding:12px;border-radius:12px;background:#ffffff08;border:1px solid rgba(255,255,255,.08);display:grid;gap:12px}.inline-editor .inline{justify-content:flex-end}.inline-required{flex-direction:row;align-items:center;gap:6px;margin-left:auto}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.required-order{align-items:flex-start;gap:18px}.stacked-checkbox{display:flex;flex-direction:column;gap:6px}.stacked-checkbox input{width:auto}.transcript{margin-top:8px;width:100%}.upload-shell{margin-top:8px;position:relative;display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 14px;border-radius:12px;border:1px dashed rgba(255,255,255,.2);background:linear-gradient(135deg,#6d7dff14,#15407b2e);color:#e5edff;transition:border-color .2s ease,box-shadow .2s ease,background .2s ease}.upload-shell:hover{border-color:#8ac6ff;background:linear-gradient(135deg,#6d7dff24,#15407b38);box-shadow:0 6px 18px #0000002e}.upload-shell:focus-within{border-color:#ffd500;box-shadow:0 0 0 3px #0b1224,0 0 0 2px #ffd500}.upload-input{position:absolute;inset:0;opacity:0;cursor:pointer}.upload-visual{display:flex;flex-direction:column;gap:4px;pointer-events:none}.upload-title{font-weight:700}.upload-hint{font-size:13px;opacity:.85}.upload-button{pointer-events:none;padding:8px 12px;border-radius:10px;border:1px solid #0d3a66;background:linear-gradient(120deg,#15407b,#0d3a66);color:#fff;font-weight:700;white-space:nowrap}.app.light .upload-shell{border-color:#cbdcf2;background:linear-gradient(135deg,#ecf3ff,#ffeede);color:#0f233f}.app.light .upload-shell:hover{border-color:#1c4e80;background:linear-gradient(135deg,#e2edff,#ffe4cf);box-shadow:0 6px 16px #1c4e802e}.app.light .upload-hint{color:#1f355d;opacity:.95}.app.light .upload-button{border-color:#0f3d7a;background:linear-gradient(120deg,#1849a9,#0f3d7a);color:#fff}.app.high-contrast .upload-shell{border-color:#ffd500;background:#0f0f0f}.app.high-contrast .upload-button{border-color:#ffd500;background:#ffd500;color:#000}.attachment{margin-top:8px;border:1px dashed rgba(255,255,255,.18);padding:8px;border-radius:10px}.divider{height:1px;width:100%;background:#ffffff14;margin:12px 0}.segmented.small button{padding:6px 10px;font-weight:600}.segmented.full-width{width:100%;justify-content:space-between}.segmented.full-width button{flex:1;text-align:center}.accessibility-panel{position:fixed;right:24px;bottom:24px;width:280px;background:#ffffff14;border:1px solid rgba(255,255,255,.12);border-radius:16px;padding:14px 16px;box-shadow:0 16px 36px #00000047;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);color:#e5edff;z-index:20}.app.high-contrast .accessibility-panel{background:#0f0f0f;border-color:#ffd500;box-shadow:0 0 0 1px #ffd500}.app.high-contrast .accessibility-icon{background:#ffd500;color:#000;box-shadow:0 0 0 1px #ffd500}.accessibility-header{display:flex;align-items:center;gap:10px;margin-bottom:6px;justify-content:space-between}.accessibility-icon{width:42px;height:42px;border-radius:12px;display:grid;place-items:center;background:linear-gradient(135deg,#c084fc,#6d7dff);color:#0b0f1d;box-shadow:0 6px 18px #0003}.accessibility-icon svg{width:22px;height:22px}.accessibility-group{margin-top:12px;display:flex;flex-direction:column;gap:8px}.accessibility-toggle{display:flex;align-items:center;gap:8px;color:#e5edff;font-size:14px}.accessibility-toggle input{width:16px;height:16px}.accessibility-toggle span{flex:1}.icon-button{border:1px solid rgba(255,255,255,.18);background:#ffffff0f;color:#e5edff;padding:6px 10px;border-radius:10px;cursor:pointer;font-weight:600}.icon-button:hover{background:#ffffff1f}.ghost{background:transparent}.accessibility-fab{position:fixed;right:24px;bottom:24px;width:64px;height:64px;border-radius:16px;border:none;background:#ffffff14;box-shadow:0 14px 32px #00000047;display:grid;place-items:center;padding:0;cursor:pointer}.accessibility-fab .accessibility-icon{width:48px;height:48px}.app.high-contrast .accessibility-fab{background:#0f0f0f;border:1px solid #ffd500}@media(max-width:640px){.accessibility-panel{width:calc(100% - 24px);right:12px;bottom:12px}}@media(max-width:480px){.accessibility-panel{width:calc(100% - 16px);right:8px;left:8px;bottom:8px}.accessibility-fab{width:56px;height:56px;right:12px;bottom:12px}}
