:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-white:#fff;--color-cream-50:#fffaf3;--color-cream-100:#fbf7f1;--color-cream-200:#f7f4ee;--color-cream-300:#f6f0e8;--color-cream-glass:#fffcf7eb;--color-cream-glass-strong:#fffcf7e6;--color-neutral-50:#f9fafb;--color-neutral-100:#f9fbff;--color-neutral-200:#eaf0f8;--color-neutral-300:#e5ded4;--color-neutral-500:#6b6258;--color-neutral-700:#374151;--color-neutral-800:#1f2933;--color-neutral-900:#111827;--color-blue-50:#eff8ff;--color-blue-75:#eef7ff;--color-blue-100:#eef3ff;--color-blue-200:#8ec5ff;--color-blue-500:#0ea5e9;--color-blue-600:#2563eb;--color-cyan-500:#06b6d4;--color-purple-50:#f5efff;--color-purple-75:#f4efff;--color-purple-100:#f2ecff;--color-purple-150:#eef2ff;--color-purple-200:#c4b5fd;--color-purple-300:#bda3ff;--color-purple-600:#7c3aed;--color-purple-700:#5b21b6;--color-purple-900:#4c1d95;--color-orange-50:#fff7ed;--color-orange-75:#fff4e3;--color-orange-200:#ffc777;--color-orange-500:#f97316;--color-pink-50:#fff0f6;--color-pink-200:#ffa6c9;--color-pink-600:#db2777;--color-green-50:#ecfff4;--color-green-75:#e7f7ed;--color-green-200:#85dca9;--color-green-600:#12824a;--color-green-700:#16aa64;--color-red-50:#ffeaea;--color-red-600:#c93434;--color-red-800:#8f1f1f;--color-yellow-50:#fff7db;--color-yellow-700:#b78900;--color-page:var(--color-cream-200);--color-panel:var(--color-white);--color-surface:var(--color-white);--color-surface-soft:var(--color-cream-100);--color-surface-raised:var(--color-cream-glass);--color-ink:var(--color-neutral-800);--color-heading:var(--color-neutral-900);--color-muted:var(--color-neutral-500);--color-primary:var(--color-purple-600);--color-primary-soft:var(--color-purple-100);--color-primary-softer:var(--color-purple-75);--color-accent:var(--color-orange-500);--color-action:var(--color-blue-600);--color-action-accent:var(--color-cyan-500);--color-success:var(--color-green-600);--color-success-strong:var(--color-green-700);--color-success-soft:var(--color-green-75);--color-danger:var(--color-red-600);--color-danger-dark:var(--color-red-800);--color-danger-soft:var(--color-red-50);--color-warning-soft:var(--color-yellow-50);--color-border:var(--color-neutral-300);--color-border-strong:var(--color-purple-200);--color-focus-ring:#7c3aed1f;--surface-primary-weak:#7c3aed14;--surface-primary-soft:#7c3aed17;--surface-primary-medium:#7c3aed1a;--border-primary-subtle:#7c3aed21;--border-primary-soft:#7c3aed26;--border-primary-medium:#7c3aed2e;--border-success-soft:#12824a38;--surface-white-faint:#ffffff2e;--surface-white-soft:#ffffff3d;--surface-white-medium:#ffffff59;--surface-white-strong:#ffffffb8;--text-on-primary-muted:#ffffffd1;--overlay-weak:#0f172a1a;--overlay-medium:#0f172a80;--space-0:0;--space-px:1px;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-7:1.75rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-page-x:var(--space-8);--size-page-max:78rem;--size-panel-max:76rem;--size-content-max:50rem;--size-stage-min:24rem;--size-match-min:26rem;--size-match-gap-fluid:8vw;--size-card-min:9.5rem;--size-category-grid-min:13rem;--size-choice-grid-min:11rem;--size-question-max:51rem;--size-sequence-max:42rem;--size-sort-bucket-min:10rem;--size-sort-items-min:4.5rem;--size-result-min:2.5rem;--size-touch:4.5rem;--size-touch-mobile:4rem;--size-thumb:3.5rem;--size-image-max:16rem;--size-image-h:7rem;--size-flash-min:13rem;--size-perspective:62rem;--size-control-sm:1.75rem;--size-control-md:2.75rem;--size-control-lg:3rem;--size-control-xl:3.5rem;--size-tab-min:10.5rem;--size-button-flex-min:8rem;--breakpoint-sm:47.5rem;--radius-sm:.75rem;--radius-md:1rem;--radius-lg:1.25rem;--radius-xl:1.5rem;--radius-2xl:1.875rem;--radius-panel:var(--radius-2xl);--radius-pill:999px;--border-width:.125rem;--opacity-disabled:.45;--opacity-dim:.35;--opacity-ghost:.94;--blur-sm:.5rem;--blur-md:.625rem;--blur-lg:.875rem;--blur-xl:1.125rem;--duration-fast:.15s;--duration-base:.16s;--duration-slow:.35s;--easing-standard:ease;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-xs:.75rem;--font-sm:.875rem;--font-base:1rem;--font-md:1.05rem;--font-lg:1.125rem;--font-xl:1.35rem;--font-2xl:1.45rem;--font-3xl:2rem;--font-4xl:3rem;--font-display:4.6rem;--font-code-scale:.92em;--font-weight-regular:400;--font-weight-medium:750;--font-weight-bold:850;--font-weight-black:950;--tracking-tight:-.025em;--tracking-tighter:-.04em;--tracking-display:-.05em;--tracking-wide:.04em;--tracking-wider:.05em;--tracking-widest:.09em;--tracking-eyebrow:.15em;--leading-tight:.95;--leading-heading:1.08;--leading-title:1.15;--leading-body:1.35;--leading-copy:1.72;--shadow-xs:0 .375rem .875rem #2563eb29;--shadow-sm:0 .5rem 1rem #37291e0f;--shadow-md:0 .875rem 1.5rem #37291e1f;--shadow-card:0 1rem 2rem #37291e1f;--shadow-card-hover:0 1.25rem 2.75rem #37291e2e;--shadow-panel:0 1.25rem 4rem #37291e21;--shadow-button:0 .625rem 1.5rem #7c3aed38;--shadow-action:0 .625rem 1.5rem #2563eb38;--shadow-action-soft:0 .625rem 1.5rem #2563eb2e;--shadow-danger:0 .625rem 1.5rem #c9343438;--shadow-focus:0 0 0 var(--space-1) var(--color-focus-ring);--shadow-line:drop-shadow(0 var(--space-1) var(--space-2) #2f67ff2e);--gradient-page:radial-gradient(circle at 12% 0%, #f9731624, transparent 30rem), radial-gradient(circle at 86% 4%, #7c3aed21, transparent 26rem), linear-gradient(180deg, var(--color-cream-50) 0%, var(--color-cream-300) 100%);--gradient-primary:linear-gradient(135deg, var(--color-primary), var(--color-accent));--gradient-danger:linear-gradient(135deg, var(--color-danger), var(--color-danger-dark));--gradient-action:linear-gradient(135deg, var(--color-action), var(--color-action-accent));--gradient-success:linear-gradient(135deg, var(--color-success), var(--color-success-strong));--gradient-card-base:radial-gradient(circle at 20% 0%, var(--surface-white-medium), transparent 38%), linear-gradient(135deg, var(--color-primary) 0%, var(--color-accent) 100%);--gradient-card-overlay:linear-gradient(180deg, var(--overlay-weak), var(--overlay-medium)), radial-gradient(circle at 50% 0%, var(--surface-white-soft), transparent 46%);--gradient-card-blue:linear-gradient(135deg, var(--color-blue-500) 0%, var(--color-primary) 100%);--gradient-card-pink:linear-gradient(135deg, var(--color-accent) 0%, var(--color-pink-600) 100%);--gradient-card-green:linear-gradient(135deg, var(--color-green-600) 0%, var(--color-action) 100%);--gradient-card-all:linear-gradient(135deg, var(--color-purple-900) 0%, var(--color-primary) 52%, var(--color-accent) 100%);--gradient-choice:linear-gradient(180deg, var(--color-white) 0%, var(--color-surface-soft) 100%);--gradient-selected:linear-gradient(135deg, var(--color-purple-150), var(--color-orange-50));--gradient-flash-back:linear-gradient(135deg, var(--color-blue-50), var(--color-purple-50));--bg:var(--color-page);--card:var(--color-panel);--ink:var(--color-ink);--muted:var(--color-muted);--blue:var(--color-primary);--purple:var(--color-accent);--green:var(--color-success);--green-soft:var(--color-success-soft);--red:var(--color-danger);--red-soft:var(--color-danger-soft);--yellow-soft:var(--color-warning-soft);--border:var(--color-border);--shadow:var(--shadow-panel)}*{box-sizing:border-box}body{margin:var(--space-0);min-height:100dvh;font-family:var(--font-sans);color:var(--ink);background:var(--gradient-page), var(--bg)}a{color:inherit;text-decoration:none}a.mode-filter,a.difficulty-filter,a.tier-filter,a.secondary{border-radius:var(--radius-pill);font-weight:var(--font-weight-bold);justify-content:center;align-items:center;display:inline-flex}a.secondary{padding:var(--space-3) var(--space-5);color:var(--blue);background:var(--color-primary-soft);box-shadow:none}.activity-instructions{margin:0 0 var(--space-4);color:var(--muted);font-weight:var(--font-weight-bold);text-align:center}button,.import-button{border-radius:var(--radius-pill);padding:var(--space-3) var(--space-5);font:inherit;font-weight:var(--font-weight-bold);color:var(--color-white);background:var(--gradient-primary);box-shadow:var(--shadow-button);cursor:pointer;border:0}body button,body .import-button{padding:var(--space-3) var(--space-5);font-weight:var(--font-weight-bold);background:var(--gradient-primary)}button.secondary{color:var(--blue);background:var(--color-blue-100);box-shadow:none}body button.secondary{color:var(--blue);background:var(--color-primary-soft)}button.danger{color:var(--color-white);background:var(--gradient-danger);box-shadow:var(--shadow-danger)}body button.danger{color:var(--color-white);background:var(--gradient-danger)}button:disabled{opacity:.45;cursor:not-allowed}button.mini{padding:var(--space-2) var(--space-3);font-size:var(--font-sm);box-shadow:none}body button.mini{padding:var(--space-2) var(--space-3)}.import-button input{display:none}.app-shell{width:min(var(--size-page-max), calc(100% - var(--space-page-x)));padding:var(--space-8) 0 var(--space-8);margin:0 auto}.topbar{margin-bottom:var(--space-6);text-align:center;display:block}.topbar h1{font-size:clamp(var(--font-4xl), 6.5vw, var(--font-display));line-height:.95;font-weight:var(--font-weight-black);letter-spacing:var(--tracking-display);margin-bottom:0}.eyebrow{margin:0 0 var(--space-1);color:var(--blue);font-size:var(--font-xs);font-weight:var(--font-weight-black);letter-spacing:var(--tracking-eyebrow);text-transform:uppercase}h1,h2,p{margin-top:0}#activityTitle{margin-bottom:var(--space-1);font-size:clamp(var(--space-8), 5vw, calc(var(--space-8) * 2));line-height:.95;font-weight:var(--font-weight-black);letter-spacing:var(--tracking-tighter)}.activity-info-row{justify-content:center;gap:var(--space-2);margin-bottom:var(--space-4);flex-wrap:wrap;display:flex}.activity-category-title{margin:0 0 var(--space-2);color:var(--ink);font-size:clamp(var(--font-base), 2.5vw, var(--font-3xl));font-weight:var(--font-weight-black);text-align:center;line-height:1.08}.difficulty-badge{min-height:var(--size-control-sm);padding:var(--space-1) var(--space-3);border:var(--space-px) solid var(--border-success-soft);border-radius:var(--radius-pill);color:var(--green);background:var(--green-soft);font-size:var(--font-xs);font-weight:var(--font-weight-black);letter-spacing:var(--tracking-wide);text-transform:uppercase;align-items:center;display:inline-flex}.type-badge{border-color:var(--border-primary-medium);color:var(--blue);background:var(--color-primary-soft)}.timer-wrap{--timer-color:var(--blue);--timer-progress:1;max-width:42rem;margin:calc(-1 * var(--space-1)) auto var(--space-5)}.timer-wrap.warning{--timer-color:var(--color-yellow-700)}.timer-wrap.danger{--timer-color:var(--color-danger)}.timer-track{background:color-mix(in srgb, var(--timer-color) 16%, transparent);border:1px solid color-mix(in srgb, var(--timer-color) 28%, transparent);border-radius:var(--radius-pill);height:.55rem;overflow:hidden}.timer-fill{width:calc(max(0, min(1, var(--timer-progress))) * 100%);background:linear-gradient(90deg, var(--timer-color), color-mix(in srgb, var(--timer-color) 70%, white));border-radius:inherit;height:100%;transition:width .22s linear,background .2s;display:block}.timer-text{margin-top:var(--space-1);color:var(--muted);font-size:var(--font-sm);font-weight:var(--font-weight-black);text-align:center;display:block}.activity-card{max-width:var(--size-panel-max);padding:clamp(var(--space-4), 3vw, var(--space-8));background:var(--color-surface-raised);border:1px solid var(--border);border-radius:var(--radius-panel);box-shadow:var(--shadow);-webkit-backdrop-filter:blur(var(--blur-xl));backdrop-filter:blur(var(--blur-xl));margin:0 auto;position:relative}.activity-stage{min-height:var(--size-stage-min)}.analyze-card{max-width:68rem}.analyze-header{justify-content:space-between;align-items:flex-start;gap:var(--space-4);margin-bottom:var(--space-5);display:flex}.analyze-header h2{margin-bottom:var(--space-1);font-size:clamp(var(--font-2xl), 4vw, var(--font-4xl));line-height:1}.muted-copy{color:var(--muted);font-weight:var(--font-weight-bold)}.analyze-controls{gap:var(--space-3);margin-bottom:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.analyze-controls label{gap:var(--space-1);color:var(--muted);font-size:var(--font-sm);font-weight:var(--font-weight-black);display:grid}.analyze-controls select{width:100%;min-height:var(--size-control-lg);padding:var(--space-2) var(--space-3);color:var(--ink);background:var(--color-surface);border:1px solid var(--border);border-radius:var(--radius-lg);font:inherit}.metric-grid,.analyze-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.metric-grid{margin-bottom:var(--space-5);grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card,.analyze-panel{padding:var(--space-4);background:var(--color-surface);border:1px solid var(--border);border-radius:var(--radius-xl);box-shadow:var(--shadow-sm)}.metric-card{gap:var(--space-1);display:grid}.metric-card span,.metric-card small{color:var(--muted);font-weight:var(--font-weight-bold)}.metric-card strong{font-size:clamp(var(--font-xl), 3vw, var(--font-3xl));line-height:1.05}.analyze-panel{margin-bottom:var(--space-4)}.analyze-panel h3{margin:0 0 var(--space-3);font-size:var(--font-xl)}.bar-list{gap:var(--space-3);display:grid}.bar-row{align-items:center;gap:var(--space-3);grid-template-columns:minmax(8rem,1.4fr) minmax(8rem,2fr) auto;display:grid}.bar-label{gap:.1rem;min-width:0;display:grid}.bar-label span{font-weight:var(--font-weight-black);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-label small{color:var(--muted);font-weight:var(--font-weight-bold)}.bar-track{background:var(--color-primary-soft);border-radius:var(--radius-pill);height:.85rem;overflow:hidden}.bar-fill{background:var(--gradient-primary);border-radius:inherit;height:100%;display:block}.trend-chart{width:100%;min-height:12rem}.trend-grid{stroke:var(--border);stroke-width:2px}.trend-line{stroke:var(--blue);stroke-width:4px;stroke-linecap:round;stroke-linejoin:round}.trend-point{fill:var(--blue);stroke:var(--color-surface);stroke-width:3px}.trend-labels{justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--muted);font-weight:var(--font-weight-bold);display:flex}.analyze-empty{justify-items:center;gap:var(--space-3);text-align:center;display:grid}.category-stage{min-height:0}.mode-filter-row,.difficulty-filter-row{justify-content:center;gap:var(--space-2);margin:0 0 var(--space-5);flex-wrap:wrap;display:flex}.mode-filter-row{margin-bottom:var(--space-4);padding:var(--space-2)}.mode-filter,.difficulty-filter,.tier-filter{min-height:var(--size-control-md);padding:var(--space-2) var(--space-4);color:var(--blue);background:var(--color-primary-soft);box-shadow:none}.mode-filter{min-height:var(--size-control-lg);min-width:min(var(--size-tab-min), 40vw);padding:var(--space-2) var(--space-6);border:var(--space-px) solid var(--border-primary-medium);border-radius:var(--radius-xl);color:var(--ink);background:var(--color-white);font-size:clamp(var(--font-base), 2.2vw, var(--font-lg));box-shadow:var(--shadow-sm)}.mode-filter span,.difficulty-filter span,.tier-filter span{margin-left:var(--space-1);color:var(--muted);font-size:var(--font-xs);display:inline-flex}.mode-filter.active,.difficulty-filter.active,.tier-filter.active{color:var(--color-white);background:var(--gradient-primary);box-shadow:var(--shadow-button)}.mode-filter.active{transform:translateY(calc(-1 * var(--space-px)))}.mode-filter.active span,.difficulty-filter.active span,.tier-filter.active span{color:var(--text-on-primary-muted)}.category-grid{grid-template-columns:repeat(auto-fit, minmax(var(--size-category-grid-min), 1fr));gap:var(--space-4);display:grid}.learn-search-panel{gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-4);border:var(--border-width) solid var(--border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-sm);display:grid}.learn-search-panel label{font-weight:var(--font-weight-black);color:var(--ink)}.learn-search-panel input{width:100%;min-height:3rem;padding:var(--space-3) var(--space-4);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);color:var(--ink);background:var(--color-white);font:inherit}.learn-search-panel input:focus{border-color:var(--blue);box-shadow:0 0 0 var(--space-1) var(--surface-primary-medium);outline:none}.learn-search-panel p{color:var(--muted);font-size:var(--font-sm);font-weight:var(--font-weight-bold);margin:0}.category-card{min-height:var(--size-card-min);justify-content:center;align-items:center;gap:var(--space-2);border:var(--border-width) solid var(--border);border-radius:var(--radius-xl);color:var(--color-white);background:radial-gradient(circle at 20% 0%, var(--surface-white-medium), transparent 38%), var(--gradient-primary);text-align:center;text-shadow:0 var(--space-1) var(--space-3) #00000073;box-shadow:var(--shadow-card);flex-direction:column;transition:transform .16s,box-shadow .16s,border-color .16s;display:flex;position:relative;overflow:hidden;transform:translateZ(0)}.category-card:before{content:"";background-image:var(--category-bg);filter:saturate(1.18)contrast(1.05);opacity:.42;background-position:50%;background-size:cover;position:absolute;inset:0}.category-card:after{content:"";background:linear-gradient(180deg, var(--overlay-weak), var(--overlay-medium)), radial-gradient(circle at 50% 0%, var(--surface-white-soft), transparent 46%);position:absolute;inset:0}.category-card:hover{transform:translateY(calc(-1 * var(--border-width)));border-color:var(--surface-white-strong);box-shadow:var(--shadow-card-hover)}.category-card:nth-child(3n+1){background:var(--gradient-card-blue)}.category-card:nth-child(3n+2){background:var(--gradient-card-pink)}.category-card:nth-child(3n){background:var(--gradient-card-green)}.category-card strong{z-index:1;font-size:var(--font-xl);letter-spacing:var(--tracking-tight);position:relative}.category-card span{z-index:1;color:var(--color-white);font-size:var(--font-sm);font-weight:var(--font-weight-black);padding:var(--space-1) var(--space-3);border-radius:var(--radius-pill);background:var(--surface-white-faint);-webkit-backdrop-filter:blur(var(--blur-sm));backdrop-filter:blur(var(--blur-sm));position:relative}.category-card small{color:var(--muted);font-weight:var(--font-weight-medium);line-height:1.35}.category-card.all{background:var(--gradient-card-all);border-color:var(--surface-white-strong)}.assessment-grid{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(16rem,1fr));display:grid}.assessment-card{gap:var(--space-2);padding:var(--space-5);border-radius:var(--radius-xl);border:var(--border-width) solid var(--border-primary-soft);background:var(--color-surface-raised);box-shadow:var(--shadow-card);display:grid}.assessment-card span,.assessment-card small,.assessment-list small{color:var(--muted);font-weight:var(--font-weight-black);text-transform:uppercase;letter-spacing:var(--tracking-wide)}.assessment-card strong{font-size:var(--font-2xl);color:var(--color-heading)}.assessment-card p,.assessment-list p{color:var(--ink);margin:0}.assessment-list{gap:var(--space-3);display:grid}.assessment-list article{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--surface-primary-weak);border:1px solid var(--border-primary-subtle)}.assessment-chip-row{gap:var(--space-2);flex-wrap:wrap;display:flex}.assessment-chip-row span{padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);background:var(--color-primary-soft);color:var(--color-purple-900);font-weight:var(--font-weight-black)}.empty-state,.answer-key{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--yellow-soft);border:1px solid color-mix(in srgb, var(--color-warning-soft), #b78900 45%);font-weight:var(--font-weight-medium)}.match-board{gap:clamp(var(--space-12), var(--size-match-gap-fluid), calc(var(--space-12) + var(--space-8) + var(--space-8)));min-height:var(--size-match-min);grid-template-columns:minmax(0,1fr) minmax(0,1fr);align-items:start;display:grid;position:relative}.match-tap-help{padding:var(--space-3) var(--space-4);color:var(--blue);background:var(--surface-primary-medium);border:var(--space-px) solid var(--border-primary-soft);border-radius:var(--radius-lg);font-weight:var(--font-weight-bold);text-align:center;grid-column:1/-1;margin:0;display:none}.connections{pointer-events:none;z-index:1;width:100%;height:100%;position:absolute;inset:0}.connection{fill:none;stroke:var(--blue);stroke-width:var(--space-2);stroke-linecap:round;filter:drop-shadow(0 var(--space-1) var(--space-2) #2f67ff2e)}.connection.correct{stroke:var(--green)}.connection.incorrect{stroke:var(--red)}.column,.question-list,.flashcard-grid,.sorting-board,.sequence-list{z-index:2;position:relative}.column h2,.bucket h2{margin-bottom:var(--space-3);color:var(--muted);font-size:var(--font-sm);letter-spacing:var(--tracking-widest);text-transform:uppercase}.stack,.question-list,.sequence-list{gap:var(--space-4);display:grid}.item,.choice-card,.question-block,.sort-chip,.sequence-item,.bucket,.flashcard{border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);background:var(--color-white);box-shadow:var(--shadow-card);position:relative}.item{min-height:var(--size-touch);gap:var(--space-3);padding:var(--space-3);font-weight:var(--font-weight-bold);align-items:center;display:flex}.draggable{cursor:grab;-webkit-user-select:none;user-select:none;touch-action:none}.draggable *{pointer-events:none}.draggable.dragging{cursor:grabbing;opacity:.35}.drag-ghost{z-index:9999;pointer-events:none;opacity:.94;box-shadow:var(--shadow-panel);position:fixed;transform:rotate(-1deg)scale(1.02)}body.drag-active{cursor:grabbing}body.drag-active *{cursor:grabbing!important}body:not(.drag-active){cursor:default}.target{border-style:dashed}.target.matched,.answer.used{border-style:solid;border-color:var(--color-border-strong);background:var(--color-blue-100)}.match-node.tap-selected{border-color:var(--blue);background:var(--gradient-selected);box-shadow:var(--shadow-focus), var(--shadow-card)}.drop-hover{border-color:var(--blue)!important;background:var(--color-blue-100)!important}.prompt-image,.thumb{width:var(--size-thumb);height:var(--size-thumb);object-fit:cover;border-radius:var(--radius-sm);border:1px solid color-mix(in srgb, var(--color-ink), transparent 88%);background:var(--color-neutral-200)}.prompt-image{width:min(var(--size-image-max), 100%);height:var(--size-image-h);margin-bottom:var(--space-3);display:block}.item-text{min-width:0}.correct-answer{margin-top:var(--space-1);color:var(--red);font-size:var(--font-sm);font-weight:var(--font-weight-bold);display:block}.sort-chip .correct-answer,.sequence-item .correct-answer,.match-node .correct-answer{width:100%;line-height:1.35}.correct{border-color:var(--green)!important;background:var(--green-soft)!important}.incorrect{border-color:var(--red)!important;background:var(--red-soft)!important}.status-mark{font-size:var(--font-xl);font-weight:var(--font-weight-black);margin-left:auto}.correct .status-mark{color:var(--green)}.incorrect .status-mark{color:var(--red)}.question-list{max-width:var(--size-question-max);gap:var(--space-5);margin:0 auto}.question-block{padding:var(--space-5);background:color-mix(in srgb, var(--color-white), transparent 14%)}.prompt-text{margin-bottom:var(--space-4);font-size:var(--font-lg);font-weight:var(--font-weight-bold);line-height:1.35}.blank-slot{padding:0 var(--space-1);color:var(--purple);border-bottom:var(--space-1) solid #7b3ff24d;display:inline-block}.choice-grid{grid-template-columns:repeat(auto-fit, minmax(var(--size-choice-grid-min), 1fr));gap:var(--space-3);display:grid}.choice-card{color:var(--ink);background:var(--gradient-choice);text-align:left;box-shadow:var(--shadow-card)}body button.choice-card{min-height:var(--size-control-xl);padding:var(--space-3) var(--space-4);color:var(--ink);background:var(--gradient-choice);border:var(--border-width) solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);font-weight:var(--font-weight-bold);line-height:1.25;transition:transform .15s,border-color .15s,box-shadow .15s,background .15s}.type-multiple_choice button.choice-card,.type-true_false button.choice-card,.type-fill_blank button.choice-card{font-weight:400}body button.choice-card:hover{transform:translateY(calc(-1 * var(--space-px)));border-color:var(--color-border-strong);background:var(--color-white);box-shadow:var(--shadow-md)}.choice-card.selected{border-color:var(--blue);background:var(--color-primary-softer)}body button.choice-card.selected{border-color:var(--blue)}.feedback{margin-top:var(--space-3);color:var(--muted);font-weight:var(--font-weight-medium)}.flashcard-grid{grid-template-columns:repeat(auto-fit, minmax(var(--size-category-grid-min), 1fr));gap:var(--space-4);display:grid}.flashcard{perspective:var(--size-perspective);padding:0;overflow:hidden}.flash-inner{min-height:var(--size-flash-min);transform-style:preserve-3d;cursor:pointer;transition:transform .35s;position:relative}.flashcard.flipped .flash-inner{transform:rotateY(180deg)}.flash-face{justify-content:center;gap:var(--space-3);padding:var(--space-4);backface-visibility:hidden;text-align:center;flex-direction:column;display:flex;position:absolute;inset:0}.flash-face strong{font-size:var(--font-xl)}.flash-face span{color:var(--muted);font-weight:var(--font-weight-medium)}.flash-face.back{background:var(--gradient-flash-back);transform:rotateY(180deg)}.know-row{gap:var(--space-2);padding:var(--space-3);border-top:1px solid var(--border);justify-content:center;display:flex}body .know-row .knew{color:var(--color-white);background:var(--gradient-action);box-shadow:var(--shadow-action-soft)}body .know-row .missed{color:var(--color-white);background:var(--gradient-danger);box-shadow:var(--shadow-danger)}.flashcard:not(.flipped) .know-row{display:none}.flashcard.selected-knew{border-color:var(--green)}.flashcard.selected-missed{border-color:var(--red)}.sorting-board{grid-template-columns:repeat(auto-fit, minmax(var(--size-category-grid-min), 1fr));gap:var(--space-4);display:grid}.sorting-board .sort-bank{grid-column:1/-1}.sorting-board .sort-bank .sort-items{grid-template-columns:repeat(auto-fit, minmax(var(--size-choice-grid-min), 1fr))}.bucket{min-height:var(--size-sort-bucket-min);padding:var(--space-3);background:var(--color-neutral-100)}.sorting-board .drop-zone:nth-of-type(2){background:var(--color-blue-75);border-color:var(--color-blue-200)}.sorting-board .drop-zone:nth-of-type(3){background:var(--color-purple-50);border-color:var(--color-purple-300)}.sorting-board .drop-zone:nth-of-type(4){background:var(--color-orange-75);border-color:var(--color-orange-200)}.sorting-board .drop-zone:nth-of-type(5){background:var(--color-green-50);border-color:var(--color-green-200)}.sorting-board .drop-zone:nth-of-type(6){background:var(--color-pink-50);border-color:var(--color-pink-200)}.sort-items{gap:var(--space-2);min-height:var(--size-sort-items-min);display:grid}.sort-chip{padding:var(--space-3) var(--space-4);background:#fff;font-weight:400}.match-board .item,.sequence-item strong{font-weight:400}.sequence-list{max-width:var(--size-sequence-max);margin:0 auto}.sequence-item{align-items:center;gap:var(--space-3);padding:var(--space-3);flex-wrap:wrap;display:flex}.grip{color:var(--muted);font-size:var(--font-xl);font-weight:var(--font-weight-black)}.move-buttons{gap:var(--space-2);margin-left:auto;display:flex}body .move-buttons .mini{color:var(--color-white);background:var(--gradient-action);box-shadow:var(--shadow-xs)}.result-panel{min-height:var(--size-result-min);margin-top:var(--space-4);justify-content:center;align-items:center;gap:var(--space-3);color:var(--ink);text-align:center;font-size:var(--font-lg);font-weight:var(--font-weight-bold);flex-wrap:wrap;display:flex}.result-panel[hidden]{display:none}.score-pill{padding:var(--space-2) var(--space-3);color:var(--color-white);background:linear-gradient(135deg, var(--green), #16aa64);border-radius:var(--radius-pill);display:inline-flex}.actions{align-items:center;gap:var(--space-4);margin-top:var(--space-8);grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);display:grid}.actions button{min-height:var(--size-control-lg);padding:var(--space-3) var(--space-6);font-weight:var(--font-weight-bold);line-height:1}.back-button{justify-self:start}body .actions .back-button{color:var(--blue);background:var(--surface-primary-soft);box-shadow:none}.primary-actions,.nav-actions{justify-content:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.primary-actions{justify-self:center}.nav-actions{justify-self:end}body .primary-actions #submitBtn{color:var(--color-white);background:var(--gradient-action);box-shadow:var(--shadow-action)}body .nav-actions button{color:var(--blue);background:var(--surface-primary-medium);box-shadow:none}.learn-stage{min-height:0}.learn-loading{padding:var(--space-8);color:var(--blue);font-size:var(--font-lg);font-weight:var(--font-weight-bold);text-align:center}.learn-toolbar{top:var(--space-2);z-index:5;gap:var(--space-2);margin-bottom:var(--space-5);padding:var(--space-3);border:var(--space-px) solid var(--border-primary-subtle);border-radius:var(--radius-xl);background:var(--color-cream-glass-strong);-webkit-backdrop-filter:blur(var(--blur-lg));backdrop-filter:blur(var(--blur-lg));justify-items:center;display:grid;position:sticky}.learn-toolbar .difficulty-filter-row{margin:0}.learn-toolbar .activity-category-title{margin-bottom:0}.learn-back-button{justify-self:center}body .learn-back-button,body .jump-top-button{color:var(--blue);background:var(--surface-primary-soft);box-shadow:none}.learn-bottom-actions{margin-top:var(--space-6);justify-content:center;display:flex}.learn-meta{color:var(--muted);font-size:var(--font-sm);font-weight:var(--font-weight-bold)}.markdown-body{max-width:var(--size-content-max);color:var(--color-ink);font-size:clamp(var(--font-base), 2.6vw, var(--font-lg));margin:0 auto;line-height:1.72}.markdown-body h1,.markdown-body h2,.markdown-body h3,.markdown-body h4{color:var(--color-heading);letter-spacing:var(--tracking-tight);line-height:1.15}.markdown-body h1{margin:0 0 var(--space-5);padding-bottom:var(--space-3);border-bottom:calc(var(--border-width) + var(--space-px)) solid var(--border-primary-medium);font-size:clamp(var(--font-3xl), 8vw, calc(var(--font-4xl) + var(--space-2)));font-weight:var(--font-weight-black)}.guide-topic-image{margin:0 0 var(--space-6);border:calc(var(--border-width) + var(--space-px)) solid var(--border-primary-medium);border-radius:var(--radius-xl);background:var(--guide-image) center / cover no-repeat;box-shadow:var(--shadow-panel);position:relative;overflow:hidden}.guide-topic-image:before{content:"";pointer-events:none;background:linear-gradient(#20181105,#2018112e);position:absolute;inset:0}.guide-topic-image img{object-fit:cover;width:100%;height:clamp(12rem,34vw,22rem);display:block}.markdown-body h2{margin:var(--space-8) 0 var(--space-3);font-size:clamp(var(--font-2xl), 4vw, var(--font-3xl));font-weight:var(--font-weight-black)}.markdown-body h3{margin:var(--space-6) 0 var(--space-2);color:var(--blue);font-size:clamp(var(--font-lg), 3.2vw, var(--font-2xl));font-weight:var(--font-weight-black)}.markdown-body h4{margin:var(--space-5) 0 var(--space-2);color:var(--muted);font-size:var(--font-lg);font-weight:var(--font-weight-black);text-transform:uppercase;letter-spacing:var(--tracking-wider)}.markdown-body p,.markdown-body ul,.markdown-body ol,.markdown-body blockquote,.markdown-body pre,.markdown-table-wrap{margin:0 0 var(--space-4)}.markdown-body ul,.markdown-body ol{padding-left:var(--space-6)}.markdown-body ul{list-style:outside}.markdown-body ol{list-style:decimal}.markdown-body li{margin-bottom:var(--space-2)}.markdown-body strong{color:var(--color-heading);font-weight:var(--font-weight-black)}.markdown-body em{color:var(--color-neutral-700)}.markdown-body code{padding:calc(var(--space-1) / 3) calc(var(--space-1) + var(--space-px));border:var(--space-px) solid var(--border-primary-soft);border-radius:calc(var(--radius-sm) - var(--space-1));color:var(--color-purple-700);background:var(--surface-primary-weak);font-size:var(--font-code-scale)}.markdown-body pre{padding:var(--space-4);border-radius:var(--radius-lg);background:var(--color-neutral-800);color:var(--color-neutral-50);overflow-x:auto}.markdown-body pre code{color:inherit;background:0 0;border:0;padding:0}.markdown-body blockquote{padding:var(--space-3) var(--space-4);border-left:.35rem solid var(--blue);border-radius:var(--radius-md);color:var(--color-neutral-700);background:var(--surface-primary-weak);font-weight:var(--font-weight-medium)}.markdown-table-wrap{border:1px solid var(--border);border-radius:var(--radius-lg);box-shadow:var(--shadow-card);overflow-x:auto}.markdown-body table{border-collapse:collapse;background:var(--color-white);width:100%}.markdown-body th,.markdown-body td{padding:var(--space-3);border-bottom:1px solid var(--border);text-align:left;vertical-align:top}.markdown-body th{color:var(--color-white);background:var(--gradient-primary);font-weight:var(--font-weight-black)}.markdown-body tr:last-child td{border-bottom:0}@media (width<=47.5rem){:root{--space-page-x:var(--space-3);--size-stage-min:0rem;--size-card-min:7.25rem;--size-category-grid-min:8.75rem;--size-choice-grid-min:100%;--size-touch:3.75rem;--size-flash-min:11rem;--shadow-card:0 .5rem 1.25rem #37291e1a;--shadow-panel:0 .75rem 2rem #37291e1f}body{overflow-x:hidden}.app-shell{width:100%;padding:var(--space-3)}.topbar{margin-bottom:var(--space-4)}#activityTitle{font-size:clamp(calc(var(--font-3xl) + var(--space-1)), 12vw, var(--font-4xl));letter-spacing:var(--tracking-display)}.activity-card{width:100%;padding:var(--space-3);border-radius:var(--radius-xl)}.analyze-header,.trend-labels{flex-direction:column;align-items:stretch}.analyze-controls,.metric-grid,.analyze-grid,.bar-row{grid-template-columns:1fr}.bar-row strong{justify-self:end}.category-grid,.flashcard-grid,.sorting-board{gap:var(--space-3)}.category-card{min-height:var(--size-card-min);border-radius:var(--radius-lg)}.category-card strong{font-size:var(--font-lg)}.category-card span{font-size:var(--font-xs);padding:var(--space-1) var(--space-2)}.match-board{gap:var(--space-4);grid-template-columns:1fr;min-height:0}.match-tap-help{display:block}.match-board .column{gap:var(--space-2);display:grid}.match-board .column h2{z-index:3;width:fit-content;margin:0 auto var(--space-1);padding:var(--space-1) var(--space-3);background:var(--color-surface-raised);border:1px solid var(--border);border-radius:var(--radius-pill);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md));position:sticky;top:0}.match-board .stack{gap:var(--space-2)}.match-node{cursor:pointer}.connections{display:none}.item{min-height:var(--size-touch-mobile);padding:var(--space-3);font-size:var(--font-sm)}.question-list,.sequence-list{gap:var(--space-3);max-width:100%}.question-block{padding:var(--space-3);border-radius:var(--radius-lg)}.prompt-text{font-size:var(--font-base);margin-bottom:var(--space-3)}.choice-grid{gap:var(--space-2);grid-template-columns:1fr}body button.choice-card{min-height:var(--size-control-xl);width:100%;padding:var(--space-3)}.flash-face{padding:var(--space-3)}.know-row{flex-wrap:wrap}.know-row button{flex:1 1 var(--size-button-flex-min)}.sorting-board .sort-bank .sort-items{grid-template-columns:1fr}.bucket{min-height:var(--size-button-flex-min)}.sequence-item{align-items:flex-start;gap:var(--space-2)}.sequence-item strong{flex:1;min-width:0}.move-buttons{flex-direction:column}.actions{gap:var(--space-3);margin-top:var(--space-5);grid-template-columns:1fr}.back-button,.primary-actions,.nav-actions{justify-self:center}.primary-actions,.nav-actions{width:100%}.primary-actions button,.nav-actions button{flex:1 1 var(--size-button-flex-min)}}@media (width<=24rem){.category-grid{grid-template-columns:1fr}.primary-actions,.nav-actions{flex-direction:column}}
