.gloss-term{font:inherit;color:var(--accent);background:none;border:none;padding:0;cursor:pointer;text-decoration:none;border-bottom:1px dotted color-mix(in oklab,var(--accent) 60%,transparent)}.gloss-term:hover,.gloss-term:focus-visible{border-bottom-style:solid;outline:none}.gloss-dialog[data-astro-cid-2nujyewu]{border:none;padding:0;background:transparent;color:var(--fg);max-width:100vw;max-height:100dvh}.gloss-dialog[data-astro-cid-2nujyewu]::backdrop{background:color-mix(in oklab,var(--bg) 55%,transparent)}.gloss-card[data-astro-cid-2nujyewu]{background:var(--surface);border:1px solid var(--border);padding:1.25rem 1.25rem 1.5rem;position:relative;font-size:.95rem;line-height:1.6}.gloss-close[data-astro-cid-2nujyewu]{position:absolute;top:.5rem;right:.6rem;background:none;border:none;color:var(--muted);font-size:1.5rem;line-height:1;cursor:pointer;padding:.2rem .4rem;min-width:44px;min-height:44px}.gloss-close[data-astro-cid-2nujyewu]:hover{color:var(--fg)}.gloss-word[data-astro-cid-2nujyewu]{font-family:var(--font-serif, serif);font-size:1.2rem;font-weight:600;margin:0 2rem .5rem 0}.gloss-short[data-astro-cid-2nujyewu]{color:var(--fg);margin:0 0 .6rem;font-weight:500}.gloss-detail[data-astro-cid-2nujyewu]{color:var(--muted);margin:0 0 .9rem}.gloss-full[data-astro-cid-2nujyewu]{color:var(--accent);text-decoration:none;font-size:.85rem}.gloss-full[data-astro-cid-2nujyewu]:hover{text-decoration:underline}.gloss-dialog[data-astro-cid-2nujyewu][open]{margin:0;position:fixed;inset:auto 0 0;width:100%;animation:gloss-up .18s ease}.gloss-card[data-astro-cid-2nujyewu]{border-radius:14px 14px 0 0;max-height:80dvh;overflow-y:auto}@keyframes gloss-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@media(min-width:640px){.gloss-dialog[data-astro-cid-2nujyewu][open]{position:fixed;inset:0;margin:auto;width:min(28rem,92vw);height:fit-content;animation:gloss-fade .15s ease}.gloss-card[data-astro-cid-2nujyewu]{border-radius:12px}@keyframes gloss-fade{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:translateY(0)}}}@media(prefers-reduced-motion:reduce){.gloss-dialog[data-astro-cid-2nujyewu][open]{animation:none}}.lesson-contract[data-astro-cid-wjm4qadg]{margin:0 0 2rem;padding:1rem;border:1px solid var(--border);border-radius:8px;background:var(--surface)}.lesson-contract-main[data-astro-cid-wjm4qadg]{padding-bottom:.85rem;border-bottom:1px solid var(--border)}.lesson-contract-label[data-astro-cid-wjm4qadg]{margin:0 0 .35rem;font-family:var(--font-mono, monospace);font-size:.62rem;font-weight:600;letter-spacing:.16em;text-transform:uppercase;color:var(--accent)}.lesson-contract-question[data-astro-cid-wjm4qadg]{margin:0;font-family:var(--font-serif, serif);font-size:1.12rem;line-height:1.35;color:var(--fg)}.lesson-contract-grid[data-astro-cid-wjm4qadg]{display:grid;gap:.9rem;padding-top:.9rem}.lesson-contract-grid[data-astro-cid-wjm4qadg] p[data-astro-cid-wjm4qadg],.lesson-contract-grid[data-astro-cid-wjm4qadg] ul[data-astro-cid-wjm4qadg]{margin:0;color:var(--fg);font-size:.9rem;line-height:1.5}.lesson-contract-grid[data-astro-cid-wjm4qadg] ul[data-astro-cid-wjm4qadg]{padding-left:1.1rem}.lesson-contract-grid[data-astro-cid-wjm4qadg] li[data-astro-cid-wjm4qadg]{margin:.3rem 0}@media(min-width:720px){.lesson-contract-grid[data-astro-cid-wjm4qadg]{grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}}.esp-article{max-width:min(44rem,100%);width:100%;box-sizing:border-box;margin:0 auto;padding:1rem 1.25rem 4rem;flex:none;overflow-x:clip;overflow-y:visible}.esp-crumb{font-size:.7rem;text-transform:uppercase;letter-spacing:.16em;color:var(--muted);margin-top:1.5rem;font-variant-numeric:tabular-nums}.esp-crumb-dot{margin:0 .45rem}.esp-title{font-size:2.25rem;font-weight:600;line-height:1.15;letter-spacing:0;margin:.6rem 0 .4rem;display:flex;align-items:baseline;gap:.6rem}.esp-title-icon{font-size:1.8rem}.esp-subtitle{color:var(--muted);font-size:1.05rem;margin:0 0 2rem;line-height:1.4}.esp-prose{font-size:1rem;line-height:1.65;overflow-wrap:anywhere;min-width:0;hyphens:auto}.esp-prose :global(svg),.esp-prose :global(img){max-width:100%;height:auto}.esp-prose :global(figure){max-width:100%}.esp-prose h2{margin:2.4rem 0 .9rem;font-size:1.4rem;font-weight:600;letter-spacing:0;border-top:1px solid var(--border);padding-top:1.5rem}.esp-prose h2:first-of-type{border-top:none;padding-top:0}.esp-prose h3{margin:1.6rem 0 .6rem;font-size:1.1rem;font-weight:600}.esp-prose h4{margin:1.2rem 0 .4rem;font-size:.95rem;font-weight:600;color:var(--muted);text-transform:uppercase;letter-spacing:.06em}.esp-prose p{margin:.8rem 0}.esp-prose ul,.esp-prose ol{margin:.8rem 0;padding-left:1.5rem}.esp-prose li{margin:.3rem 0}.esp-prose strong{color:var(--fg);font-weight:700}.esp-prose code{font-family:var(--font-mono);background:var(--surface);padding:.1rem .35rem;border-radius:3px;font-size:.9em}.esp-prose pre{width:100%;max-width:100%;box-sizing:border-box;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1rem;overflow-x:auto;font-size:.85rem;line-height:1.5;margin:1rem 0}.esp-prose pre code{background:none;padding:0}.esp-prose .mermaid{width:100%;max-width:100%;box-sizing:border-box;background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1rem;margin:1rem 0;font-family:var(--font-mono);font-size:.85rem;white-space:pre;overflow-x:auto;color:var(--muted)}.esp-prose .katex-display{width:100%;max-width:100%;box-sizing:border-box;margin:1rem 0;overflow-x:auto;overflow-y:hidden;padding:.25rem 0}.esp-nav{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-top:3rem;padding-top:1.5rem;border-top:1px solid var(--border)}.esp-nav-link{display:flex;gap:.6rem;align-items:center;padding:.85rem 1rem;border:1px solid var(--border);border-radius:8px;text-decoration:none;color:var(--fg);min-height:64px;transition:border-color .1s ease,background .1s ease}.esp-nav-link:hover{border-color:var(--accent);background:var(--surface-soft, var(--surface))}.esp-nav-next{justify-content:flex-end;text-align:right}.esp-nav-arrow{color:var(--muted);font-size:1.1rem}.esp-nav-eyebrow{display:block;font-size:.65rem;text-transform:uppercase;letter-spacing:.16em;color:var(--muted)}.esp-nav-title{display:block;font-size:.85rem;font-weight:500;margin-top:.15rem}@media(min-width:700px){.esp-title{font-size:2.55rem}}
