/*! tailwindcss v4.3.3 | MIT License | https://tailwindcss.com */
@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--tw-blur:initial;--tw-brightness:initial;--tw-contrast:initial;--tw-grayscale:initial;--tw-hue-rotate:initial;--tw-invert:initial;--tw-opacity:initial;--tw-saturate:initial;--tw-sepia:initial;--tw-drop-shadow:initial;--tw-drop-shadow-color:initial;--tw-drop-shadow-alpha:100%;--tw-drop-shadow-size:initial;--tw-font-weight:initial;--tw-border-style:solid;--tw-ordinal:initial;--tw-slashed-zero:initial;--tw-numeric-figure:initial;--tw-numeric-spacing:initial;--tw-numeric-fraction:initial;--tw-shadow:0 0 #0000;--tw-shadow-color:initial;--tw-shadow-alpha:100%;--tw-inset-shadow:0 0 #0000;--tw-inset-shadow-color:initial;--tw-inset-shadow-alpha:100%;--tw-ring-color:initial;--tw-ring-shadow:0 0 #0000;--tw-inset-ring-color:initial;--tw-inset-ring-shadow:0 0 #0000;--tw-ring-inset:initial;--tw-ring-offset-width:0px;--tw-ring-offset-color:#fff;--tw-ring-offset-shadow:0 0 #0000;--tw-translate-x:0;--tw-translate-y:0;--tw-translate-z:0;--tw-leading:initial;--tw-tracking:initial;--tw-divide-y-reverse:0}}}@layer theme{:root,:host{--font-sans:system-ui, -apple-system, "Segoe UI", "Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", Roboto, sans-serif;--font-mono:ui-monospace, "SF Mono", Menlo, Consolas, monospace;--color-blue-500:oklch(62.3% .214 259.815);--spacing:.25rem;--container-md:28rem;--container-3xl:48rem;--text-xs:.75rem;--text-xs--line-height:calc(1 / .75);--text-sm:.875rem;--text-sm--line-height:calc(1.25 / .875);--text-base:1rem;--text-base--line-height:calc(1.5 / 1);--text-xl:1.25rem;--text-xl--line-height:calc(1.75 / 1.25);--font-weight-normal:400;--font-weight-semibold:600;--tracking-wide:.025em;--default-transition-duration:.15s;--default-transition-timing-function:cubic-bezier(.4, 0, .2, 1);--default-font-family:var(--font-sans);--default-mono-font-family:var(--font-mono);--color-surface:var(--surface);--color-text:var(--text);--color-muted:var(--muted);--color-brand:var(--brand);--color-correct:var(--correct);--color-incorrect:var(--incorrect);--color-hint:var(--hint);--color-focus:var(--focus);--color-stroke-grid:var(--stroke-grid);--color-stroke-guide:var(--stroke-guide);--color-stroke-active:var(--stroke-active);--color-stroke-done:var(--stroke-done);--color-stroke-hint:var(--stroke-hint);--color-stroke-badge:var(--stroke-badge);--color-stroke-badge-text:var(--stroke-badge-text);--font-ko:"Apple SD Gothic Neo", "Malgun Gothic", "Noto Sans KR", "Noto Sans CJK KR", system-ui, sans-serif;--text-title:1.75rem;--text-title--line-height:1.25;--text-display:clamp(3rem, 8vw, 4.5rem);--text-display--line-height:1.1;--radius-card:.75rem;--radius-control:.5rem;--ease-out-soft:cubic-bezier(.22, 1, .36, 1);--animate-stroke-draw:stroke-draw var(--duration-stroke) var(--ease-out-soft) forwards;--animate-stroke-hint:stroke-draw var(--duration-stroke) var(--ease-out-soft) infinite;--animate-key-pulse:key-pulse 1.2s ease-in-out infinite;--animate-fade-in:fade-in var(--duration-fast) ease-out;--animate-sheet-up:sheet-up var(--duration-base) var(--ease-out-soft);--animate-pop-in:pop-in var(--duration-base) var(--ease-out-soft);--animate-shake:shake .3s ease-in-out;--duration-fast:.15s;--duration-base:.24s;--duration-stroke:1.5s;--size-control:2.5rem;--size-touch:2.75rem;--size-input-font:max(1rem, 16px);--size-container:64rem;--size-prose:42rem;--size-modal:28rem;--size-menu:18rem;--size-menu-max:28rem;--size-stroke-max:18rem;--size-key-h:clamp(2.75rem, 6dvh, 3.25rem);--size-key-h-compact:2rem;--size-key-ko:clamp(1rem, 4.4vw, 1.25rem);--size-ad-lg-w:728px;--size-ad-lg-h:90px;--size-ad-sm-w:320px;--size-ad-sm-h:50px;--stroke-w:8px;--stroke-w-grid:.75px;--stroke-w-trace:7px;--stroke-badge-font:6px;--duration-stroke-gap:.5s}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--default-font-family,-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", "Noto Sans", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji");font-feature-settings:var(--default-font-feature-settings,normal);font-variation-settings:var(--default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--default-mono-font-family,ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace);font-feature-settings:var(--default-mono-font-feature-settings,normal);font-variation-settings:var(--default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring:where(:not(iframe)){outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab, currentcolor 50%, transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background-color:var(--surface);font-family:var(--font-sans);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--text);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;line-break:strict;min-height:100dvh;padding:env(safe-area-inset-top) env(safe-area-inset-right) env(safe-area-inset-bottom) env(safe-area-inset-left);flex-direction:column;line-height:1.5;display:flex;overflow-x:hidden}#root{flex-direction:column;flex:1;display:flex}input,textarea,select{font-size:var(--size-input-font)}button,[role=button],summary{cursor:pointer}button:disabled,[aria-disabled=true]{cursor:not-allowed}:focus-visible{outline:2px solid var(--color-focus);outline-offset:2px}::selection{background-color:var(--brand-soft);color:var(--text)}a{color:var(--brand);text-underline-offset:2px;text-decoration-line:underline}[lang=ko]{word-break:keep-all;overflow-wrap:anywhere}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:0s!important}}}@layer components{.l-app{flex-direction:column;flex:1;display:flex}.l-container{width:100%;padding-inline:calc(var(--spacing) * 4);max-width:var(--size-container);margin-inline:auto}@media (width>=48rem){.l-container{padding-inline:calc(var(--spacing) * 6)}}.l-main{gap:calc(var(--spacing) * 6);padding-block:calc(var(--spacing) * 6);flex-direction:column;flex:1;display:flex}@media (width>=48rem){.l-main{gap:calc(var(--spacing) * 8);padding-block:calc(var(--spacing) * 8)}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.l-main{gap:calc(var(--spacing) * 2);padding-block:calc(var(--spacing) * 2)}}}}.l-stack{gap:calc(var(--spacing) * 4);flex-direction:column;display:flex}.l-stack--sm{gap:calc(var(--spacing) * 2)}.l-row{align-items:center;gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.l-row--center{justify-content:center}.l-split{gap:calc(var(--spacing) * 4);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (width>=48rem){.l-split{grid-template-columns:repeat(2,minmax(0,1fr))}}.l-practice{gap:calc(var(--spacing) * 2);flex-direction:column;display:flex}@media (width>=48rem){.l-practice{gap:calc(var(--spacing) * 4)}}@media not all and (width>=64rem){@media (orientation:landscape) and (pointer:coarse){.l-practice{align-items:flex-start;gap:calc(var(--spacing) * 2);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.l-practice>.kb{grid-row:1/span 2;grid-column-start:2}.l-practice>.card{padding:calc(var(--spacing) * 3)}.l-practice .typing__target{font-size:var(--text-title);line-height:var(--tw-leading,var(--text-title--line-height))}}}.header{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);background-color:var(--surface)}.header__bar{height:calc(var(--spacing) * 14);justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3);display:flex}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.header__bar{height:calc(var(--spacing) * 12)}}}}.header__brand{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text);text-decoration-line:none;display:flex}.header__brand-mark{width:calc(var(--spacing) * 8);height:calc(var(--spacing) * 8);border-radius:var(--radius-control);background-color:var(--brand);font-family:var(--font-ko);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--on-brand);place-items:center;display:grid}.header__actions{align-items:center;gap:calc(var(--spacing) * 2);display:flex;position:relative}.header__mode{display:none}@media (width>=48rem){.header__mode{display:flex}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.header__mode{display:none}}}}.page-head{align-items:center;column-gap:calc(var(--spacing) * 3);row-gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.page-head__main{flex-grow:1;flex-basis:calc(var(--spacing) * 40);min-width:0}.page-head__title{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}@media (width>=48rem){.page-head__title{font-size:var(--text-title);line-height:var(--tw-leading,var(--text-title--line-height))}}.page-head__desc{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.page-head__meta{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,);flex-wrap:wrap;display:flex}.picker{gap:calc(var(--spacing) * 4);grid-template-columns:repeat(1,minmax(0,1fr));display:grid}@media (width>=48rem){.picker{grid-template-columns:repeat(3,minmax(0,1fr))}}.picker--sets{grid-template-columns:repeat(2,minmax(0,1fr))}@media (width>=48rem){.picker--sets{grid-template-columns:repeat(4,minmax(0,1fr))}}.menu__backdrop{z-index:40;animation:var(--animate-fade-in);background-color:var(--overlay);position:fixed;inset:0}@media (width>=48rem){.menu__backdrop{background-color:#0000}}.menu{z-index:50;animation:var(--animate-sheet-up);border-top-left-radius:var(--radius-card);border-top-right-radius:var(--radius-card);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface-raised);padding:calc(var(--spacing) * 4);color:var(--text);--tw-shadow:var(--elev-overlay);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);padding-bottom:max(1rem, env(safe-area-inset-bottom));inset-inline:0;position:fixed;bottom:0}@media (width>=48rem){.menu{margin-top:calc(var(--spacing) * 2);animation:var(--animate-pop-in);border-radius:var(--radius-card);width:max-content;min-width:var(--size-menu);max-width:min(var(--size-menu-max), calc(100vw - 2rem));inset-inline:auto;position:absolute;top:100%;bottom:auto;right:0}}.menu__title{margin-bottom:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--muted)}.settings{flex-direction:column;display:flex}.settings__row{justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-block:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}.settings__row:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.settings__label{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);flex-direction:column;display:flex}.settings__hint{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted)}@media (width>=48rem){.settings__row--narrow{display:none}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.settings__row--narrow{display:flex}}}}.caption{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.ad-slot{margin-inline:auto;margin-block:calc(var(--spacing) * 2);border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted);flex-shrink:0;justify-content:center;align-items:center;max-width:100%;display:flex;overflow:hidden}.ad-slot--728x90{display:none}@media (width>=48rem){.ad-slot--728x90{display:flex}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.ad-slot--728x90{display:none}}}}.ad-slot--728x90{width:var(--size-ad-lg-w);height:var(--size-ad-lg-h)}@media (width>=48rem){.ad-slot--320x50{display:none}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.ad-slot--320x50{display:none}}}}.ad-slot--320x50{width:min(100%, var(--size-ad-sm-w));height:var(--size-ad-sm-h)}.btn{justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-control);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 4);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));-webkit-user-select:none;user-select:none;min-height:var(--size-control);touch-action:manipulation;border-width:1px;border-color:#0000;text-decoration-line:none;display:inline-flex}@media (pointer:coarse){.btn{min-height:var(--size-touch)}}.btn svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}.btn:disabled{opacity:.4}.btn--primary{background-color:var(--brand);color:var(--on-brand)}@media (hover:hover){.btn--primary:hover:not(:disabled){background-color:var(--brand-strong)}}.btn--secondary{border-color:var(--border-strong);background-color:var(--surface-raised);color:var(--text)}@media (hover:hover){.btn--secondary:hover:not(:disabled){background-color:var(--surface-sunken)}}.btn--ghost{color:var(--text);background-color:#0000}@media (hover:hover){.btn--ghost:hover:not(:disabled){background-color:var(--surface-sunken)}}.btn--icon{color:var(--muted);width:var(--size-control);background-color:#0000;padding-inline:0}@media (pointer:coarse){.btn--icon{width:var(--size-touch)}}.btn--icon svg{width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5)}@media (hover:hover){.btn--icon:hover:not(:disabled){background-color:var(--surface-sunken);color:var(--text)}}.btn--icon[aria-expanded=true]{background-color:var(--surface-sunken);color:var(--text)}.toggle{align-items:center;gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);min-height:var(--size-touch);touch-action:manipulation;background-color:#0000;display:inline-flex}.toggle:disabled{opacity:.4}.toggle__track{height:calc(var(--spacing) * 6);width:calc(var(--spacing) * 10);background-color:var(--border-strong);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-radius:2147483647px;flex-shrink:0;position:relative}.toggle__thumb{top:var(--spacing);left:var(--spacing);width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);background-color:var(--surface-raised);transition-property:transform,translate,scale,rotate;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-radius:2147483647px;position:absolute}.toggle[aria-checked=true] .toggle__track{background-color:var(--brand)}.toggle[aria-checked=true] .toggle__thumb{--tw-translate-x:calc(var(--spacing) * 4);translate:var(--tw-translate-x) var(--tw-translate-y)}.segmented{align-items:stretch;gap:var(--spacing);border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface-sunken);padding:var(--spacing);display:inline-flex}.segmented__option{justify-content:center;align-items:center;gap:calc(var(--spacing) * 2);border-radius:var(--radius-control);border-style:var(--tw-border-style);padding-inline:calc(var(--spacing) * 3);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));min-height:calc(var(--size-control) - .5rem);touch-action:manipulation;background-color:#0000;border-width:1px;border-color:#0000;display:inline-flex}@media (pointer:coarse){.segmented__option{min-height:var(--size-touch)}}.segmented__option svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4);flex-shrink:0}.segmented__option[aria-checked=true]{border-color:var(--border);background-color:var(--surface-raised);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text)}@media (hover:hover){.segmented__option:hover:not([aria-checked=true]){background-color:var(--surface-raised)}}.select{border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border-strong);background-color:var(--surface-raised);max-width:100%;padding-inline:calc(var(--spacing) * 3);color:var(--text);min-height:var(--size-control)}@media (pointer:coarse){.select{min-height:var(--size-touch)}}.badge{align-items:center;gap:var(--spacing);background-color:var(--surface-sunken);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1;--tw-font-weight:var(--font-weight-semibold);line-height:1;font-weight:var(--font-weight-semibold);white-space:nowrap;color:var(--text);border-radius:2147483647px;display:inline-flex}.badge svg{width:calc(var(--spacing) * 3);height:calc(var(--spacing) * 3)}.badge--brand{background-color:var(--brand-soft);color:var(--brand)}.kbd{border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--key-border);background-color:var(--key-bg);padding-inline:calc(var(--spacing) * 2);padding-block:var(--spacing);font-family:var(--font-mono);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1;color:var(--key-text);align-items:center;line-height:1;display:inline-flex}.card{border-radius:var(--radius-card);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface-raised);padding:calc(var(--spacing) * 4);color:var(--text);flex-direction:column;display:flex}@media (width>=48rem){.card{padding:calc(var(--spacing) * 6)}}.card__header{margin-bottom:calc(var(--spacing) * 3);min-height:calc(var(--spacing) * 6);justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3);width:100%;display:flex}.card__eyebrow{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--muted);text-transform:uppercase}.card__title{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.card__subtitle{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.card__display{margin-top:calc(var(--spacing) * 3);font-family:var(--font-ko);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.card__footer{align-items:center;gap:calc(var(--spacing) * 2);width:100%;padding-top:calc(var(--spacing) * 4);flex-wrap:wrap;margin-top:auto;display:flex}.card--interactive{text-align:left;transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));touch-action:manipulation;align-items:flex-start}@media (hover:hover){.card--interactive:hover:not(:disabled){border-color:var(--brand)}}.modal{z-index:50;animation:var(--animate-fade-in);background-color:var(--overlay);justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}@media (width>=48rem){.modal{padding:calc(var(--spacing) * 6);align-items:center}}.modal__panel{width:100%;animation:var(--animate-sheet-up);border-top-left-radius:var(--radius-card);border-top-right-radius:var(--radius-card);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface-raised);padding:calc(var(--spacing) * 4);color:var(--text);--tw-shadow:var(--elev-overlay);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);max-height:90dvh;padding-bottom:max(1rem, env(safe-area-inset-bottom));flex-direction:column;display:flex;overflow-y:auto}@media (width>=48rem){.modal__panel{animation:var(--animate-pop-in);border-radius:var(--radius-card);padding:calc(var(--spacing) * 6);max-width:var(--size-modal)}}.modal__header{margin-bottom:calc(var(--spacing) * 4);justify-content:space-between;align-items:center;gap:calc(var(--spacing) * 3);display:flex}.modal__title{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.modal__body{gap:calc(var(--spacing) * 4);flex-direction:column;display:flex}.modal__footer{margin-top:calc(var(--spacing) * 6);gap:calc(var(--spacing) * 2);flex-direction:column-reverse;display:flex}.modal__footer .btn{width:100%}@media (width>=48rem){.modal__footer{flex-flow:wrap;justify-content:flex-end}.modal__footer .btn{white-space:nowrap;width:auto}}.mistakes{gap:calc(var(--spacing) * 2);flex-direction:column;display:flex}.mistakes__title{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.mistakes__list{flex-direction:column;display:flex}:where(.mistakes__list>:not(:last-child)){--tw-divide-y-reverse:0;border-bottom-style:var(--tw-border-style);border-top-style:var(--tw-border-style);border-top-width:calc(1px * var(--tw-divide-y-reverse));border-bottom-width:calc(1px * calc(1 - var(--tw-divide-y-reverse)));border-color:var(--border)}.mistakes__list{border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border)}.mistakes__item{justify-content:space-between;align-items:baseline;column-gap:calc(var(--spacing) * 3);row-gap:var(--spacing);padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.mistakes__text{font-family:var(--font-ko);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.mistakes__meaning{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.notice{animation:var(--animate-fade-in);align-items:flex-start;gap:calc(var(--spacing) * 3);border-radius:var(--radius-card);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface-raised);padding:calc(var(--spacing) * 4);color:var(--text);display:flex}.notice__icon{margin-top:var(--spacing);width:calc(var(--spacing) * 5);height:calc(var(--spacing) * 5);color:var(--brand);flex-shrink:0}.notice--warning .notice__icon{color:var(--hint)}.notice__body{gap:calc(var(--spacing) * 2);flex-direction:column;flex:1;min-width:0;display:flex}.notice__title{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.notice__text{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height))}.notice__list{gap:var(--spacing);padding-left:calc(var(--spacing) * 4);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));flex-direction:column;list-style-type:disc;display:flex}.notice__actions{gap:calc(var(--spacing) * 2);flex-wrap:wrap;display:flex}.notice__close{margin-block:calc(var(--spacing) * -2);margin-right:calc(var(--spacing) * -2);flex-shrink:0}.notice__guide{border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border);padding-top:var(--spacing)}.notice__guide>summary{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);min-height:var(--size-touch);align-items:center;display:flex}.notice__path{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));overflow-wrap:break-word}.notice__switch{margin-top:var(--spacing);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.notice__footnote{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted)}.kb{gap:var(--spacing);border-radius:var(--radius-card);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface-sunken);width:100%;padding:var(--spacing);-webkit-user-select:none;user-select:none;-webkit-touch-callout:none;touch-action:manipulation;flex-direction:column;margin-inline:auto;display:flex}@media (width>=48rem){.kb{max-width:var(--container-3xl);padding:calc(var(--spacing) * 2)}}.kb--passive{pointer-events:none}.kb--compact .kb__key{height:var(--size-key-h-compact)}.kb--compact .kb__label-en,.kb--compact .kb__label-ko-shift{display:none}.kb__row{gap:var(--spacing);display:flex}.kb__key{border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--key-border);background-color:var(--key-bg);min-width:0;color:var(--key-text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));height:var(--size-key-h);touch-action:manipulation;flex-direction:column;flex:1 1 0;justify-content:center;align-items:center;padding:0;display:flex;position:relative}.kb__key svg{width:calc(var(--spacing) * 4);height:calc(var(--spacing) * 4)}@media (hover:hover){.kb__key:hover:not(:disabled){border-color:var(--brand)}}.kb__key:disabled{cursor:default}.kb__key--w15{flex-grow:1.5}.kb__key--w175{flex-grow:1.75}.kb__key--w2{flex-grow:2}.kb__key--w225{flex-grow:2.25}.kb__key--w275{flex-grow:2.75}.kb__key--space{flex-grow:6}.kb__key--extra{display:none}@media (width>=48rem){.kb__key--extra{display:flex}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.kb__key--extra{display:none}}}}@media (width>=48rem){.kb__key:not(.kb__key--fn){padding-bottom:var(--spacing);padding-left:var(--spacing);justify-content:flex-end;align-items:flex-start}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.kb__key:not(.kb__key--fn){justify-content:center;align-items:center;padding-left:0}}}}@media (width>=64rem){.kb__key:not(.kb__key--fn){padding-left:calc(var(--spacing) * 2)}}.kb__key--fn{background-color:var(--key-fn-bg)}.kb__label-ko{font-family:var(--font-ko);--tw-leading:1;--tw-font-weight:var(--font-weight-semibold);line-height:1;font-weight:var(--font-weight-semibold);font-size:var(--size-key-ko)}.kb__label-ko-shift{top:var(--spacing);right:var(--spacing);font-family:var(--font-ko);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1;color:var(--key-sub);line-height:1;display:none;position:absolute}@media (width>=48rem){.kb__label-ko-shift{display:block}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.kb__label-ko-shift{display:none}}}}.kb__label-en{margin-top:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1;color:var(--key-sub);text-transform:uppercase;line-height:1}.kb__fn-label{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-leading:1;--tw-font-weight:var(--font-weight-semibold);line-height:1;font-weight:var(--font-weight-semibold)}:is(.kb.is-shift,.kb__key.is-shifted) .kb__label-ko-shift{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--brand);font-size:var(--size-key-ko);display:block;position:static}:is(.kb.is-shift,.kb__key.is-shifted) .kb__label-ko-shift~.kb__label-ko{display:none}.kb__key.is-active{--tw-translate-y:1px;translate:var(--tw-translate-x) var(--tw-translate-y);border-color:var(--brand);background-color:var(--key-active-bg)}.kb__key.is-next{animation:var(--animate-key-pulse);border-color:var(--key-next-border);background-color:var(--key-next-bg)}.kb__key.is-locked{border-color:var(--brand);background-color:var(--brand);color:var(--on-brand)}.kb__key.is-locked.is-next{color:var(--key-text)}@media (prefers-reduced-motion:reduce){.kb__key.is-next{--tw-ring-shadow:var(--tw-ring-inset,) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color,currentcolor);box-shadow:var(--tw-inset-shadow), var(--tw-inset-ring-shadow), var(--tw-ring-offset-shadow), var(--tw-ring-shadow), var(--tw-shadow);--tw-ring-color:var(--key-next-border);animation:none}}.typing{align-items:center;gap:calc(var(--spacing) * 3);text-align:center;flex-direction:column;display:flex}.typing__target{font-family:var(--font-ko);font-size:var(--text-title);line-height:var(--tw-leading,var(--text-title--line-height));word-break:keep-all;flex-wrap:wrap;justify-content:center;display:flex}@media (width>=48rem){.typing__target{font-size:var(--text-display);line-height:var(--tw-leading,var(--text-display--line-height))}}.typing__char{border-radius:var(--radius-control);padding-inline:var(--spacing);--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));position:relative}.typing__word{flex-wrap:wrap;justify-content:center;max-width:100%;display:inline-flex}.typing__char--space{min-width:.5em}.typing__char.is-correct{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--correct)}.typing__char.is-incorrect{background-color:var(--incorrect-soft);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--incorrect);text-underline-offset:4px;text-decoration-line:underline;text-decoration-style:wavy;text-decoration-thickness:2px}.typing__char.is-current{background-color:var(--brand-soft);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text);box-shadow:inset 0 -3px 0 var(--color-brand)}.typing__composing{color:var(--brand)}.typing__meta{justify-content:center;align-items:center;column-gap:calc(var(--spacing) * 3);row-gap:var(--spacing);flex-wrap:wrap;display:flex}.typing__romanization{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--muted)}.typing__meaning{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--text)}.typing__input{width:100%;max-width:var(--container-md);border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border-strong);background-color:var(--surface);padding-inline:calc(var(--spacing) * 4);text-align:center;font-family:var(--font-ko);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));color:var(--text);transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--tw-gradient-from,--tw-gradient-via,--tw-gradient-to;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));min-height:var(--size-touch)}.typing__input::placeholder{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));color:var(--muted)}.typing__input:focus{border-color:var(--brand)}.typing__input.is-incorrect{animation:var(--animate-shake);border-color:var(--incorrect)}.typing__hint{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.jamo{justify-content:center;align-items:center;gap:var(--spacing);text-align:center}.jamo__glyph{font-family:var(--font-ko);font-size:var(--text-display);line-height:var(--tw-leading,var(--text-display--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.jamo__name{margin-top:calc(var(--spacing) * 2);font-family:var(--font-ko);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.jamo__roman{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted)}.jamo__facts{margin-block:calc(var(--spacing) * 3);column-gap:calc(var(--spacing) * 4);row-gap:var(--spacing);text-align:left;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.jamo__fact-label{color:var(--muted)}.jamo__fact-value{font-family:var(--font-ko);--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.stats{gap:calc(var(--spacing) * 2);grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.stats--2{gap:calc(var(--spacing) * 3);grid-template-columns:repeat(2,minmax(0,1fr))}.stats__item{border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface-raised);min-width:0;padding-inline:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 2);flex-direction:column;display:flex}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.stats__item{align-items:baseline;gap:var(--spacing);padding-block:var(--spacing);flex-direction:row}}}}.stats__label{text-overflow:ellipsis;white-space:nowrap;font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted);overflow:hidden}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.stats__label{flex-shrink:0}}}}.stats__label-full{display:none}@media (width>=48rem){.stats__label-full{display:inline}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.stats__label-full{display:none}}}}@media (width>=48rem){.stats__label-short{display:none}}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.stats__label-short{display:inline}}}}.stats__value{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);color:var(--text);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}@media (width>=48rem){.stats__value{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height))}}.stats--2 .stats__value{font-size:var(--text-title);line-height:var(--tw-leading,var(--text-title--line-height))}.stats--2 .stats__item{justify-content:space-between;gap:var(--spacing)}.stats--2 .stats__label{overflow-wrap:break-word;white-space:normal;overflow:visible}.stats__unit{margin-left:var(--spacing);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted)}.progress{margin-top:var(--spacing);height:var(--spacing);appearance:none;border-style:var(--tw-border-style);background-color:var(--border);width:100%;color:var(--brand);border-width:0;border-radius:2147483647px;display:block;overflow:hidden}@media not all and (width>=64rem){@media (orientation:landscape){@media (pointer:coarse){.progress{display:none}}}}.progress::-webkit-progress-bar{background-color:var(--border);border-radius:2147483647px}.progress::-webkit-progress-value{background-color:var(--brand);transition-property:all;transition-timing-function:var(--tw-ease,var(--default-transition-timing-function));transition-duration:var(--tw-duration,var(--default-transition-duration));border-radius:2147483647px}.progress::-moz-progress-bar{background-color:var(--brand);border-radius:2147483647px}.stroke{aspect-ratio:1;border-radius:var(--radius-control);border-style:var(--tw-border-style);border-width:1px;border-color:var(--border);background-color:var(--surface);width:100%;max-width:var(--size-stroke-max);margin-inline:auto;position:relative;overflow:hidden}.stroke--tracer{cursor:crosshair;-webkit-user-select:none;user-select:none;touch-action:none;-webkit-touch-callout:none}.stroke__svg{width:100%;height:100%;display:block}.stroke__grid{fill:none;stroke:var(--color-stroke-grid);stroke-width:var(--stroke-w-grid);stroke-dasharray:2 2}.stroke__guide{fill:none;stroke:var(--color-stroke-guide);stroke-width:var(--stroke-w);stroke-linecap:round;stroke-linejoin:round;transition:stroke var(--duration-fast)}.stroke__guide.is-current{stroke:var(--color-stroke-active);opacity:.3}.stroke__path{fill:none;stroke:var(--color-stroke-active);stroke-width:var(--stroke-w);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px}.stroke__path.is-drawing{animation:var(--animate-stroke-draw)}.stroke__path.is-done{stroke:var(--color-stroke-done);stroke-dashoffset:0}.stroke__hint{fill:none;stroke:var(--color-stroke-hint);stroke-width:var(--stroke-w);stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:1;stroke-dashoffset:1px;animation:var(--animate-stroke-hint)}.stroke__trace{fill:none;stroke:var(--color-stroke-active);stroke-width:var(--stroke-w-trace);stroke-linecap:round;stroke-linejoin:round}.stroke__trace.is-incorrect{stroke:var(--color-incorrect)}.stroke__badge{fill:var(--color-stroke-badge);transition:opacity var(--duration-fast)}.stroke__badge.is-done{opacity:.35}.stroke__badge-text{font-family:var(--font-sans);fill:var(--color-stroke-badge-text);font-size:var(--stroke-badge-font);text-anchor:middle;dominant-baseline:central;pointer-events:none;font-weight:700}.stroke__counter{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted);--tw-numeric-spacing:tabular-nums;font-variant-numeric:var(--tw-ordinal,) var(--tw-slashed-zero,) var(--tw-numeric-figure,) var(--tw-numeric-spacing,) var(--tw-numeric-fraction,)}.stroke__feedback{min-height:calc(var(--spacing) * 5);text-align:center;font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.stroke__feedback.is-incorrect{color:var(--incorrect)}.stroke__feedback.is-correct{color:var(--correct)}@media (prefers-reduced-motion:reduce){.stroke__path.is-drawing{animation-duration:1ms}.stroke__hint{stroke-dashoffset:0;animation:none}}.section-title{font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}a.card--interactive{text-decoration-line:none}.picker--dense{grid-template-columns:repeat(3,minmax(0,1fr))}@media (width>=48rem){.picker--dense{grid-template-columns:repeat(6,minmax(0,1fr))}}.l-row--between{justify-content:space-between}.crumbs{align-items:center;column-gap:calc(var(--spacing) * 2);row-gap:var(--spacing);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted);flex-wrap:wrap;display:flex}.crumbs__item{align-items:center;gap:calc(var(--spacing) * 2);display:flex}.crumbs__item+.crumbs__item:before{content:"›";color:var(--muted)}.crumbs__item[aria-current=page]{color:var(--text)}.faq{gap:calc(var(--spacing) * 4);flex-direction:column;display:flex}.faq__list{padding-block:0}@media (width>=48rem){.faq__list{padding-block:0}}.faq__item{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border)}.faq__item:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}.faq__q{align-items:center;gap:calc(var(--spacing) * 3);padding-block:calc(var(--spacing) * 3);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);min-height:var(--size-touch);list-style:none;display:flex}.faq__q::-webkit-details-marker{display:none}.faq__q:after{content:"+";font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-normal);font-weight:var(--font-weight-normal);color:var(--muted);flex-shrink:0;margin-left:auto}.faq__item[open]>.faq__q:after{content:"−"}.faq__a{padding-bottom:calc(var(--spacing) * 4);font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height))}.prose{gap:calc(var(--spacing) * 8);max-width:var(--size-prose);flex-direction:column;display:flex}.prose__section{gap:calc(var(--spacing) * 3);flex-direction:column;display:flex}.prose__text{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));overflow-wrap:anywhere}.data-table{border-collapse:collapse;text-align:left;width:100%;display:block}@media (width>=48rem){.data-table{display:table}}.data-table__head{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width>=48rem){.data-table__head{clip-path:none;white-space:normal;width:auto;height:auto;margin:0;padding:0;display:table-header-group;position:static;overflow:visible}}.data-table__th{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-bottom:calc(var(--spacing) * 2);font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--muted);text-transform:uppercase}@media (width>=48rem){.data-table__th{padding-right:calc(var(--spacing) * 4)}}.data-table__body{display:block}@media (width>=48rem){.data-table__body{display:table-row-group}}.data-table__row{align-items:baseline;column-gap:calc(var(--spacing) * 3);row-gap:var(--spacing);border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-block:calc(var(--spacing) * 3);flex-wrap:wrap;display:flex}.data-table__row:last-child{border-bottom-style:var(--tw-border-style);border-bottom-width:0}@media (width>=48rem){.data-table__row{display:table-row}.data-table__ko,.data-table__rom,.data-table__meaning{border-bottom-style:var(--tw-border-style);border-bottom-width:1px;border-color:var(--border);padding-block:calc(var(--spacing) * 3);padding-right:calc(var(--spacing) * 4);vertical-align:baseline;display:table-cell}.data-table__row:last-child>*{border-bottom-style:var(--tw-border-style);border-bottom-width:0}}.data-table__ko{font-family:var(--font-ko);font-size:var(--text-xl);line-height:var(--tw-leading,var(--text-xl--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold)}.data-table__rom{font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));color:var(--muted);overflow-wrap:anywhere}.data-table__meaning{font-size:var(--text-base);line-height:var(--tw-leading,var(--text-base--line-height));flex-basis:100%}.site-footer{margin-top:calc(var(--spacing) * 8);border-top-style:var(--tw-border-style);border-top-width:1px;border-color:var(--border);background-color:var(--surface);padding-block:calc(var(--spacing) * 8)}.site-footer__inner{gap:calc(var(--spacing) * 4);flex-direction:column;display:flex}.site-footer__nav{column-gap:calc(var(--spacing) * 4);row-gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));flex-wrap:wrap;display:flex}.site-footer__label{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);--tw-tracking:var(--tracking-wide);letter-spacing:var(--tracking-wide);color:var(--muted);text-transform:uppercase}.site-footer__langs{column-gap:calc(var(--spacing) * 4);row-gap:calc(var(--spacing) * 2);font-size:var(--text-sm);line-height:var(--tw-leading,var(--text-sm--line-height));flex-wrap:wrap;display:flex}.site-footer__link{color:var(--text);align-items:center;text-decoration-line:none;display:inline-flex}@media (pointer:coarse){.site-footer__link{min-height:var(--size-touch)}}.site-footer__link[aria-current=page]{--tw-font-weight:var(--font-weight-semibold);font-weight:var(--font-weight-semibold);text-decoration-line:underline}@media (hover:hover){.site-footer__link:hover{text-decoration-line:underline}}.site-footer__note{font-size:var(--text-xs);line-height:var(--tw-leading,var(--text-xs--line-height));color:var(--muted)}}@layer utilities{.visible{visibility:visible}.fixed{position:fixed}.relative{position:relative}.block{display:block}.flex{display:flex}.inline{display:inline}.table{display:table}.bg-\[\#1e40af\]{background-color:#1e40af}.bg-blue-500{background-color:var(--color-blue-500)}.bg-brand{background-color:var(--brand)}.p-\[13px\]{padding:13px}.blur{--tw-blur:blur(8px);filter:var(--tw-blur,) var(--tw-brightness,) var(--tw-contrast,) var(--tw-grayscale,) var(--tw-hue-rotate,) var(--tw-invert,) var(--tw-saturate,) var(--tw-sepia,) var(--tw-drop-shadow,)}}@keyframes stroke-draw{0%{stroke-dashoffset:1px}to{stroke-dashoffset:0}}@keyframes key-pulse{0%,to{box-shadow:0 0 0 0 var(--key-next-border)}50%{box-shadow:0 0 0 3px var(--key-next-border)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes sheet-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes pop-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-4px)}75%{transform:translate(4px)}}:root{--surface:#fafafb;--surface-raised:#fff;--surface-sunken:#f2f3f5;--text:#1f2430;--muted:#6b7280;--border:#e6e8ec;--border-strong:#7d8491;--brand:#3b5bdb;--brand-strong:#2f4ac0;--brand-soft:#edf1fd;--on-brand:#fff;--correct:#177340;--correct-soft:#e7f5ec;--incorrect:#c92a2a;--incorrect-soft:#fdecec;--hint:#b5470b;--hint-soft:#fff1e3;--focus:#3b5bdb;--overlay:#1f243066;--key-bg:#fff;--key-fn-bg:#ebedf0;--key-border:#d5d9df;--key-text:#1f2430;--key-sub:#575e6b;--key-active-bg:#dce3fb;--key-next-bg:#ffe8cc;--key-next-border:#c2550c;--stroke-grid:#e6e8ec;--stroke-guide:#e3e6eb;--stroke-active:#3b5bdb;--stroke-done:#1f2430;--stroke-hint:#e8590c;--stroke-badge:#3b5bdb;--stroke-badge-text:#fff;--elev-overlay:0 12px 32px #1f24301f;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--surface:#161a22;--surface-raised:#1e232d;--surface-sunken:#12151c;--text:#e8eaee;--muted:#9aa1ad;--border:#2c323d;--border-strong:#687080;--brand:#7c96f0;--brand-strong:#9aaef4;--brand-soft:#222b45;--on-brand:#12151c;--correct:#4fc57e;--correct-soft:#15301f;--incorrect:#ff8a80;--incorrect-soft:#3a1e1f;--hint:#ffa94d;--hint-soft:#3a2a16;--focus:#7c96f0;--overlay:#0000008c;--key-bg:#232833;--key-fn-bg:#1b1f28;--key-border:#363c48;--key-text:#e8eaee;--key-sub:#a3aab6;--key-active-bg:#2a3557;--key-next-bg:#45321a;--key-next-border:#ffa94d;--stroke-grid:#2c323d;--stroke-guide:#343b47;--stroke-active:#7c96f0;--stroke-done:#e8eaee;--stroke-hint:#ffa94d;--stroke-badge:#7c96f0;--stroke-badge-text:#12151c;--elev-overlay:0 12px 32px #00000073;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}@property --tw-blur{syntax:"*";inherits:false}@property --tw-brightness{syntax:"*";inherits:false}@property --tw-contrast{syntax:"*";inherits:false}@property --tw-grayscale{syntax:"*";inherits:false}@property --tw-hue-rotate{syntax:"*";inherits:false}@property --tw-invert{syntax:"*";inherits:false}@property --tw-opacity{syntax:"*";inherits:false}@property --tw-saturate{syntax:"*";inherits:false}@property --tw-sepia{syntax:"*";inherits:false}@property --tw-drop-shadow{syntax:"*";inherits:false}@property --tw-drop-shadow-color{syntax:"*";inherits:false}@property --tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-drop-shadow-size{syntax:"*";inherits:false}@property --tw-font-weight{syntax:"*";inherits:false}@property --tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --tw-ordinal{syntax:"*";inherits:false}@property --tw-slashed-zero{syntax:"*";inherits:false}@property --tw-numeric-figure{syntax:"*";inherits:false}@property --tw-numeric-spacing{syntax:"*";inherits:false}@property --tw-numeric-fraction{syntax:"*";inherits:false}@property --tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-shadow-color{syntax:"*";inherits:false}@property --tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-shadow-color{syntax:"*";inherits:false}@property --tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --tw-ring-color{syntax:"*";inherits:false}@property --tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-inset-ring-color{syntax:"*";inherits:false}@property --tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-ring-inset{syntax:"*";inherits:false}@property --tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --tw-leading{syntax:"*";inherits:false}@property --tw-tracking{syntax:"*";inherits:false}@property --tw-divide-y-reverse{syntax:"*";inherits:false;initial-value:0}
