.report{max-width:48rem;margin:0 auto;padding:1.5rem 1rem 4rem}.report-actions{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:2rem}.report-header{border-bottom:1px solid var(--color-border, #d5d8de);padding-bottom:1rem;margin-bottom:2rem}.report-header h1{margin:0 0 .25rem}.report-meta{margin:0;color:var(--color-text-muted, #5b6270)}.report-score{margin:.75rem 0 0;font-size:1.5rem;font-weight:600}.report-note{margin:.75rem 0 0;color:var(--color-text-muted, #5b6270);font-style:italic}.report-items{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:2.5rem}.report-question{display:flex;gap:.6rem;align-items:baseline}.report-position,.report-letter{font-weight:600;color:var(--color-text-muted, #5b6270)}.report-option>.content-blocks{min-width:0;max-width:calc(100% - 3rem)}.report-options{list-style:none;margin:.75rem 0 0;padding:0;display:flex;flex-direction:column;gap:.4rem}.report-option{display:flex;flex-wrap:wrap;align-items:baseline;gap:.5rem;padding:.5rem .75rem;border:1px solid var(--color-border, #d5d8de);border-radius:.5rem}.report-option.is-chosen{border-color:var(--color-accent, #2f6fdb)}.report-option.is-correct{border-color:var(--color-success, #1f8a53);background:var(--color-success-soft, #eaf6ef)}.report-tag{font-size:.8rem;text-transform:uppercase;letter-spacing:.03em;color:var(--color-text-muted, #5b6270);white-space:nowrap}.report-explanation{margin-top:.75rem;padding-left:.75rem;border-left:3px solid var(--color-border, #d5d8de);color:var(--color-text-muted, #5b6270)}@media screen and (max-width:720px){.report{padding:.5rem 0 3rem}.report-actions .button-ghost{flex-basis:100%;justify-content:flex-start;padding-inline:0}.report-actions .button:not(.button-ghost){flex:1 1 12rem}}@media print{.report-actions,.topbar,.sidebar,.sidebar-scrim,.skip-link{display:none!important}.report{max-width:none;padding:0}.report-item{break-inside:avoid;page-break-inside:avoid}.report-items{gap:1.5rem}.report-option{-webkit-print-color-adjust:exact;print-color-adjust:exact}.report img{max-width:100%;height:auto}a[href]:after{content:""}}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-greek-400-normal-BFCFncbp.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-greek-ext-400-normal-ByG7UNQ2.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-latin-400-normal-a0AnQzuD.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:400;src:url(/assets/fira-sans-latin-ext-400-normal-BLG_mAEf.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-greek-500-normal-Cy-TUuxE.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-greek-ext-500-normal-nq-cjB3m.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-latin-500-normal-Bvbxc8ch.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:500;src:url(/assets/fira-sans-latin-ext-500-normal-OO1QnNpY.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-greek-600-normal-BlqpLOpF.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-greek-ext-600-normal-fS0evUH3.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-latin-600-normal-CXKlxLG9.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:600;src:url(/assets/fira-sans-latin-ext-600-normal-DTQBTt1m.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-greek-700-normal-BVfcrbV7.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-greek-ext-700-normal-C1m6bE4Q.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-latin-700-normal-CRhwpWTq.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:700;src:url(/assets/fira-sans-latin-ext-700-normal-g2Yrd4J5.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-greek-800-normal-b8YdJQWJ.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-greek-ext-800-normal-BwJRHpSz.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-latin-800-normal-Cs3RH8Mk.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Fira Sans;font-style:normal;font-display:swap;font-weight:800;src:url(/assets/fira-sans-latin-ext-800-normal-HvKIaAHK.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/m-plus-rounded-1c-greek-700-normal-BPQK609f.woff2) format("woff2");unicode-range:U+0370-0377,U+037A-037F,U+0384-038A,U+038C,U+038E-03A1,U+03A3-03FF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/m-plus-rounded-1c-greek-ext-700-normal-B2CuL7lV.woff2) format("woff2");unicode-range:U+1F00-1FFF}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/m-plus-rounded-1c-latin-700-normal-BYs1YzuX.woff2) format("woff2");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:"M PLUS Rounded 1c";font-style:normal;font-display:swap;font-weight:700;src:url(/assets/m-plus-rounded-1c-latin-ext-700-normal-8QQsdmZa.woff2) format("woff2");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}:root{--canvas: #f4f6fd;--surface: #ffffff;--surface-sunken: #f5f7fd;--surface-hover: #fafbff;--line: #e4e8f4;--line-strong: #ccd4e8;--ink-strong: #0f1630;--ink: #1f2947;--ink-muted: #4f5a7d;--ink-faint: #626e91;--brand: #3b45c9;--brand-hover: #2f38ab;--brand-deep: #202763;--brand-soft: #e8eafc;--brand-tint: #f3f4fe;--brand-ring: rgba(59, 69, 201, .22);--accent: #0c7886;--accent-soft: #e0f3f5;--good: #0d7e53;--good-soft: #e4f6ee;--warn: #a05f00;--warn-soft: #fdf1de;--bad: #ce2c3d;--bad-soft: #fdecee;--good-on-brand: #8ff0bf;--on-brand-soft: rgba(255, 255, 255, .78);--on-brand-faint: rgba(255, 255, 255, .66);--r-xs: 7px;--r-sm: 10px;--r-md: 14px;--r-lg: 16px;--r-xl: 24px;--r-full: 999px;--shadow-sm: 0 1px 2px rgba(15, 22, 48, .04), 0 1px 3px rgba(15, 22, 48, .05);--shadow-md: 0 1px 2px rgba(15, 22, 48, .04), 0 8px 24px -8px rgba(15, 22, 48, .12);--shadow-lg: 0 2px 6px rgba(15, 22, 48, .05), 0 24px 48px -16px rgba(15, 22, 48, .22);--shadow-pop: 0 4px 12px rgba(15, 22, 48, .08), 0 28px 56px -16px rgba(15, 22, 48, .28);--font-sans: "Segoe UI", system-ui, -apple-system, "Helvetica Neue", Arial, sans-serif;--font: "Inter", var(--font-sans);--font-heading: var(--font);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-8: 3rem;--sidebar-width: 15rem;--topbar-height: 3.75rem;--content-max: 1280px;--gutter: clamp(1.5rem, 2.5vw, 2rem);--control-height: 2.75rem;--reading-max: 820px;--ease: cubic-bezier(.2, .7, .3, 1)}[data-pillar=KNOWLEDGE]{--pillar: var(--brand);--pillar-soft: var(--brand-soft)}[data-pillar=SKILLS]{--pillar: var(--accent);--pillar-soft: var(--accent-soft)}*,*:before,*:after{box-sizing:border-box}html{overflow-x:hidden;overflow-x:clip}html,body{margin:0;padding:0;background:var(--canvas);color:var(--ink);font-family:var(--font);font-size:100%;line-height:1.55;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;-webkit-text-size-adjust:100%;text-size-adjust:100%}h1,h2,h3,h4{margin:0;color:var(--ink-strong);font-family:var(--font-heading);line-height:1.22;letter-spacing:-.015em;font-weight:700}h1{font-size:1.75rem}h2{font-size:1.25rem}h3{font-size:1.125rem}p{margin:0 0 var(--space-3)}p:last-child{margin-bottom:0}.content-blocks,.search-hit-text,.cell-title{overflow-wrap:anywhere}a{color:var(--brand);text-underline-offset:2px}:where(button,a,input,select,textarea):focus-visible{outline:2px solid var(--brand);outline-offset:2px}::selection{background:var(--brand-soft);color:var(--brand-deep)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.muted{color:var(--ink-muted)}.eyebrow{margin:0 0 var(--space-1);font-size:.6875rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-faint)}.tabular{font-variant-numeric:tabular-nums}.tone-good{color:var(--good)}.tone-neutral{color:inherit}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.page-loading{display:grid;place-items:center;min-height:60vh;padding:var(--space-8);color:var(--ink-muted)}.skip-link{position:fixed;top:var(--space-3);left:var(--space-3);z-index:60;padding:.6rem 1rem;border-radius:var(--r-sm);background:var(--brand);color:#fff;font-size:.875rem;font-weight:650;text-decoration:none;clip-path:inset(50%)}.skip-link:focus{clip-path:none;box-shadow:var(--shadow-lg)}#main-content:focus:not(:focus-visible){outline:none}.button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-height);padding:.6rem 1.05rem;border:1px solid transparent;border-radius:var(--r-sm);font:inherit;font-size:.9375rem;font-weight:600;line-height:1.35;white-space:nowrap;text-decoration:none;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease),color .16s var(--ease),box-shadow .16s var(--ease),transform .08s var(--ease)}.button>svg{flex:0 0 auto}.button:active:not(:disabled){transform:translateY(1px)}.button:disabled{opacity:.5;cursor:not-allowed}.button-primary{background:var(--brand);color:#fff;box-shadow:0 1px 2px #0f16301f,0 6px 16px -8px var(--brand-ring)}.button-primary:hover:not(:disabled){background:var(--brand-hover)}.button-outline{background:var(--surface);color:var(--brand);border-color:var(--line-strong)}.button-outline:hover:not(:disabled){background:var(--brand-tint);border-color:var(--brand)}.button-exit{color:var(--ink);border-color:var(--ink-muted)}.button-exit:hover:not(:disabled){background:var(--surface-sunken);border-color:var(--ink)}.button.exam-exit{background:var(--danger, #a71f2e);color:#fff;border-color:var(--danger, #a71f2e)}.button.exam-exit:hover:not(:disabled),.button.exam-exit:focus-visible{background:#8c1826;color:#fff;border-color:#8c1826}.button-ghost{background:transparent;color:var(--ink-muted)}.button-ghost:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}.button-quiet{background:var(--surface-sunken);color:var(--ink);border-color:var(--line)}.button-quiet:hover:not(:disabled){background:#edf0fa}.button-small{min-height:0;padding:.38rem .72rem;font-size:.8125rem;border-radius:var(--r-xs)}.button-block{width:100%}.link-button{display:inline-flex;align-items:center;gap:.3rem;padding:.2rem 0;border:0;background:none;font:inherit;font-size:.9375rem;font-weight:600;color:var(--brand);text-align:left;cursor:pointer}.link-button:hover:not(:disabled){color:var(--brand-hover);text-decoration:underline}.link-button:disabled{color:var(--ink-faint);cursor:not-allowed;text-decoration:none}.icon-button{flex:0 0 auto;display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-muted);cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}.icon-button:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}.card-actions{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,12rem),1fr));gap:var(--space-2);margin-top:var(--space-4)}.card-actions>.button{white-space:normal;text-align:center}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);padding:var(--space-5)}.badge{display:inline-flex;align-items:center;gap:.35rem;padding:.18rem .6rem;border-radius:var(--r-full);font-size:.75rem;font-weight:650;white-space:nowrap}.badge-primary{background:var(--brand-soft);color:var(--brand-hover)}.badge-success{background:var(--good-soft);color:var(--good)}.badge-warning{background:var(--warn-soft);color:var(--warn)}.badge-muted{background:var(--surface-sunken);color:var(--ink-muted)}.badge-dot:before{content:"";width:.4rem;height:.4rem;border-radius:50%;background:currentColor}.field{display:flex;flex-direction:column;gap:.3rem;margin-bottom:var(--space-4)}.field>span{font-size:.8125rem;font-weight:600;color:var(--ink-muted)}.field input,.field select{width:100%;min-height:var(--control-height);padding:.62rem .8rem;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:.9375rem;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.field input::placeholder{color:var(--ink-faint)}.field input:focus,.field select:focus{outline:none;border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring)}.field select:disabled{background:var(--surface-sunken);color:var(--ink-faint)}.form-error{display:flex;align-items:flex-start;gap:var(--space-2);margin:0 0 var(--space-3);padding:.6rem .85rem;border-radius:var(--r-sm);background:var(--bad-soft);color:#a71f2e;font-size:.9375rem;font-weight:550}.form-error>svg{flex:0 0 auto;margin-top:.18rem}.form-error-below{margin:var(--space-4) 0 0}.form-note{display:flex;align-items:flex-start;gap:var(--space-2);margin:0 0 var(--space-3);padding:.6rem .85rem;border-radius:var(--r-sm);background:var(--brand-soft);color:var(--ink);font-size:.9375rem;font-weight:550}.form-note>svg{flex:0 0 auto;margin-top:.18rem}.ring{position:relative;flex:0 0 auto;display:grid;place-items:center;width:var(--ring-size, 64px);height:var(--ring-size, 64px)}.ring>svg{position:absolute;inset:0;transform:rotate(-90deg)}.ring-track{fill:none;stroke:var(--line)}.ring-bar{fill:none;stroke:var(--brand);stroke-linecap:round;transition:stroke-dashoffset .6s var(--ease)}.ring[data-tone=good] .ring-bar{stroke:var(--good)}.ring[data-tone=neutral] .ring-bar{stroke:var(--brand)}.ring[data-tone=empty] .ring-bar{stroke:var(--line-strong)}.ring-center{position:relative;display:flex;flex-direction:column;align-items:center;line-height:1.1;text-align:center}.ring-center strong{font-size:var(--ring-font, .9375rem);font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-strong)}.ring-center small{font-size:.75rem;font-weight:600;letter-spacing:.03em;color:var(--ink-faint)}.ring-invert .ring-track{stroke:#ffffff38}.ring-invert .ring-bar{stroke:#fff}.ring-invert .ring-center strong{color:#fff}.ring-invert .ring-center small{color:var(--on-brand-soft)}body:before{content:"";position:fixed;inset:0 0 auto;z-index:50;height:3px;background:var(--signature, transparent);pointer-events:none}.app{display:grid;grid-template-columns:var(--sidebar-width) minmax(0,1fr);min-height:100vh}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;padding:var(--space-5) var(--space-3) var(--space-4);background:var(--surface);border-right:1px solid var(--line);z-index:40}.sidebar-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-2);padding:0 var(--space-2) var(--space-5)}.sidebar-head .brand{min-width:0;padding:0}.sidebar-head .brand-text{min-width:0;overflow-wrap:anywhere}.sidebar-close{display:none}.brand{display:flex;align-items:center;gap:.65rem;padding:0 var(--space-2) var(--space-5);color:var(--ink-strong);text-decoration:none}.brand-mark{flex:0 0 auto;display:grid;place-items:center;width:2.25rem;height:2.25rem;border-radius:11px;background:var(--brand);color:#fff}.brand-mark-logo{width:auto;height:auto;max-width:13rem;padding:.3rem .5rem;border-radius:10px;background:#fff}.brand-mark-logo img{display:block;height:3.5rem;width:auto;max-width:100%;object-fit:contain}.sidebar-head .brand:has(.brand-mark-logo){flex-direction:column;align-items:flex-start;gap:.5rem}.sidebar-head .brand:has(.brand-mark-logo) .brand-mark-logo{max-width:100%;margin-left:-.5rem}.sidebar-head .brand-mark-logo img{height:5.25rem}.brand-text{display:flex;flex-direction:column;line-height:1.15}.brand-text strong{font-size:1rem;font-weight:800;letter-spacing:.02em}.sidebar-head .brand-text strong,.topbar .brand-text strong{font-size:.9375rem;font-weight:750;letter-spacing:0}.brand-text small{font-size:.75rem;font-weight:500;color:var(--ink-muted)}.sidenav{display:flex;flex-direction:column;gap:var(--space-1);flex:1;min-height:0;overflow-y:auto}.sidenav a{flex:0 0 auto;display:flex;align-items:center;gap:var(--space-3);min-height:var(--control-height);padding:var(--space-2) var(--space-3);border-radius:var(--r-sm);color:var(--ink-muted);font-size:1rem;font-weight:600;text-decoration:none;transition:background .16s var(--ease),color .16s var(--ease)}.sidenav a:focus-visible{outline-offset:-2px}.sidenav a>svg{flex:0 0 auto;color:var(--ink-faint);transition:color .16s var(--ease)}.sidenav a:hover{background:var(--surface-sunken);color:var(--ink)}.sidenav a.active{position:relative;background:var(--brand-soft);color:var(--brand-hover);font-weight:700}.sidenav a.active:before{content:"";position:absolute;top:var(--space-2);bottom:var(--space-2);left:0;width:3px;border-radius:var(--r-full);background:var(--signature, var(--brand))}.sidenav a.active>svg{color:var(--brand)}.sidebar-foot{padding-top:var(--space-4);border-top:1px solid var(--line)}.user-chip{display:flex;align-items:center;gap:.65rem;padding:var(--space-2);margin-bottom:var(--space-2);min-width:0}.avatar{flex:0 0 auto;display:grid;place-items:center;width:2.15rem;height:2.15rem;border-radius:50%;background:var(--brand-soft);color:var(--brand-hover);font-size:.8125rem;font-weight:700}.user-chip-text{display:flex;flex-direction:column;min-width:0;line-height:1.25}.user-chip-text strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.user-chip-text small{overflow-wrap:anywhere}.user-chip-text strong{font-size:.875rem;font-weight:650;color:var(--ink-strong)}.user-chip-text small{font-size:.75rem;color:var(--ink-faint)}.app-main{display:flex;flex-direction:column;min-width:0}.topbar{display:none}.content{flex:1;width:100%;max-width:calc(var(--content-max) + 2 * var(--gutter));margin:0 auto;padding:var(--space-6) var(--gutter) var(--space-8)}.page{display:flex;flex-direction:column;gap:var(--space-6)}.page-head{display:flex;align-items:flex-end;justify-content:space-between;gap:var(--space-4);flex-wrap:wrap}.guide-terms dd,.legal-lead,.legal-text,.content-text,.feedback-explanation,.tutor-hints,.tutor-chat-log,.mode-purpose,.mode-points{text-align:start}.page-head p{margin:var(--space-1) 0 0;color:var(--ink-muted);max-width:62ch}.sidebar-scrim{display:none}.auth-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,clamp(480px,42vw,760px));min-height:100vh}.auth-aside{display:flex;flex-direction:column;padding:var(--space-8) clamp(var(--space-6),4.5vw,7rem);background:linear-gradient(150deg,var(--brand) 0%,var(--brand-deep) 68%,color-mix(in srgb,var(--brand-deep) 70%,#000) 100%);color:#fff;position:relative;overflow:hidden}.auth-aside:after{content:"";position:absolute;right:-16%;bottom:-24%;width:60%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.16),transparent 66%)}.auth-aside .brand{padding:0;color:#fff}.auth-aside .brand-mark{background:#ffffff29;box-shadow:none}.auth-aside .brand:has(.brand-mark-logo){flex-direction:column;align-items:flex-start;gap:var(--space-3)}.auth-aside .brand-mark-logo{max-width:22rem;padding:.6rem .9rem;border-radius:14px;background:#fff}.auth-aside .brand-mark-logo img{height:6.5rem}.auth-aside .brand:has(.brand-mark-logo) .brand-text strong{font-size:1.125rem}.auth-aside .brand-text small{color:var(--on-brand-soft)}.auth-pitch{position:relative;max-width:46ch;margin-block:auto;padding-block:var(--space-8)}.auth-pitch h2{color:#fff;font-size:clamp(2rem,1.25rem + 1vw,2.625rem);margin-bottom:var(--space-3)}html[data-heading-font] .auth-pitch h2{font-size:clamp(1.625rem,1rem + .85vw,2.125rem);text-wrap:balance}.auth-pitch p{color:var(--on-brand-soft);font-size:1.0625rem}.auth-points{position:relative;list-style:none;margin:var(--space-5) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.auth-points li{display:flex;align-items:flex-start;gap:.6rem;color:#ffffffdb;font-size:clamp(.9375rem,.75rem + .3vw,1.0625rem)}.auth-points svg{flex:0 0 auto;margin-top:.15rem;color:var(--on-brand-soft)}.auth-aside-foot{position:relative;display:flex;flex-direction:column;gap:var(--space-2);max-width:60ch}.auth-aside-note{position:relative;margin:0;font-size:.8125rem;color:var(--on-brand-faint)}.auth-panel-note{display:none;width:min(380px,100%);margin:var(--space-6) 0 0;font-size:.8125rem;color:var(--ink-muted)}.auth-panel{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:var(--space-6) clamp(var(--space-5),4vw,var(--space-8));background:var(--surface)}.auth-panel-brand{display:none;width:min(380px,100%);padding:0;margin-bottom:var(--space-6)}.auth-panel-welcome{display:none;width:min(380px,100%);margin:var(--space-6) 0 0;font-size:.9375rem;color:var(--ink-muted)}.auth-card{width:min(380px,100%)}.auth-card h1{margin-bottom:var(--space-1)}.auth-card>p:first-of-type{margin-bottom:var(--space-5);color:var(--ink-muted)}.auth-welcome{width:min(420px,100%)}.auth-welcome h1{font-size:clamp(1.75rem,1.25rem + .8vw,2.25rem)}.auth-welcome>p:first-of-type{font-size:1.0625rem}.auth-card .button-primary{width:100%;margin-top:var(--space-2)}.auth-foot{margin:var(--space-5) 0 0;text-align:center;font-size:.9375rem;color:var(--ink-muted)}.auth-forgot{margin:calc(-1 * var(--space-3)) 0 var(--space-4);text-align:right;font-size:.875rem}.auth-choices{display:flex;flex-direction:column;gap:var(--space-3);margin-top:var(--space-2)}.auth-choices .button{width:100%;margin:0;min-height:3rem}.auth-welcome-points{display:none;list-style:none;margin:var(--space-6) 0 0;padding:0;flex-direction:column;gap:var(--space-2);font-size:.9375rem;color:var(--ink-muted)}.auth-welcome-points li{display:flex;align-items:flex-start;gap:.6rem}.auth-welcome-points svg{flex:0 0 auto;margin-top:.15rem;color:var(--brand)}.hero{position:relative;overflow:hidden;padding:var(--space-5) var(--space-6);border-radius:var(--r-xl);background:linear-gradient(135deg,var(--brand) 0%,color-mix(in srgb,var(--brand),var(--brand-deep)) 46%,var(--brand-deep) 100%);color:#fff;box-shadow:var(--shadow-lg)}.hero:before{content:"";position:absolute;top:-55%;right:-8%;width:46%;aspect-ratio:1;border-radius:50%;background:radial-gradient(circle,rgba(255,255,255,.18),transparent 64%);pointer-events:none}.hero-top{position:relative;display:flex;align-items:flex-start;justify-content:space-between;gap:var(--space-5);flex-wrap:wrap}.hero-copy h1{color:#fff;font-size:1.9rem;margin-bottom:var(--space-2)}.hero-copy p{margin:0;color:var(--on-brand-soft);max-width:46ch}.hero-copy .eyebrow{color:var(--on-brand-soft)}.hero-ring{display:flex;align-items:center;gap:var(--space-3)}.hero-ring-caption{display:flex;flex-direction:column;line-height:1.3}.hero-ring-caption strong{font-size:1rem;font-weight:650;max-width:18ch}.hero-ring-label{font-size:.8125rem;color:var(--on-brand-soft)}.hero-stat-note{display:block;margin-top:var(--space-2);max-width:56ch;font-size:.8125rem;color:var(--on-brand-soft)}.hero-stats{position:relative;display:grid;grid-template-columns:repeat(auto-fit,minmax(min(150px,100%),1fr));gap:var(--space-3);margin-top:var(--space-4)}.hero-stat{padding:var(--space-3) var(--space-4);border-radius:var(--r-md);background:#ffffff1a;border:1px solid rgba(255,255,255,.14)}.hero-stat-value{display:block;font-size:1.5rem;font-weight:700;font-variant-numeric:tabular-nums;line-height:1.2}.hero-stat-value.tone-good{color:var(--good-on-brand)}.hero-stat-value.tone-neutral{color:inherit}.hero-stat-label{display:block;margin-top:.1rem;font-size:.8125rem;color:var(--on-brand-soft)}.resume{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-4) var(--space-5);padding:var(--space-5);background:var(--brand-tint);border:1px solid var(--brand-soft);border-radius:var(--r-lg)}.resume-copy{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1 18rem;min-width:0}.resume-copy h2{font-size:.875rem;font-weight:600;letter-spacing:0;color:var(--ink-muted)}.resume-subject{margin:0;font-size:1.125rem;font-weight:700;color:var(--ink-strong)}.resume-note{margin:0;font-size:.875rem;color:var(--ink-muted);font-variant-numeric:tabular-nums}.resume-action{flex:0 1 auto;white-space:normal;text-align:center}.advice{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-4) var(--space-5);border:1px solid var(--brand-soft);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.advice-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-1)}.advice-head h2:focus{outline:none}.advice-head h2{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:0;font-size:1.0625rem;letter-spacing:0;color:var(--ink-strong)}.advice-status{margin:0}.advice-note{margin:0;font-size:.8125rem;color:var(--ink-faint)}.advice-foot{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4)}.advice-report{display:inline-flex;align-items:center;gap:var(--space-1);padding:0;font-size:.875rem;font-weight:600}.advice-refresh{align-self:flex-start;margin-top:calc(-1 * var(--space-2))}.advice-refresh:disabled{cursor:progress;color:var(--ink-muted)}.advice-refresh-idle:disabled{cursor:not-allowed}.advice-refresh-reading svg{animation:advice-spin .9s linear infinite}@keyframes advice-spin{to{transform:rotate(360deg)}}.advice-reading{display:inline-flex;align-items:center;gap:.35em;font-size:.875rem;font-weight:600;color:var(--brand)}.advice-arrive{animation:advice-arrive .36s var(--ease) both}.advice-goal-list .advice-arrive:nth-child(2){animation-delay:70ms}.advice-goal-list .advice-arrive:nth-child(3){animation-delay:.14s}@keyframes advice-arrive{0%{opacity:0;transform:translateY(8px)}}.advice-presses{display:block;margin-top:var(--space-1);font-weight:600;color:var(--brand-deep)}.advice-goal-list{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding:0;list-style:none}.advice-goal{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3)}.advice-goal-axis{flex:0 0 auto;min-width:6rem;padding:.1rem .55rem;border-radius:var(--r-full);background:var(--brand-tint);color:var(--brand-deep);font-size:.75rem;font-weight:700;text-align:center;white-space:nowrap}.advice-goal-text{flex:1 1 16rem;min-width:0;margin:0;font-size:.9375rem;line-height:1.5;color:var(--ink);font-variant-numeric:tabular-nums}.advice-goal-action{flex:0 0 auto;font-size:.875rem;text-decoration:none}@media(max-width:640px){.advice-goal-action{width:100%}}.revision-totals{display:grid;grid-template-columns:repeat(auto-fit,minmax(10rem,1fr));gap:var(--space-4)}.revision-totals>div{display:flex;flex-direction:column;gap:var(--space-1)}.revision-totals strong{font-size:1.125rem;color:var(--ink-strong);font-variant-numeric:tabular-nums}.revision-total-label{font-size:.8125rem;color:var(--ink-muted)}.revision-pillar{margin:0 0 var(--space-3);font-size:1rem;color:var(--ink-strong)}.revision-table td{font-variant-numeric:tabular-nums}.revision-skill th{padding-left:var(--space-6);font-weight:500;color:var(--ink-muted)}.revision-wrong h2{margin:0 0 var(--space-2);font-size:1rem;color:var(--ink-strong)}.revision-wrong-list{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.revision-wrong-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-4);padding:var(--space-3);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface-sunken)}.revision-wrong-copy{display:flex;flex-direction:column;gap:var(--space-1);flex:1 1 18rem;min-width:0}.revision-wrong-subject{font-size:.8125rem;color:var(--ink-muted)}.revision-wrong-stem{color:var(--ink)}.form-error .link-button{flex:0 0 auto;margin-left:auto;padding:0;color:inherit;text-decoration:underline}.pillar{display:flex;flex-direction:column;gap:var(--space-4)}.pillar-head{display:flex;align-items:flex-start;gap:var(--space-3)}.pillar-icon{flex:0 0 auto;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--r-md);background:var(--pillar-soft, var(--brand-soft));color:var(--pillar, var(--brand))}.pillar-head h2{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.pillar-head p{margin:.15rem 0 0;font-size:.9375rem;color:var(--ink-muted)}.hero+.pillar{margin-top:calc(-1 * var(--space-2))}.pillar-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(20.5rem,100%),1fr));gap:1.25rem;margin:0;padding:0;list-style:none}.pillar-grid-item,.pillar-grid-item>.subject-card{min-width:0}.subject-card{position:relative;display:flex;flex-direction:column;padding:1.25rem;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm);transition:border-color .15s var(--ease),box-shadow .15s var(--ease)}@supports (grid-template-rows: subgrid){.pillar-grid-item{display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0}.subject-card:not(.subject-card-loading){display:grid;grid-template-rows:subgrid;grid-row:span 4;row-gap:0}}.subject-card-active,.subject-card-answered-all{border-color:#cfd3f5;box-shadow:var(--shadow-sm),0 0 0 3px var(--brand-tint)}.subject-card-unavailable{opacity:.62}.subject-top{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:var(--space-3)}.subject-glyph{flex:0 0 auto;display:grid;place-items:center;width:2.75rem;height:2.75rem;border-radius:12px;background:linear-gradient(160deg,var(--pillar-soft, var(--brand-soft)),color-mix(in srgb,var(--pillar-soft, var(--brand-soft)) 70%,#fff));color:var(--pillar, var(--brand));box-shadow:inset 0 1px #ffffffd9,0 1px 2px #0f163014}.subject-top .badge{margin-top:.35rem;white-space:normal;line-height:1.35;text-align:right}.subject-card-untouched .subject-top .badge{padding-right:0;padding-left:0;background:none;color:var(--ink-faint)}.subject-card h3{min-width:0;margin:var(--space-3) 0 0;font-size:1.25rem;font-weight:600;line-height:1.3;overflow-wrap:anywhere}.subject-meta{align-self:start;margin:var(--space-1) 0 0;font-size:.875rem;color:var(--ink-muted)}.subject-progress{align-self:end;width:100%;margin-top:var(--space-2)}.subject-scope{margin:0;font-size:.9375rem;color:var(--ink-muted)}.subject-scope strong{font-weight:600;color:var(--ink-strong)}.subject-metric{margin:var(--space-4) 0 0}.subject-metric>div{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:baseline;column-gap:var(--space-3)}.subject-metric dt{font-size:.9375rem;font-weight:600;color:var(--ink)}.subject-metric dd{grid-column:1 / -1;margin:0}.subject-metric .subject-metric-value{grid-column:auto;font-size:1rem;font-weight:700;color:var(--ink-strong);font-variant-numeric:tabular-nums}.subject-metric .subject-metric-value.tone-good{color:var(--good)}.subject-metric .subject-metric-value.tone-neutral{color:var(--ink-strong)}.subject-metric-count{margin:.25rem 0 0;font-size:.875rem;color:var(--ink-muted);font-variant-numeric:tabular-nums}.subject-metric-bar{margin-top:.4rem}.subject-progress-bar{--bar-fill: var(--pillar, var(--brand));display:block;width:100%;height:.5rem;border:0;border-radius:var(--r-full);background:var(--surface-sunken);box-shadow:inset 0 0 0 1px var(--line);color:var(--bar-fill);overflow:hidden;appearance:none}.subject-progress-bar[data-tone=good]{--bar-fill: var(--good)}.subject-progress-bar[data-tone=neutral]{--bar-fill: var(--pillar, var(--brand))}.subject-progress-bar::-webkit-progress-bar{border-radius:var(--r-full);background:var(--surface-sunken)}.subject-progress-bar::-webkit-progress-value{border-radius:var(--r-full);background:var(--bar-fill)}.subject-progress-bar::-moz-progress-bar{border-radius:var(--r-full);background:var(--bar-fill)}.subject-new{margin-top:var(--space-3);padding-top:var(--space-2);border-top:1px dashed var(--line);font-size:.8125rem;color:var(--ink-muted)}.subject-new-count{margin:0;font-weight:600;color:var(--ink)}.subject-foot{display:flex;flex-wrap:wrap;align-items:center;align-self:start;container-type:inline-size;gap:var(--space-2) var(--space-3);width:100%;margin-top:var(--space-3)}.subject-foot .subject-search{display:contents}.subject-action{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:var(--control-height);padding:0 1.1rem;border:0;border-radius:12px;font:inherit;font-size:.9375rem;font-weight:650;line-height:1.2;cursor:pointer;transition:background .14s var(--ease),color .14s var(--ease),box-shadow .14s var(--ease),transform .14s var(--ease)}.subject-action-start{background:var(--brand-soft);color:var(--brand-deep);box-shadow:0 2px #c3c8ef}.subject-action-start:hover:not(:disabled){background:#dfe2fb}.subject-action-resume{background:var(--brand);color:#fff;box-shadow:0 2px 0 var(--brand-deep)}.subject-action-resume:hover:not(:disabled){background:var(--brand-hover)}.subject-action:active:not(:disabled){transform:translateY(1px)}.subject-action-start:active:not(:disabled){box-shadow:0 1px #c3c8ef}.subject-action-resume:active:not(:disabled){box-shadow:0 1px 0 var(--brand-deep)}.subject-action:focus-visible,.subject-search-toggle:focus-visible,.subject-more:focus-visible,.subject-menu-item:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.subject-action:disabled{opacity:.55;box-shadow:none;cursor:default}.subject-search-toggle{display:inline-flex;align-items:center;gap:.3rem;min-height:var(--control-height);padding:0 .5rem;border:0;border-radius:var(--r-sm);background:none;font:inherit;font-size:.875rem;font-weight:500;color:#5159a8;cursor:pointer;transition:background .14s var(--ease),color .14s var(--ease)}.subject-search-toggle:hover{background:var(--brand-tint);color:var(--brand)}.subject-search-panel{flex:1 1 100%;order:10;margin-top:var(--space-1)}.subject-menu{position:relative;margin-left:auto}.subject-more{display:grid;place-items:center;width:var(--control-height);height:var(--control-height);border:1px solid transparent;border-radius:var(--r-sm);background:none;color:var(--ink-muted);cursor:pointer;transition:background .14s var(--ease),color .14s var(--ease)}.subject-more:hover:not(:disabled),.subject-more[aria-expanded=true]{background:var(--surface-sunken);color:var(--ink)}.subject-more:disabled{opacity:.55;cursor:default}.subject-menu-list{position:absolute;right:0;bottom:calc(100% + 4px);z-index:5;min-width:11rem;padding:var(--space-1);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-sm);box-shadow:var(--shadow-md)}.subject-menu-item{display:flex;align-items:center;gap:var(--space-2);width:100%;min-height:2.5rem;padding:0 var(--space-3);border:0;border-radius:var(--r-xs);background:none;font:inherit;font-size:.9375rem;color:var(--ink);text-align:left;cursor:pointer}.subject-menu-item:hover{background:var(--surface-sunken)}.subject-card-loading .subject-glyph{background:var(--surface-sunken);box-shadow:none}.subject-bone{display:block;border-radius:var(--r-full);background:var(--surface-sunken)}.subject-bone-status{width:6rem;height:.9rem;margin-top:.5rem}.subject-bone-title{width:70%;height:1.1rem;margin-top:var(--space-4)}.subject-bone-meta{width:40%;height:.85rem;margin-top:var(--space-2)}.subject-bone-action{width:7rem;height:var(--control-height);border-radius:12px}.subject-card-loading .subject-foot{margin-top:var(--space-5)}.guide-link{display:inline-flex;align-items:center;gap:var(--space-2);min-height:2.75rem;margin-top:var(--space-1);font-size:.875rem;font-weight:600;color:var(--brand);text-decoration:none}.guide-link:hover{color:var(--brand-hover);text-decoration:underline}.guide-link:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-xs)}.mode-fallback{margin:0;padding:var(--space-3);border-radius:var(--r-md);background:var(--brand-soft);font-size:.875rem;color:var(--ink-strong)}.guide-topics ul{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(16rem,100%),1fr));gap:0 var(--space-4);margin:0;padding:0;list-style:none}.guide-topics a{display:flex;align-items:center;min-height:2.75rem;font-weight:600;color:var(--brand)}.guide-section,.guide-section h2{scroll-margin-top:var(--space-6)}.guide-section h2:focus{outline:none}.guide-section h2:focus-visible{outline:2px solid var(--brand);outline-offset:4px}.guide-section h2{display:flex;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4);font-size:1.125rem}.guide-section-icon{display:inline-grid;place-items:center;width:2rem;height:2rem;border-radius:var(--r-md);background:var(--brand-soft);color:var(--brand)}.guide-terms{margin:0;display:grid}.guide-terms>div{display:grid;grid-template-columns:minmax(10rem,14rem) 1fr;gap:var(--space-4);padding:var(--space-3) 0;border-top:1px solid var(--line)}.guide-terms>div:first-child{border-top:0;padding-top:0}.guide-terms dt{font-weight:650}.guide-terms dd{margin:0;color:var(--ink-muted)}.guide-terms dd p{margin:0}.guide-terms dd p+p{margin-top:var(--space-2)}@media(max-width:720px){.guide-terms>div{grid-template-columns:1fr;gap:var(--space-1)}}.search-card{padding:var(--space-5);border:1px solid var(--line);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-sm)}.search-head h2{margin:0;font-size:1.125rem}.search-head p{margin:.25rem 0 0;font-size:.9375rem;color:var(--ink-muted)}.search-head h2 .badge{margin-left:var(--space-2);vertical-align:middle}.search-head h2 svg{vertical-align:-.15em;margin-right:var(--space-2)}.search-form{margin-top:var(--space-4)}.search-field{position:relative;display:flex;align-items:center;gap:var(--space-2);padding:0 .9rem;border:1px solid var(--line-strong);border-radius:var(--r-md);background:var(--surface);color:var(--ink-faint);transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.search-field:focus-within{border-color:var(--brand);box-shadow:0 0 0 3px var(--brand-ring);color:var(--brand)}.search-field>svg{flex:0 0 auto}.search-field input{flex:1 1 auto;min-width:0;padding:.78rem 0;border:0;background:none;color:var(--ink);font:inherit;font-size:1rem}.search-field input:focus{outline:none}.search-field input::placeholder{color:var(--ink-faint)}.search-field input::-webkit-search-cancel-button{display:none}.search-clear{flex:0 0 auto;color:var(--ink-muted)}.search-field-busy:after{content:"";position:absolute;left:.9rem;right:.9rem;bottom:-1px;height:2px;border-radius:1px;background:linear-gradient(90deg,transparent,var(--brand),transparent);background-size:50% 100%;animation:search-sweep 1s linear infinite}@keyframes search-sweep{0%{background-position:-100% 0}to{background-position:200% 0}}.search-status{min-height:1.4em;margin:var(--space-3) 0 0;font-size:.875rem;color:var(--ink-muted)}.search-hint{margin:var(--space-2) 0 0;font-size:.8125rem;color:var(--ink-faint)}.search-results{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;list-style:none}.search-hit{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"meta action" "text action";column-gap:var(--space-4);row-gap:.3rem;align-items:center;width:100%;padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);color:var(--ink);font:inherit;text-align:left;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease),box-shadow .16s var(--ease)}.search-hit:hover:not(:disabled),.search-hit:focus-visible{border-color:var(--brand);background:var(--brand-tint);box-shadow:var(--shadow-sm)}.search-hit:disabled{cursor:progress;opacity:.7}.search-hit-opening{border-color:var(--brand);background:var(--brand-tint);opacity:1}.search-hit-meta{grid-area:meta;display:flex;flex-wrap:wrap;align-items:center;gap:.35rem .6rem;font-size:.8125rem;color:var(--ink-muted)}.search-hit-subject{font-weight:650;color:var(--brand)}.search-hit-position{font-variant-numeric:tabular-nums}.search-hit-text{grid-area:text;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:3;line-clamp:3;overflow:hidden;font-size:.9375rem;line-height:1.5}.search-hit-text mark{padding:0 .1em;border-radius:3px;background:var(--warn-soft);color:inherit;box-shadow:inset 0 -2px 0 var(--warn)}.search-hit-figure{display:inline-block;margin-right:.5rem;padding:.05rem .5rem;border-radius:var(--r-full);background:var(--accent-soft);color:var(--accent);font-size:.75rem;font-weight:600}.search-hit-action{grid-area:action;display:inline-flex;align-items:center;gap:.3rem;font-size:.875rem;font-weight:600;color:var(--brand);white-space:nowrap}.marked-row{display:flex;align-items:stretch;gap:var(--space-2)}.marked-row .search-hit{flex:1 1 auto;min-width:0}.marked-remove{flex:0 0 auto;align-self:center;color:var(--ink-muted)}.marked-toggle{margin-top:var(--space-3)}@media(max-width:720px){.search-card{padding:var(--space-4)}.search-hit{grid-template-columns:minmax(0,1fr);grid-template-areas:"meta" "text" "action"}}.search-form-compact{margin-top:0}.search-field-compact{padding:0 .7rem;border-radius:var(--r-sm)}.search-field-compact input{padding:.55rem 0;font-size:.9375rem}.search-results-compact{max-height:22rem;overflow-y:auto;padding-right:2px}.search-results-compact .search-hit{padding:.6rem .8rem;row-gap:.15rem}.search-results-compact .search-hit-text{-webkit-line-clamp:2;line-clamp:2;font-size:.875rem}.mode-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(18.75rem,100%),1fr));gap:var(--space-5)}.mode-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}@supports (grid-template-rows: subgrid){.mode-card{display:grid;grid-template-rows:subgrid;grid-row:span 5}}.mode-head{display:flex;align-items:center;gap:var(--space-3)}.mode-head h2{min-width:0;overflow-wrap:anywhere}.mode-icon{flex:0 0 auto;display:grid;place-items:center;width:2.5rem;height:2.5rem;border-radius:var(--r-sm);background:var(--brand-soft);color:var(--brand)}.mode-purpose{margin:0;color:var(--ink-muted)}.mode-meta{display:flex;flex-wrap:wrap;align-content:flex-start;gap:var(--space-2) var(--space-5);margin:0;padding:var(--space-3) 0;border-block:1px solid var(--line);list-style:none;font-weight:600;font-variant-numeric:tabular-nums;color:var(--ink-strong)}.mode-meta li{display:inline-flex;align-items:center;gap:var(--space-2)}.mode-meta svg{flex:0 0 auto;color:var(--ink-faint)}.mode-details,.mode-choice,.mode-foot{display:flex;flex-direction:column;gap:var(--space-3)}.mode-choice{gap:var(--space-2)}.mode-choice .field{margin-bottom:0}.mode-sections{margin:0;font-size:.875rem}.mode-sections td{padding:var(--space-2) var(--space-3)}.mode-points{display:flex;flex-direction:column;gap:var(--space-2);margin:0;padding-left:1.1rem;font-size:.875rem;color:var(--ink-muted)}.mode-hint,.mode-status{margin:0;font-size:.875rem;color:var(--ink-muted)}.mode-status{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2)}.mode-foot{margin-top:auto;justify-content:flex-end}.mode-foot .form-error{margin:0}.mode-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.mode-actions .button{flex:1 1 auto;white-space:normal;text-align:center}.table-card{padding:0;overflow:hidden}.data-table{width:100%;border-collapse:collapse;font-size:.9375rem}.data-table thead th{padding:var(--space-3) var(--space-4);background:var(--surface-sunken);border-bottom:1px solid var(--line);font-size:.8125rem;font-weight:600;color:var(--ink-muted);text-align:left;white-space:nowrap}.data-table td,.data-table tbody th{padding:var(--space-3) var(--space-4);border-bottom:1px solid var(--line);vertical-align:middle;font-weight:inherit;text-align:left}.data-table tbody tr:last-child td,.data-table tbody tr:last-child th{border-bottom:0}.data-table tbody tr{transition:background .14s var(--ease)}.data-table tbody tr:hover{background:var(--surface-hover)}.data-table .cell-right{text-align:right}.row-actions{display:inline-flex;justify-content:flex-end;gap:var(--space-2)}.icon-action{position:relative;flex:0 0 auto;display:inline-grid;place-items:center;width:2.25rem;height:2.25rem;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);color:var(--ink-muted);text-decoration:none;font:inherit;cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}.icon-action:hover,.icon-action:focus-visible{background:var(--surface-sunken);color:var(--ink)}.icon-action-danger:hover,.icon-action-danger:focus-visible{color:var(--danger, #a71f2e);border-color:currentColor;background:color-mix(in srgb,var(--danger, #a71f2e) 8%,transparent)}.icon-action-label{position:absolute;top:50%;right:calc(100% + .4rem);transform:translateY(-50%);padding:.28rem .55rem;border-radius:var(--r-xs);background:var(--ink-strong);color:#fff;font-size:.75rem;font-weight:600;line-height:1.2;white-space:nowrap;opacity:0;visibility:hidden;pointer-events:none;transition:opacity .12s var(--ease),visibility .12s var(--ease);z-index:1}.icon-action:hover .icon-action-label,.icon-action:focus-visible .icon-action-label{opacity:1;visibility:visible}@media(hover:none){.icon-action{grid-auto-flow:column;gap:var(--space-2);width:auto;height:auto;min-height:var(--control-height);padding:.4rem var(--space-3);color:var(--ink);font-size:.875rem;font-weight:600}.icon-action-label{position:static;transform:none;padding:0;background:none;color:inherit;font-size:inherit;opacity:1;visibility:visible;pointer-events:auto}}.cell-title{display:flex;flex-direction:column;gap:.1rem}.cell-title strong{font-weight:600;color:var(--ink-strong)}.cell-title small{font-size:.8125rem;color:var(--ink-faint)}.cell-score{color:var(--ink);font-variant-numeric:tabular-nums;white-space:nowrap}.cell-score.tone-good{color:var(--good);font-weight:600}.cell-score.tone-neutral{color:var(--ink);font-weight:600}.table-note{margin:calc(-1 * var(--space-3)) 0 0;font-size:.875rem;color:var(--ink-muted)}.cell-date{font-variant-numeric:tabular-nums;color:var(--ink-muted);white-space:nowrap}.empty-state{display:flex;flex-direction:column;align-items:center;gap:var(--space-3);padding:var(--space-8) var(--space-5);text-align:center}.empty-state-icon{display:grid;place-items:center;width:3.25rem;height:3.25rem;border-radius:50%;background:var(--surface-sunken);color:var(--ink-faint)}.empty-state p{margin:0;color:var(--ink-muted)}.exam{display:flex;flex-direction:column;min-height:calc(100vh - 5rem)}.exam-bar{position:sticky;top:0;z-index:25;display:grid;grid-template-columns:minmax(0,1fr) auto minmax(max-content,1fr);align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);background:#ffffffe6;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-sm)}.exam-bar-left{display:flex;align-items:center;gap:var(--space-3);min-width:0}.exam-title{display:flex;flex-direction:column;min-width:0;line-height:1.25}.exam-title .eyebrow{margin:0}.exam-title strong{font-size:.9375rem;font-weight:650;color:var(--ink-strong);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.exam-bar-center{display:flex;flex-direction:column;align-items:center;gap:.15rem}.exam-bar-right{display:flex;align-items:center;justify-content:flex-end;gap:var(--space-2)}.exam-answered{font-size:.875rem;font-weight:650;color:var(--ink-strong);white-space:nowrap}.timer{display:inline-flex;align-items:center;gap:.4rem;padding:.25rem .85rem;border:1.5px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface);font-size:1.375rem;font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em;color:var(--ink-strong)}.timer-hidden,.timer-finished{font-size:.875rem;font-weight:600;color:var(--ink-muted);padding:.45rem .85rem}.timer-warning{border-color:var(--warn);background:var(--warn-soft);color:var(--warn)}.timer-urgent{border-color:var(--bad);background:var(--bad-soft);color:var(--bad);animation:pulse-urgent 1.6s var(--ease) infinite}@keyframes pulse-urgent{0%,to{box-shadow:0 0 #d22e3f47}50%{box-shadow:0 0 0 6px #d22e3f00}}.timer-toggle{display:inline-flex;align-items:center;gap:.3rem;padding:.25rem .5rem;border:0;border-radius:var(--r-xs);background:none;font:inherit;font-size:.75rem;font-weight:600;color:var(--ink-faint);cursor:pointer}.timer-toggle:hover{color:var(--brand);text-decoration:underline}.exam-progress{height:3px;margin:0 var(--space-4);border-radius:var(--r-full);background:var(--line);overflow:hidden}.exam-progress>div{height:100%;background:var(--brand);transition:width .4s var(--ease)}.exam-body{width:100%;max-width:var(--reading-max);margin:0 auto;padding:var(--space-6) 0 var(--space-6)}.question-card{padding:var(--space-6);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-sm)}.question-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);flex-wrap:wrap;padding-bottom:var(--space-4);margin-bottom:var(--space-5);border-bottom:1px solid var(--line)}.question-position{display:inline-flex;align-items:center;gap:var(--space-2);font-size:.875rem;font-weight:650;color:var(--ink-strong)}.question-position .badge{font-weight:600}.question-code{font-size:.75rem;font-weight:500;color:var(--ink-muted);font-variant-numeric:tabular-nums;letter-spacing:.02em;white-space:nowrap}.question-tools{display:flex;align-items:center;gap:var(--space-2)}.tool-toggle{display:inline-flex;align-items:center;gap:.4rem;padding:.35rem .7rem;border:1px solid var(--line);border-radius:var(--r-full);background:var(--surface);font:inherit;font-size:.8125rem;font-weight:600;color:var(--ink-muted);cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}@media(hover:hover){.tool-toggle:hover:not(:disabled){background:var(--surface-sunken);color:var(--ink)}}.tool-toggle[aria-pressed=true]{background:var(--brand-soft);border-color:var(--brand);color:var(--brand-hover)}.tool-toggle.tool-marked[aria-pressed=true]{background:var(--warn-soft);border-color:var(--warn);color:var(--warn)}.tool-toggle:disabled{opacity:.5;cursor:not-allowed}.question-verdict{display:inline-flex;align-items:center;gap:.35rem;padding:.35rem .75rem;border-radius:var(--r-full);font-size:.8125rem;font-weight:650;white-space:nowrap}.question-verdict-right{background:var(--good-soft);color:var(--good)}.question-verdict-wrong{background:var(--bad-soft);color:var(--bad)}.question-stem{font-size:1.125rem;line-height:1.6;color:var(--ink-strong);margin-bottom:var(--space-5)}.option-list{display:flex;flex-direction:column;gap:var(--space-2);border-radius:var(--r-md)}.option-list:focus{outline:none}.option-list:focus-visible{outline:2px solid var(--brand);outline-offset:4px}.option-row{display:flex;align-items:stretch;gap:var(--space-2)}.option{display:flex;align-items:flex-start;gap:var(--space-3);flex:1;min-width:0;padding:var(--space-3) var(--space-4);border:1.5px solid var(--line);border-radius:var(--r-md);background:var(--surface);font:inherit;font-size:1rem;text-align:left;color:var(--ink);cursor:pointer;transition:border-color .16s var(--ease),background .16s var(--ease),box-shadow .16s var(--ease)}.option:hover:not(:disabled){border-color:var(--brand);background:var(--brand-tint)}.option:disabled{cursor:default}.option-label{flex:0 0 auto;display:inline-grid;place-items:center;width:1.75rem;height:1.75rem;border-radius:50%;background:var(--surface-sunken);border:1px solid var(--line);font-size:.8125rem;font-weight:700;color:var(--ink-muted);transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}.option-content{flex:1;min-width:0;padding-top:.1rem}.option-badge{flex:0 0 auto;align-self:center;font-size:.6875rem;font-weight:700;letter-spacing:.05em;text-transform:uppercase;color:var(--good)}.option-badge-wrong{color:var(--bad)}.option-badge-selected{color:var(--brand)}.option-selected{border-color:var(--brand);background:var(--brand-tint);box-shadow:0 0 0 3px var(--brand-ring)}.option-selected .option-label{background:var(--brand);border-color:var(--brand);color:#fff}.option-correct{border-color:var(--good);background:var(--good-soft)}.option-correct .option-label{background:var(--good);border-color:var(--good);color:#fff}.option-wrong{border-color:var(--bad);background:var(--bad-soft)}.option-wrong .option-label{background:var(--bad);border-color:var(--bad);color:#fff}.option-muted{opacity:.55}.option-eliminated{opacity:.45}.option-eliminated .option-content{text-decoration:line-through;text-decoration-thickness:1.5px}.option-eliminated .option-label{text-decoration:line-through}.option-strike{flex:0 0 auto;display:grid;place-items:center;width:2.6rem;border:1.5px dashed var(--line-strong);border-radius:var(--r-md);background:var(--surface);font:inherit;font-size:.8125rem;font-weight:700;color:var(--ink-faint);cursor:pointer;transition:background .16s var(--ease),color .16s var(--ease),border-color .16s var(--ease)}@media(hover:hover){.option-strike:hover:not(:disabled){border-color:var(--bad);color:var(--bad);background:var(--bad-soft)}}.option-strike:disabled{opacity:.35;cursor:not-allowed}.option-strike[aria-pressed=true]{border-style:solid;border-color:var(--line-strong);color:var(--ink-muted);background:var(--surface-sunken)}.feedback-explanation{margin-top:var(--space-5);padding:var(--space-4);border-radius:var(--r-md);background:var(--surface-sunken);border:1px solid var(--line)}.feedback-title{display:flex;align-items:center;gap:.45rem;margin-bottom:var(--space-2);font-weight:700;font-size:.9375rem;color:var(--ink)}.feedback .content-blocks{font-size:.9375rem;color:var(--ink)}.feedback-actions{margin-top:var(--space-4)}.exam-foot{position:sticky;bottom:0;z-index:24;display:flex;flex-wrap:wrap;justify-content:space-between;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);margin-top:auto;background:#ffffffeb;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border:1px solid var(--line);border-radius:var(--r-md);box-shadow:var(--shadow-md)}.exam-foot-end{display:flex;flex-wrap:wrap;justify-content:flex-end;min-width:0;align-items:center;gap:var(--space-2)}.qnav{position:relative;justify-self:center}.qnav-trigger{display:inline-flex;align-items:center;gap:.45rem;padding:.45rem .9rem;border:1px solid var(--line-strong);border-radius:var(--r-full);background:var(--surface);font:inherit;font-size:.875rem;font-weight:650;color:var(--ink-strong);white-space:nowrap;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease)}@media(hover:hover){.qnav-trigger:hover{background:var(--surface-sunken);border-color:var(--brand)}}.qnav-pop{position:absolute;bottom:calc(100% + .6rem);left:50%;transform:translate(-50%);width:min(430px,calc(100vw - 2.5rem));padding:var(--space-4);background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-pop);z-index:30}.qnav-pop-below{top:calc(100% + .6rem);bottom:auto;left:auto;right:0;transform:none}.qnav-short{display:none}.qnav-pop-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-3)}.qnav-pop-head h3{font-size:.9375rem}.qnav-pop-tools{display:flex;align-items:center;gap:var(--space-2)}.qnav-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(2.5rem,1fr));gap:var(--space-2);max-height:46vh;overflow-y:auto;padding:.35rem}.qnav-cell{position:relative;aspect-ratio:1;display:grid;place-items:center;border:1.5px dashed var(--line-strong);border-radius:var(--r-sm);background:var(--surface);font:inherit;font-size:.875rem;font-weight:650;font-variant-numeric:tabular-nums;color:var(--ink-muted);cursor:pointer;transition:background .14s var(--ease),border-color .14s var(--ease),color .14s var(--ease)}.qnav-cell:hover{border-color:var(--brand);color:var(--brand)}.qnav-cell-answered{border-style:solid;border-color:var(--brand);background:var(--brand);color:#fff}.qnav-cell-correct{border-style:solid;border-color:var(--good);background:var(--good-soft);color:var(--good)}.qnav-cell-wrong{border-style:solid;border-color:var(--bad);background:var(--bad-soft);color:var(--bad)}.qnav-cell-active{outline:2px solid var(--ink-strong);outline-offset:2px}.qnav-cell-marked:after{content:"";position:absolute;top:-5px;right:-4px;width:.55rem;height:.7rem;background:var(--warn);clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%);border-radius:1px}.qnav-legend{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-4);margin-top:var(--space-4);padding-top:var(--space-3);border-top:1px solid var(--line);font-size:.75rem;color:var(--ink-muted)}.qnav-legend span{display:inline-flex;align-items:center;gap:.4rem}.qnav-key{flex:0 0 auto;width:.85rem;height:.85rem;border-radius:4px;border:1.5px dashed var(--line-strong)}.qnav-key-answered{border:0;background:var(--brand)}.qnav-key-marked{border:0;background:var(--warn);clip-path:polygon(0 0,100% 0,100% 100%,50% 72%,0 100%);border-radius:1px}.result-card{width:100%;max-width:var(--reading-max);margin:var(--space-6) auto 0;padding:var(--space-6);text-align:center;background:var(--surface);border:1px solid var(--line);border-radius:var(--r-lg);box-shadow:var(--shadow-md)}.result-ring{display:flex;justify-content:center;margin:var(--space-4) 0 var(--space-3)}.result-headline{font-size:1.375rem}.result-card>p{color:var(--ink-muted)}.result-tallies{display:flex;justify-content:center;gap:var(--space-3);flex-wrap:wrap;margin:var(--space-4) 0}.result-tally{display:inline-flex;align-items:center;gap:.45rem;padding:.35rem .85rem;border-radius:var(--r-full);background:var(--surface-sunken);font-size:.875rem;font-weight:650;font-variant-numeric:tabular-nums}.result-tally-good{background:var(--good-soft);color:var(--good)}.result-tally-bad{background:var(--bad-soft);color:var(--bad)}.result-card .card-actions{justify-content:center}.breakdown{width:100%;margin:var(--space-5) 0 0;border-collapse:collapse;text-align:left;font-size:.9375rem}.breakdown th{padding:var(--space-2) var(--space-3);border-bottom:1px solid var(--line);font-size:.6875rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.breakdown td{padding:var(--space-3);border-bottom:1px solid var(--line)}.breakdown tr:last-child td{border-bottom:0}.breakdown td:not(:first-child),.breakdown th:not(:first-child){text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.breakdown-bar{display:inline-block;width:3.5rem;height:.4rem;border-radius:var(--r-full);background:var(--surface-sunken);overflow:hidden;vertical-align:middle;margin-right:var(--space-2)}.breakdown-bar>span{display:block;height:100%;border-radius:var(--r-full);background:var(--brand)}.tutor{margin-top:var(--space-5);padding:var(--space-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--brand-tint)}.tutor-title{display:flex;align-items:center;gap:.4rem;margin:0;font-size:.9375rem;font-weight:700;color:var(--ink-strong)}.tutor-title svg{flex:0 0 auto;color:var(--brand)}.tutor-head{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2) var(--space-3)}.tutor-heading{display:flex;align-items:center}.tutor-head>.tutor-actions{margin-top:0;margin-left:auto}@media(max-width:640px){.tutor-head>.tutor-actions{flex-basis:100%;margin-left:0}}@media(pointer:coarse){.tutor-actions>.button-small{min-height:2.75rem}}.tutor-actions{display:flex;flex-wrap:wrap;gap:var(--space-2);margin-top:var(--space-3)}.tutor-actions:empty{display:none}.tutor-hint-action{border-color:var(--brand)}.tutor-hints{list-style:none;margin:var(--space-4) 0 0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.tutor-hints>li{position:relative;padding-left:var(--space-4);border-left:2px solid var(--brand-soft)}.tutor-hints li.tutor-hint-solution{border-left-color:var(--good)}.tutor-hints li p{margin:0;font-size:.9375rem;white-space:pre-line;overflow-wrap:anywhere}.tutor-hint-label{display:block;margin-bottom:.15rem;font-size:.75rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--ink-faint)}.tutor-limit{display:flex;align-items:flex-start;gap:var(--space-2);margin:var(--space-3) 0 0;padding:.6rem .85rem;border-radius:var(--r-sm);background:var(--warn-soft);color:var(--ink);font-size:.875rem}.tutor-limit>svg{flex:0 0 auto;margin-top:.1rem;color:var(--warn)}.tutor-chat{margin-top:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line)}.tutor-chat-log{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:var(--space-3)}.tutor-chat-log:not(:empty){margin-bottom:var(--space-4)}.tutor-chat-message{padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface)}.tutor-chat-student{margin-left:var(--space-5);border-color:var(--brand-soft);background:var(--brand-soft)}.tutor-chat-tutor{margin-right:var(--space-5)}.tutor-chat-declined{border-style:dashed;border-color:var(--line-strong);color:var(--ink-muted)}.tutor-chat-message p{margin:0;font-size:.9375rem;white-space:pre-wrap;overflow-wrap:anywhere}.tutor-chat-message p.tutor-chat-closing{margin-top:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--line);font-weight:600}.tutor-chat-label{display:block;margin-bottom:var(--space-1);font-size:.8125rem;font-weight:600;color:var(--ink-muted)}.tutor-chat-context{font-weight:400}.tutor-chat-field{display:block;width:100%;padding:.6rem .75rem;border:1px solid var(--line-strong);border-radius:var(--r-sm);background:var(--surface);color:var(--ink);font:inherit;font-size:1rem;line-height:1.45;resize:vertical}.tutor-chat-field:disabled{background:var(--surface-sunken);color:var(--ink-faint);cursor:not-allowed}.tutor-chat-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-2) var(--space-3);margin-top:var(--space-2)}.tutor-chat-count{font-size:.8125rem;font-variant-numeric:tabular-nums;color:var(--ink-muted)}.tutor-chat-count-over{font-weight:700;color:var(--bad)}.tutor-chat-rules{margin-top:var(--space-2)}.tutor-chat-rules p,.tutor-chat-note{margin:0;font-size:.8125rem;color:var(--ink-muted)}.tutor-chat-rules p+p{margin-top:var(--space-1)}.tutor-hints li.tutor-hint-current{border-left-color:var(--brand)}.tutor-hints li.tutor-hint-current.tutor-hint-solution{border-left-color:var(--good)}.tutor-progress{margin-top:var(--space-2)}.tutor-reveal-action{border:1px dashed var(--line-strong)}.thinking{display:inline-flex;align-items:center;gap:.35em}.thinking-dots{display:inline-flex;align-items:center;gap:.2em}.thinking-dots i{width:.32em;height:.32em;border-radius:50%;background:currentColor;opacity:.45;animation:thinking-dot 1.2s var(--ease) infinite}.thinking-dots i:nth-child(2){animation-delay:.16s}.thinking-dots i:nth-child(3){animation-delay:.32s}@keyframes thinking-dot{0%,60%,to{transform:translateY(0);opacity:.45}30%{transform:translateY(-.3em);opacity:1}}@media(prefers-reduced-motion:reduce){.thinking-dots i{animation:none;opacity:.7}}@media(forced-colors:active){.thinking-dots i{forced-color-adjust:none;background:CanvasText}}.tutor-current-text:focus{outline:none}.tutor-current-text:focus-visible{outline:2px solid var(--brand-soft);outline-offset:4px;border-radius:var(--r-sm)}.tutor-steps-all{margin:0;padding-left:1.25rem;font-size:.9375rem;overflow-wrap:anywhere;text-align:start}.tutor-steps-all li+li{margin-top:var(--space-2)}.content-blocks>:last-child{margin-bottom:0}.content-text{white-space:pre-wrap}.content-image{margin:var(--space-4) 0 0}.content-image img{display:block;max-width:100%;max-height:260px;border-radius:var(--r-sm)}.content-image-zoom{position:relative;display:block;width:100%;padding:var(--space-3);border:1px solid var(--line);border-radius:var(--r-md);background:#fff;cursor:zoom-in;transition:border-color .16s var(--ease),box-shadow .16s var(--ease)}.content-image-zoom:hover{border-color:var(--brand);box-shadow:var(--shadow-md)}.content-image-zoom img{margin:0 auto;max-height:min(400px,44vh)}.content-image-hint{position:absolute;right:var(--space-3);bottom:var(--space-3);display:inline-flex;align-items:center;gap:.3rem;padding:.22rem .55rem;border-radius:var(--r-full);background:#0f16309e;color:#fff;font-size:.6875rem;font-weight:600;transition:background .16s var(--ease)}.content-image-zoom:hover .content-image-hint,.content-image-zoom:focus-visible .content-image-hint{background:#0f1630e0}.modal{position:fixed;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;display:grid;place-items:center;padding:var(--space-5);border:0;background:transparent;overflow:hidden;animation:fade-in .16s var(--ease)}.modal:not([open]){display:none}.modal::backdrop{background:#0f16309e}html:has(dialog.modal[open]){overflow:hidden}.modal-card{width:min(460px,100%);padding:var(--space-5);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-pop);text-align:left}.modal-card h3{margin-bottom:var(--space-2)}.modal-card p{color:var(--ink-muted)}.lightbox{cursor:zoom-out}.lightbox::backdrop{background:#0f1630d1}@keyframes fade-in{0%{opacity:0}}.lightbox img{max-width:min(1100px,100%);max-height:88vh;border-radius:var(--r-md);background:#fff;padding:var(--space-4);cursor:default}.lightbox-close{position:absolute;top:var(--space-4);right:var(--space-4);display:grid;place-items:center;width:2.5rem;height:2.5rem;border:0;border-radius:50%;background:#ffffff29;color:#fff;cursor:pointer}.lightbox-close:hover{background:#ffffff47}.lightbox-close:focus-visible{outline:2px solid #fff;outline-offset:3px}@media(max-width:1200px){.exam-answered{display:none}}@media(max-width:960px){.app{grid-template-columns:minmax(0,1fr)}.sidebar{position:fixed;top:0;left:0;width:min(18.75rem,86vw);height:100dvh;transform:translate(-102%);visibility:hidden;transition:transform .24s var(--ease),visibility 0s linear .24s;box-shadow:var(--shadow-lg)}.sidebar[data-open=true]{transform:translate(0);visibility:visible;transition:transform .24s var(--ease),visibility 0s}html:has(.sidebar[data-open=true]){overflow:hidden}#main-content{scroll-margin-top:var(--topbar-height)}.guide-section,.guide-section h2{scroll-margin-top:calc(var(--topbar-height) + var(--space-4))}.sidebar-scrim{display:block;position:fixed;inset:0;z-index:35;background:#0f16306b;border:0;cursor:pointer}.topbar{position:sticky;top:0;z-index:30;display:flex;align-items:center;gap:var(--space-3);height:var(--topbar-height);padding:0 var(--space-4);background:#ffffffe0;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--line)}.topbar .icon-button{width:2.75rem;height:2.75rem}.topbar .brand{min-width:0;padding:0}.topbar .brand-text{min-width:0}.topbar .brand-mark-logo{padding:.15rem .35rem}.topbar .brand-mark-logo img{height:2.75rem}.topbar .brand-text strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.topbar .brand-text small{overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.sidebar .sidebar-close{display:inline-grid;width:var(--control-height);height:var(--control-height)}.content{padding:var(--space-5) var(--space-4) var(--space-8)}.app:has(.exam,.session-loading) .topbar{display:none}.exam{min-height:calc(100dvh - var(--space-5) - var(--space-8))}.auth-layout{grid-template-columns:minmax(0,1fr);min-height:100dvh}.auth-aside{display:none}.auth-panel-brand{display:flex}.auth-panel-welcome,.auth-panel-note{display:block}.auth-welcome-points{display:flex}}@media(max-width:720px),(max-width:960px)and (max-height:500px){.hero{padding:var(--space-4);border-radius:var(--r-lg)}.hero-top{display:grid;grid-template-columns:auto minmax(0,1fr);grid-template-areas:"ring title" "ring count" "guide guide";align-items:center;gap:0}.hero-copy{display:contents}.hero-copy h1{grid-area:title;align-self:end;font-size:1.25rem;margin-bottom:0}.hero-copy p{display:none}.hero-ring{display:contents}.hero .ring{grid-area:ring;margin-right:var(--space-3);--ring-size: 64px !important;--ring-font: .9375rem !important}.hero-ring-caption{grid-area:count;align-self:start;margin-top:.15rem}.hero-ring-caption strong{font-size:.9375rem}.hero-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-2);margin-top:var(--space-3)}.hero-stat{padding:var(--space-2) var(--space-3)}.hero-stat-value{font-size:1.125rem}.hero-stat-label{margin-top:0;font-size:.75rem}.hero-stat-note{margin-top:.1rem;font-size:.75rem}.hero-ring-caption strong{max-width:none}}@media(max-width:720px){.subject-card{padding:1rem}}@media(max-width:720px){h1{font-size:1.5rem}.button{white-space:normal;text-align:center}.resume{padding:var(--space-4)}.resume-action{flex:1 1 100%}.question-card{padding:var(--space-4)}.result-card{padding:var(--space-5) var(--space-4)}.breakdown-bar{display:none}.breakdown th,.breakdown td{padding-inline:var(--space-2)}.exam{min-height:calc(100dvh - var(--space-3))}.app:has(.exam) .content{padding-top:var(--space-3);padding-bottom:0}.exam-bar{display:flex;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3)}.exam-bar:has(.exam-exit){justify-content:space-between}.exam-bar:has(.exam-exit) .exam-bar-left{display:none}.exam-title .eyebrow,.exam-back-duplicate{display:none}.exam-bar-left{flex:1 1 auto;gap:var(--space-2)}.exam-title strong{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;line-clamp:2;font-size:.875rem;white-space:normal}.exam-bar-center{flex:0 0 auto;flex-direction:row;align-items:center;gap:0}.exam-bar-right{flex:0 0 auto;gap:var(--space-2)}.timer{gap:.25rem;padding:.15rem .55rem;border-width:1px;font-size:1rem}.timer-hidden{padding:.3rem .5rem;font-size:.8125rem}.timer-finished,.timer-hidden-text,.timer-toggle-text,.timer-toggle-locked,.exam-exit-text{display:none}.timer-toggle{padding:.35rem}.exam-exit{padding:.4rem .5rem}.qnav-trigger{gap:.3rem;padding:.3rem .55rem;font-size:.8125rem}.qnav-long{display:none}.qnav-short{display:inline}.exam-bar .qnav{position:static}.exam-bar .qnav-pop-below{left:0;right:0;width:auto;top:calc(100% + .4rem)}.qnav-pop-head{display:grid;grid-template-columns:minmax(0,1fr) auto;row-gap:var(--space-2)}.qnav-pop-tools{display:contents}.qnav-pop-tools>.icon-button{grid-row:1;grid-column:2}.qnav-pop-tools>.tool-toggle{grid-column:1 / -1;justify-self:start}.exam-progress{margin:0 var(--space-3)}.exam-body{padding:var(--space-3) 0 var(--space-3)}.question-head{float:right;padding:0;margin:0 0 var(--space-2) var(--space-3);border:0;flex-direction:column;align-items:flex-end;gap:var(--space-1)}.question-code{order:1;font-size:.6875rem}.option-list{clear:right}.question-position,.tool-label{display:none}.tool-toggle{padding:.35rem .5rem}.option-row-striking{position:relative}.option-row-striking .option{padding-right:3.1rem}.option-row-striking .option-strike{position:absolute;top:50%;right:.4rem;z-index:1;width:2.5rem;height:2.5rem;transform:translateY(-50%);border:0;border-radius:var(--r-sm);background:transparent}.option-badge-selected{display:none}.exam-foot{gap:var(--space-2);padding:var(--space-2) var(--space-3) calc(var(--space-2) + env(safe-area-inset-bottom))}.exam-foot .button{padding:.55rem .8rem}.exam-foot .button span{display:none}.search-results-compact{max-height:none;overflow-y:visible}}@media(max-width:1200px){.data-table,.data-table tbody,.data-table tr,.data-table td,.data-table tbody th{display:block;width:100%}.data-table thead{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.data-table tr{padding:var(--space-4);border-bottom:1px solid var(--line)}.data-table tbody tr:last-child{border-bottom:0}.data-table td,.data-table tbody th{padding:0;border:0}.data-table td+td,.data-table td+th,.data-table th+td{margin-top:var(--space-2)}.data-table td[data-label]{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:.35rem}.data-table td[data-label]:before{content:attr(data-label) " · ";content:attr(data-label) " · " / "";font-size:.8125rem;font-weight:600;color:var(--ink-muted)}.data-table .cell-right{text-align:left}.data-table .cell-score{white-space:normal}}@media(min-width:721px)and (max-width:1200px){.data-table tbody tr{display:grid;grid-template-columns:minmax(0,1fr) auto;column-gap:var(--space-4)}.data-table tbody tr>*{grid-column:1}.data-table tbody tr>.cell-right{grid-column:2;grid-row:1 / span 4;align-self:center;width:auto;margin-top:0}}@media(max-width:720px){.data-table .row-actions{display:flex;flex-wrap:wrap;justify-content:flex-start}.table-note{margin-top:calc(-1 * var(--space-2))}}@media(max-height:500px){.exam-foot{position:static}.qnav-grid{max-height:30vh}.qnav-legend{display:none}}@media(pointer:coarse){.field input,.field select,.search-field input{font-size:1rem}.button-small,.link-button,.tool-toggle,.timer-toggle,.qnav-trigger{min-height:2.5rem}.tool-toggle,.timer-toggle,.exam-exit{flex-shrink:0;min-width:2.5rem;justify-content:center}.exam-foot .button{min-width:3.5rem;min-height:2.75rem}.sidenav,.qnav-grid,.search-results-compact{overscroll-behavior:contain}}a.user-chip{border-radius:var(--r-md);color:inherit;text-decoration:none;transition:background .16s var(--ease)}a.user-chip:hover,a.user-chip.active{background:var(--surface-sunken)}a.user-chip:focus-visible{outline:2px solid var(--brand);outline-offset:2px}.profile{max-width:52rem}.profile-card h2{margin:0 0 var(--space-3);font-size:1.125rem}.profile-card h3{margin:0 0 var(--space-3);font-size:1rem}.profile-label{margin:0;font-size:.875rem;font-weight:600;color:var(--ink-muted)}.profile-hint{margin:0 0 var(--space-4);font-size:.875rem;color:var(--ink-muted)}.profile-data-actions{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3);margin:0 0 var(--space-4)}.profile-erase>summary{cursor:pointer;font-weight:600}.profile-erase>summary:focus-visible{outline:2px solid var(--brand);outline-offset:2px;border-radius:var(--r-xs)}.profile-erase .profile-form{margin-top:var(--space-3)}.button-danger{color:var(--danger, #a71f2e);border-color:currentColor}.button-danger:hover:not(:disabled){border-color:currentColor;background:color-mix(in srgb,var(--danger, #a71f2e) 10%,transparent)}.profile-best{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-1) var(--space-3);margin:0}.profile-best strong{font-size:1.25rem;font-weight:700;font-variant-numeric:tabular-nums;color:var(--ink-strong)}.profile-best-note{color:var(--ink)}.profile-figures{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(12rem,100%),1fr));gap:var(--space-4);margin:var(--space-4) 0 var(--space-3)}.profile-figures dt,.profile-login dt{font-size:.875rem;font-weight:600;color:var(--ink-muted)}.profile-figures dd{margin:var(--space-1) 0 0;font-size:1.25rem;font-weight:700;line-height:1.2;font-variant-numeric:tabular-nums;color:var(--ink-strong)}.profile-figures dd small{font-size:.875rem;font-weight:500;color:var(--ink-muted)}.profile-card .profile-hint:last-child{margin-bottom:0}.profile-fields{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:0 var(--space-4)}.profile-actions{display:flex;align-items:center;gap:var(--space-3);flex-wrap:wrap}.profile-form .form-error{margin-bottom:var(--space-4)}.profile-saved,.profile-download-status{display:inline-flex;align-items:center;gap:.35rem;font-size:.9375rem;font-weight:600;color:var(--good)}.profile-saved:empty,.profile-download-status:empty{margin-left:calc(-1 * var(--space-3))}.profile-idle{font-size:.875rem;color:var(--ink-muted)}.profile-heading{display:flex;align-items:center;gap:var(--space-1);margin:0 0 var(--space-3)}.profile-heading h2{margin:0}.profile-login{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(14rem,100%),1fr));gap:var(--space-3) var(--space-4);margin:0 0 var(--space-3)}.profile-login dd{margin:var(--space-1) 0 0;color:var(--ink);overflow-wrap:anywhere}.profile-form{max-width:36rem;margin-top:var(--space-4)}.profile-card>h2+.profile-form{margin-top:0}.profile-form+.profile-hint{margin:var(--space-4) 0 0}.hero-help{display:flex;flex-direction:column;align-items:flex-start;gap:.375rem;margin-top:var(--space-3)}.hero-help-button{display:inline-flex;align-items:center;gap:.5rem;min-height:2.75rem;padding:0 1rem;border:1px solid rgba(255,255,255,.55);border-radius:10px;background:#ffffff14;color:#fff;font:inherit;font-size:.9375rem;font-weight:600;line-height:1.25;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease)}.hero-help-button:hover:not(:disabled){background:#ffffff29;border-color:#fff}.hero-help-button:disabled{opacity:.6;cursor:default}.hero-help-button:focus-visible,.hero-invite-start:focus-visible,.hero-invite-decline:focus-visible{outline:3px solid #fff;outline-offset:3px}.hero-help-note{display:block;font-size:.875rem;color:var(--on-brand-soft)}.hero-invite{margin-top:var(--space-3)}.hero-invite-text{margin:0 0 var(--space-2);max-width:46ch;color:#fff;font-size:.9375rem;font-weight:600}.hero-invite-actions{display:flex;flex-wrap:wrap;gap:var(--space-2)}.hero-invite-start,.hero-invite-decline{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;min-height:2.75rem;padding:0 1rem;border:1px solid transparent;border-radius:10px;font:inherit;font-size:.9375rem;font-weight:600;line-height:1.25;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease)}.hero-invite-start{background:#fff;color:var(--brand-deep);box-shadow:0 1px 2px #0f163029,0 6px 16px -8px #0f163073}.hero-invite-start:hover:not(:disabled){background:var(--brand-soft)}.hero-invite-decline{background:transparent;border-color:#ffffff59;color:#fff}.hero-invite-decline:hover{background:#ffffff1f;border-color:#fff}.pillar:focus{outline:none}.pillar:focus-visible{outline:2px solid var(--brand);outline-offset:6px;border-radius:var(--r-md)}@media(max-width:720px),(max-width:960px)and (max-height:500px){.hero-help,.hero-invite{grid-area:guide;align-items:stretch;margin-top:var(--space-3)}.hero-help-button{justify-content:center;width:100%}.hero-help-note{text-align:center}.hero-invite-text{max-width:none}.hero-invite-actions>*{flex:1 1 10rem}.hero-ring-caption{flex-direction:column;align-items:flex-start;gap:0}.hero-ring-label{display:block}}.label-tip{white-space:nowrap}.info-tip{display:inline-flex;vertical-align:-.2em;margin-left:.3rem;white-space:normal}.info-tip-button{position:relative;display:inline-grid;place-items:center;width:1.375rem;height:1.375rem;padding:0;border:0;border-radius:50%;background:none;color:var(--brand);cursor:pointer}.info-tip-button:before{content:"";position:absolute;inset:calc((1.375rem - 44px)/2)}.info-tip-button:hover,.info-tip-button[aria-expanded=true]{background:var(--brand-soft)}.info-tip-on-brand .info-tip-button{color:#fff}.info-tip-on-brand .info-tip-button:hover,.info-tip-on-brand .info-tip-button[aria-expanded=true]{background:#fff3}.info-tip-on-brand .info-tip-button:focus-visible{outline-color:#fff}.info-tip-panel{position:fixed;z-index:60;display:block;width:min(24rem,calc(100vw - 2rem));padding:var(--space-3) var(--space-4);border:1px solid var(--line);border-radius:var(--r-md);background:var(--surface);box-shadow:var(--shadow-pop);color:var(--ink-muted);font-size:.875rem;font-weight:400;line-height:1.5;letter-spacing:normal;text-align:left;white-space:normal;animation:fade-in .14s var(--ease)}.info-tip-panel strong{color:var(--ink-strong);font-weight:650}.info-tip-panel a{font-weight:600}.info-tip-panel ul,.info-tip-panel dl{display:grid;gap:var(--space-2);margin:var(--space-2) 0 0;padding:0;list-style:none;overflow-wrap:anywhere}.info-tip-panel>:first-child{margin-top:0}.info-tip-panel li{position:relative;padding-left:.9rem}.info-tip-panel li:before{content:"";position:absolute;top:.6em;left:0;width:.3rem;height:.3rem;border-radius:50%;background:var(--brand)}.info-tip-panel dl>div{display:grid;gap:.125rem}.info-tip-panel dt{font-weight:650;color:var(--ink-strong)}.info-tip-panel dd{margin:0}.info-tip-panel>a{display:inline-flex;align-items:center;min-height:2.75rem}.tour{position:fixed;inset:0;width:100%;max-width:100%;height:100%;max-height:100%;margin:0;padding:0;border:0;background:transparent;overflow:hidden}.tour:not([open]){display:none}.tour::backdrop{background:transparent}.tour-dim{position:fixed;inset:0;background:#0f16309e}.tour-spot{position:fixed;border-radius:calc(var(--r-lg) + 4px);box-shadow:0 0 0 2px #fff,0 0 0 200vmax #0f16309e;pointer-events:none;transition:top .28s var(--ease),left .28s var(--ease),width .28s var(--ease),height .28s var(--ease)}.tour-panel{position:fixed;width:min(24rem,calc(100vw - 2rem));padding:var(--space-5);border-radius:var(--r-lg);background:var(--surface);box-shadow:var(--shadow-pop);color:var(--ink);transition:top .28s var(--ease),left .28s var(--ease)}.tour-arrow{position:absolute;width:14px;height:14px;background:var(--surface);transform:rotate(45deg)}.tour-arrow-right{left:-7px;margin-top:-7px}.tour-arrow-left{right:-7px;margin-top:-7px}.tour-arrow-below{top:-7px;margin-left:-7px}.tour-arrow-above{bottom:-7px;margin-left:-7px}.tour-count{margin:0 0 var(--space-1);font-size:.8125rem;font-weight:600;color:var(--brand)}.tour-title{margin:0 2.5rem var(--space-2) 0;font-size:1.25rem}.tour-body{margin:0;color:var(--ink-muted);font-size:1rem;line-height:1.5}.tour-example{margin-top:var(--space-3);padding:var(--space-2) var(--space-3);border-radius:var(--r-sm);background:var(--brand-tint);color:var(--ink);font-size:.9375rem;line-height:1.45}.tour-example p{margin:0}.tour-example p+p{margin-top:.125rem}.tour-example .tour-example-label{margin-bottom:.125rem;font-size:.75rem;font-weight:650;color:var(--brand)}.tour-close{position:absolute;top:var(--space-3);right:var(--space-3);width:2.75rem;height:2.75rem}.tour-actions{display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:var(--space-3);margin-top:var(--space-5)}.tour-nav{display:flex;gap:var(--space-2);margin-left:auto}.tour-panel-sheet{top:auto!important;left:0!important;right:0;bottom:0;width:100%;display:flex;flex-direction:column;overflow:hidden;padding:var(--space-5) var(--space-4) calc(var(--space-4) + env(safe-area-inset-bottom));border-radius:var(--r-lg) var(--r-lg) 0 0;transition:none}.tour-panel-sheet .tour-actions{flex:none;margin-top:var(--space-4)}.tour-panel-sheet .tour-content{flex:1 1 auto;min-height:0;overflow-y:auto;background:linear-gradient(#fff0,#fff 70%) bottom / 100% 1.5rem no-repeat local,radial-gradient(farthest-side at 50% 100%,rgba(15,22,48,.22),transparent) bottom / 100% .625rem no-repeat scroll}@media(max-height:560px){.tour-panel-sheet{padding:var(--space-3) var(--space-4) calc(var(--space-3) + env(safe-area-inset-bottom))}.tour-panel-sheet .tour-title{margin-bottom:var(--space-1)}.tour-panel-sheet .tour-actions{margin-top:var(--space-2)}.tour-panel-sheet .tour-close{top:var(--space-2);right:var(--space-2)}}@media(max-width:380px){.tour-actions{flex-direction:column-reverse;align-items:stretch}.tour-nav{margin-left:0}.tour-nav .button{flex:1}}.info-tip-button.info-tip-text{display:inline-flex;gap:.375rem;width:auto;height:auto;min-height:2rem;padding:0 .375rem;margin-left:-.375rem;border-radius:var(--r-xs);font:inherit;font-size:.8125rem;font-weight:600}.info-tip-button.info-tip-text:before{inset:-.375rem 0}@media(min-width:721px){.hero{padding:var(--space-5) var(--space-6)}.hero-copy h1{margin-bottom:var(--space-1)}.hero-stats{margin-top:var(--space-4)}.hero-stat{padding:var(--space-2) var(--space-4)}}.subject-foot .subject-action{flex:1 1 100%}@media(pointer:coarse){.icon-button{width:2.75rem;height:2.75rem}.tool-toggle,.qnav-trigger,.tutor-chat-row .button{min-height:2.75rem}.tool-toggle{min-width:2.75rem;justify-content:center}.button-small{min-height:2.75rem}.profile-erase>summary,.terms-gate-rights>summary{padding-block:.6rem}}.exam-foot-start{display:flex;align-items:center;gap:var(--space-2)}.exam-retry{display:none}@media(max-width:720px){.exam-retry{display:inline-flex}}.legal-page{display:flex;flex-direction:column;gap:var(--space-5);width:min(52rem,100%);margin:0 auto;padding:var(--space-6) var(--space-4) var(--space-8)}.legal-head{display:flex;flex-direction:column;gap:var(--space-4)}.legal-head h1{margin:0}.legal-head-note{margin:0;color:var(--ink-muted)}.legal-back{align-self:flex-start}.legal-doc{padding:var(--space-6)}.legal-text{display:flex;flex-direction:column;gap:var(--space-5);max-width:62ch;font-size:1rem;line-height:1.6}.legal-toc{display:flex;flex-direction:column;gap:var(--space-3);margin-bottom:var(--space-5);padding-bottom:var(--space-5);border-bottom:1px solid var(--line)}.legal-toc h2{margin:0;font-size:.8125rem;font-weight:600;letter-spacing:.02em;text-transform:uppercase;color:var(--ink-faint)}.legal-toc ol{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(18rem,100%),1fr));gap:var(--space-1) var(--space-5);margin:0;padding-left:1.5rem;font-size:.9375rem;line-height:1.6}.legal-toc a{color:var(--brand);text-decoration:none}.legal-toc a:hover,.legal-toc a:focus-visible{text-decoration:underline}.legal-return{align-self:flex-start}.legal-lead{margin:0;font-size:1.0625rem;color:var(--ink-strong)}.legal-article{display:flex;flex-direction:column;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--line)}.legal-article h2{display:flex;gap:var(--space-2);margin:0;font-size:1.125rem}.legal-article-number{color:var(--brand)}.legal-article p,.legal-article ul{margin:0}.legal-article ul{display:flex;flex-direction:column;gap:var(--space-2);padding-left:1.25rem}.terms-summary{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-5)}.terms-summary-head{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}.terms-summary-head h2{margin:0;font-size:1.125rem}.terms-summary-tag{flex:none;padding:.2rem .6rem;border-radius:999px;background:var(--brand-soft, var(--surface-muted));font-size:.75rem;font-weight:600;color:var(--brand)}.terms-summary-list{display:flex;flex-direction:column;gap:var(--space-3);margin:0;padding:0;list-style:none;font-size:1rem;line-height:1.6}.terms-summary-list li{display:flex;gap:var(--space-3)}.terms-summary-icon{flex:none;display:inline-flex;margin-top:.3rem;color:var(--brand)}.terms-summary-list strong{color:var(--ink-strong)}.terms-summary-ref{font-size:.875rem;color:var(--ink-faint);white-space:nowrap}.terms-summary-ref:hover,.terms-summary-ref:focus-visible{color:var(--brand)}.terms-summary-note{margin:0;font-size:.8125rem;color:var(--ink-faint)}.terms-summary-full{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding-top:var(--space-4);border-top:1px solid var(--line);font-size:1.0625rem;font-weight:600;color:var(--brand);text-decoration:none}.terms-summary-full:hover,.terms-summary-full:focus-visible{text-decoration:underline}.terms-gate-actions{display:flex;flex-direction:column;gap:var(--space-4)}.terms-gate-buttons{display:flex;flex-wrap:wrap;gap:var(--space-3)}.terms-gate-actions>.terms-gate-buttons{justify-content:space-between}.checkbox-field{display:flex;align-items:flex-start;gap:var(--space-3);cursor:pointer;font-size:.9375rem;line-height:1.5}.checkbox-field input{flex:none;width:1.125rem;height:1.125rem;margin:.2rem 0 0;accent-color:var(--brand);cursor:pointer}.checkbox-field a{font-weight:600;color:var(--brand)}.auth-card .checkbox-field{margin-top:var(--space-2)}.auth-legal-link{color:inherit;text-decoration:underline}.sidebar-legal{display:block;margin-top:var(--space-3);font-size:.8125rem;color:var(--ink-faint);text-decoration:underline}.sidebar-legal:hover{color:var(--ink)}@media(max-width:640px){.legal-doc{padding:var(--space-4)}.terms-gate-buttons .button{width:100%}.terms-gate-actions>.terms-gate-buttons{flex-direction:column-reverse}}.terms-gate-rights{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line)}.terms-gate-rights>summary{cursor:pointer;font-size:.9375rem;color:var(--ink-faint)}.terms-gate-rights>summary:hover{color:var(--ink)}.terms-gate-erase{display:flex;flex-direction:column;gap:var(--space-4);padding-top:var(--space-4);border-top:1px solid var(--line)}.report-reasons{display:flex;flex-direction:column;gap:var(--space-2);margin:var(--space-3) 0 0;padding:0;border:0}.report-reason{display:flex;align-items:center;gap:.6rem;padding:.55rem .75rem;border:1px solid var(--line);border-radius:var(--r-sm);font-size:.9375rem;cursor:pointer}.report-reason:has(input:checked){border-color:var(--brand);background:var(--brand-soft)}.report-reason input{margin:0;accent-color:var(--brand)}.report-comment-label{display:block;margin-top:var(--space-3);font-size:.875rem;font-weight:600;color:var(--ink-muted)}.report-comment{display:block;width:100%;margin-top:.35rem;padding:.55rem .7rem;border:1px solid var(--line);border-radius:var(--r-sm);background:var(--surface);font:inherit;font-size:.9375rem;color:var(--ink);resize:vertical}.report-comment:focus{border-color:var(--brand);outline:2px solid var(--brand);outline-offset:1px}.report-card .card-actions{margin-top:var(--space-4)}.hint-feedback{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);margin:var(--space-3) 0 0;padding:.6rem .85rem;border-radius:var(--r-sm);background:var(--surface-sunken);font-size:.875rem}.hint-feedback-question{font-weight:600;color:var(--ink)}.hint-feedback-choices{display:flex;gap:var(--space-2)}.hint-feedback-form{flex-basis:100%;display:flex;flex-direction:column;align-items:flex-start;gap:var(--space-2)}.hint-feedback-form .report-comment-label{margin-top:0}.hint-feedback-thanks{color:var(--good);font-weight:600}
