.practice-shell{--practice-line:color-mix(in oklab, var(--foreground) 14%, transparent);--practice-ok:var(--forest-green,var(--primary));--practice-warn:var(--streak-amber,#d97706);--practice-warn-text:color-mix(in oklab, var(--practice-warn) 65%, var(--foreground) 35%);--practice-ease:cubic-bezier(.32, .72, 0, 1);width:100%;max-width:42rem;min-height:100dvh;color:var(--foreground);flex-direction:column;gap:1.25rem;margin-inline:auto;padding:clamp(1rem,4vh,2rem) 1rem clamp(144px,26vh,220px);display:flex}.practice-shell--center{justify-content:center}.practice-header{align-items:center;gap:.75rem;display:flex}.practice-exit{border-radius:var(--radius-xl,.75rem);width:2.75rem;height:2.75rem;color:var(--muted-foreground);cursor:pointer;transition:background-color .16s var(--practice-ease), color .16s var(--practice-ease);background:0 0;border:0;flex-shrink:0;justify-content:center;align-items:center;margin-left:-.5rem;display:inline-flex}.practice-exit:hover{background:var(--muted);color:var(--foreground)}.practice-exit:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.practice-exit__icon{width:1.25rem;height:1.25rem}.practice-progress{background:var(--muted);border-radius:999px;flex:auto;height:.625rem;overflow:hidden}.practice-progress__fill{background:var(--primary);height:100%;transition:width .32s var(--practice-ease);border-radius:999px}.practice-eyebrow{letter-spacing:.08em;text-transform:uppercase;color:var(--muted-foreground);font-size:.75rem;font-weight:600}.practice-question{flex-direction:column;gap:1rem;display:flex}.practice-prompt{letter-spacing:-.02em;color:var(--foreground);text-wrap:balance;font-size:clamp(1.25rem,1.05rem + 1.1vw,1.5rem);font-weight:700;line-height:1.35}.practice-options{flex-direction:column;gap:.625rem;display:flex}.practice-option{border:2px solid var(--practice-line);border-radius:var(--radius-xl,.75rem);background:var(--card);width:100%;min-height:3.5rem;color:var(--foreground);text-align:left;cursor:pointer;transition:border-color .15s var(--practice-ease), background-color .15s var(--practice-ease), transform .1s var(--practice-ease);border-bottom-width:4px;align-items:center;gap:.875rem;padding:.75rem 1rem;font-size:1rem;font-weight:500;line-height:1.35;display:flex}.practice-option:hover:not(:disabled){background:color-mix(in oklab, var(--card) 92%, var(--foreground) 8%)}.practice-option:active:not(:disabled){border-bottom-width:2px;padding-bottom:calc(.75rem + 2px);transform:translateY(2px)}.practice-option:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.practice-option:disabled{cursor:default}.practice-option--selected{border-color:var(--primary);background:color-mix(in oklab, var(--primary) 10%, var(--card))}.practice-option--correct{border-color:var(--practice-ok);background:color-mix(in oklab, var(--practice-ok) 12%, var(--card))}.practice-option--wrong{border-color:var(--practice-warn);background:color-mix(in oklab, var(--practice-warn) 12%, var(--card))}.practice-option__key{border:2px solid var(--practice-line);width:1.875rem;height:1.875rem;color:var(--muted-foreground);border-radius:.5rem;flex-shrink:0;justify-content:center;align-items:center;font-size:.75rem;font-weight:700;display:inline-flex}.practice-option--selected .practice-option__key{border-color:var(--primary);background:color-mix(in oklab, var(--primary) 14%, transparent);color:var(--primary)}.practice-option--correct .practice-option__key{border-color:var(--practice-ok);background:var(--practice-ok);color:var(--primary-foreground)}.practice-option--wrong .practice-option__key{border-color:var(--practice-warn);color:var(--practice-warn-text)}.practice-option__text{flex:auto;min-width:0}.practice-option__mark{flex-shrink:0;width:1.25rem;height:1.25rem}.practice-option--correct .practice-option__mark{color:var(--practice-ok)}.practice-option--wrong .practice-option__mark{color:var(--practice-warn)}.practice-feedback{min-width:0;animation:practice-rise .22s var(--practice-ease) both;flex:auto;align-items:flex-start;gap:.75rem;display:flex}.practice-feedback__icon{border-radius:999px;flex-shrink:0;justify-content:center;align-items:center;width:1.75rem;height:1.75rem;margin-top:.125rem;display:inline-flex}.practice-feedback__icon svg{width:1rem;height:1rem}.practice-feedback--correct .practice-feedback__icon,.practice-feedback--corrected .practice-feedback__icon{background:var(--practice-ok);color:var(--primary-foreground)}.practice-feedback--wrong .practice-feedback__icon{background:var(--practice-warn);color:var(--background)}.practice-feedback__body{flex-direction:column;gap:.25rem;min-width:0;display:flex}.practice-feedback__title{color:var(--foreground);font-size:1rem;font-weight:700}.practice-feedback--correct .practice-feedback__title,.practice-feedback--corrected .practice-feedback__title{color:var(--practice-ok)}.practice-feedback--wrong .practice-feedback__title{color:var(--practice-warn-text)}.practice-feedback__answer{color:var(--foreground);font-size:.9375rem;line-height:1.45}.practice-feedback__note{color:color-mix(in oklab, var(--foreground) 78%, transparent);font-size:.875rem}.practice-feedback__explain{flex-direction:column;gap:.375rem;display:flex}.practice-explain-toggle{min-height:2rem;color:color-mix(in oklab, var(--foreground) 80%, transparent);cursor:pointer;background:0 0;border:0;align-self:flex-start;align-items:center;gap:.25rem;padding:0;font-size:.875rem;font-weight:600;display:inline-flex}.practice-explain-toggle:hover{color:var(--foreground)}.practice-explain-toggle:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.practice-explain-toggle__icon{width:1rem;height:1rem;transition:transform .16s var(--practice-ease)}.practice-explain-toggle__icon--open{transform:rotate(180deg)}.practice-explain{overscroll-behavior:contain;max-height:min(30dvh,14rem);color:color-mix(in oklab, var(--foreground) 82%, transparent);font-size:.875rem;line-height:1.55;overflow-y:auto}.practice-report{align-items:center;gap:.125rem;margin-top:.125rem;margin-left:-.25rem;display:flex}.practice-report__label{color:color-mix(in oklab, var(--foreground) 72%, transparent);font-size:.75rem}.practice-report button{justify-content:center;align-items:center;min-width:2.75rem;min-height:2.75rem;display:inline-flex}.practice-terminal__title{font-family:var(--font-display,ui-sans-serif, system-ui, sans-serif);letter-spacing:-.02em;color:var(--foreground);font-size:clamp(1.5rem,5vw,2rem);font-weight:700;line-height:1.1}.practice-terminal__body{max-width:26rem;color:var(--muted-foreground);font-size:.9375rem;line-height:1.55}.practice-error{color:var(--practice-warn-text);padding:0 .25rem;font-size:.875rem}.practice-card{border:1px solid var(--border);background:var(--card);border-radius:1rem;flex-direction:column;gap:.875rem;padding:1.5rem;display:flex}.practice-submit{text-align:center;align-items:center;margin-top:clamp(2rem,12vh,6rem)}.practice-submit__title{font-family:var(--font-display,ui-sans-serif, system-ui, sans-serif);color:var(--foreground);font-size:1.25rem;font-weight:700}.practice-submit__body{color:var(--muted-foreground);font-size:.9375rem;line-height:1.55}.practice-submit__hint{color:var(--muted-foreground);font-size:.8125rem}.practice-actionbar{inset-inline:0;z-index:40;padding-block:.75rem max(.75rem, env(safe-area-inset-bottom));padding-inline:max(1rem, env(safe-area-inset-left)) max(1rem, env(safe-area-inset-right));border-top:1px solid var(--border);background:color-mix(in oklab, var(--background) 88%, transparent);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);justify-content:center;display:flex;position:fixed;bottom:0}.practice-actionbar--correct,.practice-actionbar--corrected{border-top-color:color-mix(in oklab, var(--practice-ok) 45%, transparent);background:color-mix(in oklab, var(--practice-ok) 12%, var(--background))}.practice-actionbar--wrong{border-top-color:color-mix(in oklab, var(--practice-warn) 45%, transparent);background:color-mix(in oklab, var(--practice-warn) 12%, var(--background))}.practice-actionbar__inner{align-items:center;gap:.5rem;width:100%;max-width:42rem;display:flex}.practice-actionbar__inner>.practice-btn--primary{flex:auto}.practice-actionbar--feedback .practice-actionbar__inner{flex-direction:column;align-items:stretch;gap:.75rem}.practice-actionbar__actions{align-items:center;gap:.5rem;display:flex}.practice-actionbar__actions .practice-btn--primary{flex:auto}@media (min-width:640px){.practice-actionbar__inner>.practice-btn--primary{flex:none;min-width:11rem;margin-left:auto}.practice-actionbar--feedback .practice-actionbar__inner{flex-direction:row;align-items:center}.practice-actionbar--feedback .practice-feedback{flex:auto}.practice-actionbar__actions{flex-shrink:0}.practice-actionbar__actions .practice-btn--primary{flex:none;min-width:11rem}}.practice-btn{border-radius:var(--radius-xl,.75rem);cursor:pointer;min-height:3rem;transition:background-color .16s var(--practice-ease), color .16s var(--practice-ease), transform .1s var(--practice-ease);border:0;justify-content:center;align-items:center;gap:.5rem;padding:0 1.25rem;font-size:.9375rem;font-weight:600;line-height:1;display:inline-flex}.practice-btn:active:not(:disabled){transform:translateY(1px)}.practice-btn:disabled{cursor:not-allowed}.practice-btn:focus-visible{outline:2px solid var(--ring);outline-offset:2px}.practice-btn--primary{background:var(--primary);color:var(--primary-foreground)}.practice-btn--primary:hover:not(:disabled){background:color-mix(in oklab, var(--primary) 88%, var(--foreground))}.practice-btn--primary:disabled{background:var(--muted);color:var(--muted-foreground)}.practice-btn--quiet{color:var(--muted-foreground);background:0 0;padding:0 .875rem;font-weight:600}.practice-btn--quiet:hover:not(:disabled){background:var(--muted);color:var(--foreground)}.practice-btn--quiet:disabled{color:color-mix(in oklab, var(--muted-foreground) 60%, transparent)}.practice-skeleton-exit{border-radius:var(--radius-xl,.75rem);background:var(--muted);flex-shrink:0;width:2.75rem;height:2.75rem}.practice-skeleton-bar{background:var(--muted);border-radius:999px;height:.625rem;animation:1.6s ease-in-out infinite practice-pulse}.practice-skeleton-bar--bar{flex:auto}.practice-skeleton-bar--sm{width:8rem}.practice-skeleton-bar--lg{width:85%;height:1.25rem}.practice-skeleton-bar--md{width:60%}.practice-skeleton-option{border-radius:var(--radius-xl,.75rem);background:var(--muted);height:3.5rem;animation:1.6s ease-in-out infinite practice-pulse}@keyframes practice-rise{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes practice-pulse{0%,to{opacity:1}50%{opacity:.55}}@media (prefers-reduced-motion:reduce){.practice-progress__fill,.practice-option,.practice-explain-toggle__icon,.practice-btn{transition:none}.practice-feedback,.practice-skeleton-bar,.practice-skeleton-option{animation:none}.practice-option:active:not(:disabled),.practice-btn:active:not(:disabled){transform:none}}
