:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;font-synthesis:none;text-rendering:optimizelegibility;--color-brand-primary:#6366f1;--color-brand-primary-hover:#4f46e5;--color-brand-primary-soft:#eef2ff;--color-success:#22c55e;--color-warning:#f59e0b;--color-error:#ef4444;--color-info:#3b82f6;--color-background:#f8fafc;--color-surface:#fff;--color-surface-alt:#f1f5f9;--color-surface-hover:#f8fafc;--color-border:#e5e7eb;--color-border-strong:#cbd5e1;--color-text-primary:#0f172a;--color-text-secondary:#475569;--color-text-muted:#64748b;--color-text-on-primary:#fff;--color-link:#4f46e5;--color-focus-ring:#6366f14d;--color-overlay:#0f172a7a;--color-success-surface:#f0fdf4;--color-success-text:#15803d;--color-approved-surface:#047857;--color-approved-text:#fff;--color-error-surface:#fef2f2;--color-error-text:#b91c1c;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--radius-xs:4px;--radius-sm:8px;--radius-md:12px;--radius-lg:16px;--radius-xl:24px;--radius-pill:9999px;--shadow-sm:0 1px 2px #0f172a0d;--shadow-md:0 4px 12px #0f172a14;--shadow-lg:0 12px 24px #0f172a1f;font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif}[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--color-brand-primary-soft:#252146;--color-background:#0f1115;--color-surface:#171a21;--color-surface-alt:#1e212a;--color-surface-hover:#232731;--color-border:#2b2f3a;--color-border-strong:#3b414f;--color-text-primary:#f4f5f7;--color-text-secondary:#a1a5b3;--color-text-muted:#818896;--color-link:#8aa0ff;--color-focus-ring:#7c5cfc6b;--color-overlay:#000000a3;--color-success-surface:#102a1b;--color-success-text:#4ade80;--color-approved-surface:#34d399;--color-approved-text:#052e22;--color-error-surface:#301515;--color-error-text:#f87171;--shadow-sm:0 1px 2px #00000059;--shadow-md:0 4px 12px #00000059;--shadow-lg:0 8px 24px #00000073}*{box-sizing:border-box}html{background:var(--color-background);min-width:320px}body{min-width:320px;min-height:100vh;color:var(--color-text-primary);background:var(--color-background);margin:0;font-size:16px;line-height:1.5}button,input,select{font:inherit}button,select,a{-webkit-tap-highlight-color:transparent}button,a,select,input{outline:none}:focus-visible{border-radius:var(--radius-xs);box-shadow:0 0 0 3px var(--color-focus-ring)}a{color:var(--color-link);text-underline-offset:3px;font-weight:500}h1,h2,h3,p{margin-top:0}h1{margin-bottom:var(--space-2);letter-spacing:-.025em;font-size:24px;line-height:32px}h2{margin-bottom:var(--space-4);font-size:20px;line-height:28px}button{border-radius:var(--radius-sm);min-height:44px;color:var(--color-text-on-primary);background:var(--color-brand-primary);cursor:pointer;border:1px solid #0000;padding:10px 16px;font-size:14px;font-weight:600;line-height:20px;transition:background-color .14s,border-color .14s,transform .14s}button:hover:not(:disabled){background:var(--color-brand-primary-hover)}button:active:not(:disabled){transform:translateY(1px)}button:disabled{cursor:not-allowed;opacity:.6}.app-root{min-height:100vh}.staff-auth-page{min-height:100vh;padding:var(--space-5) var(--space-4);background:radial-gradient(circle at 50% 0, #d9770624, transparent 32rem), var(--color-background)}.staff-auth-toolbar,.staff-header{width:min(100%,1120px);margin:0 auto var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-4);display:flex}.staff-brand-mark{border-radius:var(--radius-sm);color:#fff;background:#b45309;place-items:center;width:36px;height:36px;font-weight:800;display:inline-grid}.staff-auth-card{width:min(100%,480px);padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);border-top:4px solid #d97706;margin:0 auto}.staff-auth-form{margin-top:var(--space-6);gap:var(--space-4);display:grid}.staff-page{width:min(100%,1280px);min-height:100vh;padding:var(--space-5) var(--space-4) var(--space-10);margin:0 auto}.staff-header{width:100%;margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--color-border)}.staff-header>div,.staff-header__actions{align-items:center;gap:var(--space-3);display:flex}.staff-header small{color:var(--color-text-muted);overflow-wrap:anywhere}.staff-nav{margin-bottom:var(--space-8);gap:var(--space-2);flex-wrap:wrap;display:flex}.staff-nav a{border-radius:var(--radius-sm);min-height:44px;padding:10px 14px;text-decoration:none}.staff-nav a[aria-current=page]{background:var(--color-brand-primary-soft)}.staff-content{max-width:1040px}.staff-invite{margin:var(--space-5) 0;gap:var(--space-3);display:grid}.staff-invite code{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-alt);overflow-wrap:anywhere}.staff-account-list,.staff-account-card{gap:var(--space-4);display:grid}.staff-account-card small{color:var(--color-text-muted);display:block}.staff-role-badges,.staff-account-actions{gap:var(--space-2);flex-wrap:wrap;display:flex}.staff-parent-result,.staff-dashboard-sections{gap:var(--space-6);min-width:0;margin-top:var(--space-6);display:grid}.staff-parent-result h2,.staff-parent-result h3,.staff-parent-result li,.staff-parent-result small{overflow-wrap:anywhere}.staff-parent-child{gap:var(--space-4);display:grid}.staff-parent-child details{border-top:1px solid var(--color-border);padding-top:var(--space-3)}.staff-parent-child summary{cursor:pointer;font-weight:700}.staff-admin-action{margin-top:var(--space-3)}.staff-templates{gap:var(--space-5);display:grid}.staff-template-filters{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.staff-template-filters label,.staff-template-more-filters>div{gap:var(--space-2);display:grid}.staff-template-more-filters{grid-column:1/-1}.staff-template-more-filters summary,.staff-coverage summary{min-height:44px;padding:var(--space-2) 0;cursor:pointer;font-weight:700}.staff-template-more-filters>div{padding-top:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr))}.staff-template-filter-actions,.staff-template-pagination,.staff-template-list-heading,.staff-coverage-totals{align-items:center;gap:var(--space-3);display:flex}.staff-template-filter-actions{grid-column:1/-1}.staff-template-list-heading{justify-content:space-between}.staff-template-list-heading h2,.staff-template-list-heading p{margin:0}.staff-coverage{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);border-left:4px solid #d97706;display:grid}.staff-coverage-totals{flex-wrap:wrap}.staff-coverage-totals span{padding:var(--space-2) var(--space-3);background:var(--color-surface-alt);border-radius:999px}.staff-template-table-wrap{max-width:100%;overflow-x:auto}.staff-template-table{border-collapse:collapse;width:100%;font-size:.9rem}.staff-template-table th,.staff-template-table td{padding:var(--space-3);border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top}.staff-template-table thead th{color:var(--color-text-muted);background:var(--color-surface-alt);white-space:nowrap}.staff-template-stem{min-width:20rem}.staff-review-state{background:var(--color-surface-alt);white-space:nowrap;border-radius:999px;padding:4px 8px;display:inline-block}.staff-review-state--verified{color:var(--color-success-text);background:var(--color-success-surface)}.staff-review-state--approved{color:var(--color-approved-text);background:var(--color-approved-surface);font-weight:600}.staff-quality,.staff-quality-detail,.staff-quality-list,.staff-quality-evidence,.staff-quality-action{gap:var(--space-5);min-width:0;display:grid}.staff-quality-filters{gap:var(--space-3);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.staff-quality-filters label,.staff-quality-action label{gap:var(--space-2);font-weight:600;display:grid}.staff-quality-checkbox{grid-column:1/-1;grid-template-columns:auto 1fr;justify-content:start;align-items:center}.staff-quality-checkbox input{width:20px;height:20px}.staff-quality-help,.staff-quality-evidence,.staff-quality-action,.staff-quality-card{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.staff-quality-help{border-left:4px solid var(--color-info)}.staff-quality-help>:last-child,.staff-quality-card>:last-child{margin-bottom:0}.staff-quality-card{gap:var(--space-4);min-width:0;display:grid}.staff-quality-card header,.staff-quality-card header>div,.staff-quality-action__buttons{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.staff-quality-card header{justify-content:space-between}.staff-quality-card h2,.staff-quality-card p,.staff-quality-card dd,.staff-quality-detail dd,.staff-quality-note,.staff-quality-history li{overflow-wrap:anywhere}.staff-quality-state,.staff-quality-source{border-radius:var(--radius-pill);background:var(--color-surface-alt);align-items:center;min-height:28px;padding:4px 10px;font-size:.85rem;font-weight:700;display:inline-flex}.staff-quality-state--confirmed{color:var(--color-error-text);background:var(--color-error-surface)}.staff-quality-state--dismissed,.staff-quality-state--resolved{color:var(--color-success-text);background:var(--color-success-surface)}.staff-quality-summary{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.staff-quality-summary>div{min-width:0;padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-surface-alt)}.staff-quality-summary dt{color:var(--color-text-muted);text-transform:uppercase;font-size:.8rem;font-weight:700}.staff-quality-summary dd{margin:var(--space-1) 0 0;font-weight:600}.staff-quality-sufficiency{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-brand-primary-soft)}.staff-quality-note{padding:var(--space-4);border-left:4px solid var(--color-warning);background:var(--color-surface-alt);white-space:pre-wrap;margin:0}.staff-quality-action textarea{resize:vertical;min-height:120px}.staff-quality-history{gap:var(--space-3);padding-left:var(--space-6);display:grid}.staff-quality-history li{padding:var(--space-3);border-bottom:1px solid var(--color-border)}.staff-review-state--update-requested,.staff-review-state--rejected{color:var(--color-error-text);background:var(--color-error-surface)}.staff-template-pagination{justify-content:space-between}.staff-template-detail{gap:var(--space-5);display:grid}.staff-template-detail__header,.staff-detail-grid{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.staff-template-detail__header{align-items:start}.staff-template-detail__header>.staff-review-state{justify-self:end}.staff-template-detail__header h1,.staff-template-detail__header p,.staff-detail-section h2,.staff-detail-section h3{margin:0}.staff-detail-section,.staff-detail-card{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);display:grid}.staff-detail-note{margin:var(--space-2) 0 0;color:var(--color-text-muted)}.staff-parameter-grid{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));display:grid}.staff-detail-card{align-content:start}.staff-detail-card ol{gap:var(--space-3);padding-left:var(--space-5);margin:0;display:grid}.staff-metadata-grid{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.staff-metadata-grid>div{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface-alt)}.staff-metadata-grid dt{color:var(--color-text-muted);font-size:.8rem;font-weight:700}.staff-metadata-grid dd{margin:var(--space-1) 0 0;overflow-wrap:anywhere}.staff-internal-note,.staff-open-answer{padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-alt);border-left:4px solid #d97706;margin:0}.item-renderer{gap:var(--space-4);display:grid}.staff-answer-annotation{gap:var(--space-1);color:var(--color-text-muted);overflow-wrap:anywhere;margin-left:auto;display:grid}.staff-answer-annotation code,.staff-open-answer code{color:var(--color-text-primary);white-space:normal}.staff-answer-key{padding:var(--space-2) var(--space-3);border-radius:var(--radius-pill);color:var(--color-success-text);background:var(--color-success-surface);font-weight:700}.staff-review-options{gap:var(--space-2);display:grid}.staff-open-answer{gap:var(--space-3);flex-wrap:wrap;justify-content:space-between;display:flex}.staff-numeric{border-color:color-mix(in srgb, var(--color-brand-primary) 45%, var(--color-border))}.staff-numeric__controls,.staff-numeric__sweep form{align-items:end;gap:var(--space-3);flex-wrap:wrap;display:flex}.staff-numeric__controls label,.staff-numeric__sweep label,.staff-numeric__pin-grid label{gap:var(--space-2);min-width:10rem;color:var(--color-text-secondary);font-size:.9rem;font-weight:700;display:grid}.staff-numeric__pins{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);display:grid}.staff-numeric__pins legend{padding-inline:var(--space-2);font-weight:700}.staff-numeric__pin-grid{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));display:grid}.staff-numeric__results,.staff-numeric__sweep{gap:var(--space-4);display:grid}.staff-numeric-instance{gap:var(--space-4);padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface-alt);display:grid}.staff-numeric-instance>header{justify-content:space-between;align-items:start;gap:var(--space-3);display:flex}.staff-numeric-instance h3,.staff-numeric-instance h4,.staff-numeric-instance p{margin:0}.staff-numeric-instance__values{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.staff-numeric-instance__values>div{padding:var(--space-3);border-radius:var(--radius-md);background:var(--color-surface)}.staff-numeric-instance__values dl,.staff-numeric-instance__values dl>div{gap:var(--space-2);display:grid}.staff-numeric-instance__values dl>div{grid-template-columns:minmax(5rem,auto) 1fr}.staff-numeric-instance__values dt{font-weight:700}.staff-numeric-instance__values dd{overflow-wrap:anywhere;margin:0}.staff-numeric-flags{padding:var(--space-3);border-left:4px solid var(--color-error);border-radius:var(--radius-md);color:var(--color-error-text);background:var(--color-error-surface);overflow-wrap:anywhere}.staff-numeric-flags ul{margin-bottom:0}.staff-numeric-flags--clean{border-left-color:var(--color-success);color:var(--color-success-text);background:var(--color-success-surface)}.staff-numeric__sweep{padding-top:var(--space-5);border-top:1px solid var(--color-border)}.staff-numeric-sweep-result{gap:var(--space-3);padding:var(--space-4);border-radius:var(--radius-md);background:var(--color-surface-alt);display:grid}@media (width<=640px){.staff-header,.staff-header>div,.staff-header__actions{flex-direction:column;align-items:stretch}.staff-account-actions>button{width:100%}.staff-template-filters,.staff-template-more-filters>div,.staff-quality-filters,.staff-quality-summary,.staff-template-detail__header,.staff-detail-grid,.staff-parameter-grid,.staff-metadata-grid{grid-template-columns:1fr}.staff-numeric__controls,.staff-numeric__sweep form,.staff-numeric-instance>header{flex-direction:column;align-items:stretch}.staff-numeric__controls>*,.staff-numeric__sweep form>*,.staff-numeric-instance>header button{width:100%}.staff-numeric-instance__values{grid-template-columns:1fr}.staff-template-detail__header>.staff-review-state{justify-self:start}.staff-template-filter-actions>button{flex:1}.staff-answer-annotation{margin-left:0}.staff-quality-card header,.staff-quality-action__buttons{flex-direction:column;align-items:stretch}.staff-quality-action__buttons>button{width:100%}}.standalone-page{min-height:100vh;padding:max(var(--space-5), env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-5), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));background:radial-gradient(circle at 50% 0, color-mix(in srgb, var(--color-brand-primary) 9%, transparent), transparent 30rem), var(--color-background);place-items:center;display:grid}.standalone-card{width:100%;max-width:520px;padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md)}.standalone-card>:last-child{margin-bottom:0}.standalone-card p{color:var(--color-text-secondary);overflow-wrap:anywhere}.join-card{gap:var(--space-4);display:grid}.join-card>*{margin-block:0}.join-form{gap:var(--space-5);margin-top:var(--space-2);display:grid}.join-form .action-row>button{width:100%}.problem-card{border-top:3px solid var(--color-error)}.readiness-card{text-align:center}.readiness-mark{width:48px;height:48px;margin-bottom:var(--space-4);border-radius:var(--radius-pill);color:var(--color-success-text);background:var(--color-success-surface);place-items:center;font-size:24px;font-weight:700;display:inline-grid}.loading-card{justify-content:center;align-items:center;gap:var(--space-3);max-width:360px;color:var(--color-text-secondary);display:flex}.loading-card p{margin:0}.loading-spinner{border:2px solid var(--color-border-strong);border-top-color:var(--color-brand-primary);border-radius:var(--radius-pill);flex:none;width:20px;height:20px;animation:.7s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.brand{align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-weight:700;text-decoration:none;display:inline-flex}.brand-mark,.auth-card__mark{width:36px;height:36px;color:var(--color-text-on-primary);background:linear-gradient(145deg, #818cf8, var(--color-brand-primary-hover));box-shadow:var(--shadow-sm);border-radius:10px;place-items:center;font-size:20px;line-height:1;display:inline-grid}.theme-control{gap:var(--space-1);color:var(--color-text-muted);font-size:12px;line-height:16px;display:grid}.theme-control select{border:1px solid var(--color-border);border-radius:var(--radius-sm);min-height:44px;color:var(--color-text-primary);background:var(--color-surface);cursor:pointer;padding:8px 30px 8px 10px;font-size:14px}.theme-control--compact{align-items:center;gap:var(--space-2);display:flex}.theme-control--compact>span{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}.auth-page{min-height:100vh;padding:max(var(--space-5), env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-5), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));background:radial-gradient(circle at 15% 15%, color-mix(in srgb, var(--color-brand-primary) 10%, transparent), transparent 28rem), var(--color-background)}.auth-toolbar{width:100%;max-width:1120px;margin:0 auto var(--space-8);justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.auth-card{width:100%;max-width:400px;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-md);margin:0 auto}.auth-card__header{margin-bottom:var(--space-6);text-align:center}.auth-card__mark{margin-bottom:var(--space-3)}.auth-card__header h1{margin-bottom:var(--space-1);font-size:20px;line-height:28px}.auth-card__header p{color:var(--color-text-secondary);margin-bottom:0;font-size:14px;line-height:20px}.auth-content h2{margin-bottom:var(--space-6);text-align:center;font-size:24px;line-height:32px}.auth-content form{gap:var(--space-4);display:grid}.auth-content form button,.auth-state button{width:100%}.auth-content form p:not([role]),.auth-content small{color:var(--color-text-muted);margin:0;font-size:12px;line-height:16px}.auth-content [role=alert],.auth-content [role=status]{padding:var(--space-3);border-radius:var(--radius-sm);background:var(--color-error-surface);color:var(--color-error-text);margin:0;font-size:14px}.auth-content [role=status]{background:var(--color-success-surface);color:var(--color-success-text)}.auth-support-link{min-height:44px;padding:var(--space-3) 0;text-align:center;font-size:14px;display:block}.auth-switch{min-height:44px;margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--color-border);justify-content:center;align-items:center;gap:var(--space-1);color:var(--color-text-secondary);font-size:14px;display:flex}.auth-state{text-align:center}.auth-state p{margin-bottom:var(--space-4)!important}.auth-state a{align-items:center;min-height:44px;display:inline-flex}.auth-loading{margin:var(--space-8) 0;color:var(--color-text-secondary);text-align:center}.parent-page{background:var(--color-background);min-height:100vh}.mobile-app-bar{z-index:20;min-height:56px;padding:6px max(var(--space-3), env(safe-area-inset-right)) 6px max(var(--space-3), env(safe-area-inset-left));border-bottom:1px solid var(--color-border);align-items:center;gap:var(--space-2);background:color-mix(in srgb, var(--color-surface) 94%, transparent);-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);grid-template-columns:44px minmax(0,1fr) auto;font-size:14px;font-weight:600;display:grid;position:sticky;top:0}.mobile-app-bar .theme-control select{width:100px}.icon-button{width:44px;min-height:44px;color:var(--color-text-primary);background:0 0;padding:0;font-size:22px}.icon-button:hover:not(:disabled){background:var(--color-surface-alt)}.drawer-overlay{z-index:29;background:var(--color-overlay);border:0;border-radius:0;width:100%;height:100%;padding:0;position:fixed;inset:0}.drawer-overlay:hover:not(:disabled){background:var(--color-overlay)}.parent-sidebar{z-index:30;width:min(84vw,284px);padding:var(--space-5) var(--space-3) max(var(--space-5), env(safe-area-inset-bottom));border-right:1px solid var(--color-border);background:var(--color-surface);visibility:hidden;flex-direction:column;transition:transform .18s;display:flex;position:fixed;inset:0 auto 0 0;transform:translate(-101%)}.parent-sidebar--open{visibility:visible;transform:translate(0)}.parent-brand{margin:0 var(--space-2) var(--space-8)}.parent-nav{gap:var(--space-1);display:grid}.parent-nav__link{border-radius:var(--radius-sm);align-items:center;gap:var(--space-2);min-height:44px;color:var(--color-text-secondary);grid-template-columns:24px minmax(0,1fr);padding:10px 12px;font-size:14px;text-decoration:none;display:grid}.parent-nav__link:hover{color:var(--color-text-primary);background:var(--color-surface-hover)}.parent-nav__link--active{color:var(--color-link);background:var(--color-brand-primary-soft)}.parent-sidebar__footer{gap:var(--space-3);margin-top:auto;display:grid}.button-ghost{color:var(--color-text-secondary);background:0 0}.button-ghost:hover:not(:disabled){color:var(--color-text-primary);background:var(--color-surface-alt)}.logout-button{justify-content:flex-start;gap:var(--space-2);width:100%;display:flex}.parent-content{width:100%;max-width:1280px;padding:var(--space-5) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-8), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));margin:0 auto}.parent-header{margin-bottom:var(--space-6);padding-bottom:var(--space-5);border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:flex-start;gap:var(--space-4);display:flex}.parent-header h1{margin-bottom:var(--space-1)}.eyebrow{margin-bottom:var(--space-1);color:var(--color-link);font-size:12px;font-weight:600;line-height:16px}.parent-welcome{overflow-wrap:anywhere;max-width:100%;color:var(--color-text-secondary);margin:0;font-size:14px}.account-avatar{border-radius:var(--radius-pill);width:44px;height:44px;color:var(--color-link);background:var(--color-brand-primary-soft);flex:none;place-items:center;font-weight:700;display:grid}.dashboard-section{margin-bottom:var(--space-6)}.section-heading{margin-bottom:var(--space-3);justify-content:space-between;align-items:flex-end;gap:var(--space-3);display:flex}.section-heading h2{margin:0}.summary-grid{gap:var(--space-2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.summary-card{min-width:0;min-height:104px;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);align-content:space-between;display:grid}.summary-card strong{overflow-wrap:anywhere;font-variant-numeric:tabular-nums;font-size:20px;line-height:28px}.summary-card span{color:var(--color-text-secondary);font-size:12px;line-height:16px}.status-badge{padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);white-space:nowrap;font-size:12px;font-weight:500;display:none}.status-badge--success{color:var(--color-success-text);background:var(--color-success-surface)}.session-list{border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);box-shadow:var(--shadow-sm);margin:0;padding:0;list-style:none;overflow:hidden}.session-history,.device-history{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);display:grid}.session-history>summary,.device-history>summary{width:fit-content;color:var(--color-link);cursor:pointer;font-size:14px;font-weight:650}.session-history>p,.device-history>p{color:var(--color-text-secondary);margin:0;font-size:14px}.session-history>.session-list{box-shadow:none}.session-row{padding:var(--space-4);align-items:center;gap:var(--space-3);grid-template-columns:36px minmax(0,1fr) auto;display:grid}.session-row+.session-row{border-top:1px solid var(--color-border)}.session-icon{border-radius:var(--radius-pill);width:36px;height:36px;color:var(--color-link);background:var(--color-brand-primary-soft);place-items:center;display:grid}.session-identity{gap:2px;min-width:0;display:grid}.session-identity strong{text-overflow:ellipsis;white-space:nowrap;font-size:14px;line-height:20px;overflow:hidden}.session-identity small,.session-activity small{color:var(--color-text-muted);font-size:12px;line-height:16px}.session-activity{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;font-size:12px;display:none}.button-secondary{border-color:var(--color-border-strong);min-height:44px;color:var(--color-link);background:var(--color-surface);padding:8px 12px}.button-secondary:hover:not(:disabled){border-color:var(--color-brand-primary);background:var(--color-brand-primary-soft)}.button-danger{border-color:var(--color-error);color:var(--color-text-on-primary);background:var(--color-error)}.button-danger:hover:not(:disabled){border-color:var(--color-error-text);background:var(--color-error-text)}.alert,.loading-state,.empty-state{margin-bottom:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-sm);font-size:14px}.alert--error{color:var(--color-error-text);background:var(--color-error-surface)}.loading-state,.empty-state{color:var(--color-text-secondary);background:var(--color-surface-alt)}.nested-parent-content:empty{display:none}@media (width<=479px){.auth-toolbar .brand>span:last-child{display:none}.auth-toolbar{margin-bottom:var(--space-5)}.auth-page:has(.auth-content form label input[type=checkbox]) .auth-card__header p{display:none}.auth-page:has(.auth-content form label input[type=checkbox]) .auth-card__mark{display:none}.auth-page:has(.auth-content form label input[type=checkbox]) .auth-card__header{margin-bottom:var(--space-4)}.auth-page:has(.auth-content form label input[type=checkbox]) .auth-content h2{margin-bottom:var(--space-4)}}@media (width>=480px){.auth-page{padding-right:var(--space-6);padding-left:var(--space-6)}.auth-card{padding:var(--space-6)}.status-badge{display:inline-flex}}@media (width>=768px){h1{font-size:32px;line-height:40px}.auth-page{padding-top:var(--space-8);padding-bottom:var(--space-8)}.auth-card{max-width:440px;padding:var(--space-8)}.auth-card__header h1{font-size:24px;line-height:32px}.mobile-app-bar,.drawer-overlay{display:none}.parent-page{grid-template-columns:176px minmax(0,1fr);display:grid}.parent-sidebar{z-index:auto;visibility:visible;width:176px;height:100vh;position:sticky;top:0;transform:none}.parent-brand>span:last-child{text-overflow:ellipsis;overflow:hidden}.parent-content{padding:var(--space-8) var(--space-6);margin:0}.summary-grid{gap:var(--space-3);grid-template-columns:repeat(4,minmax(0,1fr))}.summary-card{min-height:112px}.session-row{grid-template-columns:36px minmax(150px,1fr) minmax(120px,auto) auto}.session-activity{gap:2px;display:grid}}@media (width>=1024px){.parent-page{grid-template-columns:232px minmax(0,1fr)}.parent-sidebar{width:232px;padding:var(--space-6) var(--space-4)}.parent-content{padding:var(--space-8)}.dashboard-section{margin-bottom:var(--space-8)}.summary-card{padding:var(--space-5)}.session-row{padding:var(--space-4) var(--space-5)}}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.child-list{gap:var(--space-3);margin:0 0 var(--space-6);grid-template-columns:repeat(auto-fit,minmax(210px,1fr));padding:0;list-style:none;display:grid}.child-card{gap:var(--space-2);display:grid}.child-card a{color:inherit}.child-detail-page{gap:var(--space-5);display:grid}.back-link{width:fit-content}.access-summary{gap:var(--space-4);max-width:720px;display:grid}.detail-list{gap:var(--space-4);grid-template-columns:repeat(auto-fit,minmax(150px,1fr));margin:0;display:grid}.detail-list div{gap:var(--space-1);display:grid}.detail-list dt{color:var(--color-text-muted);font-size:12px}.detail-list dd{margin:0;font-weight:650}.form-panel,.content-panel{gap:var(--space-5);width:100%;max-width:760px;padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);box-shadow:var(--shadow-sm);display:grid}.content-panel{max-width:920px}.danger-panel{border-color:color-mix(in srgb, var(--color-error) 42%, var(--color-border))}.confirmation-block{gap:var(--space-4);padding:var(--space-4);border:1px solid color-mix(in srgb, var(--color-error) 32%, var(--color-border));border-radius:var(--radius-md);background:var(--color-error-surface);display:grid}.confirmation-block>p{max-width:68ch;color:var(--color-text-secondary);margin:0}.confirmation-block>.checkbox-field{background:var(--color-surface)}.pending-erasure-panel{border-color:var(--color-border-strong)}.pending-erasure-panel>.alert{margin:0}.panel-heading{gap:var(--space-2);display:grid}.panel-heading h2,.panel-heading p{margin:0}.panel-heading p{max-width:68ch;color:var(--color-text-secondary);font-size:14px}.form-grid{gap:var(--space-4);grid-template-columns:minmax(0,1fr);display:grid}.form-grid__wide{grid-column:1/-1}.form-field{gap:var(--space-2);min-width:0;display:grid}.form-field>label,.share-link__label{color:var(--color-text-primary);font-size:14px;font-weight:600;line-height:20px}.form-control{border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);width:100%;min-width:0;min-height:48px;color:var(--color-text-primary);background:var(--color-surface);box-shadow:var(--shadow-sm);padding:11px 14px;font-size:16px;transition:border-color .14s,box-shadow .14s,background-color .14s}.form-control:hover:not(:disabled){border-color:var(--color-text-muted)}.form-control:focus{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.form-control:disabled{cursor:not-allowed;color:var(--color-text-muted);background:var(--color-surface-alt);opacity:.8}.form-hint{color:var(--color-text-muted);font-size:12px;line-height:16px}.checkbox-field{min-height:48px;padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);gap:var(--space-3);color:var(--color-text-secondary);background:var(--color-surface-alt);cursor:pointer;grid-template-columns:20px minmax(0,1fr);align-items:start;font-size:14px;display:grid}.checkbox-field input{width:18px;height:18px;accent-color:var(--color-brand-primary);margin:1px 0 0}.action-row{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.action-row>button{min-width:156px}.activation-panel{gap:var(--space-5)}.share-result{gap:var(--space-4);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);display:grid}.share-link{gap:var(--space-2);min-width:0;display:grid}.share-options{gap:var(--space-4);min-width:0;display:grid}.share-code{gap:var(--space-2);align-content:start;min-width:0;display:grid}.share-link__value{width:100%;min-width:0;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);overflow-wrap:anywhere;color:var(--color-text-primary);background:var(--color-surface);-webkit-user-select:all;user-select:all;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:13px;line-height:20px;display:block}.share-code__value{min-height:48px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border-strong);border-radius:var(--radius-sm);color:var(--color-text-primary);background:var(--color-surface);letter-spacing:.08em;-webkit-user-select:all;user-select:all;place-items:center;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;font-size:20px;font-weight:700;line-height:24px;display:grid}.share-link>button,.share-code>button{width:fit-content;min-width:156px}.share-result__meta{color:var(--color-text-secondary);margin:0;font-size:14px}.device-panel{min-width:0}.device-list{gap:var(--space-4);min-width:0;margin:0;padding:0;list-style:none;display:grid}.device-group{gap:var(--space-3);display:grid}.device-group h3{margin:0;font-size:16px;line-height:24px}.device-history>.device-list{margin-top:var(--space-1)}.device-card{gap:var(--space-4);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);display:grid}.device-card__heading{justify-content:space-between;align-items:flex-start;gap:var(--space-4);min-width:0;display:flex}.device-card__identity{justify-items:start;gap:var(--space-2);min-width:0;display:grid}.device-card__identity strong{overflow-wrap:anywhere;max-width:100%;font-size:17px;line-height:24px}.device-state{max-width:100%;padding:var(--space-1) var(--space-2);border-radius:var(--radius-pill);overflow-wrap:anywhere;color:var(--color-text-secondary);background:var(--color-surface);font-size:12px;font-weight:600;line-height:16px;display:inline-flex}.device-state--active{color:var(--color-success-text);background:var(--color-success-surface)}.device-state--revoked{color:var(--color-error-text);background:var(--color-error-surface)}.device-state--idle_expired,.device-state--absolute_expired{color:var(--color-text-primary);background:color-mix(in srgb, var(--color-warning) 18%, var(--color-surface))}.device-dates{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(180px,1fr));margin:0;display:grid}.device-dates div{gap:var(--space-1);display:grid}.device-dates dt{color:var(--color-text-muted);font-size:12px}.device-dates dd{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin:0;font-size:14px}.device-edit-form,.device-revoke-confirm{gap:var(--space-4);min-width:0;padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface);display:grid}.device-edit-form .form-field{max-width:560px}.device-edit-form .alert,.device-revoke-confirm .alert,.device-revoke-confirm>p{margin:0}.device-revoke-confirm>p{color:var(--color-text-secondary);font-size:14px}.device-card__revoke{padding-top:var(--space-1);border-top:1px solid var(--color-border)}.alert--success{color:var(--color-success-text);background:var(--color-success-surface)}.alert>:last-child{margin-bottom:0}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.student-page{background:radial-gradient(circle at 50% 0, color-mix(in srgb, var(--color-brand-primary) 7%, transparent), transparent 34rem), var(--color-background);min-height:100vh}.student-header{min-height:72px;padding:var(--space-3) max(var(--space-4), env(safe-area-inset-right)) var(--space-3) max(var(--space-4), env(safe-area-inset-left));border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:var(--space-4);background:color-mix(in srgb, var(--color-surface) 94%, transparent);display:flex}.student-header__actions{justify-content:flex-end;align-items:center;gap:var(--space-3);display:flex}.student-nav{justify-content:center;align-items:center;gap:var(--space-2);display:flex}.student-nav__link{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--color-text-secondary);font-weight:700;text-decoration:none}.student-nav__link:hover,.student-nav__link:focus-visible,.student-nav__link--active{color:var(--color-text);background:var(--color-surface-alt)}.student-content{width:100%;max-width:1120px;padding:var(--space-8) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-10), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));margin:0 auto}.student-home,.student-state{gap:var(--space-6);display:grid}.student-welcome>:last-child,.student-state>:last-child{margin-bottom:0}.student-welcome>p:not(.eyebrow),.student-state>p:not(.eyebrow){color:var(--color-text-secondary)}.student-home__grid{gap:var(--space-5);align-items:start;min-width:0;display:grid}.student-home__grid>.content-panel,.student-state>.content-panel{max-width:none}@media (width>=768px){.student-header{padding-inline:var(--space-8)}.student-content{padding:var(--space-10) var(--space-8) var(--space-16)}.student-home__grid{grid-template-columns:minmax(0,3fr) minmax(280px,2fr)}.student-home__grid>.content-panel--full-row{grid-column:1/-1}}@media (width<=479px){.student-header{flex-wrap:wrap;align-items:flex-start}.student-nav{order:3;justify-content:stretch;width:100%}.student-nav__link{text-align:center;flex:1}.student-header__actions{flex-direction:column;align-items:stretch}.student-header__actions .theme-control--compact{justify-content:flex-end}.student-content{padding-top:var(--space-6)}}@media (width>=640px){.form-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.share-options{grid-template-columns:minmax(0,2fr) minmax(220px,1fr)}}@media (width>=768px){.form-panel,.content-panel{padding:var(--space-6)}}@media (width<=479px){.action-row>button{width:100%}.device-card__heading{flex-direction:column}.device-card__heading>button,.device-card__revoke>button,.share-link>button,.share-code>button{width:100%}}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.loading-inline{gap:var(--space-2);color:var(--color-text-secondary);align-items:center;margin:0;display:inline-flex}.diagnostic-start{justify-self:start}.diagnostic-progress{border-radius:var(--radius-pill);background:var(--color-surface-alt);height:8px;overflow:hidden}.diagnostic-progress__bar{border-radius:var(--radius-pill);background:var(--color-brand-primary);height:100%;transition:width .2s;display:block}.diagnostic-stem{color:var(--color-text-primary);margin:0;font-size:18px;font-weight:600;line-height:1.5}.diagnostic-options{gap:var(--space-3);border:0;margin:0;padding:0;display:grid}.diagnostic-option{gap:var(--space-3);min-height:48px;padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);cursor:pointer;align-items:center;transition:border-color .14s,background-color .14s;display:flex}.diagnostic-option:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.diagnostic-option:focus-within{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.diagnostic-option--selected{border-color:var(--color-brand-primary);background:var(--color-brand-primary-soft)}.diagnostic-option input{width:20px;height:20px;min-height:0;accent-color:var(--color-brand-primary);flex:none}.diagnostic-option__key{color:var(--color-text-secondary);font-weight:700}.diagnostic-option__text{color:var(--color-text-primary)}.diagnostic-figure{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:#fff;justify-content:center;margin:0;display:flex;overflow-x:auto}.diagnostic-figure__image{max-width:100%;height:auto;display:block}.item-text{color:inherit;display:block}.item-text__paragraph{margin:0 0 var(--space-3);line-height:1.6}.item-text__paragraph:last-child{margin-bottom:0}.item-text--inline,span.item-text{display:inline}.item-text__inline-paragraph+.item-text__inline-paragraph:before{content:" "}.item-text--unavailable{color:var(--color-text-secondary);margin:0;font-style:italic}.item-renderer--unavailable{padding:var(--space-4);border:1px dashed var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface-alt)}.item-math{vertical-align:middle;max-width:100%;font-family:Latin Modern Math,STIX Two Math,Cambria Math,serif;font-size:1.15em;line-height:normal;font-weight:inherit;color:inherit;overflow:auto hidden}.item-math *{font-weight:inherit}.item-table__scroll{max-width:100%;margin:var(--space-3) 0;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);overflow-x:auto}.item-table__scroll:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.item-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.item-table__caption{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);text-align:left;caption-side:top;font-weight:600}.item-table__cell{padding:var(--space-2) var(--space-4);border-bottom:1px solid var(--color-border);color:var(--color-text-primary);white-space:nowrap}.item-table thead .item-table__cell{background:var(--color-surface-alt);color:var(--color-text-secondary);font-weight:600}.item-table tbody tr:last-child .item-table__cell{border-bottom:none}.item-table__cell--left{text-align:left}.item-table__cell--center{text-align:center}.item-table__cell--right{text-align:right}.diagnostic-figure--table{background:0 0;border:none;padding:0;display:block}.diagnostic-statement{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);margin:0;display:grid}.diagnostic-statement__text{color:var(--color-text-primary);padding:0;line-height:1.5}.diagnostic-statement__choices{gap:var(--space-2);flex-wrap:wrap;display:flex}.diagnostic-choice{gap:var(--space-2);min-height:44px;padding:var(--space-2) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);cursor:pointer;align-items:center;transition:border-color .14s,background-color .14s;display:inline-flex}.diagnostic-choice:hover{border-color:var(--color-border-strong);background:var(--color-surface-hover)}.diagnostic-choice:focus-within{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-focus-ring)}.diagnostic-choice--selected{border-color:var(--color-brand-primary);background:var(--color-brand-primary-soft)}.diagnostic-choice input{width:20px;height:20px;min-height:0;accent-color:var(--color-brand-primary);flex:none}.diagnostic-choice__text{color:var(--color-text-primary)}.diagnostic-match{gap:var(--space-2) var(--space-4);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);flex-wrap:wrap;justify-content:space-between;align-items:center;display:flex}.diagnostic-match__prompt{min-width:0;color:var(--color-text-primary);flex:12ch;line-height:1.5}.diagnostic-match__select{width:18ch;min-width:0;max-width:100%;min-height:44px;padding:var(--space-2) var(--space-3);border:1px solid var(--color-border-strong);border-radius:var(--radius-md);background:var(--color-surface);color:var(--color-text-primary);font:inherit;flex:18ch}.diagnostic-match__select:focus-visible{border-color:var(--color-brand-primary);box-shadow:0 0 0 3px var(--color-focus-ring);outline:none}.diagnostic-hint{color:var(--color-text-muted);margin:0;font-size:13px}.diagnostic-done{color:var(--color-success-text);margin:0;font-weight:600}.diagnostic-option--correct{border-color:var(--color-success);background:var(--color-success-surface)}.diagnostic-option--incorrect{border-color:var(--color-error);background:var(--color-error-surface)}.diagnostic-feedback{border-radius:10px;margin:0;padding:12px 14px;font-weight:600}.diagnostic-feedback--correct{color:var(--color-success-text);background:var(--color-success-surface)}.diagnostic-feedback--incorrect{color:var(--color-error-text);background:var(--color-error-surface)}.diagnostic-readiness{gap:var(--space-1);padding:var(--space-6) var(--space-4);text-align:center;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-brand-primary-soft);justify-items:center;display:grid}.diagnostic-readiness__label{letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-secondary);margin:0;font-size:14px;font-weight:600}.diagnostic-readiness__value{color:var(--color-brand-primary);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(44px,12vw,64px);font-weight:800;line-height:1.05}.diagnostic-readiness__range{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin:0;font-size:15px}.diagnostic-readiness__note{margin:var(--space-2) 0 0;color:var(--color-text-muted);font-size:13px}.diagnostic-estimate{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);border-left:3px solid var(--color-border-strong);background:var(--color-surface-alt);border-radius:var(--radius-sm);margin:0;font-size:14px;line-height:1.5}.diagnostic-skillmap{gap:var(--space-4);display:grid}.diagnostic-skillmap__title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700}.diagnostic-skillmap__groups{gap:var(--space-3);grid-template-columns:repeat(auto-fit,minmax(200px,1fr));display:grid}.diagnostic-skillgroup{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-left:4px solid var(--diagnostic-accent,var(--color-border-strong));border-radius:var(--radius-md);background:color-mix(in srgb, var(--diagnostic-accent,var(--color-border-strong)) 9%, var(--color-surface));align-content:start;display:grid}.diagnostic-skillgroup--red{--diagnostic-accent:var(--color-error)}.diagnostic-skillgroup--yellow{--diagnostic-accent:var(--color-warning)}.diagnostic-skillgroup--green{--diagnostic-accent:var(--color-success)}.diagnostic-skillgroup--grey{--diagnostic-accent:var(--color-text-muted)}.diagnostic-skillgroup__head{gap:var(--space-2);align-items:center;display:flex}.diagnostic-skillgroup__dot{border-radius:var(--radius-pill);background:var(--diagnostic-accent,var(--color-border-strong));flex:none;width:12px;height:12px}.diagnostic-skillgroup__heading{color:var(--color-text-primary);font-weight:700}.diagnostic-skillgroup__count{text-align:center;min-width:24px;color:var(--color-text-secondary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);margin-left:auto;padding:0 8px;font-size:13px;font-weight:700;line-height:22px}.diagnostic-skillgroup__hint{color:var(--color-text-secondary);margin:0;font-size:13px}.diagnostic-skillgroup__list{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.diagnostic-skillchip{color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);font-variant-numeric:tabular-nums;padding:4px 10px;font-size:13px;font-weight:600}.progress-as-of{color:var(--color-text-muted);font-variant-numeric:tabular-nums;margin:0;font-size:13px}.progress-focus{gap:var(--space-3);display:grid}.progress-focus__list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.progress-focus__item{padding:var(--space-3) var(--space-4);color:var(--color-text-primary);background:var(--color-surface-alt);border:1px solid var(--color-border);border-left:4px solid var(--color-brand-primary);border-radius:var(--radius-md);overflow-wrap:anywhere;font-size:15px;line-height:1.55}.progress-focus__none{color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.55}.progress-dates{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.progress-dates__item{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;font-size:14px}.practice-progress,.practice-counts{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin:0;font-size:14px}.practice-item{gap:var(--space-4);display:grid}.practice-item__stem{color:var(--color-text-primary);margin:0;font-size:18px;line-height:1.5}.answer-form{gap:var(--space-2);display:grid}.answer-form__required{color:var(--color-text-secondary);margin:0;font-size:14px}.answer-form__label{color:var(--color-text-secondary);font-size:14px;font-weight:600}.answer-form__row{align-items:center;gap:var(--space-2);flex-wrap:wrap;display:flex}.answer-form__input{min-width:0;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);flex:8ch;padding:12px 14px;font-size:18px}.answer-form__input:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:1px}.answer-form__input[aria-invalid=true]{border-color:var(--color-error)}.answer-form__input:disabled{color:var(--color-text-secondary);background:var(--color-surface-alt)}.answer-form__unit{color:var(--color-text-secondary);flex:none;font-size:18px;font-weight:600}.answer-form__keypad{gap:var(--space-2);flex-wrap:wrap;display:flex}.answer-form__key{min-width:44px;min-height:44px;color:var(--color-text-primary);background:var(--color-surface-alt);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;font-size:18px}.answer-form__key:hover:not(:disabled){background:var(--color-surface)}.answer-form__key:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:1px}.answer-form__key:disabled{cursor:not-allowed;opacity:.5}.answer-form__problem{color:var(--color-error-text);margin:0;font-size:14px}.answer-form__mixed{border:0;margin:0;padding:0}.answer-form__fraction{justify-items:stretch;gap:2px;display:grid}.answer-form__fraction-bar{background:var(--color-border);height:1px}.answer-form__part{gap:2px;display:grid}.answer-form__part-label{color:var(--color-text-secondary);font-size:12px}.answer-form__input--part{text-align:center;flex:none;width:6ch;padding:8px 10px}.practice-answer-reason{color:var(--color-text-secondary);margin:0}.practice-review-answer-note{color:var(--color-text-secondary);margin:0;font-size:13px}.practice-review-unit{color:var(--color-text-secondary);font-weight:400}.practice-hints{gap:var(--space-2);padding-left:var(--space-5);color:var(--color-text-secondary);margin:0;display:grid}.practice-hints__item{line-height:1.5}.practice-hint-button{justify-self:start}.practice-self-check{gap:var(--space-2);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-brand-primary-soft);display:grid}.practice-self-check__answer,.practice-self-check__expected,.practice-self-check__question{margin:0;line-height:1.5}.practice-self-check__question{color:var(--color-text-primary);font-weight:600}.practice-correct-answer{gap:var(--space-1);padding:var(--space-3) var(--space-4);border:1px solid var(--color-success);border-radius:var(--radius-md);background:var(--color-success-surface);color:var(--color-text-primary);display:grid}.practice-correct-answer__title,.practice-correct-answer__single{margin:0;line-height:1.5}.practice-correct-answer__title{font-weight:600}.practice-correct-answer__list{gap:var(--space-1);padding-left:var(--space-5);margin:0;line-height:1.5;display:grid}.practice-solution{gap:var(--space-1);padding-left:var(--space-5);color:var(--color-text-secondary);margin:0;line-height:1.5;display:grid}.practice-review-list,.practice-review-items{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.practice-review-row{gap:var(--space-3);min-width:0;padding:var(--space-4);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);grid-template-columns:minmax(0,1fr) minmax(0,auto) auto;align-items:center;text-decoration:none;display:grid}.practice-review-row:hover{border-color:var(--color-brand-primary)}.practice-review-row:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.practice-review-row__main,.practice-review-row__result{gap:2px;min-width:0;display:grid}.practice-review-row__main span,.practice-review-row__result{color:var(--color-text-secondary);font-size:14px}.practice-review-row__result{text-align:right;font-variant-numeric:tabular-nums}.practice-review-page,.practice-review-item,.practice-review-block{min-width:0}.practice-review-heading h1,.practice-review-item h2,.practice-review-block h3{overflow-wrap:anywhere}.practice-review-heading .status-badge{display:inline-flex}.practice-review-legend{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);border-left:4px solid var(--color-brand-primary);border-radius:var(--radius-sm);background:var(--color-brand-primary-soft);margin:0;line-height:1.5}.practice-review-summary{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.practice-review-summary>div{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.practice-review-summary dt{color:var(--color-text-secondary);font-size:13px}.practice-review-summary dd{font-variant-numeric:tabular-nums;margin:0;font-size:18px;font-weight:700}.practice-review-items{gap:var(--space-5)}.practice-review-item{gap:var(--space-4);padding:clamp(var(--space-3), 3vw, var(--space-5));border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow-wrap:anywhere;display:grid}.practice-review-item__header{gap:var(--space-3);justify-content:space-between;align-items:start;display:flex}.practice-review-item__header h2{margin:0;font-size:22px}.practice-review-verdict{border-radius:var(--radius-pill);flex:none;padding:6px 10px;font-size:13px;font-weight:700}.practice-review-verdict--correct{color:var(--color-success-text);background:var(--color-success-surface)}.practice-review-verdict--incorrect{color:var(--color-error-text);background:var(--color-error-surface)}.practice-review-block{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:grid}.practice-review-block h3,.practice-review-block p{margin:0}.practice-review-block h3{color:var(--color-text-secondary);font-size:15px}.practice-review-answer-line,.practice-review-answer-lines,.practice-review-raw-answer{color:var(--color-text-primary);font-weight:600}.practice-review-answer-lines{gap:var(--space-1);padding-left:var(--space-5);margin:0;display:grid}.practice-review-raw-answer{padding:var(--space-3);white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt)}.practice-review-answer-unavailable,.evaluation-review-answer-unavailable{color:var(--color-text-secondary);margin:0;font-size:15px;font-style:italic}.practice-review-self-assessed,.practice-review-machine{color:var(--color-text-secondary);font-size:13px}@media (width<=600px){.practice-review-heading{flex-direction:column;align-items:flex-start}.practice-review-row{grid-template-columns:minmax(0,1fr) auto}.practice-review-row__result{text-align:left;grid-area:2/1/auto/-1}.practice-review-summary{grid-template-columns:1fr}.practice-review-item__header{display:grid}.practice-review-verdict{justify-self:start}}.practice-break-button{justify-self:start}.practice-streak{gap:var(--space-1);padding:var(--space-5) var(--space-4);text-align:center;border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-brand-primary-soft);justify-items:center;display:grid}.practice-streak__label{letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-secondary);margin:0;font-size:14px;font-weight:600}.practice-streak__value{align-items:baseline;gap:var(--space-2);color:var(--color-brand-primary);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(36px,10vw,52px);font-weight:800;line-height:1.05;display:flex}.practice-streak__unit{color:var(--color-text-secondary);font-size:18px;font-weight:600}.practice-streak__note{color:var(--color-text-muted);margin:0;font-size:13px}.practice-recap,.practice-movement,.practice-returns{gap:var(--space-3);display:grid}.practice-recap__title,.practice-movement__title,.practice-returns__title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700}.practice-recap__counts{color:var(--color-text-primary);font-variant-numeric:tabular-nums;margin:0;font-size:18px}.practice-recap__roles{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.practice-recap__role{align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface-alt);color:var(--color-text-secondary);padding:4px 12px;font-size:13px;display:flex}.practice-recap__role-count{color:var(--color-text-primary);font-variant-numeric:tabular-nums;font-weight:700}.practice-recap__note,.practice-unchanged{color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.5}.practice-unchanged{padding:var(--space-3) var(--space-4);border-left:3px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-alt)}.practice-movement__list,.practice-returns__list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.practice-movement__row{align-items:center;gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);flex-wrap:wrap;display:flex}.practice-movement__subskill,.practice-returns__subskill{color:var(--color-text-primary);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;font-weight:700}.practice-movement__dot{border-radius:var(--radius-pill);background:var(--color-text-muted);flex:none;width:10px;height:10px}.practice-movement__dot--red{background:var(--color-error)}.practice-movement__dot--yellow{background:var(--color-warning)}.practice-movement__dot--green{background:var(--color-success)}.practice-movement__values{color:var(--color-text-primary);font-variant-numeric:tabular-nums;margin-left:auto;font-weight:600}.practice-movement__row--up .practice-movement__values{color:var(--color-success-text)}.practice-movement__row--down .practice-movement__values{color:var(--color-text-secondary)}.practice-movement__flat,.practice-movement__served{color:var(--color-text-muted);font-size:13px;font-weight:500}.practice-movement__served{flex-basis:100%}.practice-returns__row{align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-left:3px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-alt);flex-wrap:wrap;display:flex}.practice-returns__when{color:var(--color-text-secondary);margin-left:auto;font-size:14px}.practice-next{gap:var(--space-3);justify-items:start;display:grid}.practice-next>.alert,.practice-next>p{width:100%}.practice-next__break{color:var(--color-text-primary);margin:0;font-size:15px;line-height:1.5}.item-report{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);justify-items:start;display:grid}.item-report__actions{gap:var(--space-3);flex-wrap:wrap;align-items:center;display:flex}.item-report__button,.item-report__details-toggle{min-height:44px;color:var(--color-text-secondary);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;font-size:14px;text-decoration:underline}.item-report__button:hover:not(:disabled),.item-report__details-toggle:hover:not(:disabled){color:var(--color-text-primary)}.item-report__button:disabled,.item-report__details-toggle:disabled{cursor:not-allowed;opacity:.6}.item-report__details{gap:var(--space-3);width:100%;max-width:34rem;display:grid}.item-report__field{gap:var(--space-1);display:grid}.item-report__form-actions{gap:var(--space-2);flex-wrap:wrap;align-items:center;display:flex}.item-report__label{color:var(--color-text-secondary);font-size:14px;font-weight:600}.item-report__done{padding-top:var(--space-3);border-top:1px solid var(--color-border);width:100%;color:var(--color-text-secondary);margin:0;font-size:14px}.staff-disposition,.staff-disposition__form,.staff-review-events{gap:var(--space-4);display:grid}.staff-disposition__form fieldset{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);margin:0;display:grid}.staff-disposition__form fieldset label{align-items:start;gap:var(--space-3);grid-template-columns:auto 1fr;display:grid}.staff-disposition__form textarea{resize:vertical;width:100%}.staff-disposition__confirm{align-items:flex-start;gap:var(--space-2);overflow-wrap:anywhere;display:flex}.staff-review-events ol{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.staff-review-events li{padding:var(--space-4);border-left:3px solid var(--color-brand-primary);border-radius:var(--radius-sm);background:var(--color-surface-alt)}.staff-review-events li>div{justify-content:space-between;gap:var(--space-2);flex-wrap:wrap;display:flex}.staff-review-events li p,.staff-review-events blockquote{margin:var(--space-2) 0 0}.staff-review-events blockquote{padding-left:var(--space-3);border-left:2px solid var(--color-border-strong)}.evaluation-history{gap:var(--space-3);display:grid}.evaluation-history h3{color:var(--color-text-secondary);margin:0;font-size:14px}.evaluation-history__list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.evaluation-history__list li{gap:var(--space-2);padding:var(--space-3) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);flex-wrap:wrap;justify-content:space-between;display:flex}.evaluation-history__score{font-weight:650}.evaluation-intro{gap:var(--space-2);padding-left:var(--space-5);color:var(--color-text-secondary);margin:0;font-size:15px;display:grid}.evaluation-sitting{gap:var(--space-4);display:grid}.evaluation-sitting__header{gap:var(--space-1);display:grid}.evaluation-sitting__header h3{margin:0;font-size:18px}.evaluation-sitting__items{gap:var(--space-4);margin:0;padding:0;list-style:none;display:grid}.evaluation-sitting__items>li>.practice-item{padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt)}.evaluation-sitting__actions{gap:var(--space-2);justify-items:start;display:grid}.evaluation-self-check{gap:var(--space-3);padding:var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-brand-primary-soft);display:grid}.evaluation-self-check__intro{color:var(--color-text-primary);margin:0;line-height:1.5}.evaluation-self-check__steps{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.evaluation-self-check__step{gap:var(--space-2);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.evaluation-self-check__step-text{color:var(--color-text-primary);margin:0;font-size:17px;line-height:1.5}.evaluation-self-check__verdicts{gap:var(--space-2);flex-wrap:wrap;display:flex}.evaluation-self-check__verdict{min-width:0;font:inherit;color:var(--color-text-primary);background:var(--color-surface);border:1px solid var(--color-border);border-radius:var(--radius-md);cursor:pointer;flex:auto;padding:10px 14px;font-weight:600}.evaluation-self-check__verdict:focus-visible{outline:2px solid var(--color-brand-primary);outline-offset:1px}.evaluation-self-check__verdict:hover:not(:disabled){border-color:var(--color-brand-primary);background:var(--color-brand-primary-soft)}.evaluation-self-check__verdict:disabled{cursor:not-allowed;opacity:.6}.evaluation-self-check__verdict--chosen:before{content:"✓ "}.evaluation-self-check__verdict--chosen,.evaluation-self-check__verdict--chosen:hover:not(:disabled){color:var(--color-text-on-primary);background:var(--color-brand-primary);border-color:var(--color-brand-primary)}.evaluation-self-check__subtotal{font-variant-numeric:tabular-nums;color:var(--color-text-primary);margin:0;font-weight:650}.evaluation-result{gap:var(--space-5);display:grid}.evaluation-result h3{margin:0;font-size:18px}.evaluation-result__actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.evaluation-score{gap:var(--space-1);padding:var(--space-6) var(--space-4);text-align:center;border:1px solid var(--color-border-strong);border-radius:var(--radius-lg);background:var(--color-surface-alt);justify-items:center;display:grid}.evaluation-score__label{letter-spacing:.02em;text-transform:uppercase;color:var(--color-text-secondary);margin:0;font-size:14px;font-weight:600}.evaluation-score__value{color:var(--color-text-primary);font-variant-numeric:tabular-nums;margin:0;font-size:clamp(44px,12vw,64px);font-weight:800;line-height:1.05}.evaluation-score__points{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin:0;font-size:17px;font-weight:650}.evaluation-score__delta{justify-content:center;gap:var(--space-1);margin:var(--space-2) 0 0;font-variant-numeric:tabular-nums;border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);flex-wrap:wrap;padding:4px 12px;font-weight:700;display:flex}.evaluation-score__delta--up{color:var(--color-success-text)}.evaluation-score__delta--down,.evaluation-score__delta--flat{color:var(--color-text-secondary)}.evaluation-score__previous{color:var(--color-text-muted);font-weight:500}.evaluation-score__first,.evaluation-score__self-check{margin:var(--space-2) 0 0;max-width:46ch;color:var(--color-text-muted);font-size:13px;line-height:1.5}.evaluation-caveat{padding:var(--space-3) var(--space-4);color:var(--color-text-secondary);border-left:3px solid var(--color-border-strong);background:var(--color-surface-alt);border-radius:var(--radius-sm);margin:0;font-size:14px;line-height:1.5}.evaluation-breakdown,.evaluation-plan{gap:var(--space-3);display:grid}.evaluation-breakdown__title,.evaluation-plan__title{color:var(--color-text-primary);margin:0;font-size:16px;font-weight:700}.evaluation-breakdown__list,.evaluation-plan__list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.evaluation-breakdown__row{align-items:baseline;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-left:3px solid var(--color-border-strong);border-radius:var(--radius-sm);background:var(--color-surface-alt);flex-wrap:wrap;display:flex}.evaluation-breakdown__skill{color:var(--color-text-primary);overflow-wrap:anywhere;font-weight:700}.evaluation-breakdown__points{color:var(--color-text-secondary);font-variant-numeric:tabular-nums;margin-left:auto;font-size:14px}.evaluation-breakdown__total{color:var(--color-text-primary);font-variant-numeric:tabular-nums;margin:0;font-weight:700}.evaluation-breakdown__secondary,.evaluation-plan__none{color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.5}.evaluation-plan__row{padding:var(--space-3) var(--space-4);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);font-size:15px;line-height:1.5}.evaluation-review-list,.evaluation-review-items{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.evaluation-review-row{gap:var(--space-3);min-width:0;padding:var(--space-4);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);grid-template-columns:minmax(0,1fr) minmax(0,auto) auto;align-items:center;text-decoration:none;display:grid}.evaluation-review-row:hover{border-color:var(--color-brand-primary)}.evaluation-review-row:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.evaluation-review-row__main,.evaluation-review-row__result{gap:2px;min-width:0;display:grid}.evaluation-review-row__main span,.evaluation-review-row__result{color:var(--color-text-secondary);font-size:14px}.evaluation-review-row__result{text-align:right;font-variant-numeric:tabular-nums}.evaluation-review-page,.evaluation-review-item,.evaluation-review-block{min-width:0}.evaluation-review-heading h1,.evaluation-review-item h3,.evaluation-review-block h4{overflow-wrap:anywhere}.evaluation-review-heading .status-badge{font-variant-numeric:tabular-nums;display:inline-flex}.evaluation-review-delta{font-variant-numeric:tabular-nums;color:var(--color-text-primary);margin:0;font-size:17px}.evaluation-report-summary{gap:var(--space-3);grid-template-columns:repeat(2,minmax(0,1fr));margin:0;display:grid}.evaluation-report-summary>div{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.evaluation-report-summary dt{color:var(--color-text-secondary);font-size:13px}.evaluation-report-summary dd{margin:0;font-weight:600;line-height:1.5}.evaluation-report-narrative,.evaluation-report-areas,.evaluation-report-skill-list{gap:var(--space-2);margin:0;padding:0;list-style:none;display:grid}.evaluation-report-narrative li{padding-left:var(--space-4);border-left:4px solid var(--color-brand-primary);line-height:1.5}.evaluation-report-areas li{padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt);gap:2px;display:grid}.evaluation-report-areas li span{color:var(--color-text-secondary);font-size:13px}.evaluation-report-transfer h3{margin:var(--space-4) 0 var(--space-2);color:var(--color-text-secondary);font-size:15px}.evaluation-report-next-date,.evaluation-report-secondary{color:var(--color-text-secondary);margin:0;font-size:14px;line-height:1.5}.evaluation-report-skill-list li{gap:var(--space-3);padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--color-border);grid-template-columns:minmax(0,1fr) auto auto;align-items:center;display:grid}.evaluation-report-skill-list__points{font-variant-numeric:tabular-nums;font-weight:600}.evaluation-report-skill-list__outcome{color:var(--color-text-secondary);text-align:right;font-size:13px}.evaluation-report-caveats p{margin:0 0 var(--space-2);color:var(--color-text-secondary);line-height:1.5}.evaluation-review-items{gap:var(--space-5)}.evaluation-review-item{gap:var(--space-4);padding:clamp(var(--space-3), 3vw, var(--space-5));border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface);overflow-wrap:anywhere;display:grid}.evaluation-review-item__header{gap:var(--space-3);justify-content:space-between;align-items:start;display:flex}.evaluation-review-item__header h3{margin:0;font-size:20px}.evaluation-review-verdict{font-variant-numeric:tabular-nums;border-radius:var(--radius-pill);background:var(--color-surface-alt);flex:none;padding:6px 10px;font-size:13px;font-weight:700}.evaluation-review-verdict--full{color:var(--color-success-text);background:var(--color-success-surface)}.evaluation-review-verdict--none{color:var(--color-error-text);background:var(--color-error-surface)}.evaluation-review-block{gap:var(--space-2);padding-top:var(--space-3);border-top:1px solid var(--color-border);display:grid}.evaluation-review-block h4,.evaluation-review-block p{margin:0}.evaluation-review-block h4{color:var(--color-text-secondary);font-size:15px;font-weight:600}.evaluation-review-answer-line,.evaluation-review-answer-lines,.evaluation-review-raw-answer{color:var(--color-text-primary);font-weight:600}.evaluation-review-answer-lines,.evaluation-review-rubric,.evaluation-review-solution{gap:var(--space-1);padding-left:var(--space-5);margin:0;display:grid}.evaluation-review-raw-answer{padding:var(--space-3);white-space:pre-wrap;overflow-wrap:anywhere;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:var(--color-surface-alt)}.evaluation-review-rubric .is-not-done{color:var(--color-text-secondary)}.evaluation-review-self-check,.evaluation-review-machine{color:var(--color-text-secondary);font-size:13px}@media (width<=600px){.evaluation-review-heading{flex-direction:column;align-items:flex-start}.evaluation-review-row{grid-template-columns:minmax(0,1fr) auto}.evaluation-review-row__result{text-align:left;grid-area:2/1/auto/-1}.evaluation-report-summary{grid-template-columns:1fr}.evaluation-report-skill-list li{grid-template-columns:minmax(0,1fr) auto}.evaluation-report-skill-list__outcome{text-align:left;grid-column:1/-1}.evaluation-review-item__header{display:grid}.evaluation-review-verdict{justify-self:start}}.weekly-report-list{gap:var(--space-3);margin:0;padding:0;list-style:none;display:grid}.weekly-report-row{gap:var(--space-3);min-width:0;padding:var(--space-4);color:var(--color-text-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface-alt);grid-template-columns:minmax(0,1fr) auto;align-items:center;text-decoration:none;display:grid}.weekly-report-row:hover{border-color:var(--color-brand-primary)}.weekly-report-row:focus-visible{outline:3px solid var(--color-focus-ring);outline-offset:2px}.weekly-report-row__main{gap:2px;min-width:0;display:grid}.weekly-report-row__main span{color:var(--color-text-secondary);font-size:14px}.weekly-report-page{gap:var(--space-5);min-width:0;display:grid}.weekly-report-page .section-heading{margin-bottom:0}.weekly-report-heading h1{overflow-wrap:anywhere}.weekly-report-heading .status-badge{font-variant-numeric:tabular-nums;display:inline-flex}.status-badge--muted{color:var(--color-text-secondary);background:var(--color-surface-alt)}.weekly-report-facts{gap:var(--space-3);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.weekly-report-facts>div{gap:var(--space-1);padding:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.weekly-report-facts dt{color:var(--color-text-secondary);font-size:13px}.weekly-report-facts dd{font-variant-numeric:tabular-nums;margin:0;font-weight:600;line-height:1.5}.weekly-report-body{gap:var(--space-4);min-width:0;padding:var(--space-5) var(--space-4);border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-surface);display:grid}.weekly-report-body p,.weekly-report-body li{overflow-wrap:anywhere;margin:0}.weekly-report-body__heading{font-weight:600}.weekly-report-body ul{gap:var(--space-2);padding-left:var(--space-5);margin:0;display:grid}.weekly-report-delivery{color:var(--color-text-secondary);margin:0;font-size:13px}@media (width<=600px){.weekly-report-heading{flex-direction:column;align-items:flex-start}.weekly-report-facts{grid-template-columns:1fr}}.landing{--landing-max:1120px;min-height:100vh;padding:max(var(--space-5), env(safe-area-inset-top)) max(var(--space-4), env(safe-area-inset-right)) max(var(--space-8), env(safe-area-inset-bottom)) max(var(--space-4), env(safe-area-inset-left));background:radial-gradient(ellipse at 80% -10%, color-mix(in srgb, var(--color-brand-primary) 14%, transparent), transparent 36rem), radial-gradient(circle at 0% 40%, color-mix(in srgb, var(--color-brand-primary) 6%, transparent), transparent 28rem), var(--color-background)}.landing-header{width:100%;max-width:var(--landing-max);justify-content:space-between;align-items:center;gap:var(--space-3);margin:0 auto;display:flex}.landing-header__nav{align-items:center;gap:var(--space-4);display:flex}.landing-header__login{color:var(--color-text-primary);font-weight:600;text-decoration:none}.landing-header__login:hover{text-decoration:underline}.landing-eyebrow{margin-bottom:var(--space-3);color:var(--color-link);letter-spacing:.02em;font-size:13px;font-weight:600;line-height:16px}.landing-hero{width:100%;max-width:var(--landing-max);margin:var(--space-16) auto 0;align-items:center;gap:var(--space-10);grid-template-columns:minmax(0,7fr) minmax(0,5fr);display:grid}.landing-hero h1{max-width:14ch;margin-bottom:var(--space-5);letter-spacing:-.03em;text-wrap:balance;font-size:clamp(34px,5vw,52px);font-weight:700;line-height:1.08}.landing-accent{color:var(--color-brand-primary)}.landing-lead{max-width:48ch;margin-bottom:var(--space-6);color:var(--color-text-secondary);font-size:18px;line-height:28px}.landing-actions{gap:var(--space-3);flex-wrap:wrap;display:flex}.landing-cta{border-radius:var(--radius-sm);min-height:48px;color:var(--color-text-on-primary);background:var(--color-brand-primary);box-shadow:var(--shadow-sm);border:1px solid #0000;justify-content:center;align-items:center;padding:12px 22px;font-size:15px;font-weight:600;text-decoration:none;transition:background-color .14s,border-color .14s,transform .14s;display:inline-flex}.landing-cta:hover{background:var(--color-brand-primary-hover)}.landing-cta:active{transform:translateY(1px)}.landing-cta--secondary{color:var(--color-text-primary);border-color:var(--color-border-strong);background:var(--color-surface);box-shadow:none}.landing-cta--secondary:hover{border-color:var(--color-brand-primary);background:var(--color-surface-hover)}.landing-note{margin:var(--space-4) 0 0;color:var(--color-text-muted);font-size:14px;line-height:20px}.landing-demo{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface);box-shadow:var(--shadow-lg);margin:0;position:relative;transform:rotate(-1deg)}.landing-demo__head{margin-bottom:var(--space-4);color:var(--color-text-muted);justify-content:space-between;font-size:12px;font-weight:500;line-height:16px;display:flex}.landing-demo__skill{border-radius:var(--radius-pill);color:var(--color-link);background:var(--color-brand-primary-soft);padding:2px 8px;font-weight:600}.landing-demo__stem{margin-bottom:var(--space-4);font-size:17px;font-weight:500;line-height:26px}.landing-demo__options{margin:0 0 var(--space-4);gap:var(--space-2);padding:0;list-style:none;display:grid}.landing-demo__option{min-height:44px;padding:0 var(--space-3) 0 var(--space-2);align-items:center;gap:var(--space-3);border:1px solid var(--color-border);border-radius:var(--radius-sm);font-variant-numeric:tabular-nums;display:flex}.landing-demo__letter{border-radius:var(--radius-pill);background:var(--color-surface-alt);place-items:center;width:28px;height:28px;font-size:13px;font-weight:700;display:inline-grid}.landing-demo__flag{margin-left:auto;font-size:12px;font-weight:600;line-height:16px}.landing-demo__option--picked{border-color:var(--color-error);color:var(--color-error-text);background:var(--color-error-surface);animation:.32s .7s both landing-pick}.landing-demo__option--picked .landing-demo__letter{color:var(--color-text-on-primary);background:var(--color-error)}.landing-demo__option--correct{border-color:var(--color-success);color:var(--color-success-text);background:var(--color-success-surface);animation:.42s 1.5s both landing-reveal}.landing-demo__option--correct .landing-demo__letter{color:var(--color-text-on-primary);background:var(--color-success)}.landing-demo__feedback{padding:var(--space-4);border-left:3px solid var(--color-brand-primary);border-radius:0 var(--radius-sm) var(--radius-sm) 0;background:var(--color-brand-primary-soft);font-size:15px;line-height:22px;animation:.48s 1.5s both landing-reveal}.landing-demo__feedback p{color:var(--color-text-primary);margin:0}.landing-demo__feedback-title{font-weight:700;margin-bottom:var(--space-1)!important}.landing-demo__next{font-size:13px;margin-top:var(--space-3)!important;color:var(--color-text-muted)!important}@keyframes landing-pick{0%{border-color:var(--color-border);color:inherit;background:0 0}}@keyframes landing-reveal{0%{opacity:0;transform:translateY(6px)}}.landing-section{width:100%;max-width:var(--landing-max);margin:var(--space-16) auto 0;padding-top:var(--space-12);border-top:1px solid var(--color-border)}.landing-section h2,.landing-final h2{max-width:24ch;margin-bottom:var(--space-6);letter-spacing:-.02em;text-wrap:balance;font-size:clamp(24px,3vw,32px);line-height:1.2}.landing-section h3{margin:0 0 var(--space-1);font-size:17px;font-weight:600;line-height:24px}.landing-section p{color:var(--color-text-secondary)}.landing-section__lead{max-width:56ch;margin-bottom:var(--space-6);font-size:17px;line-height:26px}.landing-steps{gap:var(--space-4);counter-reset:landing-step;grid-template-columns:repeat(3,minmax(0,1fr));margin:0;padding:0;list-style:none;display:grid}.landing-step{padding:var(--space-5);border:1px solid var(--color-border);border-radius:var(--radius-lg);background:var(--color-surface)}.landing-step p{margin:0;font-size:15px;line-height:22px}.landing-step__index{width:32px;height:32px;margin-bottom:var(--space-4);border-radius:var(--radius-pill);color:var(--color-text-on-primary);background:var(--color-brand-primary);font-variant-numeric:tabular-nums;place-items:center;font-size:14px;font-weight:700;display:inline-grid}.landing-audiences{gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.landing-audience{padding:var(--space-6);border:1px solid var(--color-border);border-radius:var(--radius-xl);background:var(--color-surface)}.landing-audience--student{background:linear-gradient(180deg, color-mix(in srgb, var(--color-brand-primary-soft) 70%, var(--color-surface)), var(--color-surface) 45%)}.landing-points{gap:var(--space-5);margin:0;padding:0;list-style:none;display:grid}.landing-points p{margin:0;font-size:15px;line-height:22px}.landing-map{margin:0 0 var(--space-4);gap:var(--space-2);flex-wrap:wrap;padding:0;list-style:none;display:flex}.landing-map__skill{min-height:40px;padding:0 var(--space-4) 0 var(--space-3);align-items:center;gap:var(--space-2);border:1px solid var(--color-border);border-radius:var(--radius-pill);background:var(--color-surface);font-size:14px;font-weight:500;display:inline-flex}.landing-map__dot{border-radius:var(--radius-pill);background:var(--landing-tone);width:10px;height:10px;box-shadow:0 0 0 3px color-mix(in srgb, var(--landing-tone) 22%, transparent);display:inline-block}.landing-map__skill--green{--landing-tone:var(--color-success)}.landing-map__skill--amber{--landing-tone:var(--color-warning)}.landing-map__skill--red{--landing-tone:var(--color-error)}.landing-map__legend{gap:var(--space-5);color:var(--color-text-muted);flex-wrap:wrap;font-size:13px;display:flex}.landing-map__legend>span{align-items:center;gap:var(--space-2);display:inline-flex}.landing-plain__list{gap:var(--space-4);grid-template-columns:repeat(3,minmax(0,1fr));margin:0;display:grid}.landing-plain__list>div{padding:var(--space-5);border-left:3px solid var(--color-brand-primary);background:var(--color-surface-alt);border-radius:0 var(--radius-md) var(--radius-md) 0}.landing-plain__list dt{margin-bottom:var(--space-2);font-size:17px;font-weight:600;line-height:24px}.landing-plain__list dd{color:var(--color-text-secondary);margin:0;font-size:15px;line-height:22px}.landing-final{width:100%;max-width:var(--landing-max);margin:var(--space-16) auto 0;padding:var(--space-10) var(--space-6);border-radius:var(--radius-xl);color:var(--color-text-on-primary);text-align:center;background:linear-gradient(135deg,#4f46e5,#6366f1 60%,#818cf8)}.landing-final h2{margin:0 auto var(--space-2);color:inherit}.landing-final p{margin-bottom:var(--space-6);color:#ffffffdb}.landing-final .landing-actions{justify-content:center}.landing-final .landing-cta{color:var(--color-brand-primary-hover);background:#fff}.landing-final .landing-cta:hover{background:#eef2ff}.landing-final .landing-cta--secondary{color:#fff;background:0 0;border-color:#ffffff8c}.landing-final .landing-cta--secondary:hover{background:#ffffff1f;border-color:#fff}.landing-footer{width:100%;max-width:var(--landing-max);margin:var(--space-10) auto 0;justify-content:space-between;align-items:center;gap:var(--space-3);color:var(--color-text-muted);flex-wrap:wrap;font-size:13px;display:flex}.landing-footer nav{gap:var(--space-4);flex-wrap:wrap;display:flex}.landing-footer a{color:var(--color-text-secondary);font-weight:500}@media (width<=900px){.landing-hero{margin-top:var(--space-12);gap:var(--space-8);grid-template-columns:minmax(0,1fr)}.landing-demo{max-width:480px;transform:none}.landing-steps,.landing-plain__list,.landing-audiences{grid-template-columns:minmax(0,1fr)}}@media (width<=600px){.landing-section{margin-top:var(--space-12);padding-top:var(--space-8)}.landing-hero h1{max-width:none}.landing-actions>.landing-cta{flex:100%}.landing-final{padding:var(--space-8) var(--space-4)}}
