@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/plus-jakarta-sans-latin-600-normal-DLTa1BUW.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-600-normal-BR_Ojra4.woff) format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/plus-jakarta-sans-latin-700-normal-CfpNZvy6.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-700-normal-DqEcQeE5.woff) format("woff")}@font-face{font-family:Plus Jakarta Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/plus-jakarta-sans-latin-800-normal-CusIZhrK.woff2) format("woff2"),url(/assets/plus-jakarta-sans-latin-800-normal-BRNHt2w0.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/inter-latin-400-normal-C38fXH4l.woff2) format("woff2"),url(/assets/inter-latin-400-normal-CyCys3Eg.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/inter-latin-500-normal-Cerq10X2.woff2) format("woff2"),url(/assets/inter-latin-500-normal-BL9OpVg8.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/inter-latin-600-normal-LgqL8muc.woff2) format("woff2"),url(/assets/inter-latin-600-normal-CiBQ2DWP.woff) format("woff")}@font-face{font-family:Inter;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/inter-latin-700-normal-Yt3aPRUw.woff2) format("woff2"),url(/assets/inter-latin-700-normal-BLAVimhd.woff) format("woff")}:root{--bg-page: #ffffff;--bg-surface: #ffffff;--bg-subtle: #f5f4f2;--text: #17110f;--text-secondary: #3d3532;--text-muted: #625a55;--border: #e3e0dc;--border-strong: #17110f;--accent: #6a2fd6;--accent-strong: #5b21c7;--accent-wash: #f1eafe;--danger: #b42318;--danger-strong: #8f1c13;--danger-wash: #fdecea;--tile-coral: #ee6c62;--tile-yellow: #f8dc6b;--tile-purple: #6a2fd6;--tile-pink: #f09ad8;--tile-lavender: #ece4fd;--display: "Plus Jakarta Sans", system-ui, sans-serif;--sans: Inter, system-ui, sans-serif;--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);font-family:var(--sans);color:var(--text);background:var(--bg-page);font-synthesis:none;-webkit-text-size-adjust:100%}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh;background:var(--bg-page);font-size:16px;line-height:1.55;-webkit-font-smoothing:antialiased}h1,h2,h3,p{margin:0}h1,h2,h3{font-family:var(--display);font-weight:700;letter-spacing:-.02em;text-wrap:balance}p{text-wrap:pretty}button,input,select,textarea{font:inherit;color:inherit}button{cursor:pointer;-webkit-tap-highlight-color:transparent;touch-action:manipulation}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.45}::selection{background:var(--accent-wash);color:var(--text)}.app-shell{min-height:100vh;display:flex;flex-direction:column;overflow-x:clip}.site-header{width:100%;max-width:1200px;margin:0 auto;padding:20px 32px;display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--border)}.brand{display:inline-flex;align-items:center;gap:10px;min-height:44px;border:0;padding:0;background:none;font-family:var(--display);font-size:28px;font-weight:700;letter-spacing:-.03em}.brand-stop{color:var(--accent)}.site-footer{width:100%;max-width:1200px;margin:auto auto 0;padding:24px 32px;display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px 24px;border-top:1px solid var(--border);color:var(--text-muted);font-size:14px}.site-footer a{display:inline-flex;align-items:center;min-height:44px;margin:-12px 0;color:var(--text);font-weight:600;text-decoration:underline;text-underline-offset:4px}@media(hover:hover)and (pointer:fine){.site-footer a:hover{color:var(--accent)}}.flow-steps{display:flex;gap:4px;margin:0;padding:0;list-style:none;font-size:14px;font-weight:600;color:var(--text-muted)}.flow-steps li{display:flex;align-items:center;gap:8px;padding:0 12px}.flow-steps li+li:before{content:"";width:20px;height:1px;margin-right:4px;background:var(--border)}.flow-steps span{display:grid;place-items:center;width:24px;height:24px;border:1.5px solid currentColor;border-radius:50%;font-size:12px;font-variant-numeric:tabular-nums;transition:background-color .15s ease,color .15s ease}.flow-steps li.done{color:var(--text)}.flow-steps li.done span{background:var(--text);color:var(--bg-surface)}.flow-steps li[aria-current=step]{color:var(--accent)}.flow-steps li[aria-current=step] span{background:var(--accent);border-color:var(--accent);color:var(--bg-surface)}.landing-cta,.primary-button,.secondary-button,.header-cta{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:48px;padding:0 22px;border:1.5px solid var(--text);border-radius:10px;font-weight:600;transition:transform .15s var(--ease-out),background-color .15s ease,color .15s ease,border-color .15s ease}.landing-cta,.primary-button,.header-cta{border-color:var(--text);background:var(--text);color:#fff}.secondary-button{background:transparent}.header-cta{min-height:44px;padding:0 18px;font-size:15px}.landing-cta:active,.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled),.header-cta:active,.format-option:active,.copy-button:active,.fullscreen-button:active,.option:active{transform:scale(.96)}@media(hover:hover)and (pointer:fine){.landing-cta:hover,.primary-button:hover:not(:disabled),.header-cta:hover{background:var(--text-secondary);border-color:var(--text-secondary)}.secondary-button:hover:not(:disabled){background:var(--text);color:var(--bg-surface)}}.quiet-back,.text-button,.copy-button,.fullscreen-button{display:inline-flex;align-items:center;gap:7px;min-height:44px;padding:0 4px;border:0;background:none;color:var(--text-secondary);font-size:15px;font-weight:600;transition:color .15s ease,transform .15s var(--ease-out)}.text-button,.copy-button{text-decoration:underline;text-underline-offset:4px;text-decoration-thickness:1px}@media(hover:hover)and (pointer:fine){.quiet-back:hover,.text-button:hover,.copy-button:hover,.fullscreen-button:hover{color:var(--accent)}}.configure-page,.import-page,.practice-page,.results-page{animation:page-in .26s var(--ease-out) both}@keyframes page-in{0%{opacity:0;transform:translateY(8px)}}.landing-page{width:100%;max-width:1200px;margin:0 auto;padding:clamp(56px,9vw,112px) 32px 0}.landing-copy{position:relative;display:grid;justify-items:center;text-align:center}.hero-eyebrow{display:inline-flex;align-items:center;gap:10px;margin-bottom:28px;padding:6px 14px 6px 8px;border:1px solid var(--border);border-radius:999px;font-size:14px;font-weight:600}.hero-eyebrow span{display:inline-flex}.hero-eyebrow i{width:20px;height:20px;border:2px solid var(--bg-page);border-radius:50%;background:var(--tile-coral)}.hero-eyebrow i+i{margin-left:-6px}.hero-eyebrow i:nth-child(2){background:var(--tile-yellow)}.hero-eyebrow i:nth-child(3){background:var(--tile-purple)}.hero-eyebrow i:nth-child(4){background:var(--tile-pink)}.landing-copy .hl{padding:0 .04em;background:linear-gradient(transparent 64%,var(--hl) 64%,var(--hl) 90%,transparent 90%);-webkit-box-decoration-break:clone;box-decoration-break:clone}.hl-coral{--hl: var(--tile-coral)}.hl-yellow{--hl: var(--tile-yellow)}.hero-sticker{position:absolute;display:inline-flex;align-items:center;gap:8px;padding:10px 16px;border-radius:14px;font-family:var(--display);font-size:17px;font-weight:800;white-space:nowrap;font-variant-numeric:tabular-nums}.hero-sticker b{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;background:#fff;color:var(--tile-purple);font-size:13px}.chip-purple{background:var(--tile-purple);color:#fff}.chip-yellow{background:var(--tile-yellow)}.chip-pink{background:var(--tile-pink)}.chip-coral{background:var(--tile-coral)}.chip-lavender{background:var(--tile-lavender);color:var(--accent)}.sticker-1{top:58%;left:-8px;rotate:-8deg}.sticker-2{top:8%;left:6%;rotate:6deg}.sticker-3{top:16%;right:2%;rotate:7deg}.sticker-4{top:66%;right:-4px;rotate:-5deg}.sticker-5{bottom:4%;left:12%;rotate:4deg}.landing-copy>.hero-eyebrow,.landing-copy>h1,.landing-copy>p,.landing-copy>.landing-actions,.landing-copy>small{animation:hero-in .3s var(--ease-out) both;animation-delay:calc(var(--i, 0) * .1s)}.hero-eyebrow{--i: 0}.landing-copy>h1{--i: 1}.landing-copy>p:not(.hero-eyebrow){--i: 2}.landing-actions{--i: 3}.landing-copy>small{--i: 4}.sticker-1{--i: 0}.sticker-2{--i: 1}.sticker-3{--i: 2}.sticker-4{--i: 3}.sticker-5{--i: 4}@keyframes hero-in{0%{opacity:0;filter:blur(4px);transform:translateY(12px)}}.hero-sticker{animation:chip-in .3s var(--ease-out) both;animation-delay:calc(.5s + var(--i, 0) * 60ms)}@keyframes chip-in{0%{opacity:0;scale:.9}}.landing-copy .hl{background-repeat:no-repeat;animation:hl-draw .4s var(--ease-out) both;animation-delay:.35s}.hl-yellow{animation-delay:.45s}@keyframes hl-draw{0%{background-size:0% 100%}to{background-size:100% 100%}}.landing-copy h1{font-size:clamp(42px,6.6vw,84px);font-weight:800;line-height:1.02;letter-spacing:-.025em}.landing-copy>p{max-width:520px;margin:24px 0 32px;color:var(--text-secondary);font-size:18px;line-height:1.6}.landing-copy small{margin-top:20px;color:var(--text-muted);font-size:14px}.landing-actions{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:12px 24px}.landing-cta{min-height:52px;padding:0 26px;font-size:16px}.landing-secondary{color:var(--text);display:inline-flex;align-items:center;min-height:44px;font-weight:600;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;transition:color .15s ease}@media(hover:hover)and (pointer:fine){.landing-secondary:hover{color:var(--accent)}}.mosaic{margin-top:clamp(48px,7vw,80px);display:grid;grid-template-columns:repeat(4,minmax(0,1fr));grid-auto-rows:minmax(264px,auto);overflow:hidden;border-radius:20px}.tile{position:relative;display:flex;flex-direction:column;justify-content:space-between;gap:16px;padding:28px;min-width:0}.tile-demo{grid-column:span 2;grid-row:span 2}.tile-coral{background:var(--tile-coral);color:var(--text)}.tile-yellow{background:var(--tile-yellow);color:var(--text)}.tile-purple{background:var(--tile-purple);color:#fff}.tile-pink{background:var(--tile-pink);color:var(--text)}.tile-demo{padding:36px;background:var(--tile-lavender);justify-content:flex-start;gap:0;z-index:1}.knob-right:after{content:"";position:absolute;top:50%;right:-36px;width:72px;aspect-ratio:1;translate:0 -50%;border-radius:50%;background:inherit}.tile-title{font-family:var(--display);font-size:clamp(34px,3.6vw,50px);font-weight:800;line-height:1;letter-spacing:-.025em}.tile-glyph{margin-top:auto;font-family:var(--display);font-size:clamp(40px,4vw,56px);font-weight:800;line-height:1;letter-spacing:-.02em;font-variant-numeric:tabular-nums}.tile-caption{font-size:15px;font-weight:600}.tile-dots{margin-top:auto;display:grid;grid-template-columns:repeat(2,48px);gap:8px}.tile-dots i{display:grid;place-items:center;width:48px;height:48px;border:2px solid var(--text);border-radius:50%;font-family:var(--display);font-size:18px;font-style:normal;font-weight:700}.tile-dots i:nth-child(2){background:var(--text);color:var(--tile-pink)}.preview-label{color:var(--accent);font-size:14px;font-weight:600}.tile-demo .demo-question{font-family:var(--display);font-weight:800;letter-spacing:-.025em}.tile-demo h2,.tile-demo .demo-question{margin:10px 0 0;font-size:clamp(26px,2.8vw,38px);line-height:1.15}.preview-options{display:grid;gap:10px;margin-top:auto;padding-top:32px}.preview-option{display:flex;align-items:center;gap:14px;width:100%;min-height:60px;padding:8px 16px;border:1.5px solid transparent;border-radius:10px;background:#fff;text-align:left;font-size:16px;transition:transform .15s var(--ease-out),border-color .15s ease,background-color .15s ease,color .15s ease}.preview-option:active{transform:scale(.96)}@media(hover:hover)and (pointer:fine){.preview-option:hover{border-color:var(--text)}}.preview-option b{flex:none;display:grid;place-items:center;width:28px;height:28px;border:1.5px solid currentColor;border-radius:50%;font-size:13px}.preview-option span{flex:1}.preview-option.right{animation:option-pop .25s var(--ease-out);border-color:var(--accent);background:var(--accent);color:#fff}@keyframes option-pop{40%{transform:scale(1.02)}}.preview-option.wrong{border-color:var(--danger);background:var(--danger-wash);color:var(--danger-strong)}.preview-note[data-picked=true]{animation:note-in .2s var(--ease-out) both}@keyframes note-in{0%{opacity:0;transform:translateY(4px)}}.preview-note{min-height:3.1em;margin-top:14px;color:var(--text-secondary);font-size:15px;line-height:1.55}.ai-band{margin:clamp(56px,8vw,96px) calc(50% - 55vw) 0;padding:18px 0;overflow:hidden;background:var(--text);color:#fff;rotate:-1.5deg}.ai-band p{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 0;font-family:var(--display);font-size:clamp(18px,2.2vw,26px);font-weight:600;letter-spacing:-.02em}.ai-band span{display:inline-flex;align-items:center}.ai-band span+span:before{content:"";width:14px;height:14px;margin:0 24px;background:var(--tile-yellow);border-radius:3px}.ai-band span:first-child{color:var(--tile-yellow)}.landing-flow{margin-top:clamp(72px,10vw,128px);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px}.landing-flow h2{position:sticky;top:24px;align-self:start;font-size:clamp(30px,4vw,48px);line-height:1.08}.landing-flow ol{margin:0;padding:0;list-style:none;counter-reset:step}.landing-flow li{counter-increment:step;display:grid;grid-template-columns:64px minmax(0,1fr);gap:4px 20px;padding:28px 0;border-top:1px solid var(--border)}.landing-flow li:first-child{padding-top:0;border-top:0}.landing-flow li:before{content:counter(step);grid-row:span 2;display:grid;place-items:center;width:64px;height:64px;border-radius:16px;font-family:var(--display);font-size:28px;font-weight:800}.landing-flow li:nth-child(1):before{background:var(--tile-coral)}.landing-flow li:nth-child(2):before{background:var(--tile-yellow)}.landing-flow li:nth-child(3):before{background:var(--tile-purple);color:#fff}.landing-flow li:nth-child(4):before{background:var(--tile-pink)}.landing-flow h3{align-self:end;font-size:24px;line-height:1.15}.landing-flow li p{color:var(--text-secondary)}.landing-format{margin-top:clamp(72px,10vw,128px);display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);gap:48px;align-items:center}.landing-format h2{font-size:clamp(30px,4vw,48px);line-height:1.05}.landing-format p{max-width:380px;margin-top:14px;color:var(--text-secondary)}.landing-format pre{order:-1;margin:0;padding:28px;overflow-x:auto;border-radius:20px;background:var(--text);color:#fff;font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:14px;line-height:1.7}.landing-faq{margin-top:clamp(72px,10vw,128px);display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px}.landing-faq h2{font-size:clamp(30px,4vw,48px);line-height:1.08}.landing-faq details{border-top:1px solid var(--border)}.landing-faq details:last-child{border-bottom:1px solid var(--border)}.landing-faq summary{display:flex;align-items:center;justify-content:space-between;gap:16px;min-height:64px;font-family:var(--display);font-size:20px;font-weight:700;cursor:pointer;list-style:none}.landing-faq summary::-webkit-details-marker{display:none}.landing-faq summary:after{content:"";flex:none;width:32px;height:32px;border-radius:50%;background:linear-gradient(var(--accent),var(--accent)) center / 12px 2px no-repeat,linear-gradient(var(--accent),var(--accent)) center / 2px 12px no-repeat,var(--tile-lavender);transition:rotate .2s var(--ease-out)}.landing-faq details[open] summary:after{rotate:45deg}.landing-faq details[open] p{animation:note-in .2s var(--ease-out) both}.landing-faq details p{max-width:52ch;padding-bottom:20px;color:var(--text-secondary)}.landing-closing{margin:clamp(72px,10vw,128px) 0 clamp(48px,6vw,80px);padding:clamp(56px,8vw,96px) 32px;display:flex;flex-direction:column;align-items:center;gap:28px;border-radius:20px;background:var(--tile-yellow);text-align:center}.landing-closing h2{max-width:14ch;font-size:clamp(36px,5.6vw,72px);font-weight:800;line-height:1;letter-spacing:-.025em}.configure-page,.import-page,.practice-page,.results-page{width:100%;max-width:1160px;margin:0 auto;padding:40px 32px 80px}.configure-page{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:56px;align-items:start}.config-side{position:sticky;top:24px}.config-summary{margin:36px 0 0;border-top:2px solid var(--border-strong)}.config-summary div{display:flex;justify-content:space-between;gap:16px;padding:10px 0;border-bottom:1px solid var(--border);font-size:15px}.config-summary dt{color:var(--text-muted)}.config-summary dd{margin:0;max-width:60%;overflow:hidden;text-align:right;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.config-heading h1,.import-heading h1{margin-top:12px;font-size:clamp(36px,5vw,56px);line-height:1.02}.config-heading p,.import-heading p{max-width:520px;margin-top:14px;color:var(--text-secondary)}.config-panel{margin-top:0;padding:32px;display:grid;gap:24px;border-radius:20px;background:var(--bg-subtle)}.field,.format-field legend{display:grid;gap:8px;font-size:14px;font-weight:700;letter-spacing:.01em}.field input,.field select,.field textarea,.timer-input input{width:100%;min-height:48px;padding:10px 14px;border:1.5px solid var(--border);border-radius:10px;background:#fff;font-size:16px;font-weight:400;transition:border-color .15s ease,background-color .15s ease}.field textarea{resize:vertical}@media(hover:hover)and (pointer:fine){.field input:hover,.field select:hover,.field textarea:hover{border-color:var(--text-muted)}}.field input:focus,.field select:focus,.field textarea:focus,.timer-input input:focus{border-color:var(--text);background:var(--bg-surface)}.field-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:start}.field-error{color:var(--danger);font-size:14px;font-weight:600}.difficulty-field b{color:var(--accent)}.difficulty-field input[type=range]{min-height:0;padding:0;border:0;background:none;accent-color:var(--accent)}.range-labels{display:flex;justify-content:space-between;color:var(--text-muted);font-size:13px;font-weight:400}.format-field{min-width:0;margin:0;padding:0;border:0}.format-field legend{padding:0;margin-bottom:8px}.format-options{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.format-option{min-height:48px;padding:6px 8px;border:1.5px solid var(--border);border-radius:10px;background:var(--bg-page);font-size:14px;font-weight:600;transition:transform .15s var(--ease-out),border-color .15s ease,background-color .15s ease,color .15s ease}.format-option.selected{border-color:var(--text);background:var(--text);color:var(--bg-surface)}@media(hover:hover)and (pointer:fine){.format-option:not(.selected):hover{border-color:var(--text)}}.timer-field{display:flex;flex-wrap:wrap;align-items:center;gap:8px 20px;min-height:44px}.timer-choice{display:inline-flex;align-items:center;gap:10px;min-height:44px;font-weight:600;cursor:pointer}.timer-choice input{width:20px;height:20px;accent-color:var(--accent)}.timer-input span{display:inline-flex;align-items:center;gap:8px}.timer-input input{width:88px;text-align:center}.timer-hint{color:var(--text-muted);font-size:15px}.additional-instructions{border-top:1px solid var(--border);padding-top:16px}.additional-instructions summary{display:flex;align-items:center;justify-content:space-between;min-height:44px;font-weight:600;cursor:pointer}.additional-instructions summary span{color:var(--text-muted);font-size:13px;font-weight:400}.additional-instructions .field{margin-top:8px}.config-panel .primary-button{min-height:52px;width:100%}.import-grid{margin-top:36px;display:grid;grid-template-columns:1fr 1fr;gap:24px;align-items:stretch}.prompt-card,.json-card{min-width:0;padding:24px;display:flex;flex-direction:column;gap:14px;border-radius:20px;background:var(--bg-subtle)}.card-topline{display:flex;align-items:center;justify-content:space-between;gap:12px;font-family:var(--display);font-size:20px;font-weight:700}.card-topline>span{display:inline-flex;align-items:center;gap:8px}.step-badge{display:inline-grid;place-items:center;width:28px;height:28px;border-radius:50%;background:var(--text);color:var(--bg-surface);font-family:var(--sans);font-size:14px;font-style:normal;font-weight:700}.json-card .step-badge{background:var(--accent)}.copy-hint,.empty-import{color:var(--text-muted);font-size:15px}.prompt-card pre{flex:1;max-height:420px;margin:0;padding:16px;overflow:auto;border:1px solid var(--border);border-radius:10px;background:var(--bg-page);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;line-height:1.6;white-space:pre-wrap;overflow-wrap:anywhere}.json-card textarea{flex:1;min-height:280px;padding:16px;resize:vertical;border:1.5px solid var(--border);border-radius:10px;background:var(--bg-page);font-family:ui-monospace,SF Mono,Menlo,monospace;font-size:13px;line-height:1.6;transition:border-color .15s ease,background-color .15s ease}.json-card textarea:focus{border-color:var(--text);background:var(--bg-surface)}.loading-state{color:var(--text-secondary);font-size:15px}.error-box{display:flex;gap:12px;padding:14px 16px;border:1.5px solid var(--danger);border-radius:10px;background:var(--danger-wash);color:var(--danger-strong);font-size:15px;animation:page-in .2s var(--ease-out) both}.error-box svg{flex:none;margin-top:2px}.error-box div{display:grid;gap:4px}.json-card .primary-button{min-height:52px}.practice-page{display:flex;flex-direction:column;min-height:calc(100vh - 84px)}.practice-toolbar{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:8px 16px}.practice-meta{display:flex;gap:16px;font-weight:600}.practice-meta span:last-child{color:var(--accent);font-variant-numeric:tabular-nums}.exam-controls{display:flex;align-items:center;gap:16px}.timer-display{display:inline-flex;align-items:center;gap:8px;font-weight:700;font-variant-numeric:tabular-nums}.timer-urgent{color:var(--danger)}.fullscreen-message{margin-top:8px;color:var(--danger);font-size:14px;font-weight:600}.progress-track{height:4px;margin-top:12px;overflow:hidden;background:var(--border)}.progress-track span{display:block;width:100%;height:100%;background:var(--accent);transform-origin:left;transition:transform .28s var(--ease-out)}.practice-body{flex:1;display:grid;grid-template-columns:minmax(0,1fr) 200px;gap:56px;align-items:start}.question-nav{position:sticky;top:24px;margin-top:56px;padding-top:14px;border-top:2px solid var(--border-strong)}.question-nav p{margin-bottom:12px;color:var(--text-muted);font-size:13px;font-weight:700;letter-spacing:.02em}.question-nav div{display:grid;grid-template-columns:repeat(auto-fill,minmax(44px,1fr));gap:6px}.question-nav button{min-height:44px;border:1.5px solid var(--border);border-radius:10px;background:var(--bg-surface);font-size:14px;font-weight:600;font-variant-numeric:tabular-nums;transition:transform .15s var(--ease-out),border-color .15s ease,background-color .15s ease,color .15s ease}.question-nav button:active{transform:scale(.96)}.question-nav button.answered{border-color:var(--text);background:var(--text);color:var(--bg-surface)}.question-nav button[aria-current=step]{border-color:var(--accent);background:var(--accent);color:var(--bg-surface)}@media(hover:hover)and (pointer:fine){.question-nav button:not([aria-current=step]):hover{border-color:var(--accent)}}.question-layout{width:100%;max-width:720px;padding:56px 0 40px;animation:question-in .22s var(--ease-out) both}@keyframes question-in{0%{opacity:0;transform:translateY(6px)}}.question-copy>p{color:var(--text-muted);font-size:14px;font-weight:700;letter-spacing:.02em}.question-copy h1{margin:8px 0 32px;font-size:clamp(28px,4vw,40px);line-height:1.15}.option-list{display:grid;gap:10px;min-width:0;margin:0;padding:0;border:0}.option-list legend{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.option{display:flex;align-items:center;gap:16px;width:100%;min-height:60px;padding:10px 18px;border:1.5px solid var(--border);border-radius:10px;background:var(--bg-surface);text-align:left;font-size:18px;transition:transform .15s var(--ease-out),border-color .15s ease,background-color .15s ease;animation:question-in .22s var(--ease-out) both}.option:nth-of-type(2){animation-delay:30ms}.option:nth-of-type(3){animation-delay:60ms}.option:nth-of-type(4){animation-delay:85ms}.option>span:nth-child(2){flex:1}.option-letter{flex:none;display:grid;place-items:center;width:32px;height:32px;border:1.5px solid var(--text);border-radius:50%;font-size:14px;font-weight:700;transition:background-color .15s ease,border-color .15s ease,color .15s ease}@media(hover:hover)and (pointer:fine){.option:hover{border-color:var(--text)}}.option.selected{border-color:var(--accent);background:var(--accent-wash)}.option.selected .option-letter{border-color:var(--accent);background:var(--accent);color:var(--bg-surface)}.option.selected>svg{color:var(--accent)}.practice-footer{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:12px 16px;padding-top:20px;border-top:2px solid var(--border-strong);color:var(--text-secondary);font-size:15px}.practice-footer>div{display:flex;gap:10px}.result-layout{display:grid;grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr);gap:48px;align-items:start}.result-hero{position:sticky;top:24px;display:grid;justify-items:start;padding:36px;border-radius:20px;background:var(--tile-lavender)}.result-label{padding:4px 12px;border-radius:999px;background:#fff;color:var(--accent);font-size:14px;font-weight:700}.result-hero h1{max-width:14ch;margin-top:20px;font-size:clamp(32px,4vw,48px);line-height:1.05}.result-hero>p{margin-top:10px;color:var(--text-secondary)}.score-display{display:flex;align-items:baseline;flex-wrap:wrap;gap:4px 14px;width:100%;margin:32px 0 16px}.score-display strong{font-family:var(--display);font-size:clamp(72px,9vw,112px);font-weight:800;line-height:.9;letter-spacing:-.025em}.score-display span{flex:1;min-width:120px;color:var(--text-secondary)}.score-display em{font-family:var(--display);font-size:28px;font-style:normal;font-weight:800;color:var(--accent)}.score-bar{width:100%;height:10px;margin-bottom:32px;overflow:hidden;border-radius:999px;background:#fff}.score-bar span{display:block;height:100%;border-radius:inherit;background:var(--accent);transform-origin:left}.review-section{display:grid;gap:20px}.review-section h2{font-size:32px}.review-list{display:grid;gap:12px}.review-item{display:grid;grid-template-columns:40px minmax(0,1fr);gap:16px;padding:24px;border-radius:16px;background:var(--bg-subtle)}.review-number{display:grid;place-items:center;width:40px;height:40px;border-radius:50%;background:var(--accent);color:#fff;font-family:var(--display);font-size:16px;font-weight:800}.review-content{display:grid;gap:6px;justify-items:start;min-width:0}.review-status{display:inline-flex;align-items:center;gap:6px;color:var(--accent);font-size:14px;font-weight:700}.review-item.incorrect .review-status{color:var(--danger)}.review-item.incorrect .review-number{background:var(--danger)}.review-content h3{font-size:20px;line-height:1.3}.answer-line{color:var(--text-secondary);font-size:16px}.answer-line b{color:var(--text)}.explanation{width:100%;margin-top:8px;padding:12px 16px;border-radius:10px;background:#fff;color:var(--text-secondary);font-size:16px}@media(max-width:900px){.landing-format,.landing-faq,.landing-flow{grid-template-columns:1fr}.hero-sticker{display:none}.landing-flow h2{position:static}.landing-format pre{order:0}.mosaic{grid-template-columns:repeat(2,minmax(0,1fr))}.tile-demo{grid-column:1 / -1;grid-row:auto}.knob-right:after{display:none}.import-grid,.configure-page,.practice-body,.result-layout{grid-template-columns:1fr;gap:24px}.config-side,.result-hero,.question-nav{position:static}.question-nav{margin-top:0;order:2}.flow-steps li{padding:0 6px;font-size:0;gap:0}.flow-steps li[aria-current=step]{font-size:14px;gap:8px}.flow-steps li+li:before{width:8px}}@media(max-width:760px){body{font-size:16px}.site-header{padding:14px 20px}.brand{font-size:24px}.landing-page,.configure-page,.import-page,.practice-page,.results-page{padding-left:20px;padding-right:20px}.landing-copy{justify-items:stretch}.mosaic{grid-auto-rows:minmax(200px,auto);border-radius:16px}.tile{padding:20px}.tile-demo{padding:24px}.ai-band p{gap:8px 20px;font-size:17px}.ai-band span+span:before{display:none}.ai-band span:first-child{flex-basis:100%;justify-content:center}.landing-flow li{grid-template-columns:48px minmax(0,1fr);gap:4px 14px}.landing-flow li:before{width:48px;height:48px;border-radius:12px;font-size:22px}.landing-actions{flex-direction:column;align-items:stretch}.landing-secondary{justify-content:center}.landing-closing{padding-left:20px;padding-right:20px}.config-panel{padding:20px}.field-grid{grid-template-columns:1fr}.prompt-card,.json-card{padding:18px}.question-layout{padding:24px 0 8px}.config-summary{margin-top:20px}.option{font-size:17px}.practice-footer{flex-direction:column;align-items:stretch}.practice-footer>div{display:grid;grid-template-columns:1fr 1fr}.result-hero{padding:24px}.review-item{grid-template-columns:32px minmax(0,1fr);gap:12px;padding:16px}.review-number{width:32px;height:32px;font-size:14px}}@media(prefers-reduced-motion:reduce){.configure-page,.import-page,.practice-page,.results-page,.question-layout,.landing-copy>.hero-eyebrow,.landing-copy>h1,.landing-copy>p,.landing-copy>.landing-actions,.landing-copy>small,.hero-sticker,.option,.error-box,.preview-note[data-picked=true],.landing-faq details[open] p{animation-name:fade-only;animation-delay:0ms}.preview-option.right,.landing-copy .hl{animation:none}.landing-faq summary:after{transition:none}.progress-track span{transition:none}.landing-cta:active,.primary-button:active:not(:disabled),.secondary-button:active:not(:disabled),.header-cta:active,.format-option:active,.copy-button:active,.fullscreen-button:active,.option:active,.preview-option:active,.question-nav button:active{transform:none}}@keyframes fade-only{0%{opacity:0}}@supports (animation-timeline: view()){.landing-flow li,.landing-faq,.landing-closing{animation:reveal linear both;animation-timeline:view();animation-range:entry 0% entry 35%}.landing-flow li:before{animation:badge-in linear both;animation-timeline:view();animation-range:entry 0% entry 45%}.tile-dots i:nth-child(1){animation:dot-off linear both;animation-timeline:view();animation-range:entry 30% entry 90%}.tile-dots i:nth-child(2){animation:dot-on linear both;animation-timeline:view();animation-range:entry 30% entry 90%}@media(prefers-reduced-motion:reduce){.landing-flow li,.landing-faq,.landing-closing{animation-name:fade-only}.landing-flow li:before,.tile-dots i:nth-child(1),.tile-dots i:nth-child(2){animation:none}}}@keyframes reveal{0%{opacity:0;transform:translateY(12px)}}@keyframes badge-in{0%{scale:.8}}@keyframes dot-off{0%{background:var(--text);color:var(--tile-pink)}}@keyframes dot-on{0%{background:transparent;color:var(--text)}}
