:root{color-scheme:light;--background:#f3f9fa;--foreground:#12292e;--card:#fff;--muted:#e6f0f2;--muted-foreground:#4a5f66;--primary:#0b7f89;--primary-foreground:#fff;--primary-strong:#086670;--accent:#ddf1f3;--accent-foreground:#075e66;--destructive:#b3261e;--destructive-soft:#fbecea;--assisted:#8a5a00;--assisted-soft:#fcf1dc;--border:#d3e0e4;--input:#7a949b;--ring:#1d6fbf;--scrim:#12292e73;--shadow-card:0 1px 2px #12292e0d, 0 8px 24px #12292e0f;--shadow-sheet:0 -8px 40px #12292e2e;--font-sans:"IBM Plex Sans", system-ui, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, monospace;--text-xs:.8125rem;--text-sm:.875rem;--text-base:1rem;--text-lg:1.125rem;--text-xl:1.375rem;--text-2xl:1.75rem;--text-3xl:2.25rem;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:24px;--space-6:32px;--space-7:48px;--space-8:64px;--radius-bar:2px;--radius-cell:8px;--radius-control:10px;--radius-box:12px;--radius-card:16px;--radius-sheet:20px;--radius-pill:999px;--focus-ring:3px solid var(--ring);--focus-ring-offset:2px;--ease:cubic-bezier(.2, 0, 0, 1);--max-width:1200px;--tool-width:36rem;--prose-width:40rem;--aside-width:24rem;--gutter:16px}:root[data-theme=dark]{color-scheme:dark;--background:#0d1a1d;--foreground:#e3eef0;--card:#13252a;--muted:#1b3035;--muted-foreground:#9bb3b9;--primary:#3db8c2;--primary-foreground:#04262a;--primary-strong:#6fd0d8;--accent:#123c41;--accent-foreground:#8edde3;--destructive:#f08a80;--destructive-soft:#3a1e1c;--assisted:#e7b65a;--assisted-soft:#33270f;--border:#26404a;--input:#5e7c85;--ring:#7db8f0;--scrim:#0009;--shadow-card:none;--shadow-sheet:0 -8px 40px #00000080}@media (prefers-color-scheme:dark){:root:not([data-theme=light]){color-scheme:dark;--background:#0d1a1d;--foreground:#e3eef0;--card:#13252a;--muted:#1b3035;--muted-foreground:#9bb3b9;--primary:#3db8c2;--primary-foreground:#04262a;--primary-strong:#6fd0d8;--accent:#123c41;--accent-foreground:#8edde3;--destructive:#f08a80;--destructive-soft:#3a1e1c;--assisted:#e7b65a;--assisted-soft:#33270f;--border:#26404a;--input:#5e7c85;--ring:#7db8f0;--scrim:#0009;--shadow-card:none;--shadow-sheet:0 -8px 40px #00000080}}@media (width>=721px){:root{--gutter:clamp(1rem, 4vw, 3rem)}}:root:not([data-script=latin]){--font-sans:system-ui, "PingFang SC", "Noto Sans SC", sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, monospace}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}body{background:var(--background);color:var(--foreground);font-family:var(--font-sans);font-size:var(--text-base);-webkit-font-smoothing:antialiased;margin:0;line-height:1.55}img,svg{max-width:100%;height:auto}h1,h2,h3,h4{margin:0 0 var(--space-3);letter-spacing:-.01em;overflow-wrap:anywhere;font-weight:600;line-height:1.2}p,ul,ol{margin:0 0 var(--space-4)}a{color:var(--primary-strong);text-underline-offset:.18em}a:hover{text-decoration-thickness:2px}:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}code,.num{font-family:var(--font-mono);font-variant-numeric:tabular-nums}.num{letter-spacing:.02em;white-space:nowrap;font-weight:600}code{border:1px solid var(--border);border-radius:var(--radius-bar);background:var(--muted);padding:.05em .35em;font-size:.9375em}.sr-only,.visually-hidden{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.skip-link{top:-100%;z-index:20;padding:var(--space-3) var(--space-4);border-radius:var(--radius-control);background:var(--card);color:var(--foreground);box-shadow:var(--shadow-card);position:absolute;inset-inline-start:var(--space-4)}.skip-link:focus{top:var(--space-4)}.container{width:100%;max-width:var(--max-width);padding-inline:var(--gutter);margin-inline:auto}.text-muted{color:var(--muted-foreground)}.small{font-size:var(--text-sm)}.button{justify-content:center;align-items:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-5);border-radius:var(--radius-control);font:600 var(--text-base) / 1.2 var(--font-sans);cursor:pointer;transition:background-color .12s var(--ease), color .12s var(--ease);border:1px solid #0000;text-decoration:none;display:inline-flex}.button:hover{text-decoration:none}.button-primary{background:var(--primary);color:var(--primary-foreground)}.button-primary:hover{background:var(--primary-strong);color:var(--primary-foreground)}.button-secondary{border-color:var(--border);background:var(--card);color:var(--foreground)}.button-secondary:hover{background:var(--muted)}.button-tint{min-height:44px;padding:0 var(--space-4);background:var(--accent);color:var(--accent-foreground);font-size:var(--text-sm)}.button-tint:hover{background:color-mix(in srgb, var(--accent) 70%, var(--primary));color:var(--accent-foreground)}.button-tint[aria-current=page]{background:var(--muted);color:var(--foreground)}.button-lg{min-height:52px;padding:0 var(--space-6);font-size:var(--text-lg)}.site-header{border-bottom:1px solid var(--border);background:var(--card)}.header-inner{align-items:center;gap:var(--space-2);min-height:56px;padding-block:var(--space-2);flex-wrap:wrap;display:flex}.wordmark{padding-block:var(--space-2);color:var(--foreground);font-size:var(--text-base);letter-spacing:-.01em;margin-inline-end:auto;font-weight:600;text-decoration:none}.nav-list,.lang-list,.footer-links,.topic-rows,.steps{margin:0;padding:0;list-style:none}.site-nav a,.nav-topics>summary{min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-cell);color:var(--foreground);font-size:var(--text-sm);align-items:center;font-weight:600;text-decoration:none;display:flex}.site-nav a:hover,.nav-topics>summary:hover,.site-nav a[aria-current=page],.nav-topics>summary[aria-current]{background:var(--muted)}.nav-topics>summary{cursor:pointer;gap:6px;list-style:none}.nav-topics>summary::-webkit-details-marker{display:none}.nav-topics>summary:after{content:"";border-inline-end:2px solid;border-bottom:2px solid;width:.45em;height:.45em;margin-top:-.2em;transform:rotate(45deg)}.nav-topics[open]>summary:after{margin-top:.2em;transform:rotate(-135deg)}.nav-topics ul{margin:0;padding:0;list-style:none}.lang-list{gap:2px;display:flex}.lang-list a{min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-pill);color:var(--muted-foreground);font-size:var(--text-sm);align-items:center;font-weight:400;text-decoration:none;display:inline-flex}.lang-list a:hover{background:var(--muted);color:var(--foreground)}.lang-list a[aria-current=page]{background:var(--muted);color:var(--foreground);font-weight:600}.nav-toggle{clip:rect(0, 0, 0, 0);width:1px;height:1px;margin:-1px;position:absolute;overflow:hidden}.nav-toggle-label{min-height:44px;padding:0 var(--space-3);border:1px solid var(--border);border-radius:var(--radius-control);background:var(--card);font-size:var(--text-sm);cursor:pointer;user-select:none;align-items:center;font-weight:600;display:inline-flex}.nav-toggle:focus-visible+.nav-toggle-label{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.nav-toggle:checked+.nav-toggle-label{background:var(--muted)}@media (width<=720px){.site-nav{padding-block:var(--space-2) var(--space-1);border-top:1px solid var(--border);flex-basis:100%;order:10;display:none}.nav-toggle:checked~.site-nav{display:block}.nav-topics[open]>ul,.nav-topics>ul{padding-inline-start:var(--space-3)}.lang-switch-header{margin-top:var(--space-2);padding-top:var(--space-2);border-top:1px solid var(--border)}}@media (width>=721px){.header-inner{gap:var(--space-3);flex-wrap:nowrap;min-height:64px}.nav-toggle-label{display:none}.site-nav{align-items:center;gap:var(--space-3);display:flex}.nav-list{gap:2px;display:flex}.nav-topics{position:relative}.nav-topics>ul{top:calc(100% + 6px);z-index:10;min-width:14rem;padding:var(--space-2);border:1px solid var(--border);border-radius:var(--radius-box);background:var(--card);box-shadow:var(--shadow-card);position:absolute;inset-inline-start:0}.lang-switch-header .lang-list{border:1px solid var(--border);border-radius:var(--radius-pill)}}.site-main{padding-block:var(--space-4) var(--space-7)}.site-main:focus{outline:none}.page-header{max-width:52rem;padding-block:var(--space-5) var(--space-4)}.page-header h1,.topic-intro h1{letter-spacing:-.02em;font-size:clamp(1.75rem,4vw,2.5rem);line-height:1.1}.lead{max-width:var(--prose-width);color:var(--muted-foreground);font-size:var(--text-lg)}.section{padding-block:var(--space-5)}.section+.section{border-top:1px solid var(--border)}.section h2,.home-section h2,.topic-summary h2{font-size:var(--text-xl)}.list{max-width:var(--prose-width);padding-inline-start:1.25rem}.list li{margin-bottom:var(--space-2)}.list li::marker{color:var(--primary)}.hero{gap:var(--space-5);padding-block:var(--space-5) var(--space-6);grid-template-areas:"copy""specimen""actions";display:grid}.hero-copy{grid-area:copy}.hero h1{letter-spacing:-.02em;max-width:16ch;font-size:clamp(1.75rem,5.2vw,3.25rem);line-height:1.08}.hero .lead{max-width:34rem;margin-bottom:0}.specimen{padding:var(--space-4);border:1px solid var(--border);border-radius:var(--radius-card);background:var(--card);grid-area:specimen;margin:0}.specimen figcaption{color:var(--muted-foreground);font-size:var(--text-xs);margin-top:10px}.ribbon{gap:var(--space-2) clamp(14px, 3vw, 28px);flex-wrap:wrap;display:flex}.ribbon__group{gap:2px;display:grid}.ribbon__words{color:var(--muted-foreground);font-size:var(--text-xs);white-space:nowrap}.ribbon__digits{font:600 clamp(2.25rem, 9vw, 3.25rem) / 1.05 var(--font-mono);font-variant-numeric:tabular-nums;letter-spacing:.04em}.example-list{margin:var(--space-4) 0 0;padding:0;list-style:none;display:grid}.example-list--columns-2{column-gap:var(--space-4);grid-template-columns:repeat(2,minmax(0,1fr))}.example{gap:var(--space-2);padding-block:var(--space-4);border-top:1px solid var(--border);display:grid}.ribbon--example .ribbon__digits{font-size:clamp(1.5rem,6vw,2rem)}.clip-player{width:100%;max-width:22rem;height:44px}.drill-list{padding-top:var(--space-4);border-top:1px solid var(--border)}.drill-list__label{margin:0 0 var(--space-2);color:var(--muted-foreground);font-size:var(--text-sm)}.drill-list ul{gap:var(--space-2);flex-wrap:wrap;margin:0;padding:0;list-style:none;display:flex}.specimen .clip-player{margin-top:var(--space-3)}.example__drill,.drill-link{color:var(--primary-strong);font-size:var(--text-sm);font-weight:600}.drill-link{white-space:nowrap;margin-inline-start:var(--space-2)}.hero-actions{grid-area:actions}.hero-actions .button{width:100%}.hero-hint{color:var(--muted-foreground);font-size:var(--text-sm);text-align:center;margin:10px 0 0}@media (width>=720px){.hero{align-items:center;column-gap:var(--space-8);padding-block:var(--space-8) var(--space-7);grid-template-columns:1fr 1fr;grid-template-areas:"copy specimen""actions specimen"}.hero-copy{align-self:end}.hero-actions{align-items:center;gap:var(--space-4) var(--space-5);flex-wrap:wrap;align-self:start;display:flex}.hero-actions .button{width:auto}.hero-hint{text-align:start;margin:0}.specimen{padding:var(--space-6) var(--space-6) var(--space-5)}}.home-grid{gap:0 var(--space-8);display:grid}@media (width>=960px){.home-grid{grid-template-columns:1fr 1fr}}.home-section{padding-block:var(--space-5);border-top:1px solid var(--border)}@media (width>=960px){.home-grid .home-section{border-top:0}}.topic-row{gap:2px var(--space-4);padding:var(--space-3) 0;color:inherit;grid-template-columns:1fr auto;align-items:baseline;text-decoration:none;display:grid}.topic-rows li+li .topic-row{border-top:1px solid var(--border)}.topic-row__name{color:var(--primary-strong);font-weight:600}.topic-row:hover .topic-row__name{text-decoration:underline 2px}.topic-row__specimen{font-size:var(--text-lg);grid-row:span 2;align-self:center}.topic-row__desc{color:var(--muted-foreground);font-size:var(--text-sm)}.gloss{border-collapse:collapse;width:100%}.gloss th,.gloss td{padding:var(--space-3) 0;border-top:1px solid var(--border);vertical-align:baseline}.gloss tr:first-child th,.gloss tr:first-child td{border-top:0}.gloss th{text-align:start;font-weight:400}.gloss__said{display:block}.gloss__note{color:var(--muted-foreground);font-size:var(--text-xs);display:block}.gloss td{font-size:var(--text-lg);text-align:end;padding-inline-start:var(--space-4)}.steps{gap:var(--space-3);counter-reset:step;display:grid}.steps li{gap:0 var(--space-3);counter-increment:step;grid-template-columns:2rem 1fr;display:grid}.steps li:before{content:counter(step);background:var(--accent);width:2rem;height:2rem;color:var(--accent-foreground);font:600 var(--text-sm) / 1 var(--font-mono);border-radius:50%;grid-row:span 2;place-items:center;display:grid}.steps__title{font-weight:600}.steps__text{color:var(--muted-foreground);font-size:var(--text-sm)}@media (width>=960px){.steps{gap:var(--space-5);grid-template-columns:repeat(4,1fr)}}.tool-frame{margin-inline:calc(-1 * var(--gutter));padding:var(--space-5) var(--gutter);border-block:1px solid var(--border);background:var(--card)}.tool-frame noscript{color:var(--muted-foreground)}.tool-loading{color:var(--muted-foreground);font-size:var(--text-sm);margin:0}@media (scripting:none){.tool-loading,.enl-island-placeholder .enl-hint{display:none}}.tool-note{max-width:var(--tool-width);margin:var(--space-3) 0 0;color:var(--muted-foreground);font-size:var(--text-xs);line-height:1.5}@media (width>=480px){.tool-frame{max-width:calc(var(--tool-width) + 2 * var(--space-5));padding:var(--space-5);border:1px solid var(--border);border-radius:var(--radius-card);box-shadow:var(--shadow-card);margin-inline:0}.tool-frame--wide{max-width:none}}.practice-intro h1{margin-bottom:var(--space-3);font-size:var(--text-2xl)}@media (width>=720px){.practice-page{max-width:calc(var(--tool-width) + 2 * var(--space-5) + 2 * var(--gutter));padding-top:var(--space-6)}}body:has(.enl-practice[data-screen=session]) .practice-intro{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}@media (width<=959px){body:has(.enl-practice[data-screen=session]) .topic-intro{clip:rect(0, 0, 0, 0);width:1px;height:1px;position:absolute;overflow:hidden}}.topic-intro{padding-block:var(--space-5) var(--space-4)}.topic-intro .lead{margin-bottom:0}.topic-tool{margin-bottom:var(--space-5)}.topic-summary{padding-block:var(--space-4) var(--space-5)}.topic-summary ul{max-width:var(--prose-width);margin:0;padding-inline-start:1.25rem}.topic-summary li{margin-bottom:var(--space-2)}.topic-summary li::marker{color:var(--primary)}.topic-body>.section:first-of-type,.topic-summary+.section{border-top:1px solid var(--border)}.topic-body p{max-width:var(--prose-width)}@media (width>=960px){.topic-layout{grid-template-columns:minmax(0, var(--prose-width)) var(--aside-width);column-gap:var(--space-8);grid-template-rows:auto 1fr;grid-template-areas:"intro tool""body tool";justify-content:space-between;display:grid}.topic-intro{padding-top:var(--space-7);grid-area:intro}.topic-body{grid-area:body}.topic-tool{top:var(--space-5);margin-top:var(--space-7);max-height:calc(100dvh - 2 * var(--space-5));grid-area:tool;align-self:start;padding:4px;position:sticky;overflow-y:auto}.topic-tool .tool-frame{max-width:none}}.prose{max-width:var(--prose-width)}.prose h2{margin-top:var(--space-6);font-size:var(--text-xl)}.prose h2:first-child{margin-top:0}.prose h3{margin-top:var(--space-5);font-size:var(--text-lg)}.prose ul,.prose ol{padding-inline-start:1.25rem}.prose li{margin-bottom:var(--space-2)}.prose li::marker{color:var(--primary)}.table-wrap{margin-bottom:var(--space-4);overflow-x:auto}table{width:100%;max-width:var(--prose-width);border-collapse:collapse;font-size:var(--text-sm)}th,td{padding:10px var(--space-3);border-bottom:1px solid var(--border);text-align:start;vertical-align:top}thead th{background:var(--muted);color:var(--muted-foreground);font-size:var(--text-xs);font-weight:600}tbody th{font-weight:600}td .num{font-size:var(--text-base)}.faq details{max-width:var(--prose-width);border-top:1px solid var(--border)}.faq details:last-child{border-bottom:1px solid var(--border)}.faq summary{justify-content:space-between;align-items:center;gap:var(--space-3);min-height:48px;padding-block:var(--space-2);cursor:pointer;font-weight:600;list-style:none;display:flex}.faq summary::-webkit-details-marker{display:none}.faq summary:after{content:"+";content:"+" / "";color:var(--muted-foreground);font:600 var(--text-lg) / 1 var(--font-mono);flex:none}.faq details[open] summary:after{content:"−";content:"−" / ""}.faq details>div{padding-bottom:var(--space-4);color:var(--muted-foreground)}.faq details>div p:last-child{margin-bottom:0}.site-footer{padding-block:var(--space-6) var(--space-6);border-top:1px solid var(--border);background:var(--card);color:var(--muted-foreground);font-size:var(--text-sm)}.footer-grid{gap:var(--space-5) var(--space-7);grid-template-columns:1fr 1fr;display:grid}.footer-grid>div{grid-column:1/-1}@media (width>=721px){.footer-grid{grid-template-columns:repeat(3,minmax(0,max-content))}.footer-grid>div{grid-column:auto}}.footer-grid h2{margin-bottom:var(--space-1);color:var(--foreground);font-size:var(--text-sm);letter-spacing:0;font-weight:600}.footer-links a{min-height:44px;color:var(--muted-foreground);align-items:center;text-decoration:none;display:inline-flex}.footer-links a:hover{color:var(--foreground);text-decoration:underline}.footer-links a[aria-current]{color:var(--foreground);font-weight:600}.lang-switch-footer .lang-list a{padding-inline:var(--space-3)}.lang-switch-footer .lang-list li:first-child a{margin-inline-start:calc(-1 * var(--space-3))}.footer-note{max-width:22rem;margin:var(--space-1) 0 0;font-size:var(--text-xs)}.footer-notes{max-width:52rem;margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border)}.footer-notes p{margin-bottom:var(--space-2);font-size:var(--text-xs)}.not-found{padding-block:var(--space-8);text-align:center}.not-found .lead{margin-inline:auto}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
