@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--gp-color-primary:#1d4ed8;--gp-color-primary-dark:#1e40af;--gp-color-primary-hover:var(--gp-color-primary-dark);--gp-color-primary-strong:var(--gp-color-primary-dark);--gp-color-primary-soft:#dbeafe;--gp-color-accent:#6d28d9;--gp-color-accent-soft:#ede9fe;--gp-color-background:#f7f7f8;--gp-color-surface:#fff;--gp-color-surface-soft:#f1f3f5;--gp-color-surface-muted:var(--gp-color-surface-soft);--gp-color-text:#111827;--gp-color-text-secondary:#4b5563;--gp-color-text-muted:#64748b;--gp-color-border:#e5e7eb;--gp-color-border-strong:var(--gp-color-text-muted);--gp-color-success:#166534;--gp-color-success-soft:#dcfce7;--gp-color-error:#b91c1c;--gp-color-error-soft:#fee2e2;--gp-color-warning:#92400e;--gp-color-warning-text:var(--gp-color-warning);--gp-color-warning-soft:#fef3c7;--gp-color-info:#075985;--gp-color-info-soft:#e0f2fe;--gp-color-on-brand:#fff;--gp-color-text-inverse:var(--gp-color-on-brand);--gp-color-overlay:#1118277a;--gp-font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--gp-font-size-xs:.75rem;--gp-font-size-sm:.875rem;--gp-font-size-md:1rem;--gp-font-size-base:var(--gp-font-size-md);--gp-font-size-lg:1.125rem;--gp-font-size-xl:1.5rem;--gp-font-size-2xl:2rem;--gp-font-size-3xl:clamp(2.25rem, 7vw, 4.5rem);--gp-font-size-5xl:4.5rem;--gp-font-weight-medium:500;--gp-font-weight-semibold:600;--gp-font-weight-bold:700;--gp-letter-spacing-tight:-.025em;--gp-letter-spacing-display:-.045em;--gp-letter-spacing-eyebrow:.08em;--gp-line-height-tight:1.15;--gp-line-height-normal:1.6;--gp-space-1:.25rem;--gp-space-2:.5rem;--gp-space-3:.75rem;--gp-space-4:1rem;--gp-space-5:1.25rem;--gp-space-6:1.5rem;--gp-space-8:2rem;--gp-space-10:2.5rem;--gp-space-12:3rem;--gp-space-16:4rem;--gp-radius-control:.625rem;--gp-radius-control-lg:.75rem;--gp-radius-card:1rem;--gp-radius-pill:999px;--gp-radius-sm:var(--gp-radius-control);--gp-radius-md:var(--gp-radius-control-lg);--gp-radius-lg:var(--gp-radius-card);--gp-radius-xl:var(--gp-radius-card);--gp-radius-full:var(--gp-radius-pill);--gp-shadow-sm:0 1px 2px #1118270f;--gp-shadow-md:0 12px 30px #11182717;--gp-shadow-lg:var(--gp-shadow-md);--gp-shadow-focus:0 0 0 3px #2563eb3d;--gp-motion-fast:.15s;--gp-motion-normal:.2s;--gp-motion-medium:var(--gp-motion-normal);--gp-motion-slow:.28s;--gp-motion-skeleton:1.4s;--gp-ease-standard:cubic-bezier(.2, 0, 0, 1);--gp-ease-emphasized:cubic-bezier(.2, .8, .2, 1);--gp-touch-target:2.75rem;--gp-content-max:75rem;--gp-sidebar-width:16rem;--gp-mobile-nav-height:4.5rem;--gp-layout-content:var(--gp-content-max);--gp-layout-wide:var(--gp-content-max);--gp-layout-sidebar:var(--gp-sidebar-width);--gp-layout-bottom-nav:var(--gp-mobile-nav-height);--gp-layout-mobile-header:4rem;--gp-layout-public-header:4.75rem;--gp-layout-dialog:36rem;--gp-layout-drawer:22rem;--gp-layout-hero-min-height:42rem;--gp-layout-hero-panel-min:18rem;--gp-measure-display:14ch;--gp-measure-copy:58ch;--gp-z-sticky:10;--gp-z-drawer:30;--gp-z-skip-link:50;--gp-cefr-pre-a1-bg:var(--gp-color-surface-soft);--gp-cefr-pre-a1-text:var(--gp-color-text-secondary);--gp-cefr-a1-bg:var(--gp-color-info-soft);--gp-cefr-a1-text:var(--gp-color-info);--gp-cefr-a2-bg:var(--gp-color-success-soft);--gp-cefr-a2-text:var(--gp-color-success);--gp-cefr-b1-bg:var(--gp-color-primary-soft);--gp-cefr-b1-text:var(--gp-color-primary-dark);--gp-cefr-b2-bg:var(--gp-color-warning-soft);--gp-cefr-b2-text:var(--gp-color-warning);--gp-cefr-c1-bg:var(--gp-color-error-soft);--gp-cefr-c1-text:var(--gp-color-error);--gp-cefr-c2-bg:var(--gp-color-accent-soft);--gp-cefr-c2-text:var(--gp-color-accent);--gp-cefr-pre-a1-soft:var(--gp-cefr-pre-a1-bg);--gp-cefr-pre-a1:var(--gp-cefr-pre-a1-text);--gp-cefr-a1-soft:var(--gp-cefr-a1-bg);--gp-cefr-a1:var(--gp-cefr-a1-text);--gp-cefr-a2-soft:var(--gp-cefr-a2-bg);--gp-cefr-a2:var(--gp-cefr-a2-text);--gp-cefr-b1-soft:var(--gp-cefr-b1-bg);--gp-cefr-b1:var(--gp-cefr-b1-text);--gp-cefr-b2-soft:var(--gp-cefr-b2-bg);--gp-cefr-b2:var(--gp-cefr-b2-text);--gp-cefr-c1-soft:var(--gp-cefr-c1-bg);--gp-cefr-c1:var(--gp-cefr-c1-text);--gp-cefr-c2-soft:var(--gp-cefr-c2-bg);--gp-cefr-c2:var(--gp-cefr-c2-text)}*,:before,:after{box-sizing:border-box}html{background:var(--gp-color-background);min-width:20rem;color:var(--gp-color-text);font-family:var(--gp-font-sans);line-height:var(--gp-line-height-normal);text-rendering:optimizelegibility}body{background:var(--gp-color-background);min-height:100vh;margin:0}button,input,select,textarea{font:inherit}a{color:inherit}:focus-visible{border-radius:var(--gp-radius-control);outline:2px solid var(--gp-color-primary);outline-offset:3px;box-shadow:var(--gp-shadow-focus)}::selection{background:var(--gp-color-primary-soft);color:var(--gp-color-text)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.gp-button,.gp-icon-button{cursor:pointer;font-weight:var(--gp-font-weight-semibold);min-height:var(--gp-touch-target);transition:background-color var(--gp-motion-fast) var(--gp-ease-standard), border-color var(--gp-motion-fast) var(--gp-ease-standard), color var(--gp-motion-fast) var(--gp-ease-standard), transform var(--gp-motion-fast) var(--gp-ease-standard);border:0;justify-content:center;align-items:center;display:inline-flex}.gp-button{border-radius:var(--gp-radius-md);gap:var(--gp-space-2);padding:var(--gp-space-3) var(--gp-space-5)}.gp-button:hover:not(:disabled){transform:translateY(-1px)}.gp-button:disabled{cursor:not-allowed;opacity:.6}.gp-button--small{min-height:var(--gp-touch-target);padding:var(--gp-space-2) var(--gp-space-4)}.gp-button--primary{background:var(--gp-color-primary);color:var(--gp-color-text-inverse)}.gp-button--primary:hover:not(:disabled){background:var(--gp-color-primary-hover)}.gp-button--secondary{background:var(--gp-color-surface);border:1px solid var(--gp-color-border-strong);color:var(--gp-color-text)}.gp-button--secondary:hover:not(:disabled),.gp-button--ghost:hover:not(:disabled){background:var(--gp-color-surface-muted)}.gp-button--ghost{color:var(--gp-color-primary);background:0 0}.gp-button--danger{background:var(--gp-color-error);color:var(--gp-color-text-inverse)}.gp-button__spinner{animation:gp-spin var(--gp-motion-slow) linear infinite;height:var(--gp-space-5);width:var(--gp-space-5)}.gp-icon-button{border-radius:var(--gp-radius-md);color:var(--gp-color-text-muted);min-width:var(--gp-touch-target);padding:var(--gp-space-2);background:0 0}.gp-icon-button:hover{background:var(--gp-color-surface-muted);color:var(--gp-color-text)}.gp-icon-button svg{height:var(--gp-space-6);width:var(--gp-space-6)}.gp-field{gap:var(--gp-space-2);display:grid}.gp-field__label{color:var(--gp-color-text);font-size:var(--gp-font-size-sm);font-weight:var(--gp-font-weight-semibold)}.gp-field__message{color:var(--gp-color-text-secondary);font-size:var(--gp-font-size-sm);margin:0}.gp-field__message--error{color:var(--gp-color-error)}.gp-input,.gp-select{background:var(--gp-color-surface);border:1px solid var(--gp-color-border-strong);border-radius:var(--gp-radius-md);color:var(--gp-color-text);min-height:var(--gp-touch-target);padding:var(--gp-space-3) var(--gp-space-4);width:100%}.gp-textarea{min-height:calc(var(--gp-space-12) * 2);resize:vertical}.gp-content-list{gap:var(--gp-space-3);margin:0;padding:0;list-style:none;display:grid}.gp-content-list__item{border-bottom:1px solid var(--gp-color-border);align-items:center;gap:var(--gp-space-3);padding:var(--gp-space-3) 0;flex-wrap:wrap;justify-content:space-between;display:flex}.gp-editor-layout{gap:var(--gp-space-6);display:grid}@media (width>=64rem){.gp-editor-layout{grid-template-columns:minmax(0,1.2fr) minmax(18rem,.8fr)}}.gp-input:hover,.gp-select:hover{border-color:var(--gp-color-primary)}.gp-input--error,.gp-select--error{border-color:var(--gp-color-error)}.gp-input::placeholder{color:var(--gp-color-text-secondary);opacity:1}.gp-badge{border-radius:var(--gp-radius-full);font-size:var(--gp-font-size-xs);font-weight:var(--gp-font-weight-semibold);min-height:var(--gp-space-6);padding:var(--gp-space-1) var(--gp-space-3);align-items:center;width:fit-content;line-height:1;display:inline-flex}.gp-badge--neutral{background:var(--gp-color-surface-muted);color:var(--gp-color-text-muted)}.gp-badge--primary{background:var(--gp-color-primary-soft);color:var(--gp-color-primary-strong)}.gp-badge--accent{background:var(--gp-color-accent-soft);color:var(--gp-color-accent)}.gp-badge--success{background:var(--gp-color-success-soft);color:var(--gp-color-success)}.gp-badge--warning{background:var(--gp-color-warning-soft);color:var(--gp-color-warning-text)}.gp-badge--error{background:var(--gp-color-error-soft);color:var(--gp-color-error)}.gp-badge--info{background:var(--gp-color-info-soft);color:var(--gp-color-info)}.gp-badge--cefr-pre-a1{background:var(--gp-cefr-pre-a1-soft);color:var(--gp-cefr-pre-a1)}.gp-badge--cefr-a1{background:var(--gp-cefr-a1-soft);color:var(--gp-cefr-a1)}.gp-badge--cefr-a2{background:var(--gp-cefr-a2-soft);color:var(--gp-cefr-a2)}.gp-badge--cefr-b1{background:var(--gp-cefr-b1-soft);color:var(--gp-cefr-b1)}.gp-badge--cefr-b2{background:var(--gp-cefr-b2-soft);color:var(--gp-cefr-b2)}.gp-badge--cefr-c1{background:var(--gp-cefr-c1-soft);color:var(--gp-cefr-c1)}.gp-badge--cefr-c2{background:var(--gp-cefr-c2-soft);color:var(--gp-cefr-c2)}.gp-card{background:var(--gp-color-surface);border:1px solid var(--gp-color-border);border-radius:var(--gp-radius-lg);box-shadow:var(--gp-shadow-sm);padding:var(--gp-space-6)}.gp-card__header{gap:var(--gp-space-2);margin-bottom:var(--gp-space-5);display:grid}.gp-card__title{font-size:var(--gp-font-size-lg);margin:0}.gp-card__description,.gp-page-header p,.gp-empty-state p{color:var(--gp-color-text-secondary);margin:0}.gp-progress{gap:var(--gp-space-2);display:grid}.gp-progress__label-row{font-size:var(--gp-font-size-sm);font-weight:var(--gp-font-weight-semibold);justify-content:space-between;display:flex}.gp-progress__track{background:var(--gp-color-surface-muted);border-radius:var(--gp-radius-full);height:var(--gp-space-3);overflow:hidden}.gp-progress__value{background:var(--gp-color-primary);border-radius:inherit;height:100%;transition:width var(--gp-motion-medium) var(--gp-ease-standard);width:var(--gp-progress-value);display:block}.gp-modal{max-width:min(var(--gp-layout-dialog), calc(100% - var(--gp-space-6)));background:0 0;border:0;width:100%;padding:0}.gp-modal::backdrop{background:var(--gp-color-overlay)}.gp-modal__surface{background:var(--gp-color-surface);border-radius:var(--gp-radius-xl);box-shadow:var(--gp-shadow-lg);overflow:hidden}.gp-modal__header,.gp-modal__footer{align-items:center;gap:var(--gp-space-4);padding:var(--gp-space-5) var(--gp-space-6);justify-content:space-between;display:flex}.gp-modal__header{border-bottom:1px solid var(--gp-color-border)}.gp-modal__header h2{font-size:var(--gp-font-size-xl);margin:0}.gp-modal__body{color:var(--gp-color-text-muted);padding:var(--gp-space-6)}.gp-modal__footer{background:var(--gp-color-surface-muted);border-top:1px solid var(--gp-color-border);justify-content:flex-end}.gp-toast{background:var(--gp-color-surface);border:1px solid var(--gp-color-border);border-left:var(--gp-space-1) solid var(--gp-color-info);border-radius:var(--gp-radius-md);box-shadow:var(--gp-shadow-md);align-items:center;gap:var(--gp-space-3);padding:var(--gp-space-4);display:flex}.gp-toast--success{border-left-color:var(--gp-color-success)}.gp-toast--error{border-left-color:var(--gp-color-error)}.gp-toast--info{border-left-color:var(--gp-color-info)}.gp-toast svg{height:var(--gp-space-5);width:var(--gp-space-5)}.gp-skeleton{animation:gp-pulse var(--gp-motion-skeleton) var(--gp-ease-standard) infinite;background:var(--gp-color-surface-muted);border-radius:var(--gp-radius-sm);min-height:var(--gp-space-5);width:100%;display:block}.gp-empty-state{align-items:center;gap:var(--gp-space-3);padding:var(--gp-space-8) var(--gp-space-5);text-align:center;justify-items:center;display:grid}.gp-empty-state h3{margin:0}.gp-empty-state__icon{background:var(--gp-color-primary-soft);border-radius:var(--gp-radius-full);color:var(--gp-color-primary);height:var(--gp-space-12);width:var(--gp-space-12);justify-content:center;align-items:center;display:flex}.gp-empty-state__icon svg{height:var(--gp-space-6);width:var(--gp-space-6)}.gp-app-shell{background:var(--gp-color-background);color:var(--gp-color-text);min-height:100vh}.gp-skip-link{background:var(--gp-color-text);border-radius:var(--gp-radius-md);color:var(--gp-color-text-inverse);left:var(--gp-space-4);padding:var(--gp-space-3) var(--gp-space-4);top:var(--gp-space-4);transform:translateY(calc(-100% - var(--gp-space-6)));transition:transform var(--gp-motion-fast) var(--gp-ease-standard);z-index:var(--gp-z-skip-link);position:fixed}.gp-skip-link:focus{transform:translateY(0)}.gp-brand{color:var(--gp-color-text);font-size:var(--gp-font-size-lg);font-weight:var(--gp-font-weight-bold);align-items:center;gap:var(--gp-space-3);text-decoration:none;display:inline-flex}.gp-brand__mark{background:var(--gp-color-primary);border-radius:var(--gp-radius-md);color:var(--gp-color-text-inverse);height:var(--gp-space-10);width:var(--gp-space-10);justify-content:center;align-items:center;display:inline-flex}.gp-brand__mark svg{height:var(--gp-space-6);width:var(--gp-space-6)}.gp-brand>.gp-badge{font-size:var(--gp-font-size-xs);margin-left:calc(-1 * var(--gp-space-2))}.gp-shell-sidebar{background:var(--gp-color-surface);border-right:1px solid var(--gp-color-border);gap:var(--gp-space-8);min-height:100vh;padding:var(--gp-space-6);width:var(--gp-layout-sidebar);flex-direction:column;display:none;position:fixed}.gp-shell-nav{gap:var(--gp-space-2);display:grid}.gp-shell-nav__link{border-radius:var(--gp-radius-md);color:var(--gp-color-text-secondary);font-weight:var(--gp-font-weight-medium);align-items:center;gap:var(--gp-space-3);min-height:var(--gp-touch-target);padding:var(--gp-space-3) var(--gp-space-4);text-decoration:none;display:flex}.gp-shell-nav__link:hover{background:var(--gp-color-surface-muted);color:var(--gp-color-text)}.gp-shell-nav__link[aria-current=page]{background:var(--gp-color-primary-soft);color:var(--gp-color-primary-strong)}.gp-shell-nav__link svg{height:var(--gp-space-5);width:var(--gp-space-5)}.gp-shell-sidebar__footer{color:var(--gp-color-text-muted);font-size:var(--gp-font-size-xs);gap:var(--gp-space-2);margin-top:auto;display:grid}.gp-shell-sidebar__footer p{margin:0}.gp-shell-mobile-header{background:var(--gp-color-surface);border-bottom:1px solid var(--gp-color-border);min-height:var(--gp-layout-mobile-header);padding:var(--gp-space-3) var(--gp-space-4);z-index:var(--gp-z-sticky);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.gp-shell-main{max-width:var(--gp-layout-content);min-width:0;padding:var(--gp-space-6) var(--gp-space-4) calc(var(--gp-layout-bottom-nav) + var(--gp-space-6));margin:0 auto}.gp-page-header{align-items:flex-start;gap:var(--gp-space-5);margin-bottom:var(--gp-space-8);flex-wrap:wrap;justify-content:space-between;display:flex}.gp-page-header>div:first-child{gap:var(--gp-space-2);display:grid}.gp-page-header h1{font-size:clamp(var(--gp-font-size-2xl), 5vw, var(--gp-font-size-3xl));letter-spacing:var(--gp-letter-spacing-tight);margin:0}.gp-page-header__actions{gap:var(--gp-space-3);display:flex}.gp-eyebrow{font-size:var(--gp-font-size-sm);font-weight:var(--gp-font-weight-bold);letter-spacing:var(--gp-letter-spacing-eyebrow);text-transform:uppercase;color:var(--gp-color-primary)!important}.gp-breadcrumbs{color:var(--gp-color-text-secondary);font-size:var(--gp-font-size-sm);gap:var(--gp-space-2);margin:0 0 var(--gp-space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.gp-breadcrumbs li+li:before{content:"/";margin-right:var(--gp-space-2)}.gp-shell-content{gap:var(--gp-space-6);display:grid}.gp-shell-bottom-nav{background:var(--gp-color-surface);border-top:1px solid var(--gp-color-border);min-height:var(--gp-layout-bottom-nav);z-index:var(--gp-z-sticky);grid-auto-columns:1fr;grid-auto-flow:column;display:grid;position:fixed;bottom:0;left:0;right:0}.gp-shell-bottom-nav .gp-shell-nav__link{font-size:var(--gp-font-size-xs);gap:var(--gp-space-1);padding:var(--gp-space-2);border-radius:0;flex-direction:column;justify-content:center}.gp-shell-drawer-layer{z-index:var(--gp-z-drawer);position:fixed;inset:0}.gp-shell-drawer-backdrop{background:var(--gp-color-overlay);border:0;width:100%;position:absolute;inset:0}.gp-shell-drawer{background:var(--gp-color-surface);box-shadow:var(--gp-shadow-lg);max-width:min(var(--gp-layout-drawer), calc(100% - var(--gp-space-8)));padding:var(--gp-space-5);width:100%;position:absolute;top:0;bottom:0;right:0;overflow-y:auto}.gp-shell-drawer__header{margin-bottom:var(--gp-space-6);justify-content:space-between;align-items:center;display:flex}.gp-public-shell{background:var(--gp-color-background);min-height:100vh}.gp-public-header{background:color-mix(in srgb, var(--gp-color-surface) 92%, transparent);border-bottom:1px solid var(--gp-color-border);min-height:var(--gp-layout-public-header);padding:var(--gp-space-4) max(var(--gp-space-5), calc((100vw - var(--gp-layout-wide)) / 2));z-index:var(--gp-z-sticky);justify-content:space-between;align-items:center;display:flex;position:sticky;top:0}.gp-public-nav{align-items:center;gap:var(--gp-space-2);display:flex}.gp-public-nav a:not(.gp-button){border-radius:var(--gp-radius-md);color:var(--gp-color-text-muted);font-weight:var(--gp-font-weight-medium);min-height:var(--gp-touch-target);padding:var(--gp-space-3) var(--gp-space-4);text-decoration:none}.gp-public-nav a:not(.gp-button):hover{background:var(--gp-color-surface-muted);color:var(--gp-color-text)}.gp-public-main{max-width:var(--gp-layout-wide);padding:var(--gp-space-12) var(--gp-space-5);margin:0 auto}.gp-hero{align-items:center;gap:var(--gp-space-10);min-height:min(var(--gp-layout-hero-min-height), calc(100vh - var(--gp-layout-public-header)));padding:var(--gp-space-10) 0;display:grid}.gp-hero__copy{gap:var(--gp-space-5);display:grid}.gp-hero h1{font-size:clamp(var(--gp-font-size-3xl), 8vw, var(--gp-font-size-5xl));letter-spacing:var(--gp-letter-spacing-display);max-width:var(--gp-measure-display);margin:0;line-height:1.02}.gp-hero p{color:var(--gp-color-text-secondary);font-size:var(--gp-font-size-lg);max-width:var(--gp-measure-copy);margin:0}.gp-hero__actions{gap:var(--gp-space-3);flex-wrap:wrap;display:flex}.gp-hero__panel{background:var(--gp-color-primary-strong);border-radius:var(--gp-radius-xl);box-shadow:var(--gp-shadow-lg);color:var(--gp-color-text-inverse);gap:var(--gp-space-5);padding:var(--gp-space-8);display:grid}.gp-hero__panel p{color:var(--gp-color-primary-soft);font-size:var(--gp-font-size-base)}.gp-hero__panel .gp-progress__track{background:var(--gp-color-primary-hover)}.gp-hero__panel .gp-progress__value{background:var(--gp-color-surface)}.gp-feature-grid,.gp-dashboard-grid,.gp-form-grid{gap:var(--gp-space-5);display:grid}.gp-feature-grid{margin-top:var(--gp-space-10)}.gp-stack{gap:var(--gp-space-5);display:grid}.gp-cluster{align-items:center;gap:var(--gp-space-3);flex-wrap:wrap;display:flex}.gp-status-line{color:var(--gp-color-text-secondary);font-size:var(--gp-font-size-sm)}.gp-question-option-row,.gp-question-preview{border:1px solid var(--gp-color-border);border-radius:var(--gp-radius-control);gap:var(--gp-space-3);padding:var(--gp-space-4);display:grid}.gp-question-option-row{background:var(--gp-color-surface-soft)}.gp-question-preview{background:var(--gp-color-surface)}.gp-question-preview h3,.gp-question-preview p{margin:0}.gp-question-preview__sentence{line-height:var(--gp-line-height-normal)}.gp-answer-list{gap:var(--gp-space-3);display:grid}.gp-answer-option{border:1px solid var(--gp-color-border);border-radius:var(--gp-radius-control);min-height:var(--gp-touch-target);padding:var(--gp-space-3) var(--gp-space-4);align-items:center;display:flex}.gp-choice-control{align-items:center;gap:var(--gp-space-2);min-height:var(--gp-touch-target);display:flex}.gp-choice-control input{min-height:var(--gp-space-5);min-width:var(--gp-space-5)}.gp-validation-list{color:var(--gp-color-error);gap:var(--gp-space-2);padding-left:var(--gp-space-5);margin:0;display:grid}.gp-auth-page{background:var(--gp-color-background);min-height:100vh;padding:var(--gp-space-5);align-items:center;display:grid}.gp-auth-page>.gp-card{max-width:var(--gp-layout-dialog);width:100%;margin:0 auto}.gp-motion-enter{animation:gp-enter var(--gp-motion-medium) var(--gp-ease-emphasized) both}@keyframes gp-spin{to{transform:rotate(1turn)}}@keyframes gp-pulse{50%{opacity:.48}}@keyframes gp-enter{0%{opacity:0;transform:translateY(var(--gp-space-2))}to{opacity:1;transform:translateY(0)}}@media (width>=40rem){.gp-feature-grid,.gp-form-grid,.gp-dashboard-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width>=64rem){.gp-shell-sidebar{display:flex}.gp-shell-mobile-header,.gp-shell-bottom-nav{display:none}.gp-shell-main{margin-left:var(--gp-layout-sidebar);padding:var(--gp-space-10) var(--gp-space-8)}.gp-hero{grid-template-columns:minmax(0, 1.25fr) minmax(var(--gp-layout-hero-panel-min), .75fr)}.gp-feature-grid,.gp-dashboard-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=39.99rem){.gp-public-nav a:not(.gp-button){display:none}.gp-public-header{padding-inline:var(--gp-space-4)}.gp-public-main{padding:var(--gp-space-8) var(--gp-space-4)}.gp-card{padding:var(--gp-space-5)}}.gp-quiz-layout{gap:var(--gp-space-6);max-width:var(--gp-layout-dialog);width:100%;margin:0 auto;display:grid}.gp-quiz-chrome,.gp-quiz-question__header{align-items:flex-start;gap:var(--gp-space-4);justify-content:space-between;display:flex}.gp-quiz-chrome h2,.gp-quiz-question__prompt,.gp-quiz-chrome p,.gp-quiz-question__header p,.gp-quiz-feedback p{margin:0}.gp-quiz-question{gap:var(--gp-space-5);display:grid}.gp-quiz-question__header>div{gap:var(--gp-space-2);display:grid}.gp-quiz-question__prompt{font-size:var(--gp-font-size-xl);line-height:var(--gp-line-height-tight)}.gp-quiz-fieldset{gap:var(--gp-space-3);border:0;margin:0;padding:0;display:grid}.gp-quiz-fieldset legend{font-size:var(--gp-font-size-sm);font-weight:var(--gp-font-weight-semibold);margin-bottom:var(--gp-space-3)}.gp-quiz-answer{background:var(--gp-color-surface);border:1px solid var(--gp-color-border-strong);border-radius:var(--gp-radius-control-lg);cursor:pointer;align-items:center;gap:var(--gp-space-3);min-height:var(--gp-touch-target);padding:var(--gp-space-3) var(--gp-space-4);transition:background var(--gp-motion-fast) var(--gp-ease-standard), border-color var(--gp-motion-fast) var(--gp-ease-standard);display:flex}.gp-quiz-answer:has(input:checked){background:var(--gp-color-primary-soft);border-color:var(--gp-color-primary)}.gp-quiz-answer:has(input:disabled){cursor:default}.gp-quiz-answer input{accent-color:var(--gp-color-primary);min-height:var(--gp-space-5);min-width:var(--gp-space-5)}.gp-answer-list--split{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-quiz-hint{background:var(--gp-color-info-soft);border-radius:var(--gp-radius-control);color:var(--gp-color-text);padding:var(--gp-space-3) var(--gp-space-4)}.gp-quiz-hint summary{cursor:pointer;font-weight:var(--gp-font-weight-semibold);min-height:var(--gp-touch-target);padding-block:var(--gp-space-2)}.gp-quiz-hint p{margin:var(--gp-space-2) 0 0}.gp-quiz-feedback{background:var(--gp-color-surface);border:1px solid var(--gp-color-border);border-left:var(--gp-space-1) solid var(--gp-color-info);border-radius:var(--gp-radius-card);gap:var(--gp-space-4);padding:var(--gp-space-5);display:grid}.gp-quiz-feedback--correct{border-left-color:var(--gp-color-success)}.gp-quiz-feedback--incorrect{border-left-color:var(--gp-color-error)}.gp-quiz-feedback__label{color:var(--gp-color-text-secondary);font-size:var(--gp-font-size-xs);font-weight:var(--gp-font-weight-bold);letter-spacing:var(--gp-letter-spacing-eyebrow);text-transform:uppercase;display:block}.gp-quiz-skeleton--question{min-height:var(--gp-space-16)}.gp-quiz-skeleton--control{min-height:var(--gp-touch-target)}.gp-result-layout,.gp-history-layout{gap:var(--gp-space-6);max-width:var(--gp-layout-dialog);width:100%;margin:0 auto;display:grid}.gp-result-hero{gap:var(--gp-space-5);display:grid}.gp-result-score{align-items:baseline;gap:var(--gp-space-3);flex-wrap:wrap;display:flex}.gp-result-score strong{color:var(--gp-color-primary);font-size:var(--gp-font-size-3xl);line-height:var(--gp-line-height-tight)}.gp-result-score span,.gp-result-stats dt,.gp-history-row span{color:var(--gp-color-text-secondary)}.gp-result-stats{gap:var(--gp-space-3);grid-template-columns:repeat(4,minmax(0,1fr));margin:0;display:grid}.gp-result-stats div{background:var(--gp-color-surface-soft);border-radius:var(--gp-radius-control);gap:var(--gp-space-1);padding:var(--gp-space-3);display:grid}.gp-result-stats dt{font-size:var(--gp-font-size-sm)}.gp-result-stats dd{font-size:var(--gp-font-size-lg);font-weight:var(--gp-font-weight-bold);margin:0}.gp-result-topic{gap:var(--gp-space-3);display:grid}.gp-result-topic__heading,.gp-history-row{align-items:center;gap:var(--gp-space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.gp-history-layout>header h2,.gp-history-layout>header p{margin:0}.gp-history-layout>header{gap:var(--gp-space-2);display:grid}.gp-history-row>strong{color:var(--gp-color-primary);font-size:var(--gp-font-size-xl)}@media (width<=39.99rem){.gp-answer-list--split{grid-template-columns:1fr}.gp-quiz-chrome,.gp-quiz-question__header{flex-direction:column;align-items:stretch}.gp-result-stats{grid-template-columns:repeat(2,minmax(0,1fr))}.gp-history-row{flex-direction:column;align-items:stretch}}.gp-progress-layout,.gp-mistake-layout,.gp-mistake-detail{gap:var(--gp-space-8);width:100%;display:grid}.gp-progress-layout section,.gp-mistake-layout{gap:var(--gp-space-5);display:grid}.gp-section-heading{align-items:end;gap:var(--gp-space-4);flex-wrap:wrap;justify-content:space-between;display:flex}.gp-section-heading>div{gap:var(--gp-space-2);display:grid}.gp-section-heading h2,.gp-section-heading p,.gp-progress-summary p,.gp-level-grid p,.gp-area-grid p,.gp-mistake-detail h2,.gp-mistake-detail p{margin:0}.gp-section-heading>p,.gp-progress-summary p,.gp-level-grid p,.gp-area-grid p{color:var(--gp-color-text-secondary)}.gp-progress-summary,.gp-mastery-grid,.gp-level-grid,.gp-area-grid,.gp-mistake-grid{gap:var(--gp-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gp-progress-summary{grid-template-columns:repeat(3,minmax(0,1fr))}.gp-progress-summary .gp-card,.gp-mastery-grid .gp-card,.gp-level-grid .gp-card,.gp-area-grid .gp-card,.gp-mistake-grid .gp-card{align-content:start}.gp-progress-summary strong{color:var(--gp-color-primary);font-size:var(--gp-font-size-2xl)}.gp-mistake-filters{max-width:var(--gp-layout-dialog)}@media (width<=63.99rem){.gp-progress-summary{grid-template-columns:1fr}}@media (width<=39.99rem){.gp-section-heading{flex-direction:column;align-items:stretch}.gp-mastery-grid,.gp-level-grid,.gp-area-grid,.gp-mistake-grid{grid-template-columns:1fr}}.gp-daily-layout{gap:var(--gp-space-8);max-width:var(--gp-layout-dialog);width:100%;margin:0 auto;display:grid}.gp-daily-layout h2,.gp-daily-layout p{margin:0}.gp-daily-recommendations{gap:var(--gp-space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.gp-daily-skeleton{min-height:var(--gp-touch-target)}@media (width<=39.99rem){.gp-daily-recommendations{grid-template-columns:1fr}}.gp-monetization-layout{gap:var(--gp-space-6);max-width:var(--gp-layout-wide);margin:0 auto;display:grid}.gp-monetization-layout h2,.gp-ad-slot p{margin:0}.gp-plan-grid{gap:var(--gp-space-5);display:grid}.gp-feature-list{gap:var(--gp-space-2);padding-left:var(--gp-space-5);margin:0;display:grid}.gp-ad-slot{background:var(--gp-color-surface-soft);border:1px solid var(--gp-color-border);border-radius:var(--gp-radius-card);color:var(--gp-color-text-secondary);gap:var(--gp-space-2);min-height:var(--gp-space-16);padding:var(--gp-space-5);text-align:center;place-content:center;display:grid}.gp-ad-slot span{font-size:var(--gp-font-size-xs);font-weight:var(--gp-font-weight-bold);letter-spacing:var(--gp-letter-spacing-eyebrow);text-transform:uppercase}.gp-monetization-skeleton{min-height:var(--gp-layout-hero-panel-min)}@media (width>=48rem){.gp-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
