:root{--bg:var(--l-canvas);--bg-card:var(--l-surface);--ink:var(--l-ink);--ink-soft:var(--l-ink-2);--line:var(--l-line);--clay:var(--l-accent);--clay-dark:var(--l-accent-strong);--gold:var(--l-focus);--green:var(--l-secure);--shadow:none;--surface-raised:#ffffff;--surface-key:#ffebe3;--surface-correction:#f7ecd0;--line-correction:#e6d4a4;--ink-correction:#7a5a10;--surface-finished:#e4efe1;--line-finished:#cadfc4;--surface-dev:#efe7fb;--ink-dev:#3f2c66;color-scheme:light}*{box-sizing:border-box}button,input,select,textarea{font-family:inherit}body,html{margin:0;padding:0}body{background:var(--bg);color:var(--ink);font-family:var(--font-sans),ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;font-size:18px;line-height:1.5;-webkit-font-smoothing:antialiased}a{color:var(--l-ink);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:3px}a:hover{color:var(--l-pen)}.container{max-width:1040px;margin:0 auto;padding:0 20px}.site-header{border-bottom:1px solid var(--line);background:var(--bg)}.site-header .container{display:flex;align-items:center;justify-content:space-between;padding-top:18px;padding-bottom:18px}.brand{display:flex;flex-direction:column;justify-content:center;min-height:44px;line-height:1.2}.brand .name{font-size:1.25rem;font-weight:800;letter-spacing:.3px;color:var(--ink)}.brand .tagline{font-size:.78rem;color:var(--ink-soft)}.nav{display:flex;flex-wrap:wrap;align-items:center;justify-content:flex-end;gap:6px 18px}.nav a{color:var(--ink-soft);font-size:.9rem;white-space:nowrap}.nav a:hover{color:var(--clay)}.nav-toggle{display:none;flex-direction:column;justify-content:center;gap:4px;width:44px;height:44px;padding:0;background:none;border:1px solid var(--line);border-radius:10px;cursor:pointer}.nav-toggle span{display:block;width:18px;height:2px;margin:0 auto;background:var(--ink);border-radius:2px;transition:transform .2s,opacity .2s}.nav-toggle.open span:first-child{transform:translateY(6px) rotate(45deg)}.nav-toggle.open span:nth-child(2){opacity:0}.nav-toggle.open span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}@media (max-width:820px){.site-header .container{flex-wrap:wrap;padding-top:14px;padding-bottom:14px}.nav-toggle{display:flex}.nav{display:none;flex-direction:column;align-items:stretch;justify-content:flex-start;gap:0;width:100%;margin-top:12px}.nav.open{display:flex}.nav a{padding:12px 4px;border-top:1px solid var(--line);font-size:.95rem}}.hero{padding:56px 0 28px;text-align:center}.hero h1{font-size:clamp(2rem,5vw,3rem);margin:0 0 10px;color:var(--ink)}.hero .accent{color:var(--clay)}.hero p{max-width:640px;margin:0 auto;color:var(--ink-soft);font-size:1.05rem}.section-title{font-size:1.4rem;margin:40px 0 6px}.section-sub{color:var(--ink-soft);margin:0 0 20px;font-size:.95rem}.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));grid-gap:16px;gap:16px;padding-bottom:48px}.card{display:block;background:var(--bg-card);border:1px solid var(--line);border-radius:14px;padding:20px;box-shadow:var(--shadow);transition:transform .12s ease,box-shadow .12s ease}.card:hover{transform:translateY(-2px);text-decoration:none;box-shadow:0 2px 4px rgba(43,33,24,.08),0 14px 32px rgba(43,33,24,.1)}.card .emoji{font-size:1.6rem}.card h3{margin:10px 0 2px;color:var(--ink);font-size:1.1rem}.card .local{color:var(--clay);font-size:.82rem;font-style:italic}.card p{color:var(--ink-soft);font-size:.9rem;margin:10px 0 0}.card .count{display:inline-block;margin-top:14px;background:var(--l-surface-sunk);border-radius:999px;padding:3px 10px}.card .count,.crumbs{font-size:.85rem;color:var(--ink-soft)}.crumbs{padding:24px 0 0}.crumbs a{color:var(--ink-soft);display:inline-block;line-height:20px;padding:12px 6px;margin:-12px -6px}.rows{padding:16px 0 48px;display:flex;flex-direction:column;gap:12px}.row{display:block;background:var(--bg-card);border:1px solid var(--line);border-radius:12px;padding:16px 18px;box-shadow:var(--shadow)}.row--video{display:flex;gap:16px;align-items:flex-start}.row-thumb{position:relative;flex:0 0 auto;width:168px;aspect-ratio:16/9;border-radius:9px;overflow:hidden;background:var(--l-accent-wash);padding:0;border:0;cursor:pointer;font:inherit;display:block}.row-thumb img{width:100%;height:100%;object-fit:cover;display:block}.row-thumb iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.row-body{flex:1 1 auto;min-width:0;color:inherit;text-decoration:none;display:block}.row-body:hover h3{color:var(--clay)}@media (max-width:560px){.row--video{flex-direction:column}.row-thumb{width:100%}}.yt-play{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:999px;background:rgba(180,30,20,.92);color:#fff;font-size:1rem;padding-left:3px;box-shadow:0 2px 8px rgba(0,0,0,.35)}.row-thumb .yt-play{width:34px;height:34px;font-size:.8rem}.yt-thumb{position:relative;max-width:560px;aspect-ratio:16/9;margin:4px 0 20px;border-radius:14px;overflow:hidden;box-shadow:var(--shadow)}.yt-thumb,.yt-thumb img{display:block;width:100%}.yt-thumb img{height:100%;object-fit:cover}.yt-thumb:hover .yt-play{background:rgba(180,30,20,1)}.results-input{margin:8px 0 16px}.upload-box{display:flex;flex-direction:column;gap:2px;align-items:center;text-align:center;border:1px dashed var(--line);border-radius:14px;padding:18px;cursor:pointer;background:var(--bg-card)}.upload-box:hover{border-color:var(--gold)}.upload-box span{font-weight:600;color:var(--ink)}.upload-box small{color:var(--ink-soft)}.marks-table{display:flex;flex-direction:column;gap:8px;margin:14px 0}.marks-row{display:flex;gap:8px;align-items:center}.marks-row select{flex:1 1 auto;min-width:0;background:var(--bg-card);color:var(--ink)}.marks-row input,.marks-row select{padding:9px 12px;border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:.92rem}.marks-row input{width:84px}.row-x{background:none;border:none;color:var(--ink-soft);cursor:pointer;font-size:1rem;padding:4px 8px}.row-x:hover{color:var(--clay)}.results-actions{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap}.apply-result{margin-top:24px}.job-search{display:flex;gap:8px;flex-wrap:wrap;margin:8px 0 6px}.job-search input{flex:1 1 220px;padding:11px 14px;border:1px solid var(--line);border-radius:10px;font-family:inherit;font-size:.95rem;background:var(--bg-card);color:var(--ink)}.opp-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(190px,1fr));grid-gap:12px;gap:12px;margin:8px 0 22px}.opp-card{display:flex;flex-direction:column;gap:3px;align-items:flex-start;text-align:left;padding:18px;border:1px solid var(--line);border-radius:16px;background:var(--bg-card);cursor:pointer;transition:border-color .15s,box-shadow .15s,background .15s}.opp-card:hover{border-color:var(--gold)}.opp-card.active{border-color:var(--clay);background:var(--l-surface);box-shadow:var(--shadow)}.opp-card .opp-emoji{font-size:1.9rem}.opp-card h3{margin:4px 0 0}.opp-card p{margin:0;font-size:.85rem;color:var(--ink-soft)}.opp-flow{border-top:1px solid var(--line);padding-top:18px}.tender-list{margin:2px 0 8px;padding-left:18px}.tender-list li{font-size:.85rem;color:var(--ink-soft);margin:2px 0}.rights-ask{margin:4px 0 6px}.rights-ask textarea{width:100%;padding:12px 14px;font-family:inherit;font-size:.95rem;background:var(--bg-card);color:var(--ink);resize:vertical;margin-bottom:8px}.rights-ask textarea,.smart-apply{border:1px solid var(--line);border-radius:12px}.smart-apply{margin-top:12px;padding:14px 16px;background:var(--l-surface)}.smart-apply h4{margin:12px 0 4px;font-size:.95rem;color:var(--clay)}.smart-apply ul{margin:0;padding-left:20px}.smart-apply li{font-size:.9rem;color:var(--ink);margin:3px 0}.aps-card{display:flex;flex-direction:column;align-items:center;text-align:center;background:var(--clay);color:var(--l-accent-ink);border-radius:16px;padding:22px;margin-bottom:14px;box-shadow:var(--shadow)}.aps-num{font-size:3rem;font-weight:800;line-height:1}.aps-label{font-size:.9rem;opacity:.9;margin-top:6px}.aps-breakdown{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:8px}.yt-embed{position:relative;width:100%;max-width:720px;aspect-ratio:16/9;margin:4px 0 20px;border-radius:14px;overflow:hidden;box-shadow:var(--shadow);background:#000}.yt-embed iframe{position:absolute;inset:0;width:100%;height:100%;border:0}.row:hover{text-decoration:none;border-color:var(--gold)}.row h3{margin:0 0 4px;font-size:1.05rem;color:var(--ink)}.row p{margin:0;color:var(--ink-soft);font-size:.9rem}.tagline-row{margin-top:10px}.pill{font-size:.85rem;color:var(--ink-soft);background:var(--l-surface-sunk);border-radius:999px;padding:6px 13px;display:inline-flex;align-items:center;min-height:32px;line-height:1.3}.pill.draft{background:var(--l-accent-wash);color:var(--clay-dark)}.article{background:var(--bg-card);border:1px solid var(--line);border-radius:16px;padding:32px 36px;margin:16px 0 56px;box-shadow:var(--shadow)}.article h1{margin:0 0 6px}.article .summary{color:var(--ink-soft);font-size:1.05rem;margin:0 0 18px}.article .meta{display:flex;gap:8px;flex-wrap:wrap;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:12px 0;margin-bottom:24px}.prose h2{margin-top:28px;color:var(--l-ink)}.prose code{background:var(--l-surface-sunk);padding:1px 5px;border-radius:5px;font-size:.9em}.prose pre{background:var(--l-ink);color:var(--l-canvas);padding:16px;border-radius:10px;overflow-x:auto}.prose pre code{background:transparent;color:inherit;padding:0}.prose blockquote{border-left:3px solid var(--l-line);margin:16px 0;padding:4px 16px;color:var(--ink-soft);background:var(--l-surface)}.site-footer{border-top:1px solid var(--line);padding:28px 0;color:var(--ink-soft);font-size:.85rem;text-align:center}.site-footer-lab{margin:6px 0 0;font-size:.75rem;letter-spacing:.02em}.search-input{width:100%;font-size:1.05rem;padding:14px 18px;border:1px solid var(--line);border-radius:12px;background:var(--bg-card);color:var(--ink);box-shadow:var(--shadow);margin-top:8px}.search-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,150,42,.18)}.hero-search{max-width:560px;margin:22px auto 0}.ask-form{margin-top:12px;display:flex;flex-direction:column;gap:12px}.ask-input{width:100%;font-size:1rem;font-family:inherit;padding:14px 16px;border:1px solid var(--line);border-radius:12px;background:var(--bg-card);color:var(--ink);box-shadow:var(--shadow);resize:vertical}.ask-input:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,150,42,.18)}.ask-button{align-self:flex-start;background:var(--clay);color:var(--l-accent-ink);border:none;border-radius:10px;padding:11px 26px;font-size:.95rem;font-weight:600;cursor:pointer;transition:background .12s ease}.ask-button:hover{background:var(--clay-dark)}.ask-button:disabled{opacity:.6;cursor:default}.empty{background:var(--l-surface);border:1px solid var(--l-line);border-radius:var(--l-r-lg);padding:28px;color:var(--ink-soft);text-align:center}.paper-multi{display:flex;flex-wrap:wrap;gap:4px;justify-content:center}.paper-multi .paper-link{font-size:.82rem;padding:3px 8px}.grade-phase{margin:0 0 10px}.grade-phase-label{display:block;font-size:.82rem;font-weight:700;letter-spacing:.04em;text-transform:uppercase;color:var(--l-ink-2);margin:0 0 6px}.grade-phase-sub{font-weight:500;text-transform:none;letter-spacing:0;opacity:.75}.grade-phase .grade-btn{padding:8px 16px;font-size:.95rem}.grade-toggle{display:flex;gap:10px;margin:4px 0 14px;flex-wrap:wrap}.grade-btn{display:inline-flex;align-items:center;gap:8px;background:var(--bg-card);border:1.5px solid var(--line);border-radius:999px;padding:10px 22px;font-size:1rem;font-weight:600;font-family:inherit;color:var(--ink);cursor:pointer;box-shadow:var(--shadow);transition:border-color .12s ease,background .12s ease}.grade-btn:hover{border-color:var(--gold)}.grade-btn.active{background:var(--clay);color:var(--l-accent-ink);border-color:var(--clay)}.grade-btn.active .tab-count{background:rgba(255,255,255,.25)}.subject-tabs{display:flex;flex-wrap:wrap;gap:10px;margin-top:8px}.subject-tab{display:inline-flex;align-items:center;gap:8px;background:var(--bg-card);border:1px solid var(--line);border-radius:999px;padding:9px 16px;font-size:.92rem;font-family:inherit;color:var(--ink);cursor:pointer;box-shadow:var(--shadow);transition:border-color .12s ease,background .12s ease}.subject-tab:hover{border-color:var(--gold)}.subject-tab.active{background:var(--clay);color:var(--l-accent-ink);border-color:var(--clay)}.subject-tab .emoji{font-size:1.1rem}.subject-tab .tab-count{font-size:.72rem;background:rgba(0,0,0,.08);border-radius:999px;padding:1px 8px}.subject-tab.active .tab-count{background:rgba(255,255,255,.25)}.subject-search{width:100%;max-width:440px;margin:4px 0 8px;padding:11px 16px;font-size:.95rem;font-family:inherit;color:var(--ink);background:var(--bg-card);border:1px solid var(--line);border-radius:999px;box-shadow:var(--shadow)}.subject-search:focus{outline:none;border-color:var(--gold)}.subject-group{margin-top:18px}.subject-group-title{font-size:.76rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;color:var(--clay);margin:16px 0 4px}.btn-primary{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:var(--l-tap-2);background:var(--l-accent);color:var(--l-accent-ink);border:1px solid var(--l-accent);border-radius:var(--l-r-pill);padding:10px 28px;font-size:1.0625rem;font-weight:700;font-family:inherit;cursor:pointer;box-shadow:none;transition:background .12s ease}.btn-primary:hover{background:var(--l-accent-strong);color:var(--l-accent-ink)}.btn-ghost:focus-visible,.btn-primary:focus-visible{outline:3px solid var(--l-ring);outline-offset:3px}.btn-ghost{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:48px;background:var(--l-surface);color:var(--l-ink);border:1px solid var(--l-line);border-radius:var(--l-r-pill);padding:8px 20px;font-size:.9375rem;font-weight:500;font-family:inherit;cursor:pointer}.btn-ghost:hover{border-color:var(--l-ink)}.btn-ghost:disabled{opacity:.5;cursor:default}.studykit{margin-top:12px}.studykit-tabs{display:flex;gap:10px;margin-bottom:18px}.studykit-tab{background:var(--bg-card);border:1px solid var(--line);border-radius:999px;padding:9px 18px;font-size:.92rem;font-family:inherit;color:var(--ink);cursor:pointer;box-shadow:var(--shadow)}.studykit-tab.active{background:var(--clay);color:var(--l-accent-ink);border-color:var(--clay)}.studykit-empty{border:1px dashed var(--line);border-radius:14px;padding:28px 20px;text-align:center}.studykit-empty p{margin:0 0 16px;color:var(--ink-soft)}.studykit-error{color:var(--clay-dark)}.studykit-foot{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:22px;padding-top:14px;border-top:1px solid var(--line)}.flashcard-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));grid-gap:14px;gap:14px;margin-top:8px}.flashcard{perspective:1000px;height:190px;background:none;border:none;padding:0;font-family:inherit;text-align:left;cursor:pointer}.flashcard-inner{position:relative;width:100%;height:100%;transition:transform .5s;transform-style:preserve-3d}.flashcard.flipped .flashcard-inner{transform:rotateY(180deg)}.flashcard-face{position:absolute;inset:0;backface-visibility:hidden;-webkit-backface-visibility:hidden;background:var(--bg-card);border:1px solid var(--line);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:8px;overflow:auto;box-shadow:var(--shadow)}.flashcard-back{transform:rotateY(180deg);background:var(--l-surface)}.flashcard-tag{font-size:.7rem;font-weight:700;letter-spacing:.05em;color:var(--clay)}.flashcard p{margin:0;font-size:.92rem;color:var(--ink)}.papers-table-wrap{overflow-x:auto;border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);background:var(--bg-card)}.papers-table{width:100%;border-collapse:collapse;min-width:460px}.papers-table td,.papers-table th{padding:10px 12px;text-align:center;border-bottom:1px solid var(--line)}.papers-table thead th{background:var(--l-surface-sunk);color:var(--ink);font-size:.85rem}.papers-table .paper-group{border-left:1px solid var(--line);color:var(--clay-dark)}.papers-table .sub-col{font-size:.78rem;font-weight:600;color:var(--ink-soft)}.papers-table .year-col{text-align:left;font-weight:700;white-space:nowrap}.papers-table tbody tr:hover{background:var(--l-surface)}.papers-table tr.row-thin td{color:var(--ink-soft)}.soon{color:var(--gold);font-size:.72rem;font-weight:600}.paper-link{display:inline-block;font-size:.82rem;padding:4px 10px;border-radius:8px;white-space:nowrap}.paper-link.is-paper{background:var(--l-secure-wash);color:var(--green)}.paper-link.is-memo{background:var(--l-pen-wash);color:var(--clay-dark)}.paper-link.is-fallback{background:transparent;color:var(--ink-soft);border:1px dashed var(--line)}.paper-link:hover{text-decoration:none;filter:brightness(.96);border-color:var(--gold)}.paper-empty{color:var(--line)}.sources-note{margin-top:16px;font-size:.85rem;color:var(--ink-soft)}.banner{display:flex;align-items:center;justify-content:space-between;gap:16px;flex-wrap:wrap;background:var(--l-surface-sunk);border:1px solid var(--line);border-radius:14px;padding:18px 22px;margin:8px 0 0;box-shadow:var(--shadow)}.banner:hover{text-decoration:none;border-color:var(--gold)}.banner .banner-text strong{color:var(--ink)}.banner .banner-text span{display:block;color:var(--ink-soft);font-size:.9rem}.banner .banner-cta{background:var(--clay);color:var(--l-accent-ink);border-radius:10px;padding:9px 18px;font-size:.9rem;font-weight:600;white-space:nowrap}.tutor-chat{gap:12px;padding-bottom:0}.chat-window,.tutor-chat{display:flex;flex-direction:column}.chat-window{gap:14px;min-height:240px;padding:6px 2px;--composer-height:96px;padding-bottom:var(--l-s2)}.tutor-greeting{background:var(--l-surface);border:1px dashed var(--line);border-radius:12px;padding:18px 20px;color:var(--ink-soft)}.tutor-examples{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.example-chip{background:var(--bg-card);border:1px solid var(--line);border-radius:999px;padding:7px 14px;font-size:.84rem;font-family:inherit;color:var(--clay-dark);cursor:pointer;text-align:left}.example-chip:hover{border-color:var(--gold)}.bubble{max-width:88%;padding:12px 16px;border-radius:var(--l-r-lg);box-shadow:none}.bubble.user{align-self:flex-end;background:var(--l-surface);color:var(--l-ink);border:1px solid var(--l-line);border-bottom-right-radius:4px}.tutor-prose :first-child{margin-top:0}.tutor-prose :last-child{margin-bottom:0}.tutor-prose p{margin:8px 0}.tutor-prose .katex-display{max-width:100%;overflow-x:auto;overflow-y:hidden;padding-bottom:4px}.chat-form{display:flex;gap:10px;align-items:flex-end;position:-webkit-sticky;position:sticky;bottom:0;background:var(--bg);padding-top:8px}.chat-form .ask-input{flex:1 1;margin:0}.plot{margin:14px 0;border:1px solid var(--line);border-radius:12px;padding:10px;background:var(--l-surface);max-width:520px}.plot svg{width:100%;height:auto;display:block}.plot-title{font-size:.9rem;font-weight:600;color:var(--clay-dark);margin-bottom:6px}.plot-legend{display:flex;flex-wrap:wrap;gap:12px;margin-top:6px;font-size:.78rem}.plot-error{font-size:.875rem;color:var(--l-ink-2);background:var(--l-surface-sunk);padding:8px 12px;border-radius:var(--l-r-sm)}.plot-controls{display:flex;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:10px}.plot-play{flex:0 0 auto;display:inline-flex;align-items:center;justify-content:center;min-height:44px;min-width:44px;background:var(--clay);color:var(--l-accent-ink);border:none;border-radius:999px;padding:6px 18px;font-size:.9rem;font-weight:600;cursor:pointer}.plot-play:hover{background:var(--clay-dark)}.plot-slider{display:flex;flex-direction:column;gap:2px;font-size:.8rem;color:var(--ink-soft);min-width:150px}.plot-slider span{font-weight:600;color:var(--ink)}.plot-slider input[type=range]{width:100%;accent-color:var(--clay);cursor:pointer;min-height:44px;background:transparent;-webkit-appearance:none;-moz-appearance:none;appearance:none}.plot-slider input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;appearance:none;width:26px;height:26px;border-radius:50%;background:var(--clay);border:2px solid var(--l-surface);box-shadow:0 1px 3px rgb(0 0 0/.3)}.plot-slider input[type=range]::-moz-range-thumb{width:26px;height:26px;border:2px solid var(--l-surface);border-radius:50%;background:var(--clay)}.plot-slider input[type=range]::-webkit-slider-runnable-track{height:6px;border-radius:3px;background:var(--line)}.plot-slider input[type=range]::-moz-range-track{height:6px;border-radius:3px;background:var(--line)}.plot-hint{margin:6px 0 0;font-size:.76rem;color:var(--ink-soft);font-style:italic}.contribute{display:flex;flex-direction:column;gap:16px;max-width:640px;padding:8px 0 56px}.seg{display:flex;gap:8px}.seg-btn{flex:1 1;background:var(--bg-card);border:1px solid var(--line);border-radius:12px;padding:12px;font-size:.95rem;font-family:inherit;color:var(--ink);cursor:pointer;box-shadow:var(--shadow)}.seg-btn.active{background:var(--clay);color:var(--l-accent-ink);border-color:var(--clay)}.fld{display:flex;flex-direction:column;gap:6px}.fld>span{font-size:.85rem;color:var(--ink-soft);font-weight:600}.fld input,.fld select,.fld textarea{font-family:inherit;font-size:1rem;padding:11px 14px;border:1px solid var(--line);border-radius:10px;background:var(--bg-card);color:var(--ink)}.fld input:focus,.fld select:focus,.fld textarea:focus{outline:none;border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,150,42,.18)}.fld input[type=file]{padding:9px 12px;font-size:.9rem}.fld-row{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));grid-gap:12px;gap:12px}.listen{display:inline-flex;gap:6px;align-items:center}.listen-btn{font-family:inherit;font-size:.8rem;background:var(--l-surface-sunk);color:var(--clay-dark);border:1px solid var(--line);border-radius:999px;min-height:44px;padding:4px 14px;cursor:pointer}.listen-btn:hover{border-color:var(--gold)}.listen-natural{background:var(--l-surface-sunk)}.msg-actions{margin-top:4px}.link-btn{background:none;border:none;color:var(--clay);font:inherit;padding:0;cursor:pointer;text-decoration:underline}.bubble-img{max-width:220px;max-height:220px;border-radius:10px;margin-bottom:8px;display:block}.icon-btn{background:var(--bg-card);border:1px solid var(--line);border-radius:10px;padding:0 12px;font-size:1.1rem;cursor:pointer;height:44px}.icon-btn:hover{border-color:var(--gold)}.pending-img{position:relative;display:inline-block;margin:4px 0}.pending-img img{max-height:90px;border-radius:8px;border:1px solid var(--line)}.pending-img button{position:absolute;top:-8px;right:-8px;background:var(--clay);color:var(--l-accent-ink);border:none;border-radius:999px;width:22px;height:22px;cursor:pointer}.live-overlay{position:fixed;inset:0;z-index:50;background:#14100c;color:#f7efe2;display:flex;flex-direction:column}.live-top{display:flex;align-items:center;gap:8px;padding:14px 18px;font-weight:600;font-size:.95rem;border-bottom:1px solid rgba(255,255,255,.12)}.live-dot{width:10px;height:10px;border-radius:999px;background:#e0533a;animation:livepulse 1.4s ease-in-out infinite}@keyframes livepulse{50%{opacity:.3}}.live-close{margin-left:auto;background:none;border:none;color:#f7efe2;font-size:1.2rem;cursor:pointer}.live-stage{flex:1 1;position:relative;display:flex;align-items:center;justify-content:center;overflow:hidden;background:#000}.live-video{width:100%;height:100%;object-fit:contain}.live-msg{position:absolute;padding:16px 20px;text-align:center}.live-guidance{padding:14px 18px;font-size:1.05rem;line-height:1.5;background:rgba(0,0,0,.35);min-height:64px}.live-thinking{color:var(--gold)}.live-controls{display:flex;gap:10px;padding:14px 18px 22px;justify-content:center;flex-wrap:wrap}.live-controls .icon-btn{background:rgba(255,255,255,.1);color:#f7efe2;border-color:rgba(255,255,255,.2);font-size:.95rem}.composer{position:-webkit-sticky;position:sticky;bottom:0;background:var(--bg);padding:8px 0 calc(10px + env(safe-area-inset-bottom, 0px))}.composer-chips{display:flex;gap:8px;padding:0 6px 8px}.chip-img{position:relative;display:inline-block}.chip-img img{height:60px;border-radius:var(--l-r-md);border:1px solid var(--l-line);display:block}.chip-img button{position:absolute;top:-16px;right:-16px;width:44px;height:44px;display:grid;place-items:center;border:none;background:none;color:var(--l-accent-ink);cursor:pointer}.chip-img button:before{content:"";position:absolute;width:24px;height:24px;border-radius:999px;background:var(--l-ink)}.chip-img button svg{position:relative}.composer-inner{display:flex;align-items:flex-end;gap:6px;background:var(--bg-card);border:1px solid var(--line);border-radius:26px;padding:6px 8px;box-shadow:var(--shadow)}.composer-inner:focus-within{border-color:var(--gold);box-shadow:0 0 0 3px rgba(200,150,42,.16)}.attach-wrap{position:relative;flex-shrink:0}.composer-plus{width:40px;height:40px;border-radius:999px;border:none;background:transparent;color:var(--ink-soft);font-size:1.5rem;line-height:1;cursor:pointer;display:flex;align-items:center;justify-content:center}.composer-plus:hover{background:var(--l-surface-sunk);color:var(--l-ink)}.attach-menu{position:absolute;bottom:52px;left:0;min-width:210px;background:var(--l-surface);border:1px solid var(--l-ink);border-radius:var(--l-r-lg);box-shadow:none;padding:4px;display:flex;flex-direction:column;z-index:10}.attach-menu button{display:flex;align-items:center;gap:12px;min-height:48px;text-align:left;background:none;border:none;font:inherit;font-size:1rem;color:var(--l-ink);padding:0 12px;border-radius:var(--l-r-sm);cursor:pointer}.attach-menu button+button{border-top:1px solid var(--l-line);border-radius:0 0 var(--l-r-sm) var(--l-r-sm)}.attach-menu button:hover{background:var(--l-surface-sunk)}.attach-menu button:focus-visible{outline:3px solid var(--l-ring);outline-offset:-3px}.composer-input{flex:1 1;border:none;outline:none;background:transparent;resize:none;font-family:inherit;font-size:1rem;line-height:1.5;color:var(--ink);padding:9px 4px;min-height:44px;max-height:160px;overflow-y:auto}.composer-send{width:40px;height:40px;border-radius:999px;border:none;background:var(--clay);color:var(--l-accent-ink);font-size:1.2rem;cursor:pointer;flex-shrink:0;transition:background .12s ease,opacity .12s ease}.composer-send:hover:not(:disabled){background:var(--clay-dark)}.composer-send:disabled{background:var(--line);color:var(--ink-soft);cursor:default}.composer-mic{width:40px;height:40px;border-radius:999px;border:none;background:transparent;color:var(--ink-soft);font-size:1.15rem;cursor:pointer;flex-shrink:0}.composer-mic:hover{background:var(--l-surface-sunk)}.composer-mic.listening{background:var(--l-accent-wash);animation:livepulse 1.2s ease-in-out infinite}.composer-static{position:static;background:none;padding:8px 0 0}.chat-toolbar{display:flex;justify-content:flex-end;padding:2px 2px 0}.autoread{font-family:inherit;font-size:.875rem;border:1px solid var(--l-line);border-radius:var(--l-r-md);padding:5px 12px;color:var(--l-ink-2);cursor:pointer}.autoread,.autoread.on{background:var(--l-surface)}.autoread.on{color:var(--l-ink);border-color:var(--l-ink);font-weight:500}.rights-emergency{display:inline-block;margin-top:8px;padding:5px 10px;border-radius:999px;background:var(--l-miscon-wash);color:var(--clay-dark);font-size:.82rem;line-height:1.35}.rights-card-cta{margin-top:10px;font-size:.82rem;font-weight:700;color:var(--clay)}.rights-detail{border:1px solid var(--clay);border-radius:18px;background:var(--l-surface);box-shadow:var(--shadow);padding:20px 20px 24px;margin:4px 0 26px}.rights-detail-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.rights-detail-head h3{margin:0;font-size:1.25rem;color:var(--ink)}.rights-close{flex:none;background:none;border:1px solid var(--line);border-radius:10px;padding:6px 10px;font-size:.82rem;color:var(--ink-soft);cursor:pointer}.rights-close:hover{border-color:var(--clay);color:var(--clay)}.rights-means{margin:10px 0 16px;font-size:1.02rem;color:var(--ink)}.rights-block{border-top:1px solid var(--line);padding-top:14px;margin-top:14px}.rights-block h4{margin:0 0 8px;font-size:1rem;color:var(--clay)}.rights-block ul{margin:0;padding-left:22px}.rights-block li{margin:6px 0;font-size:.96rem;line-height:1.5}.rights-contacts{display:flex;flex-direction:column;gap:8px}.rights-contact{display:flex;flex-wrap:wrap;gap:4px 14px;font-size:.95rem}.rights-contact a{font-weight:600}.rights-contact-label{color:var(--ink-soft)}.rights-trust{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.rights-trust p{margin:4px 0;font-size:.85rem;color:var(--ink-soft)}.rights-disclaimer{font-style:italic}.rights-tutor-cta{margin-top:16px;padding:14px 16px;border-radius:14px;background:var(--l-surface-sunk);border:1px solid var(--gold)}.rights-tutor-cta p{margin:0 0 10px;font-size:.95rem;color:var(--ink)}.rights-templates{display:flex;flex-direction:column;gap:10px;margin:8px 0 6px}.rights-template{border:1px solid var(--line);border-radius:14px;background:var(--bg-card);overflow:hidden}.rights-template.open{border-color:var(--gold)}.rights-template-head{display:flex;align-items:center;gap:12px;width:100%;text-align:left;padding:14px 16px;background:none;border:none;cursor:pointer;color:var(--ink)}.rights-template-emoji{font-size:1.5rem;flex:none}.rights-template-text{display:flex;flex-direction:column;flex:1 1}.rights-template-text strong{font-size:.98rem}.rights-template-text span{font-size:.84rem;color:var(--ink-soft)}.rights-template-chev{flex:none;color:var(--ink-soft);font-size:.8rem}.rights-template-body{padding:0 16px 16px}.rights-template-body pre{white-space:pre-wrap;word-break:break-word;font-family:ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-size:.86rem;line-height:1.55;background:var(--l-surface-sunk);border:1px solid var(--line);border-radius:10px;padding:14px;margin:0 0 12px;color:var(--ink)}.rights-copy{font-size:.88rem;padding:8px 18px}.pill-broken{background:var(--l-surface-sunk);color:var(--ink-soft);font-style:italic;cursor:help}.btn--loading{animation:btn-breathe 1.8s ease-in-out infinite;cursor:progress}.btn--loading:disabled{opacity:1}@keyframes btn-breathe{0%,to{transform:scale(1);opacity:.92}50%{transform:scale(1.015);opacity:1}}.btn-loading-content{display:inline-flex;align-items:center;gap:8px}.btn-dots{display:inline-flex;gap:3px}.btn-dots span{width:5px;height:5px;border-radius:50%;background:currentColor;opacity:.45;animation:btn-dot 1.4s ease-in-out infinite both}.btn-dots span:nth-child(2){animation-delay:.2s}.btn-dots span:nth-child(3){animation-delay:.4s}@keyframes btn-dot{0%,80%,to{opacity:.25;transform:translateY(0)}40%{opacity:1;transform:translateY(-2px)}}@media (prefers-reduced-motion:reduce){.btn--loading{animation:none}.btn-dots span{animation:none;opacity:.6}}.report-link{background:none;border:none;padding:0;font:inherit;font-size:.78rem;color:var(--ink-soft);text-decoration:underline;cursor:pointer;align-self:center}.report-link:hover{color:var(--clay)}.report-link:disabled{cursor:default;text-decoration:none;opacity:.7}.report-link--done{color:var(--green);text-decoration:none;font-style:italic}.ss-check{display:inline-flex;align-items:center;gap:6px;font-size:.9rem;color:var(--ink)}.ss-badges{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:6px}.ss-badge{font-size:.72rem;font-weight:700;border-radius:999px;padding:2px 9px}.ss-cheap{background:var(--l-secure-wash);color:var(--green)}.ss-wholesale{background:var(--l-surface-sunk);color:var(--clay-dark)}.ss-delivery{background:var(--l-repair-wash);color:var(--l-repair)}.ss-confirm{background:var(--l-surface-sunk);color:var(--ink-soft)}.ss-inquiry{background:var(--l-surface);border:1px solid var(--gold);border-radius:12px;padding:12px 14px;margin:4px 0 14px}.ss-inquiry strong{display:block;margin-bottom:6px;font-size:.95rem}.ss-inquiry pre{white-space:pre-wrap;word-break:break-word;font-family:inherit;font-size:.88rem;line-height:1.5;margin:0 0 10px;color:var(--ink)}.tutor-modes{display:flex;gap:8px;overflow-x:auto;padding:8px 2px;margin-top:8px;-webkit-overflow-scrolling:touch}.mode-chip{flex:0 0 auto;white-space:nowrap;background:var(--l-surface);border:1px solid var(--l-line);border-radius:var(--l-r-md);padding:7px 13px;font-size:.9375rem;font-weight:500;color:var(--l-ink);cursor:pointer;transition:border-color .15s,background .15s}.mode-chip:hover:not(:disabled){border-color:var(--l-ink);background:var(--l-surface)}.mode-chip:disabled{opacity:.5;cursor:default}.cv-bar{height:12px;background:var(--l-surface-sunk);border-radius:999px;overflow:hidden;margin:4px 0 16px}.cv-bar-fill{height:100%;background:linear-gradient(90deg,var(--gold),var(--clay));border-radius:999px;transition:width .4s ease}.cv-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));grid-gap:12px;gap:12px;margin:8px 0}.cv-block{background:var(--bg-card);border:1px solid var(--line);border-radius:12px;padding:12px 14px}.cv-block h4{margin:0 0 6px;font-size:.95rem;color:var(--clay)}.cv-block ul{margin:0;padding-left:18px}.cv-block li{font-size:.9rem;margin:4px 0}.cv-doc{border-top:1px solid var(--line);margin-top:16px;padding-top:12px}.cv-doc h4{margin:0 0 6px;color:var(--clay)}.auth-wrap{max-width:460px;margin:40px auto 80px}.auth-card{background:var(--bg-card);border:1px solid var(--line);border-radius:14px;box-shadow:var(--shadow);padding:24px;margin-top:16px}.auth-form{gap:14px}.auth-form,.auth-form label{display:flex;flex-direction:column}.auth-form label{gap:6px;font-size:.9rem;font-weight:600;color:var(--ink-soft)}.auth-form input{border:1px solid var(--line);border-radius:10px;padding:10px 12px;font-size:1rem;background:var(--l-surface);color:var(--ink)}.auth-form input:focus{outline:2px solid var(--gold);border-color:var(--gold)}.auth-submit{margin-top:4px;background:var(--clay);color:var(--l-accent-ink);border:none;border-radius:10px;padding:12px 16px;font-size:1rem;font-weight:700;cursor:pointer}.auth-submit:hover{background:var(--clay-dark)}.auth-submit:disabled{opacity:.6;cursor:wait}.auth-form label.auth-consent{flex-direction:row;align-items:flex-start;gap:10px;font-weight:500;color:var(--ink);line-height:1.45}.auth-form label.auth-consent input{flex:0 0 auto;width:22px;height:22px;margin:1px 0 0;padding:0;accent-color:var(--clay)}.auth-error{margin:0;color:var(--l-miscon);font-size:.9rem}.auth-alt{margin:16px 0 0;font-size:.9rem;color:var(--ink-soft)}.auth-stack{display:flex;flex-direction:column;gap:16px}.auth-google{display:flex;align-items:center;justify-content:center;gap:10px;border:1px solid var(--line);border-radius:10px;padding:11px 16px;background:var(--l-surface);color:var(--ink);font-weight:600;text-decoration:none}.auth-google:hover{background:var(--l-surface-sunk);text-decoration:none}.auth-divider{display:flex;align-items:center;gap:12px;color:var(--ink-soft);font-size:.8rem}.auth-divider:after,.auth-divider:before{content:"";flex:1 1;border-top:1px solid var(--line)}.auth-widget{display:inline-flex;align-items:center;gap:10px}.auth-name{color:var(--ink-soft);font-size:.9rem;white-space:nowrap}.auth-signin{border:1px solid var(--clay);border-radius:999px;padding:4px 14px;font-weight:600;white-space:nowrap}.auth-signin:hover{background:var(--clay);color:var(--l-accent-ink);text-decoration:none}.auth-signout{border:1px solid var(--line);border-radius:999px;padding:4px 12px;background:transparent;color:var(--ink-soft);font-size:.85rem;cursor:pointer}.auth-signout:hover{border-color:var(--clay);color:var(--clay)}.opp-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0 4px}.opp-tab{border:1px solid var(--line);border-radius:999px;padding:6px 14px;font-size:.9rem;font-weight:600;color:var(--ink-soft);background:var(--bg-card);white-space:nowrap}.opp-tab:hover{border-color:var(--clay);color:var(--clay);text-decoration:none}.opp-tab.active{background:var(--clay);border-color:var(--clay);color:var(--l-accent-ink)}button.gloss{background:none;border:none;padding:0;margin:0;font:inherit;color:inherit;cursor:help;border-bottom:2px dotted var(--gold);position:relative;text-align:inherit}button.gloss:focus{outline:none;background:rgba(200,150,42,.14);border-radius:3px}button.gloss:focus:after,button.gloss:hover:after{content:attr(data-def);position:absolute;left:50%;bottom:calc(100% + 8px);transform:translateX(-50%);width:min(320px,78vw);background:var(--ink);color:var(--l-accent-ink);font-size:.85rem;font-weight:400;line-height:1.5;padding:10px 14px;border-radius:10px;box-shadow:0 6px 24px rgba(43,33,24,.25);z-index:50;text-align:left}button.gloss:focus:before,button.gloss:hover:before{content:"";position:absolute;left:50%;bottom:100%;transform:translateX(-50%);border:8px solid transparent;border-top:8px solid var(--ink);z-index:50}.lang-toggle{display:inline-flex;align-items:center;gap:5px}.lang-toggle select{border:1px solid var(--line);border-radius:999px;padding:4px 8px;background:var(--bg-card);color:var(--ink);font-size:.85rem;cursor:pointer}.simplify{margin-top:8px}.simplify-error{margin-left:10px;font-size:.85rem;color:var(--l-miscon)}.simplify-box{margin-top:12px;background:var(--bg-card);border:1px solid var(--line);border-left:4px solid var(--gold);border-radius:10px;padding:14px 18px;font-size:1.02rem}.cv-rewrite-cta{border-left:4px solid var(--clay)}.app-row{padding:14px 16px}.app-head{display:flex;align-items:baseline;justify-content:space-between;gap:10px;flex-wrap:wrap}.app-head h3{margin:0}.app-status{border:1px solid var(--line);border-radius:999px;padding:4px 10px;background:var(--bg-card);color:var(--ink);font-size:.85rem;cursor:pointer}.app-deadline-urgent{color:var(--l-miscon);font-weight:700}.app-checklist{list-style:none;padding:0;margin:6px 0}.app-checklist li{margin:3px 0}.app-checklist input{margin-right:6px}.letter-writer{margin-top:34px}.letter-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));grid-gap:12px;gap:12px;margin:14px 0}.letter-card{display:flex;flex-direction:column;gap:4px;text-align:left;background:var(--bg-card);border:1px solid var(--line);border-radius:12px;padding:14px 16px;cursor:pointer;font:inherit;color:var(--ink)}.letter-card.active,.letter-card:hover{border-color:var(--clay)}.letter-card.active{outline:2px solid var(--clay)}.letter-emoji{font-size:1.5rem}.letter-blurb{color:var(--ink-soft);font-size:.88rem}.letter-form{margin-top:10px}.letter-form h3{margin:0 0 4px}.letter-field{display:flex;flex-direction:column;gap:4px;font-size:.9rem;font-weight:600;color:var(--ink-soft);margin-bottom:10px}.letter-field input,.letter-field textarea{border:1px solid var(--line);border-radius:10px;padding:9px 12px;font:inherit;background:var(--l-surface);color:var(--ink)}.mock-interview{margin-top:18px}.interview-turns{max-height:380px;overflow-y:auto;display:flex;flex-direction:column;gap:10px;padding:4px 0 8px}.interview-turn{display:flex;gap:8px;align-items:flex-start}.interview-turn p{margin:0;background:var(--bg);border:1px solid var(--line);border-radius:12px;padding:8px 12px}.interview-turn.user{flex-direction:row-reverse}.interview-turn.user p{background:var(--l-accent-wash);border-color:var(--clay)}.interview-coach{font-size:1.3rem}.interview-composer{display:flex;gap:8px;align-items:flex-end;margin-top:8px}.interview-composer textarea{flex:1 1;border:1px solid var(--line);border-radius:10px;padding:9px 12px;font:inherit;background:var(--l-surface);color:var(--ink);resize:vertical}.skip-link{position:absolute;left:-9999px;top:0;background:var(--clay);color:var(--l-accent-ink);padding:10px 18px;border-radius:0 0 10px 0;z-index:200;font-weight:700}.skip-link:focus{left:0;text-decoration:none}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible{outline:3px solid var(--gold);outline-offset:2px;border-radius:4px}@media (pointer:coarse){.auth-signin,.auth-signout,.listen-btn,.opp-tab,.path-chip,.pill{min-height:44px;display:inline-flex;align-items:center}.path-links,.tagline-row{gap:10px}.nav a{padding-top:10px;padding-bottom:10px}}.tagline-row{display:flex;flex-wrap:wrap;gap:8px;align-items:center}@media (max-width:480px){body{font-size:1.03rem}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}.signin-backdrop{position:fixed;inset:0;background:rgba(43,33,24,.55);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:9000;display:flex;align-items:center;justify-content:center;padding:16px;animation:fadeIn .18s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.signin-modal{background:var(--bg-card);border-radius:18px;box-shadow:0 8px 48px rgba(43,33,24,.22);padding:36px 32px 28px;width:100%;max-width:420px;position:relative;animation:slideUp .22s cubic-bezier(.34,1.56,.64,1)}@keyframes slideUp{0%{transform:translateY(24px);opacity:0}to{transform:translateY(0);opacity:1}}.signin-close{position:absolute;top:14px;right:16px;background:none;border:none;font-size:1.1rem;color:var(--ink-soft);cursor:pointer;line-height:1;padding:4px 8px;border-radius:6px;transition:background .15s}.signin-close:hover{background:var(--line)}.signin-icon{font-size:2.2rem;text-align:center;margin-bottom:8px}.signin-title{font-size:1.25rem;font-weight:700;text-align:center;margin:0 0 8px;color:var(--ink)}.signin-sub{font-size:.88rem;color:var(--ink-soft);text-align:center;margin:0 0 24px;line-height:1.6}.signin-actions{display:flex;flex-direction:column;gap:10px}.signin-google{display:flex;align-items:center;justify-content:center;gap:10px;padding:12px 16px;border-radius:10px;border:1.5px solid var(--line);background:var(--l-surface);color:var(--ink);font-size:.92rem;font-weight:600;text-decoration:none;transition:border-color .15s,box-shadow .15s}.signin-google:hover{border-color:#4285F4;box-shadow:0 2px 10px rgba(66,133,244,.18)}.signin-divider{display:flex;align-items:center;gap:10px;color:var(--ink-soft);font-size:.8rem}.signin-divider:after,.signin-divider:before{content:"";flex:1 1;height:1px;background:var(--line)}.signin-email{display:block;text-align:center;padding:11px 16px;border-radius:10px;background:var(--clay);color:var(--l-accent-ink);font-size:.92rem;font-weight:600;text-decoration:none;transition:background .15s}.signin-email:hover{background:var(--clay-dark)}.signin-create{display:block;text-align:center;padding:10px 16px;border-radius:10px;border:1.5px solid var(--clay);color:var(--clay);font-size:.92rem;font-weight:600;text-decoration:none;transition:background .15s}.signin-create:hover{background:rgba(180,84,31,.06)}.signin-family{margin:18px 0 0;font-size:.82rem;color:var(--ink-soft);text-align:center}.signin-family a{color:var(--clay);text-decoration:none}.signin-family a:hover{text-decoration:underline}.paper-more{background:none;border:1px dashed var(--line);border-radius:999px;padding:2px 8px;font-size:.78rem;font-family:inherit;color:var(--l-ink-2);cursor:pointer}.paper-more:hover{border-color:var(--gold);border-style:solid}body:has([data-immersive]) .site-footer,body:has([data-immersive]) .site-header,body:has([data-immersive])>header{display:none}body:has([data-immersive=tutor]) main.container{max-width:none;padding:0}.math-keys{display:flex;gap:6px;overflow-x:auto;padding:6px 4px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.math-keys::-webkit-scrollbar{display:none}.math-key{flex:0 0 auto;min-width:44px;height:44px;border-radius:var(--l-r-sm);border:1px solid var(--l-line);background:var(--l-surface);color:var(--l-ink);font-family:var(--l-serif);font-size:1.0625rem;cursor:pointer}.math-key:active{background:var(--l-surface-sunk)}.math-key:focus-visible{outline:3px solid var(--l-ring);outline-offset:1px}.learner-row{display:flex;justify-content:flex-end}.tutor-block{display:flex;flex-direction:column;gap:10px;max-width:100%}.tutor-voice{display:flex;align-items:center;flex-wrap:wrap;gap:8px;min-height:24px}.tutor-voice-pen{flex-shrink:0;color:var(--l-pen)}.tutor-voice-name{font:600 13px/1.3 var(--l-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--l-pen)}.tutor-answer{font-family:var(--l-serif);font-size:1.125rem;line-height:1.55;color:var(--l-ink);overflow-wrap:anywhere}.tutor-answer .prose h2,.tutor-answer .prose h3{margin:20px 0 6px;font-family:var(--l-serif);font-size:1.25rem;font-weight:600;line-height:1.25;color:var(--l-ink)}.tutor-answer .prose code,.tutor-answer .prose pre{font-size:.875em}.move-chip{display:inline-flex;align-items:center;padding-left:8px;border-left:1px solid var(--l-line);font:500 12px/1.3 var(--l-sans);letter-spacing:.08em;text-transform:uppercase;color:var(--l-ink-2)}.move-chip.good{color:var(--l-ink);font-weight:600}.tutor-cursor{display:inline-block;width:.5em;height:1.05em;margin-left:2px;vertical-align:-.15em;background:var(--l-ink);border-radius:1px;animation:tutor-blink 1s steps(2,start) infinite}@keyframes tutor-blink{to{visibility:hidden}}.chat-window{gap:18px}.mode-chip{min-height:44px;padding:10px 16px}.composer-mic,.composer-plus,.composer-send{min-width:44px;min-height:44px}.autoread{min-height:44px;padding:8px 14px}.chat-toolbar{gap:8px;flex-wrap:wrap}.tutor-sources{margin:0;padding:2px 0 2px 12px;border-left:2px solid var(--l-line);font-family:var(--l-sans);font-size:.875rem;line-height:1.45;color:var(--l-ink-2)}.tutor-sources.unsourced{font-style:italic}.tutor-sources.unavailable{border-left-color:var(--l-ink);color:var(--l-ink);font-weight:500}.band-note{margin:0 0 6px;padding:10px 14px;border-radius:var(--l-r-md);border:1px solid var(--l-line);line-height:1.45;color:var(--l-ink-2)}.band-note,.chat-problem{background:var(--l-surface);font-size:.9375rem}.chat-problem{display:flex;align-items:flex-start;gap:10px;padding:12px 16px;border:1px solid var(--l-ink);border-radius:var(--l-r-md);color:var(--l-ink);line-height:1.5}.chat-problem-icon{flex-shrink:0;margin-top:2px}.tutor-doors{display:flex;flex-direction:column;gap:0;padding:8px 0 4px}.doors-ask{margin:0 0 8px;font-family:var(--l-serif);font-size:1.375rem;font-weight:800;line-height:1.2}.door,.doors-ask{color:var(--l-ink)}.door{display:flex;flex-direction:column;justify-content:center;gap:2px;text-align:left;min-height:68px;padding:12px 0;border:0;border-top:1px solid var(--l-line);border-radius:0;background:none;box-shadow:none;cursor:pointer;font-family:inherit}.tutor-doors .door:last-of-type{border-bottom:1px solid var(--l-line)}a.door,a.door:hover{text-decoration:none}.door:hover:not(:disabled) .door-label{text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px}.door:active:not(:disabled){background:var(--l-surface-sunk)}.door:focus-visible{outline:3px solid var(--l-ring);outline-offset:2px;border-radius:var(--l-r-sm)}.door:disabled{color:var(--l-ink-3);cursor:default}.door-label{font-family:var(--l-serif);font-size:1.1875rem;font-weight:700;line-height:1.25;color:var(--l-ink)}.door:disabled .door-label{color:var(--l-ink-3)}.door-hint{font-size:.875rem;line-height:1.45;color:var(--l-ink-2)}.tutor-doors .chat-toolbar{margin-top:16px;justify-content:flex-start}.grade-ask{padding:8px 0 20px}.grade-ask-title{margin:0 0 12px;font-size:1.15rem;font-weight:700;color:var(--ink)}.grade-chips{display:grid;grid-template-columns:repeat(auto-fill,minmax(112px,1fr));grid-gap:8px;gap:8px}.grade-chip{min-height:52px;padding:0 10px;border-radius:12px;border:1px solid var(--line);background:var(--bg-card);box-shadow:var(--shadow);font-family:inherit;font-size:1rem;font-weight:700;color:var(--ink);cursor:pointer}.grade-chip:hover:not(:disabled){border-color:var(--gold)}.grade-chip.active{background:var(--surface-key);border-color:var(--clay);color:var(--clay-dark)}.grade-chip:disabled{opacity:.55;cursor:default}.grade-ask-note{margin:12px 0 0;font-size:.85rem;color:var(--ink-soft)}.shelf-who{display:flex;align-items:center;gap:10px;margin:0 0 16px;font-size:1rem;font-weight:700;color:var(--ink)}.shelf-change{border:0;background:none;display:inline-flex;align-items:center;min-height:44px;min-width:44px;padding:4px 8px;font-family:inherit;font-size:.85rem;font-weight:500;color:var(--ink-soft);text-decoration:underline;cursor:pointer}.shelf-change:hover{color:var(--clay-dark)}.subject-tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));grid-gap:8px;gap:8px;padding-bottom:8px}.tile{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;min-height:100px;padding:12px 10px;text-align:center;border-radius:16px;border:1px solid var(--line);background:var(--bg-card);box-shadow:var(--shadow);transition:transform .12s ease,border-color .12s ease}.tile:hover{transform:translateY(-2px);border-color:var(--gold);text-decoration:none}.tile:active{transform:none;background:var(--surface-key)}.tile-emoji{font-size:1.55rem;line-height:1}.tile-name{font-size:1rem;font-weight:700;line-height:1.25;color:var(--ink)}.tile-thin{font-size:.72rem;font-weight:500;color:var(--ink-soft)}.tile-practice{font-size:.72rem;font-weight:600;color:var(--green)}.shelf-empty{padding:18px 20px;margin-bottom:20px;border:1px solid var(--line);border-radius:14px;background:var(--surface-raised);box-shadow:var(--shadow)}.shelf-empty p{margin:0 0 10px;color:var(--ink-soft)}:root{--l-canvas:#F7F3E8;--l-surface:#FFFFFF;--l-surface-sunk:#f3eee2;--l-ink:#25292A;--l-ink-2:#3f4446;--l-ink-3:#4a4f51;--l-line:#e6e0d2;--l-line-strong:#25292A;--l-accent:#D9FF70;--l-accent-ink:#25292A;--l-accent-wash:#f3fdd4;--l-accent-strong:#cdf55a;--l-hero:#25292A;--l-hero-ink:#D9FF70;--l-eyebrow:#AE5130;--l-focus:#AE5130;--l-focus-wash:#fde3d8;--l-secure:#2f7a35;--l-secure-wash:#F0F9D2;--l-repair:oklch(0.455 0.086 248);--l-repair-wash:oklch(0.940 0.024 248);--l-miscon:#9a4a1c;--l-miscon-wash:#FFE6DB;--l-caution:oklch(0.520 0.110 68);--l-info:oklch(0.470 0.070 240);--l-future:oklch(0.470 0.100 300);--l-pen:#AE5130;--l-pen-wash:#fde3d8;--l-serif:var(--font-sans),"Atkinson Hyperlegible Next",system-ui,sans-serif;--l-sans:var(--font-sans),"Atkinson Hyperlegible Next",system-ui,sans-serif;--l-ring:oklch(0.520 0.112 250);--l-s1:4px;--l-s2:8px;--l-s3:12px;--l-s4:16px;--l-s5:24px;--l-s6:32px;--l-r-sm:10px;--l-r-md:14px;--l-r-lg:24px;--l-r-pill:999px;--l-tap:72px;--l-tap-2:56px;--l-track:#EBE4D5;--l-help:#8fbbe9;--l-quick:160ms;--l-move:320ms;--l-settle:620ms;--l-write:900ms;--l-ease:cubic-bezier(0.32,0.72,0,1);--l-ease-write:cubic-bezier(0.65,0,0.35,1);--l-ease-bloom:cubic-bezier(0.34,1.56,0.64,1);--l-gold:#f2b84b;--l-tile-1:#FFB294;--l-tile-2:#BBD5F6;--l-tile-3:#D9FF70;--l-tile-4:#D6C3F4;--l-tile-5:#bfe6d2;--l-display:var(--font-display),"Plus Jakarta Sans",system-ui,sans-serif;--l-progress:#FFB294;--l-help-surface:#D6C3F4;--l-explore:#BBD5F6}.btn-ink,h1,h2{font-family:var(--l-display)}.btn-ghost,.btn-ink,.btn-primary,.btn-quiet,.door,button{transition:transform var(--l-quick) var(--l-ease)}.btn-ghost:active,.btn-ink:active,.btn-primary:active,.btn-quiet:active,.door:active,button:active:not(:disabled){transform:scale(.97)}.settle{animation:l-settle var(--l-settle) var(--l-ease) both}@keyframes l-settle{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}.bloom{animation:l-bloom .56s var(--l-ease-bloom) both}@keyframes l-bloom{0%{opacity:0;transform:scale(.6)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.bloom,.settle{animation:none}.btn-ghost,.btn-ink,.btn-primary,.btn-quiet,.door,button{transition:none}.btn-ghost:active,.btn-ink:active,.btn-primary:active,.btn-quiet:active,.door:active,button:active:not(:disabled){transform:none}}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);-webkit-clip-path:inset(50%);clip-path:inset(50%);white-space:nowrap;border:0}.tutor-chat .composer{background:var(--l-canvas);border-top:1px solid var(--l-line);padding-top:var(--l-s3)}.tutor-chat .composer-rest{border-top:0}.tutor-chat .composer-label{display:block;margin:0 0 6px 2px;font-size:.9375rem;line-height:1.3;color:var(--l-ink-2)}.tutor-chat .composer-inner{gap:var(--l-s2);padding:0;border:0;border-radius:0;background:none;box-shadow:none}.tutor-chat .composer-inner:focus-within{border:0;box-shadow:none}.tutor-chat .composer-input{min-height:56px;padding:15px 16px;border:1.5px solid var(--l-ink);border-radius:var(--l-r-md);background:var(--l-surface);color:var(--l-ink);font-size:1.0625rem;line-height:1.4}.tutor-chat .composer-answering .composer-input{padding-top:13px;padding-bottom:13px;font-family:var(--l-serif);font-size:1.25rem}.tutor-chat .composer-input:focus-visible{outline:3px solid var(--l-ring);outline-offset:1px}.tutor-chat .composer-input::placeholder{color:var(--l-ink-3)}.tutor-chat .composer-send{display:grid;place-items:center;width:56px;height:56px;border-radius:var(--l-r-md);background:var(--l-accent);color:var(--l-accent-ink)}.tutor-chat .composer-send:hover:not(:disabled){background:var(--l-accent-strong)}.tutor-chat .composer-send:disabled{background:var(--l-surface);color:var(--l-ink-3);border:1px solid var(--l-line);opacity:1}.tutor-chat .autoread:focus-visible,.tutor-chat .composer-mic:focus-visible,.tutor-chat .composer-plus:focus-visible,.tutor-chat .composer-send:focus-visible,.tutor-chat .mode-chip:focus-visible{outline:3px solid var(--l-ring);outline-offset:2px}.tutor-chat .composer-mic,.tutor-chat .composer-plus{display:grid;place-items:center;width:44px;height:44px;border:0;border-radius:var(--l-r-md);background:none;color:var(--l-ink-2)}.tutor-chat .composer-mic.listening{color:var(--l-accent);background:var(--l-accent-wash);box-shadow:inset 0 0 0 1.5px var(--l-ink);animation:none}.tutor-chat .tutor-modes{flex-wrap:wrap;overflow-x:visible;gap:var(--l-s2)}.tutor-chat .mode-chip{min-height:44px;padding:0 var(--l-s4);border:1px solid var(--l-line);border-radius:var(--l-r-md);background:var(--l-surface);color:var(--l-ink);font-size:.9375rem;font-weight:500}.tutor-chat .mode-chip:hover:not(:disabled){border-color:var(--l-ink);color:var(--l-ink)}@media (max-width:520px){.tutor-chat .composer-inner{flex-wrap:wrap;align-items:center}.tutor-chat .composer-inner>.composer-input{order:0;flex-grow:1;flex-shrink:1;flex-basis:calc(100% - 64px);min-width:0}.tutor-chat .composer-inner>.composer-send{order:1}.tutor-chat .composer-inner>:not(.composer-input):not(.composer-send){order:2}}.tutor-chat .composer-rest{position:static}.tutor-chat .open-question{margin:0 0 var(--l-s3);padding:var(--l-s1) var(--l-s4) var(--l-s3);border:1px solid var(--l-line);border-radius:var(--l-r-lg);background:var(--l-surface);color:var(--l-ink)}.tutor-chat .open-question-head{display:flex;align-items:center;justify-content:space-between;gap:var(--l-s2);min-height:44px;margin-bottom:var(--l-s2);border-bottom:1px solid var(--l-line-strong)}.tutor-chat .open-question-name{font:600 12px/1.3 var(--l-sans);letter-spacing:.12em;text-transform:uppercase;color:var(--l-ink);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.tutor-chat .open-question-tools{display:flex;gap:var(--l-s1);flex-shrink:0}.tutor-chat .open-question-tool{min-height:44px;padding:0 var(--l-s2);border:0;background:none;color:var(--l-ink);font-size:.875rem;font-weight:600;text-decoration:underline;text-underline-offset:3px;cursor:pointer}.tutor-chat .open-question-tool:focus-visible{outline:3px solid var(--l-ring);outline-offset:1px}.tutor-chat .open-question-stem{font-family:var(--l-serif);font-weight:500;font-size:1.1875rem;line-height:1.45}.tutor-chat .open-question-stem .prose p{margin:0}.tutor-chat .open-question-stem.clamped{max-height:4.35em;overflow:hidden}.tutor-chat .open-question-stem .katex-display{margin:.25em 0;overflow-x:auto;overflow-y:hidden}.tutor-chat .open-question-expects{margin:0 0 var(--l-s2);font-size:.9375rem;font-weight:600;color:var(--l-ink)}h1,h2{font-family:var(--l-serif);font-weight:700;letter-spacing:-.015em;line-height:1.12}.paper-header{background:var(--l-canvas)}.paper-header-row{display:flex;align-items:center;justify-content:space-between;min-height:64px;padding-top:12px;padding-bottom:8px}.paper-brand{display:flex;flex-direction:column;justify-content:center;min-height:44px;line-height:1.15;text-decoration:none}.paper-brand,.paper-brand:hover{color:var(--l-ink)}.paper-brand-name{font-family:var(--l-serif);font-size:24px;font-weight:600;letter-spacing:-.01em}.wordmark{display:block;line-height:0}.wordmark img{display:block;width:auto;height:25px}.paper-me{width:44px;height:44px;display:grid;place-items:center;border-radius:50%;background:var(--l-hero)}.paper-me,.paper-me:hover{color:var(--l-hero-ink)}.paper-me:focus-visible{outline:3px solid var(--l-ring);outline-offset:3px}.paper-brand-by{font-size:13px;color:var(--l-ink-2)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:40;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));padding:6px 12px calc(10px + env(safe-area-inset-bottom));background:var(--l-canvas);border-top:1px solid var(--l-line)}.tab{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:52px;font-size:12px;font-weight:500;color:var(--l-ink-2);text-decoration:none}.tab:hover{color:var(--l-ink)}.tab[aria-current=page]{color:var(--l-ink);font-weight:600}.paper-brand:focus-visible,.tab:focus-visible{outline:3px solid var(--l-ring);outline-offset:2px;border-radius:var(--l-r-sm)}body:has(.tabbar) main{padding-bottom:calc(96px + env(safe-area-inset-bottom))}body:has(.tabbar) .site-footer{padding-bottom:calc(28px + 96px + env(safe-area-inset-bottom))}@media (min-width:900px){.tabbar{position:static;display:flex;gap:8px;padding:0;border-top:0;background:transparent}.tab{flex-direction:row;gap:8px;min-height:44px;padding:0 14px;font-size:15px;border-radius:var(--l-r-md)}.tab[aria-current=page]{background:var(--l-surface);box-shadow:inset 0 0 0 1px var(--l-line)}body:has(.tabbar) main{padding-bottom:48px}body:has(.tabbar) .site-footer{padding-bottom:28px}}.btn-ink{display:inline-flex;align-items:center;justify-content:center;gap:10px;min-height:var(--l-tap);padding:0 32px;border:0;border-radius:var(--l-r-pill);background:var(--l-accent);font:700 20px/1 var(--l-sans);text-decoration:none;cursor:pointer}.btn-ink,.btn-ink:hover{color:var(--l-accent-ink)}.btn-ink:hover{background:var(--l-accent-strong)}.btn-quiet{display:inline-flex;align-items:center;justify-content:center;min-height:var(--l-tap-2);padding:0 20px;border:0;border-radius:var(--l-r-pill);background:transparent;color:var(--l-ink-2);font:700 18px/1 var(--l-sans);text-decoration:none;cursor:pointer}.btn-ink:focus-visible,.btn-quiet:focus-visible{outline:3px solid var(--l-ring);outline-offset:3px}.eyebrow{font:600 12px/1.3 var(--l-sans);letter-spacing:.14em;text-transform:uppercase;color:var(--l-ink-2)}.me-page{max-width:560px;margin:0 auto;padding:8px 4px 0}.me-title{font-size:36px;margin:8px 0 20px}.me-sheet{background:var(--l-surface);border:1px solid var(--l-line);border-radius:var(--l-r-lg);padding:20px}.me-sheet p{margin:0}.me-name{font-family:var(--l-serif);font-weight:800;font-size:26px;line-height:1.2;margin-top:4px!important}.me-muted{color:var(--l-ink-2);margin-top:8px!important}.me-actions{display:flex;flex-direction:column;gap:4px;margin-top:18px}.me-list{list-style:none;margin:24px 0 0;padding:0;border-top:1px solid var(--l-line)}.me-row{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;border-bottom:1px solid var(--l-line);color:var(--l-ink);text-decoration:none}.me-row-value{color:var(--l-ink-2)}.me-signout{margin-top:16px;padding-left:0}