._rail_1kxwt_2{position:fixed;top:0;left:0;right:0;height:2px;z-index:200;pointer-events:none;background:transparent}._fill_1kxwt_16{height:100%;transform-origin:left center;background:var(--color-accent-solid);will-change:transform}:root{color-scheme:light;--n-0: #ffffff;--n-50: #f8f9f8;--n-100: #eff2f1;--n-200: #e1e6e5;--n-300: #c8d0cf;--n-400: #889493;--n-500: #5e6b6a;--n-600: #566265;--n-700: #3d474a;--n-800: #262e31;--n-900: #161c1e;--n-950: #0d1112;--a-100: #dfeaee;--a-200: #bcd3db;--a-300: #8fb6c4;--a-400: #5b91a5;--a-500: #2f6478;--a-600: #255262;--a-700: #1c404d;--a-800: #143039;--ok-100: #e0eee2;--ok-500: #4a7a54;--ok-700: #325a3a;--err-100: #f5e1dd;--err-500: #b04a3b;--err-700: #82352a;--note-100: #f6ebdd;--note-500: #9a5a22;--note-700: #6e3f16;--color-bg-page: var(--n-50);--color-bg-surface: var(--n-0);--color-bg-subtle: var(--n-100);--color-bg-hover: var(--n-200);--color-bg-inverse: var(--n-900);--color-bg-scrim: rgb(13 17 18 / .55);--color-text: var(--n-900);--color-text-secondary: var(--n-600);--color-text-muted: var(--n-500);--color-text-inverse: var(--n-50);--color-text-on-accent: #ffffff;--color-brand: #00167a;--color-border-subtle: var(--n-200);--color-border: var(--n-300);--color-border-strong: var(--n-400);--color-separator: var(--n-200);--color-focus: var(--a-500);--color-accent-subtle: var(--a-100);--color-accent-border: var(--a-300);--color-accent-solid: var(--a-500);--color-accent-solid-hover: var(--a-600);--color-accent-text: var(--a-700);--color-ok-subtle: var(--ok-100);--color-ok-solid: var(--ok-500);--color-ok-text: var(--ok-700);--color-err-subtle: var(--err-100);--color-err-solid: var(--err-500);--color-err-text: var(--err-700);--color-note-subtle: var(--note-100);--color-note-solid: var(--note-500);--color-note-text: var(--note-700);--track-foundations: #2f4a52;--track-diagnostics: #4c5a3c;--track-practice: #7a4a38;--font-serif: "Source Serif 4", "Iowan Old Style", Georgia, "Hiragino Mincho ProN", "Yu Mincho", "Noto Serif JP", serif;--font-sans: "Source Sans 3", system-ui, -apple-system, "Segoe UI", "Hiragino Sans", "Yu Gothic UI", "Noto Sans JP", sans-serif;--font-heading: var(--font-serif);--font-body: var(--font-sans);--text-display: clamp(2rem, 1.4rem + 2.6vw, 3.25rem);--lh-display: 1.08;--text-title: clamp(1.5rem, 1.3rem + .9vw, 2rem);--lh-title: 1.15;--text-heading: 1.25rem;--lh-heading: 1.3;--text-subheading: 1.0625rem;--lh-subheading: 1.4;--text-body: 1rem;--lh-body: 1.6;--text-small: .875rem;--lh-small: 1.5;--text-caption: .8125rem;--lh-caption: 1.45;--tracking-display: -.015em;--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-xs: var(--space-2);--space-sm: var(--space-4);--space-md: var(--space-6);--space-lg: var(--space-10);--space-xl: var(--space-16);--content-max: 72rem;--measure: 65ch;--gutter: clamp(1rem, 4vw, 2.5rem);--header-height: 3.5rem;--radius-1: 4px;--radius-2: 8px;--radius-3: 12px;--radius-pill: 999px;--shadow-border: 0 0 0 1px rgb(0 0 0 / .06), 0 1px 2px -1px rgb(0 0 0 / .06), 0 2px 4px 0 rgb(0 0 0 / .04);--shadow-border-hover: 0 0 0 1px rgb(0 0 0 / .08), 0 1px 2px -1px rgb(0 0 0 / .08), 0 2px 4px 0 rgb(0 0 0 / .06);--shadow-raised: 0 0 0 1px rgb(0 0 0 / .06), 0 4px 8px -2px rgb(0 0 0 / .08), 0 12px 24px -8px rgb(0 0 0 / .1);--shadow-overlay: 0 0 0 1px rgb(0 0 0 / .06), 0 12px 32px -8px rgb(0 0 0 / .22), 0 24px 48px -16px rgb(0 0 0 / .18);--image-outline: 1px solid rgb(0 0 0 / .1);--ease-out: cubic-bezier(.23, 1, .32, 1);--ease-in-out: cubic-bezier(.77, 0, .175, 1);--ease-drawer: cubic-bezier(.32, .72, 0, 1);--dur-fast: .12s;--dur-base: .2s;--dur-slow: .3s;--bg: var(--color-bg-page);--text: var(--color-text);--accent: var(--color-text-secondary);--accent-rgb: 86, 98, 101;--correct: var(--color-ok-solid);--correct-rgb: 74, 122, 84;--incorrect: var(--color-err-solid);--incorrect-rgb: 176, 74, 59;--seal: var(--color-note-solid)}:root[data-theme=dark]{--color-brand: var(--color-text);color-scheme:dark;--color-bg-page: #121617;--color-bg-surface: #191f21;--color-bg-subtle: #1f2628;--color-bg-hover: #273032;--color-bg-inverse: #eef1f0;--color-bg-scrim: rgb(0 0 0 / .6);--color-text: #e8ecea;--color-text-secondary: #a4aeae;--color-text-muted: #8a9595;--color-text-inverse: #161c1e;--color-text-on-accent: #ffffff;--color-border-subtle: #263032;--color-border: #34403f;--color-border-strong: #5b6b6e;--color-separator: #263032;--color-focus: #8fbccb;--color-accent-subtle: #1a2f38;--color-accent-border: #35606f;--color-accent-solid: #3a7a90;--color-accent-solid-hover: #4a8ba1;--color-accent-text: #8fbccb;--color-ok-subtle: #1c2e20;--color-ok-solid: #6a9e74;--color-ok-text: #a9d2b0;--color-err-subtle: #33201c;--color-err-solid: #d0705e;--color-err-text: #e9a596;--color-note-subtle: #33261a;--color-note-solid: #c8823f;--color-note-text: #e6b481;--track-foundations: #3d6069;--track-diagnostics: #61724d;--track-practice: #9a5f49;--shadow-border: 0 0 0 1px rgb(255 255 255 / .08);--shadow-border-hover: 0 0 0 1px rgb(255 255 255 / .13);--shadow-raised: 0 0 0 1px rgb(255 255 255 / .1), 0 8px 24px -8px rgb(0 0 0 / .5);--shadow-overlay: 0 0 0 1px rgb(255 255 255 / .1), 0 16px 40px -8px rgb(0 0 0 / .6);--image-outline: 1px solid rgb(255 255 255 / .1);--accent-rgb: 164, 174, 174;--correct-rgb: 106, 158, 116;--incorrect-rgb: 208, 112, 94}:root[lang=ja]{--lh-body: 1.8;--lh-small: 1.7;--lh-caption: 1.6;--lh-heading: 1.4;--lh-title: 1.3;--lh-display: 1.2;--tracking-display: 0}@media (max-width: 48em){:root{--space-lg: 1.75rem;--space-xl: 2.75rem}}*,*:before,*:after{box-sizing:border-box}html,body{margin:0;padding:0;height:100%}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scrollbar-color:var(--color-border-strong) transparent}::selection{background:var(--a-200);color:var(--n-900)}:root[data-theme=dark] ::selection{background:var(--a-700);color:var(--n-50)}body{background-color:var(--color-bg-page);color:var(--color-text);font-family:var(--font-body);font-size:var(--text-body);line-height:var(--lh-body)}input,textarea,select,button{font-family:inherit;font-size:max(1rem,1em);accent-color:var(--color-accent-solid)}button,a,[role=button]{touch-action:manipulation}button{-webkit-user-select:none;user-select:none}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:1px}h1,h2,h3,h4{text-wrap:balance;overflow-wrap:anywhere}p{overflow-wrap:anywhere}img,video{max-width:100%}a{color:var(--color-accent-text);text-decoration-thickness:from-font;text-underline-offset:.15em}.container{width:100%;max-width:var(--content-max);margin-inline:auto;padding-inline:var(--gutter)}.container-narrow{width:100%;max-width:48rem;margin-inline:auto;padding-inline:var(--gutter)}.prose{max-width:var(--measure);line-height:1.7}.prose p{text-wrap:pretty}.btn{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:2.75rem;padding:.5rem 1.25rem;font-family:var(--font-body);font-size:var(--text-body);font-weight:500;line-height:1.2;text-align:center;text-decoration:none;color:var(--color-text);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-1);cursor:pointer;transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease,border-color var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.btn:active{transform:scale(.97)}.btn:disabled,.btn[aria-disabled=true]{opacity:.5;cursor:default;transform:none}.btn-primary{color:var(--color-text-on-accent);background:var(--color-accent-solid);border-color:var(--color-accent-solid)}.btn-secondary{color:var(--color-text);background:var(--color-bg-surface);border-color:var(--color-border)}.btn-quiet{color:var(--color-accent-text);background:transparent;border-color:transparent}.btn-sm{min-height:2.25rem;padding:.25rem .875rem;font-size:var(--text-small)}.btn-icon{width:2.75rem;padding:0}.btn-icon.btn-sm{width:2.25rem}@media (hover: hover) and (pointer: fine){.btn-primary:hover{background:var(--color-accent-solid-hover);border-color:var(--color-accent-solid-hover)}.btn-secondary:hover{background:var(--color-bg-hover);border-color:var(--color-border-strong)}.btn-quiet:hover{background:var(--color-bg-subtle)}}.link{font:inherit;color:var(--color-accent-text);background:none;border:none;padding:0;cursor:pointer;text-decoration:underline;text-decoration-thickness:from-font;text-underline-offset:.15em}@media (hover: hover) and (pointer: fine){.link:hover{color:var(--color-text)}}.field{width:100%;min-height:2.75rem;padding:.5rem .75rem;font-family:var(--font-body);font-size:var(--text-body);line-height:1.4;color:var(--color-text);background:var(--color-bg-surface);border:1px solid var(--color-border-strong);border-radius:var(--radius-1);transition:border-color var(--dur-fast) ease}.field::placeholder{color:var(--color-text-muted)}.field:focus-visible{border-color:var(--color-accent-solid);outline:2px solid var(--color-focus);outline-offset:0}.field[aria-invalid=true]{border-color:var(--color-err-solid)}textarea.field{resize:vertical;line-height:var(--lh-body)}.field-label{display:block;font-size:var(--text-small);font-weight:500;color:var(--color-text);margin-bottom:var(--space-1)}.field-hint{font-size:var(--text-caption);line-height:var(--lh-caption);color:var(--color-text-secondary);margin:var(--space-1) 0 0}.field-error{font-size:var(--text-caption);line-height:var(--lh-caption);color:var(--color-err-text);margin:var(--space-1) 0 0}.chip{display:inline-flex;align-items:center;min-height:2.25rem;padding:.25rem .875rem;font-family:var(--font-body);font-size:var(--text-small);line-height:1.2;color:var(--color-text);background:var(--color-bg-surface);border:1px solid var(--color-border);border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease,border-color var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.chip:active{transform:scale(.97)}.chip[aria-pressed=true],.chip[aria-current]{color:var(--color-text-on-accent);background:var(--color-accent-solid);border-color:var(--color-accent-solid)}@media (hover: hover) and (pointer: fine){.chip:not([aria-pressed=true]):hover{border-color:var(--color-border-strong);background:var(--color-bg-hover)}}.card{background:var(--color-bg-surface);border-radius:var(--radius-2);box-shadow:var(--shadow-border)}.card-link{display:block;width:100%;text-align:left;font:inherit;color:inherit;background:var(--color-bg-surface);border:none;border-radius:var(--radius-2);box-shadow:var(--shadow-border);padding:0;cursor:pointer;transition:box-shadow var(--dur-fast) ease,transform var(--dur-fast) var(--ease-out)}.card-link:active{transform:scale(.99)}@media (hover: hover) and (pointer: fine){.card-link:hover{box-shadow:var(--shadow-border-hover)}}.img-outlined{outline:var(--image-outline);outline-offset:-1px}.notice{display:flex;flex-wrap:wrap;align-items:baseline;gap:var(--space-2);max-width:48rem;padding:var(--space-3) var(--space-4);font-size:var(--text-small);line-height:var(--lh-small);color:var(--color-text);background:var(--color-note-subtle);border-radius:var(--radius-2)}.notice-tag{flex-shrink:0;font-size:var(--text-caption);font-weight:600;color:var(--color-note-text)}.dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:60;display:flex;align-items:center;justify-content:center;padding:var(--space-4);padding-bottom:calc(var(--space-4) + env(safe-area-inset-bottom,0px));background:var(--color-bg-scrim);animation:dialog-backdrop-in var(--dur-base) ease both}.dialog-panel{width:min(34rem,100%);max-height:min(90svh,100%);overflow-y:auto;overscroll-behavior:contain;background:var(--color-bg-surface);border-radius:var(--radius-3);box-shadow:var(--shadow-overlay);padding:var(--space-6);animation:dialog-panel-in var(--dur-base) var(--ease-out) both}.dialog-panel:focus{outline:none}@keyframes dialog-backdrop-in{0%{opacity:0}}@keyframes dialog-panel-in{0%{opacity:0;transform:scale(.96)}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.tnum{font-variant-numeric:tabular-nums}@media (prefers-reduced-motion: reduce){.btn,.chip,.card-link{transition-property:background-color,color,border-color,box-shadow}.btn:active,.chip:active,.card-link:active{transform:none}.dialog-panel{animation:dialog-backdrop-in var(--dur-base) ease both}}._toggle_1qte2_2{display:inline-flex;padding:2px;background:var(--color-bg-subtle);border-radius:var(--radius-pill);margin:0 var(--space-1)}._button_1qte2_10{display:inline-flex;align-items:center;gap:.4rem;min-height:2rem;padding:0 .65rem;font-family:var(--font-body);font-size:var(--text-caption);font-weight:500;line-height:1;letter-spacing:.02em;color:var(--color-text-secondary);background:transparent;border:none;border-radius:var(--radius-pill);cursor:pointer;transition:background-color var(--dur-fast) ease,color var(--dur-fast) ease,box-shadow var(--dur-fast) ease}._button_1qte2_10[aria-pressed=true]{color:var(--color-text);background:var(--color-bg-surface);box-shadow:var(--shadow-border)}@media (hover: hover) and (pointer: fine){._button_1qte2_10:not([aria-pressed=true]):hover{color:var(--color-text)}}._flag_1qte2_46{width:1.25rem;height:.875rem;border-radius:2px;outline:1px solid rgb(0 0 0 / .12);outline-offset:-1px;flex-shrink:0}._label_1qte2_55{font-variant-numeric:tabular-nums}@media (max-width: 48em){._toggle_1qte2_2{margin:0}._button_1qte2_10{min-height:2.5rem}}@media (max-width: 30em){._button_1qte2_10{padding:0 .5rem;gap:.3rem}}
