.sn-form-field{display:grid;gap:.5rem;color:var(--text-primary)}.sn-form-field--surface{padding:1rem;border:1px solid var(--border-default);border-radius:var(--sn-radius-card);background:var(--surface-default);box-shadow:var(--sn-shadow-card)}.sn-form-label{display:block;color:var(--text-primary);font-size:.875rem;font-weight:700;line-height:1.4}.sn-form-hint,.sn-form-error{display:block;color:var(--text-secondary);font-size:.75rem;font-weight:600;line-height:1.35}.sn-form-error{color:var(--color-error);font-weight:700}.sn-form-control{width:100%;min-height:44px;border:1px solid var(--border-default);border-radius:var(--sn-radius-control);background:var(--surface-default);padding:.625rem .75rem;color:var(--text-primary);font:inherit;font-weight:700;line-height:1.25;transition:border-color .15s ease,box-shadow .15s ease,background-color .15s ease}.sn-form-control:hover:not(:disabled){border-color:var(--border-strong)}.sn-form-control:focus,.sn-form-control.is-focus{border-color:var(--border-strong);outline:2px solid var(--sn-focus-ring);outline-offset:2px}.sn-form-control[aria-invalid=true]{border-color:var(--color-error)}.sn-form-control[aria-invalid=true]:focus{outline-color:color-mix(in srgb,var(--color-error) 30%,transparent)}.sn-form-control:disabled{cursor:not-allowed;background:var(--color-cream-200);color:var(--text-muted);opacity:.78}.sn-selection-control,.sn-toggle-control{position:relative;width:100%;min-height:64px;border:1px solid var(--border-default);border-radius:var(--sn-radius-card);background:var(--surface-default);color:var(--text-primary);transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.sn-selection-control{display:flex;align-items:center;gap:.75rem;padding:.75rem;text-align:left}.sn-selection-control--stacked{align-items:stretch;flex-direction:column;justify-content:center}.sn-selection-control--embedded{min-height:48px;border-color:transparent;border-radius:var(--sn-radius-control);background:transparent;padding:.5rem}.sn-selection-control--compact{min-height:44px;border-radius:var(--sn-radius-control);padding:.5rem}.sn-selection-control:hover:not(:disabled),.sn-toggle-control:hover{border-color:var(--border-strong);background:var(--color-cream-200)}.sn-selection-control:focus-visible,.sn-selection-control:focus-within,.sn-toggle-control:focus-within{border-color:var(--border-strong);outline:2px solid var(--sn-focus-ring);outline-offset:2px}.sn-selection-control[aria-pressed=true],.sn-selection-control[aria-checked=true],.sn-selection-control.is-selected,.sn-selection-control:has(.sn-selection-input:checked){border-color:var(--border-strong);background:var(--surface-selected);box-shadow:none}.sn-selection-control:disabled,.sn-selection-control:has(.sn-selection-input:disabled),.sn-toggle-control:has(.sn-toggle-input:disabled){cursor:not-allowed;background:var(--color-cream-200);color:var(--text-muted);opacity:.72}.sn-selection-input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.sn-toggle-input{position:absolute;top:50%;right:.5rem;z-index:1;width:44px;height:44px;margin:0;cursor:pointer;opacity:0;transform:translateY(-50%)}.sn-selection-indicator{display:inline-grid;width:20px;height:20px;flex:0 0 20px;place-items:center;border:1.5px solid var(--border-strong);border-radius:6px;background:var(--surface-default);color:transparent;font-size:12px;font-weight:800;line-height:1}.sn-selection-indicator--radio{border-radius:50%}.sn-selection-control[aria-pressed=true] .sn-selection-indicator,.sn-selection-control[aria-checked=true] .sn-selection-indicator,.sn-selection-control.is-selected .sn-selection-indicator,.sn-selection-control:has(.sn-selection-input:checked) .sn-selection-indicator{border-color:var(--color-midnight-600);background:var(--color-banana);color:var(--color-midnight-900)}.sn-toggle-control{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 1rem}.sn-toggle-track{position:relative;width:44px;height:24px;flex:0 0 44px;border:1px solid var(--border-strong);border-radius:999px;background:var(--color-midnight-200);transition:background-color .15s ease,border-color .15s ease}.sn-toggle-thumb{position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:var(--surface-default);box-shadow:0 1px 3px color-mix(in srgb,var(--color-midnight-900) 24%,transparent);transition:transform .15s ease}.sn-toggle-input:checked+.sn-toggle-track{border-color:var(--color-orange);background:var(--color-orange)}.sn-toggle-input:checked+.sn-toggle-track .sn-toggle-thumb{transform:translate(20px)}.sn-fraction-answer-home[hidden]{display:none}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer){width:min(100%,24rem);flex-shrink:0;gap:.5rem;text-align:start}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer)[hidden]{display:none}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) :is(.sn-fraction-answer-shell,#answer-shell){display:grid;grid-template-columns:minmax(0,1fr) 44px 44px;align-items:center;gap:.375rem;min-height:56px;padding:.375rem;box-shadow:none}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) :is(.sn-fraction-answer-shell,#answer-shell):is(:focus-within,.is-focus){border-color:var(--border-strong);outline:2px solid var(--sn-focus-ring);outline-offset:2px}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) :is(.sn-fraction-answer-shell,#answer-shell).is-invalid{border-color:var(--color-error)}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) :is(.sn-fraction-answer-shell,#answer-shell) :is(.play-answer-input,#user-answer){width:100%;min-width:0;min-height:44px;border:0;background:transparent;outline:none;box-shadow:none;padding:.25rem .5rem;font-family:inherit;font-size:1.5rem;font-weight:700;text-align:start;line-height:1.25}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) :is(.play-answer-input,#user-answer)::placeholder{font-family:inherit;font-size:1.125rem;font-weight:600}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) :is(.sn-fraction-minus,.sn-fraction-bar){position:static;transform:none;padding:0;width:44px;min-height:44px;background:var(--color-cream-50);font-size:1.25rem;box-shadow:none}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) .sn-fraction-answer-actions{display:flex;align-items:flex-start;justify-content:flex-end;gap:.75rem}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) :is([aria-live],#feedback){display:block;position:static;transform:none;flex:1;width:auto;min-height:44px;padding:.375rem 0;font-size:.8125rem;font-weight:600;line-height:1.4;text-align:start;color:var(--color-error)}[data-gameplay-frame] :is(.sn-fraction-answer,#fraction-answer) .sn-fraction-check{min-height:44px;padding:.5rem 1rem;font-size:.9375rem}body[data-fractions=true].keyboard-open :is(.sn-fraction-answer,#fraction-answer){grid-template-columns:minmax(0,1fr) auto;align-items:start}body[data-fractions=true].keyboard-open :is(.sn-fraction-answer,#fraction-answer) :is(.sn-fraction-answer-shell,#answer-shell){min-height:44px;padding:0 .25rem;gap:.25rem}body[data-fractions=true].keyboard-open .sn-fraction-answer-actions{display:contents}body[data-fractions=true].keyboard-open .sn-fraction-check{grid-column:2;grid-row:1;padding-inline:.75rem}body[data-fractions=true].keyboard-open :is(.sn-fraction-answer,#fraction-answer) :is([aria-live],#feedback){grid-column:1 / -1;min-height:0;padding:0}body[data-fractions=true].keyboard-open #play-active-practice{display:none}body[data-fractions=true].keyboard-open #play-stage #play-stage-body{padding-top:calc(env(safe-area-inset-top,0px) + 3.5rem)}body[data-fractions=true] #play-control-stack:not(:has(#session-controls>button:not([hidden]))){display:none}@media(max-height:600px){body[data-fractions=true][data-mobile-ui=false] #play-stage #play-stage-body{padding-top:3.5rem}body[data-fractions=true][data-mobile-ui=false] #play-stage-body #challenge[data-question-family=fraction-arithmetic]{font-size:min(1.8rem,var(--fraction-question-size, 1.8rem))}}
