.loading{display:grid;place-items:center;place-content:center;gap:0}.loading--page{min-height:100dvh;padding:1rem}.loading--inline{min-height:12rem;padding:1rem 0}.loading__ring,.loading__text{grid-area:1 / 1}.loading__ring{width:5.5rem;height:5.5rem;border-radius:50%;border:4px solid var(--border);border-top-color:var(--accent);animation:loading-spin .9s linear infinite}.loading__text{font-weight:600;font-size:1.05rem;color:var(--text);max-width:4rem;text-align:center;line-height:1.1}@keyframes loading-spin{to{transform:rotate(1turn)}}@media(prefers-reduced-motion:reduce){.loading__ring{border-color:var(--accent);opacity:.55}}:root{--fam-pronouns-tint: #ffebea;--fam-pronouns-ink: #7f1f29;--fam-pronouns-mark: #b23641;--fam-numbers-time-tint: #ffeddc;--fam-numbers-time-ink: #693b00;--fam-numbers-time-mark: #965800;--fam-prepositions-tint: #f1f3d8;--fam-prepositions-ink: #4b4b00;--fam-prepositions-mark: #6e6e00;--fam-verbs-tint: #dff8e6;--fam-verbs-ink: #00572e;--fam-verbs-mark: #007e46;--fam-sound-tint: #d6f8f9;--fam-sound-ink: #005356;--fam-sound-mark: #00787d;--fam-nouns-tint: #e4f2ff;--fam-nouns-ink: #004b7b;--fam-nouns-mark: #006eaf;--fam-syntax-tint: #efeeff;--fam-syntax-ink: #493687;--fam-syntax-mark: #6a53bd;--fam-adjectives-tint: #ffe8f9;--fam-adjectives-ink: #6f2563;--fam-adjectives-mark: #9d3d8d}@media(prefers-color-scheme:dark){:root{--fam-pronouns-tint: #422424;--fam-pronouns-ink: #ffbebd;--fam-pronouns-mark: #ff9495;--fam-numbers-time-tint: #3d2914;--fam-numbers-time-ink: #fbc592;--fam-numbers-time-mark: #f0a556;--fam-prepositions-tint: #2f3014;--fam-prepositions-ink: #d4d791;--fam-prepositions-mark: #bdbe53;--fam-verbs-tint: #1a3424;--fam-verbs-ink: #a1e3b7;--fam-verbs-mark: #6cd092;--fam-sound-tint: #0a3537;--fam-sound-ink: #85e3e8;--fam-sound-mark: #17d0d8;--fam-nouns-tint: #193043;--fam-nouns-ink: #a9d7ff;--fam-nouns-mark: #71bfff;--fam-syntax-tint: #2d2a43;--fam-syntax-ink: #d0c9ff;--fam-syntax-mark: #b6aaff;--fam-adjectives-tint: #3c2537;--fam-adjectives-ink: #f7bbe9;--fam-adjectives-mark: #ea97d8}}.fam{--fam-tint: var(--surface);--fam-ink: var(--text);--fam-mark: var(--text-muted);display:inline-flex;align-items:center;gap:.35rem;flex:none}.fam__icon{color:var(--fam-mark);flex:none}.fam__code{font-weight:700;font-variant-numeric:tabular-nums;letter-spacing:.01em;white-space:nowrap}.fam__label{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.fam--dot{flex-direction:column;gap:.05rem;padding-bottom:22cqw;max-width:100%}.fam--dot .fam__icon{width:26cqw;height:26cqw}.fam--dot .fam__code{font-size:20cqw;line-height:1;color:var(--fam-ink);max-width:100%;overflow:hidden;text-overflow:ellipsis}.fam--chip,.fam--full{background:var(--fam-tint);color:var(--fam-ink);border-radius:999px;padding:.15rem .6rem .15rem .45rem;min-height:28px;font-size:.85rem}.fam--full{min-height:36px;font-size:.95rem;border-radius:var(--radius)}.pips{display:inline-flex;gap:2px;align-items:center;flex:none}.pips__pip{width:7px;height:7px;border-radius:50%;border:1px solid var(--border-strong)}.pips__pip--on{background:currentcolor;border-color:currentcolor}:root{color-scheme:light dark;--bg: #ffffff;--surface: #f4f5f7;--surface-raised: #ffffff;--border: #c3c7ce;--border-strong: #6b7280;--text: #14161a;--text-muted: #4b5058;--accent: #0b5fa5;--accent-text: #ffffff;--danger: #a3232a;--ok: #1c6b45;--radius: 10px;--gap: 1rem;--focus: 3px solid #0b5fa5;--focus-offset: 2px;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif}@media(prefers-color-scheme:dark){:root{--bg: #14161a;--surface: #1e2127;--surface-raised: #262a31;--border: #3d434d;--border-strong: #8b929e;--text: #f2f4f7;--text-muted: #b6bcc6;--accent: #7fb6ee;--accent-text: #0b1119;--danger: #ff9a9f;--ok: #79d3a8;--focus: 3px solid #7fb6ee}}*,*:before,*:after{box-sizing:border-box}body{margin:0;background:var(--bg);color:var(--text);line-height:1.5;-webkit-text-size-adjust:100%}h1,h2,h3{line-height:1.2;margin:0 0 .5em}:focus-visible{outline:var(--focus);outline-offset:var(--focus-offset)}button,input,select{font:inherit;color:inherit}button{cursor:pointer}button:disabled{cursor:not-allowed;opacity:.55}.button{border:1px solid transparent;border-radius:var(--radius);background:var(--accent);color:var(--accent-text);padding:.7rem 1.1rem;font-weight:600;min-height:44px}.button--secondary{background:transparent;color:var(--text);border-color:var(--border-strong)}.button--danger{background:transparent;color:var(--danger);border-color:currentcolor}.button--small{padding:.35rem .6rem;min-height:36px;font-size:.85rem}.field{display:block;margin-bottom:var(--gap)}.field__label{display:block;font-weight:600;margin-bottom:.35rem}.field__input{width:100%;padding:.7rem .8rem;min-height:48px;border:1px solid var(--border-strong);border-radius:var(--radius);background:var(--surface-raised)}.field__hint{display:block;margin-top:.35rem;color:var(--text-muted);font-size:.9rem}.notice{display:flex;gap:.5rem;align-items:flex-start;padding:.7rem .9rem;border-radius:var(--radius);border:1px solid currentcolor;margin-bottom:var(--gap)}.notice--error{color:var(--danger)}.notice--ok{color:var(--ok)}.notice__text{color:var(--text)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.stack>*+*{margin-top:var(--gap)}.answers{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.95rem}.answers thead th{font-size:.75rem;text-transform:uppercase;letter-spacing:.03em;color:var(--text-muted);font-weight:600;text-align:left;padding:0 .5rem .25rem}.answers th:first-child{width:6.5rem}.answers tbody th,.answers tbody td{padding:.3rem .5rem;border-top:1px solid var(--border);text-align:left;vertical-align:top;overflow-wrap:anywhere}.answers__label{font-weight:600;white-space:nowrap}.answers__row--ok .answers__label{color:var(--ok)}.answers__row--wrong .answers__label{color:var(--danger)}.answers__row--wrong .answers__given{text-decoration:line-through;text-decoration-thickness:1px;color:var(--text-muted)}.answers__expected{font-weight:600}.answers__blank{color:var(--text-muted)}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}
