.app-sheet[data-v-84e68432]{background:var(--bg);width:min(100%,560px);max-width:100%;max-height:90dvh;color:var(--ink);border:0;border-radius:26px 26px 0 0;margin:0 auto;padding:0;position:fixed;inset:auto 0 0;overflow:hidden}.app-sheet[data-v-84e68432]::backdrop{background:#1a1e1959}.sheet-inner[data-v-84e68432]{flex-direction:column;max-height:90dvh;display:flex}.sheet-handle[data-v-84e68432]{background:var(--line);border-radius:4px;flex:none;width:34px;height:4px;margin:10px auto 0}.sheet-header[data-v-84e68432]{flex:none;justify-content:space-between;align-items:center;padding:8px 20px;display:flex}.sheet-content[data-v-84e68432]{overscroll-behavior:contain;padding:0 22px calc(24px + var(--sab));overflow-y:auto}@media (width>=700px){.app-sheet[data-v-84e68432]{border-radius:26px;margin:auto;inset:0}.sheet-handle[data-v-84e68432]{display:none}}.word-graph[data-v-0ec2de99]{margin-top:16px}.graph-head[data-v-0ec2de99]{justify-content:space-between;align-items:center;gap:10px;min-height:34px;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.graph-head small[data-v-0ec2de99]{color:var(--muted);font-size:10px;font-weight:400}.word-graph-canvas[data-v-0ec2de99]{background:linear-gradient(180deg, var(--accent-soft) 0%, var(--card) 44%);border:1px solid var(--line);border-radius:20px;height:430px;position:relative;overflow:hidden}.orbit[data-v-0ec2de99]{border:1px dashed color-mix(in srgb, var(--muted) 32%, transparent);pointer-events:none;border-radius:50%;position:absolute;top:50%;left:50%}.orbit-inner[data-v-0ec2de99]{width:118px;height:118px;margin:-59px 0 0 -59px}.graph-axis[data-v-0ec2de99]{z-index:1;color:var(--muted);letter-spacing:.04em;pointer-events:none;white-space:nowrap;font-size:10px;position:absolute}.graph-axis.place-top[data-v-0ec2de99]{transform:translate(-50%)}.graph-axis.place-left[data-v-0ec2de99],.graph-axis.place-right[data-v-0ec2de99],.graph-axis.place-bl[data-v-0ec2de99],.graph-axis.place-br[data-v-0ec2de99]{transform:none}.graph-edge[data-v-0ec2de99]{transform-origin:0;background:color-mix(in srgb, var(--muted) 48%, transparent);pointer-events:none;height:2px;position:absolute}.graph-edge.kind-inflection[data-v-0ec2de99]{background:color-mix(in srgb, var(--accent) 42%, transparent)}.graph-edge.kind-synonym[data-v-0ec2de99]{background:#5a7d8a7a}.graph-edge.kind-antonym[data-v-0ec2de99]{background:color-mix(in srgb, var(--warn) 42%, transparent)}.graph-edge.kind-related[data-v-0ec2de99]{background:#8a7b6a7a}.graph-edge.kind-derivation[data-v-0ec2de99]{background:#6f8f627a}.graph-center[data-v-0ec2de99]{z-index:2;background:var(--accent);min-width:96px;max-width:132px;color:var(--on-accent,#fff);text-align:center;box-shadow:0 8px 18px color-mix(in srgb, var(--ink) 16%, transparent);border-radius:18px;gap:4px;padding:11px 14px;display:grid;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.graph-center strong[data-v-0ec2de99]{font-family:var(--font-display);overflow-wrap:anywhere;font-size:18px;font-weight:500;line-height:1.2}.graph-center span[data-v-0ec2de99]{opacity:.84;font-size:11px}.graph-node[data-v-0ec2de99]{z-index:3;background:var(--card);border:1px solid var(--line);text-align:center;box-sizing:border-box;min-width:76px;max-width:110px;box-shadow:0 2px 8px color-mix(in srgb, var(--ink) 6%, transparent);border-radius:13px;gap:2px;padding:7px 9px;display:grid;position:absolute;transform:translate(-50%,-50%)}.graph-node.in-deck[data-v-0ec2de99]{border-color:var(--accent);background:var(--accent-soft)}.graph-node.kind-antonym[data-v-0ec2de99]{background:var(--warn-bg);border-color:color-mix(in srgb, var(--warn) 35%, var(--line))}.graph-node small[data-v-0ec2de99]{color:var(--muted);font-size:9px}.graph-node strong[data-v-0ec2de99]{overflow-wrap:break-word;word-break:normal;font-size:13px;font-weight:600}.graph-node.in-deck strong[data-v-0ec2de99]{color:var(--accent)}.graph-node.kind-antonym small[data-v-0ec2de99],.graph-node.kind-antonym strong[data-v-0ec2de99]{color:var(--warn)}.graph-node span[data-v-0ec2de99]{color:var(--muted);font-size:10px;line-height:1.3}.graph-legend[data-v-0ec2de99]{color:var(--muted);flex-wrap:wrap;justify-content:center;gap:10px 14px;margin:12px 0 0;padding:0;font-size:10px;list-style:none;display:flex}.graph-legend i[data-v-0ec2de99]{background:var(--accent);vertical-align:0;border-radius:50%;width:8px;height:8px;margin-right:5px;display:inline-block}.graph-legend i.kind-synonym[data-v-0ec2de99]{background:#5a7d8a}.graph-legend i.kind-antonym[data-v-0ec2de99]{background:var(--warn)}.graph-legend i.kind-related[data-v-0ec2de99]{background:#8a7b6a}.graph-legend i.kind-derivation[data-v-0ec2de99]{background:#6f8f62}.overflow[data-v-0ec2de99]{border-top:1px solid var(--line);margin-top:16px;padding:14px 0 0}.overflow summary[data-v-0ec2de99]{cursor:pointer;color:var(--muted);font-size:12px}.overflow summary span[data-v-0ec2de99]{margin-left:5px}.overflow-chips[data-v-0ec2de99]{flex-wrap:wrap;gap:8px;margin-top:14px;display:flex}.related-chip[data-v-0ec2de99]{text-align:left;cursor:pointer;font:inherit;background:#f0f1ec;border:0;border-radius:10px;gap:4px;padding:8px 12px;display:grid}.related-chip.in-deck[data-v-0ec2de99]{background:var(--accent-soft)}.related-chip strong[data-v-0ec2de99]{font-size:13px;font-weight:600}.related-chip.in-deck strong[data-v-0ec2de99]{color:var(--accent)}.related-chip span[data-v-0ec2de99]{color:var(--muted);font-size:11px;line-height:1.4}.word-hero[data-v-158ca60e]{text-align:center;padding:32px 0 28px}.word-hero .eyebrow[data-v-158ca60e]{color:#9ba38f;margin:0 0 17px;font-size:9px}.word-hero h1[data-v-158ca60e]{font-family:var(--font-display);font-size:var(--fs-lemma,36px);letter-spacing:-.045em;overflow-wrap:anywhere;margin:0;font-weight:500;line-height:1.15}.phonetic[data-v-158ca60e]{color:var(--muted);margin:12px 0 0;font-size:13px}.pronunciation-controls[data-v-158ca60e]{justify-content:center;align-items:center;gap:12px;margin-top:14px;display:flex}.pronounce-button[data-v-158ca60e]{background:var(--accent-soft);min-height:36px;color:var(--accent);border:0;border-radius:18px;align-items:center;gap:6px;padding:7px 11px;font-size:11px;font-weight:600;display:inline-flex}.pronounce-button svg[data-v-158ca60e]{width:16px;height:16px}.auto-speak[data-v-158ca60e]{color:var(--muted);cursor:pointer;align-items:center;gap:7px;font-size:11px;display:inline-flex}.auto-speak input[data-v-158ca60e]{opacity:0;block-size:1px;inline-size:1px;position:absolute}.auto-speak i[data-v-158ca60e]{background:#d5dbd0;border-radius:99px;width:33px;height:19px;transition:background .18s;position:relative}.auto-speak i[data-v-158ca60e]:after{content:"";background:#fff;border-radius:50%;width:13px;height:13px;transition:transform .18s;position:absolute;top:3px;left:3px;box-shadow:0 1px 2px #20302033}.auto-speak input:checked+i[data-v-158ca60e]{background:var(--accent)}.auto-speak input:checked+i[data-v-158ca60e]:after{transform:translate(14px)}.auto-speak input:focus-visible+i[data-v-158ca60e]{outline:2px solid var(--accent);outline-offset:3px}.speech-note[data-v-158ca60e]{color:var(--muted);margin:8px 0 0;font-size:10px;line-height:1.6}.definition[data-v-158ca60e]{margin:20px 0 0;font-size:17px;font-weight:500;line-height:1.8}.definition>span[data-v-158ca60e]{font-family:var(--font-display);color:var(--muted);margin-right:9px;font-size:14px;font-style:italic;font-weight:400}.section-label[data-v-158ca60e]{justify-content:space-between;align-items:center;gap:10px;min-height:34px;margin-bottom:10px;font-size:12px;font-weight:500;display:flex}.section-label>svg[data-v-158ca60e]{color:#9fa98f;width:16px;height:16px}.section-label small[data-v-158ca60e]{color:var(--muted);font-size:10px;font-weight:400}.quote[data-v-158ca60e]{background:#fff;border:1px solid #eef0e9;border-radius:20px;padding:21px 20px 16px}.sentence[data-v-158ca60e]{font-family:var(--font-display);white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:21px;line-height:1.75}.token[data-v-158ca60e]{font:inherit;color:inherit;background:0 0;border:0;border-radius:2px;padding:2px 0;display:inline}.token[data-v-158ca60e]:hover,.token[data-v-158ca60e]:focus-visible{background:var(--accent-soft)}.token.target[data-v-158ca60e]{color:var(--target);background:linear-gradient(#0000 72%,#f7dfcc 72%)}.translation-toggle[data-v-158ca60e]{color:#8b9485;background:0 0;border:0;min-height:36px;padding:14px 0 0;font-size:10px}.translation[data-v-158ca60e]{color:#76806f;margin:4px 0 12px;font-size:13px;line-height:1.85}.source[data-v-158ca60e]{color:#969e8e;margin:12px 0 0;font-size:10px;line-height:1.6}.source a[data-v-158ca60e]{color:inherit}.tap-note[data-v-158ca60e]{text-align:center;color:#929b89;margin:11px 0 28px;font-size:10px}.morph-section[data-v-158ca60e]{border-top:1px solid var(--line);padding-top:14px}.root-parts[data-v-158ca60e]{flex-wrap:wrap;align-items:center;gap:8px;margin:6px 0 15px;display:flex}.root-part[data-v-158ca60e]{text-align:center;background:#edf1e7;border-radius:13px;flex:1;gap:8px;min-width:65px;padding:13px 8px;display:grid}.root-part strong[data-v-158ca60e]{font-family:var(--font-display);color:var(--accent);font-size:21px;font-weight:500;line-height:1.2}.root-part span[data-v-158ca60e]{font-size:11px;line-height:1.5}.root-part small[data-v-158ca60e]{color:var(--muted);font-size:9px}.plus[data-v-158ca60e]{color:#a0a795;font-size:14px}.explanation[data-v-158ca60e]{color:#6e7866;margin:12px 0 0;font-size:13px;line-height:1.9}.draft-note[data-v-158ca60e]{color:#a0a695;text-align:center;margin:22px 0 8px;font-size:10px}.lookup-word[data-v-158ca60e]{font-family:var(--font-display);margin:10px 0;font-size:34px;font-weight:500}.lookup-meanings[data-v-158ca60e]{margin:24px 0;padding-left:20px;font-size:16px;line-height:1.8}.lookup-actions[data-v-158ca60e]{gap:10px;display:grid}.lookup-state[data-v-158ca60e]{color:var(--muted);font-size:13px;line-height:1.7}.session-progress[data-v-c042a35a]{gap:5px;margin:8px 12px 0;display:flex}.session-progress i[data-v-c042a35a]{background:var(--bg-accent);border-radius:3px;flex:1;height:3px}.session-progress .done[data-v-c042a35a]{background:var(--accent)}.session-progress .current[data-v-c042a35a]{background:#abbc94}.skip-button[data-v-c042a35a]{min-height:32px;margin:5px auto -10px;font-size:10px;display:block}.picker-note[data-v-c042a35a]{color:var(--muted);margin:0 0 18px;font-size:12px}.group-grid[data-v-c042a35a]{grid-template-columns:repeat(5,1fr);gap:9px;display:grid}.group-grid button[data-v-c042a35a]{background:var(--accent-soft);border:0;border-radius:12px;min-height:46px}.group-grid .selected[data-v-c042a35a]{background:var(--accent);color:#fff}.picker-pager[data-v-c042a35a]{color:var(--muted);justify-content:space-between;align-items:center;margin:-8px 0 14px;font-size:11px;display:flex}.picker-pager .text-button[data-v-c042a35a]{padding-inline:0}.loading-card[data-v-c042a35a]{text-align:center;color:var(--muted);padding:80px 20px;font-size:13px}.loading-card div[data-v-c042a35a]{background:var(--bg-accent);border-radius:12px;width:60%;height:34px;margin:15px auto}.loading-card div[data-v-c042a35a]:nth-child(2){width:35%;height:15px}.remaining[data-v-95381370]{text-align:center;width:44px;font-size:19px;font-family:var(--font-display)}.remaining small[data-v-95381370]{font:9px var(--font-body);color:var(--muted);margin-top:3px;display:block}.recall[data-v-95381370]{text-align:center;flex-direction:column;justify-content:center;align-items:center;min-height:57dvh;padding:35px 0;display:flex}.recall .eyebrow[data-v-95381370]{color:#a2aa98;font-size:9px}.recall h1[data-v-95381370]{font-family:var(--font-display);letter-spacing:-.035em;overflow-wrap:anywhere;max-width:100%;margin:24px 0 14px;font-size:clamp(40px,11vw,60px);font-weight:500}.pos[data-v-95381370]{font-family:var(--font-display);color:var(--muted);font-size:17px;font-style:italic}.recall-line[data-v-95381370]{background:#bbc7aa;width:28px;height:2px;margin:36px 0 20px}.recall-instruction[data-v-95381370]{color:#6e7b63;font-size:14px}.recall-tip[data-v-95381370]{color:#9aa18f;font-size:11px}.reveal-button[data-v-95381370]{width:100%}.forgot-button[data-v-95381370]{margin:7px auto -5px;font-size:12px;display:block}.review-receipt[data-v-95381370]{color:var(--accent);background:var(--accent-soft);border-radius:12px;justify-content:space-between;align-items:center;margin:18px 0;padding:8px 12px;font-size:11px;display:flex}.loading[data-v-95381370]{text-align:center;color:var(--muted);padding:30dvh 0;font-size:13px}.vocab[data-v-524f4449]{padding-top:24px}.vocab-heading[data-v-524f4449]{justify-content:space-between;align-items:center;display:flex}.vocab-heading h1[data-v-524f4449]{margin:10px 0;font-size:28px;font-weight:600}.vocab-heading>span[data-v-524f4449]{color:var(--muted);font-size:12px}.vocab-intro[data-v-524f4449]{color:var(--muted);margin:0 0 26px;font-size:13px}.filters[data-v-524f4449]{overscroll-behavior-x:contain;scrollbar-width:none;background:#ecefe6;border-radius:14px;gap:4px;margin-bottom:18px;padding:4px;display:flex;overflow-x:auto}.filters[data-v-524f4449]::-webkit-scrollbar{display:none}.filters button[data-v-524f4449]{white-space:nowrap;min-height:40px;color:var(--muted);background:0 0;border:0;border-radius:11px;flex:none;padding:8px 12px;font-size:12px}.filters .selected[data-v-524f4449]{color:var(--accent);background:#fff;font-weight:600;box-shadow:0 2px 5px #35472e09}.search-box[data-v-524f4449]{border:1px solid var(--line);background:var(--card);min-height:48px;color:var(--muted);border-radius:14px;align-items:center;gap:9px;padding:0 13px;display:flex}.search-box>svg[data-v-524f4449]{width:18px;height:18px}.search-box input[data-v-524f4449]{min-width:0;color:var(--ink);background:0 0;border:0;outline:0;flex:1;font-size:16px}.search-box input[data-v-524f4449]::placeholder{color:#a6ada0}.clear-search[data-v-524f4449]{background:var(--accent-soft);border:0;border-radius:50%;place-items:center;width:30px;height:30px;display:inline-grid}.clear-search svg[data-v-524f4449]{width:15px;height:15px}.alphabet[data-v-524f4449]{scrollbar-width:none;gap:3px;padding:14px 0 8px;display:flex;overflow-x:auto}.alphabet[data-v-524f4449]::-webkit-scrollbar{display:none}.alphabet button[data-v-524f4449]{width:29px;height:31px;color:var(--muted);background:0 0;border:0;border-radius:9px;flex:none;padding:0;font-size:11px}.alphabet .selected[data-v-524f4449]{background:var(--accent);color:#fff}.browse-note[data-v-524f4449]{color:var(--muted);margin:0 0 8px;font-size:10px}.word-list[data-v-524f4449]{margin:0;padding:0;list-style:none}.word-row[data-v-524f4449]{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;justify-content:space-between;align-items:center;gap:12px;width:100%;padding:20px 0;display:flex}.word-info[data-v-524f4449]{gap:7px;min-width:0;display:grid}.word-info strong[data-v-524f4449]{font-family:var(--font-display);overflow-wrap:anywhere;font-size:23px;font-weight:500}.word-info>span[data-v-524f4449]{color:var(--muted);white-space:nowrap;text-overflow:ellipsis;font-size:12px;overflow:hidden}.word-state[data-v-524f4449]{color:#95a08a;flex:none;align-items:center;gap:7px;font-size:10px;display:flex}.word-state svg[data-v-524f4449]{width:13px;height:13px;transform:rotate(180deg)}.word-state.due[data-v-524f4449]{color:var(--warn)}.message[data-v-524f4449]{color:var(--accent);background:var(--accent-soft);border-radius:12px;padding:12px;font-size:12px;line-height:1.8}.empty[data-v-524f4449]{text-align:center;color:var(--muted);padding:55px 0}.empty>svg[data-v-524f4449]{color:#94a57e;width:42px;height:42px}.empty h2[data-v-524f4449]{color:var(--ink);margin-top:24px;font-size:19px;font-weight:500}.empty p[data-v-524f4449]{font-size:12px;line-height:1.8}.empty button[data-v-524f4449]{margin:26px auto 0;font-size:13px}.more-button[data-v-524f4449]{width:100%;margin:14px 0}.list-end[data-v-524f4449]{color:var(--muted);text-align:center;margin:28px 0;font-size:10px}.enrollment-action[data-v-524f4449]{width:100%;margin-top:24px;font-size:13px}.feedback[data-v-524f4449]{color:var(--muted);margin-top:22px;font-size:12px}.feedback summary[data-v-524f4449]{cursor:pointer;min-height:44px;padding:12px 0}.feedback form[data-v-524f4449]{gap:12px;display:grid}.feedback textarea[data-v-524f4449]{border:1px solid var(--line);resize:vertical;border-radius:14px;width:100%;margin-top:10px;padding:12px;font-size:16px;display:block}.profile[data-v-ea2e411a]{padding-top:24px}.profile h1[data-v-ea2e411a]{font-size:var(--fs-title,26px);margin:4px 0 0;font-weight:600}.profile-user[data-v-ea2e411a]{text-align:left;border:1px solid var(--line);background:var(--card);border-radius:18px;align-items:center;gap:14px;width:100%;margin:18px 0 0;padding:16px;display:flex}.profile-user .user-copy[data-v-ea2e411a]{flex:1;min-width:0}.profile-user h2[data-v-ea2e411a]{margin:0 0 4px;font-size:18px}.profile-user p[data-v-ea2e411a]{color:var(--muted);margin:0;font-size:12px}.profile-user small[data-v-ea2e411a]{color:var(--accent);margin-top:6px;font-size:11px;display:block}.profile-user svg[data-v-ea2e411a]{width:16px;height:16px;color:var(--muted)}.avatar[data-v-ea2e411a]{background:var(--accent-soft);color:var(--accent);width:40px;height:40px;font-family:var(--font-display);border:0;border-radius:50%;flex:none;place-items:center;padding:0;font-size:20px;display:inline-grid;overflow:hidden}.avatar img[data-v-ea2e411a]{object-fit:cover;width:100%;height:100%;display:block}.large[data-v-ea2e411a]{width:56px;height:56px;font-size:28px}.huge[data-v-ea2e411a]{width:72px;height:72px;font-size:32px}.profile-stats[data-v-ea2e411a]{grid-template-columns:1fr 1fr;gap:10px;padding:16px 0;display:grid}.profile-stats div[data-v-ea2e411a]{text-align:center;border:1px solid var(--line);background:var(--card);border-radius:16px;gap:8px;padding:14px 8px;display:grid}.profile-stats strong[data-v-ea2e411a]{font-size:32px;font-family:var(--font-display);font-weight:400}.profile-stats span[data-v-ea2e411a]{color:var(--muted);font-size:12px}.menu-group[data-v-ea2e411a]{border:1px solid var(--line);background:var(--card);border-radius:18px;margin:4px 0 22px;display:grid;overflow:hidden}.menu-row[data-v-ea2e411a]{text-align:left;border:0;border-bottom:1px solid var(--line);background:0 0;align-items:center;gap:12px;width:100%;padding:14px 16px;display:flex}.menu-row[data-v-ea2e411a]:last-child{border-bottom:0}.menu-copy[data-v-ea2e411a]{flex:1;gap:4px;min-width:0;display:grid}.menu-copy strong[data-v-ea2e411a]{font-size:15px;font-weight:600}.menu-copy small[data-v-ea2e411a]{color:var(--muted);font-size:12px}.menu-row svg[data-v-ea2e411a]{width:16px;height:16px;color:var(--muted)}.profile>.secondary-button[data-v-ea2e411a]{width:100%}.profile-nav[data-v-ea2e411a]{align-items:center;gap:4px;min-height:44px;margin:0 0 8px;display:flex}.profile-nav h2[data-v-ea2e411a]{flex:1;margin:0;font-size:16px;font-weight:600}.dirty-flag[data-v-ea2e411a]{color:var(--warn);background:var(--warn-bg);border-radius:999px;flex:none;padding:4px 8px;font-size:11px}.nav-spacer[data-v-ea2e411a]{width:44px}.profile-pane[data-v-ea2e411a]{gap:12px;padding:8px 0 16px;display:grid}.profile-pane h3[data-v-ea2e411a]{margin:8px 0 0;font-size:15px}.profile-pane label[data-v-ea2e411a]{color:var(--muted);font-size:12px}.profile-pane input[data-v-ea2e411a]{box-sizing:border-box;width:100%;font-size:var(--fs-body,16px);background:var(--card);color:var(--ink);border:1px solid var(--line);border-radius:13px;margin-top:8px;padding:14px 13px;display:block}.account-preview[data-v-ea2e411a]{justify-items:center;gap:8px;padding:8px 0 4px;display:grid}.account-preview p[data-v-ea2e411a]{color:var(--muted);margin:0;font-size:13px}.avatar-label[data-v-ea2e411a]{color:var(--muted);margin:4px 0 0;font-size:12px}.avatar-grid[data-v-ea2e411a]{grid-template-columns:repeat(4,1fr);gap:10px;display:grid}.avatar-pick[data-v-ea2e411a]{aspect-ratio:1;background:var(--accent-soft);border:2px solid #0000;border-radius:50%;width:100%;padding:0;overflow:hidden}.avatar-pick.on[data-v-ea2e411a]{border-color:var(--accent)}.avatar-pick img[data-v-ea2e411a]{object-fit:cover;width:100%;height:100%;display:block}.option-row[data-v-ea2e411a]{flex-wrap:wrap;gap:8px;display:flex}.option-chip[data-v-ea2e411a]{border:1px solid var(--line);background:var(--card);min-height:40px;color:var(--ink);border-radius:999px;padding:8px 14px;font-size:13px}.option-chip.on[data-v-ea2e411a]{border-color:var(--accent);background:var(--accent-soft);color:var(--accent);font-weight:600}.deck-picker[data-v-ea2e411a]{gap:8px;display:grid}.deck-option[data-v-ea2e411a]{text-align:left;border:1px solid var(--line);background:var(--card);border-radius:14px;align-items:center;gap:10px;padding:12px;display:flex}.deck-option.on[data-v-ea2e411a]{border-color:var(--accent);background:var(--accent-soft)}.deck-option-badge[data-v-ea2e411a]{text-align:center;width:48px;font-size:11px;font-family:var(--font-display);color:#657557;flex:none}.deck-option-meta[data-v-ea2e411a]{flex:1;gap:2px;min-width:0;display:grid}.deck-option-meta strong[data-v-ea2e411a]{font-size:13px;font-weight:600}.deck-option-meta small[data-v-ea2e411a]{color:var(--muted);font-size:10px}.deck-current[data-v-ea2e411a]{color:var(--accent);flex:none;font-size:11px;font-weight:600}.deck-empty[data-v-ea2e411a]{gap:10px;display:grid}.pane-hint[data-v-ea2e411a]{color:var(--muted);margin:0;font-size:12px;line-height:1.6}.about[data-v-ea2e411a]{color:var(--muted);margin:12px 0 8px}.about>svg[data-v-ea2e411a]{color:var(--accent)}.about h2[data-v-ea2e411a]{color:var(--ink);font-size:18px}.about p[data-v-ea2e411a]{font-size:14px;line-height:1.8}.about small[data-v-ea2e411a]{font-size:11px;line-height:1.8}.hero-scene[data-v-26d2102f]{background:var(--sky);border-radius:22px;height:clamp(145px,42vw,205px);margin:0;position:relative;overflow:hidden}.hero-scene img[data-v-26d2102f],.hero-scene svg[data-v-26d2102f]{object-fit:cover;width:100%;height:100%;display:block}.hero-scene[data-v-26d2102f]:after{content:"";pointer-events:none;background:linear-gradient(#0000,#1d30274d);position:absolute;inset:45% 0 0}.hero-scene figcaption[data-v-26d2102f]{z-index:1;color:#f9f8ee;text-shadow:0 1px 8px #29413355;gap:5px;max-width:67%;display:grid;position:absolute;bottom:16px;left:20px}.hero-scene q[data-v-26d2102f]{font-family:var(--font-display);font-size:clamp(14px,4vw,18px);line-height:1.15}.hero-scene q[data-v-26d2102f]:before,.hero-scene q[data-v-26d2102f]:after{content:none}.hero-scene span[data-v-26d2102f]{letter-spacing:.11em;text-transform:uppercase;opacity:.92;font-size:8px}.app[data-v-781769b3]{max-width:600px;min-height:100dvh;margin:auto}.main[data-v-781769b3]{padding:calc(14px + var(--sat)) max(24px, var(--sar)) calc(100px + var(--sab)) max(24px, var(--sal))}.main.immersive[data-v-781769b3]{padding:calc(8px + var(--sat)) max(20px, var(--sar)) calc(140px + var(--sab)) max(20px, var(--sal))}.home-header[data-v-781769b3],.section-caption[data-v-781769b3]{justify-content:space-between;align-items:center;display:flex}.wordmark[data-v-781769b3]{font-family:var(--font-display);letter-spacing:-.8px;font-size:23px;font-weight:700}.brand-dot[data-v-781769b3]{color:#ba7754}.avatar[data-v-781769b3]{background:var(--accent-soft);color:var(--accent);width:40px;height:40px;font-family:var(--font-display);border:0;border-radius:50%;place-items:center;padding:0;font-size:20px;display:inline-grid;overflow:hidden}.avatar img[data-v-781769b3]{object-fit:cover;width:100%;height:100%}.greeting[data-v-781769b3]{margin:22px 0 17px}.greeting .eyebrow[data-v-781769b3]{letter-spacing:.12em;font-size:10px}.greeting h1[data-v-781769b3]{font-size:var(--fs-title,26px);letter-spacing:-1px;margin:12px 0 9px;font-weight:600}.greeting>p[data-v-781769b3]:last-child{color:var(--muted);margin:0;font-size:13px}.plan-card[data-v-781769b3]{border:1px solid var(--line);background:var(--card);cursor:pointer;border-radius:18px;align-items:center;gap:12px;margin-top:13px;padding:14px;display:flex}.plan-badge[data-v-781769b3]{color:#f5f2db;width:43px;height:43px;font-family:var(--font-display);letter-spacing:.03em;background:#657557;border-radius:13px 16px 16px 13px;flex:none;place-items:center;font-size:11px;display:grid;box-shadow:inset 3px 0 #ffffff1f}.plan-info[data-v-781769b3]{flex:1;min-width:0}.plan-info>div[data-v-781769b3]{align-items:baseline;gap:7px;display:flex}.plan-info .eyebrow[data-v-781769b3]{margin:0 0 4px;font-size:9px}.plan-info h2[data-v-781769b3]{margin:0;font-size:14px;font-weight:600}.plan-info strong[data-v-781769b3]{color:var(--accent);font-family:var(--font-display);font-size:18px;font-weight:500}.plan-info strong small[data-v-781769b3]{font-size:10px}.plan-info>p[data-v-781769b3]{color:var(--muted);margin:5px 0 7px;font-size:10px}.book-progress[data-v-781769b3]{background:var(--bg-accent);border-radius:5px;height:3px;overflow:hidden}.book-progress i[data-v-781769b3]{background:var(--accent);height:100%;display:block}.plan-icon[data-v-781769b3]{color:#acb5a5;width:22px;height:22px}.deck-picker[data-v-781769b3]{gap:8px;margin-top:8px;display:grid}.deck-option[data-v-781769b3]{text-align:left;border:1px solid var(--line);background:var(--card);border-radius:14px;align-items:center;gap:10px;padding:10px 12px;display:flex}.deck-option.on[data-v-781769b3]{border-color:var(--accent);background:var(--accent-soft)}.deck-option-badge[data-v-781769b3]{text-align:center;width:48px;font-size:11px;font-family:var(--font-display);color:#657557;flex:none}.deck-option-meta[data-v-781769b3]{gap:2px;min-width:0;display:grid}.deck-option-meta strong[data-v-781769b3]{font-size:13px;font-weight:600}.deck-option-meta small[data-v-781769b3]{color:var(--muted);font-size:10px}.section-caption[data-v-781769b3]{margin:17px 0 11px}.section-caption h2[data-v-781769b3]{margin:0;font-size:15px;font-weight:600}.section-caption span[data-v-781769b3]{color:var(--muted);font-size:10px}.task-grid[data-v-781769b3]{grid-template-columns:1fr 1fr;gap:12px;display:grid}.task-card[data-v-781769b3]{text-align:left;background:var(--accent-soft);border:0;border-radius:19px;min-width:0;padding:14px 13px}.review-task[data-v-781769b3]{background:var(--bg-accent)}.task-label[data-v-781769b3]{align-items:center;gap:7px;font-size:12px;display:flex}.task-label svg[data-v-781769b3]{width:16px;height:16px}.task-card strong[data-v-781769b3]{font-size:34px;font-family:var(--font-display);margin:10px 0;font-weight:400;display:block}.task-card strong small[data-v-781769b3]{font-family:var(--font-body);color:var(--muted);margin-left:6px;font-size:10px}.task-caption[data-v-781769b3]{color:var(--muted);justify-content:space-between;align-items:center;gap:4px;font-size:10px;display:flex}.task-caption svg[data-v-781769b3]{width:15px;height:15px}.home-footnote[data-v-781769b3]{text-align:center;color:var(--muted);margin:13px 0 0;font-size:10px}.bottom-nav[data-v-781769b3]{z-index:20;width:min(100%,600px);padding:10px 20px calc(10px + var(--sab));background:var(--bg);border-top:1px solid var(--line);grid-template-columns:repeat(3,1fr);display:grid;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.bottom-nav button[data-v-781769b3]{color:#9ca497;background:0 0;border:0;justify-items:center;gap:6px;min-height:48px;font-size:10px;display:grid}.bottom-nav button.on[data-v-781769b3]{color:var(--accent);font-weight:600}.boot[data-v-781769b3]{text-align:center;color:var(--muted);padding:35dvh 24px}.login[data-v-781769b3]{min-height:100dvh;padding:calc(46px + var(--sat)) 28px 40px;background:var(--bg)}.login-brand[data-v-781769b3]{align-items:center;gap:11px;display:flex}.login-brand>span[data-v-781769b3]:last-child{gap:3px;display:grid}.login-brand strong[data-v-781769b3]{color:var(--ink);font-family:var(--font-display);letter-spacing:-.8px;font-size:23px}.login-brand small[data-v-781769b3]{color:var(--muted);letter-spacing:.05em;font-size:9px}.login-mark[data-v-781769b3]{color:#fffdf4;background:#657557;border-radius:14px;place-items:center;width:43px;height:43px;display:grid;position:relative;box-shadow:0 7px 18px #4252362e}.login-mark>svg[data-v-781769b3]{width:22px;height:22px}.login-mark i[data-v-781769b3]{color:#fff;background:#d9a96c;border:2px solid #fbfcf8;border-radius:50%;place-items:center;width:19px;height:19px;display:grid;position:absolute;top:-6px;right:-5px}.login-mark i svg[data-v-781769b3]{width:11px;height:11px}.login-copy[data-v-781769b3]{margin-top:69px}.login .eyebrow[data-v-781769b3]{letter-spacing:.13em;margin:0 0 13px;font-size:10px}.login h1[data-v-781769b3]{letter-spacing:-1.4px;margin:0;font-size:clamp(30px,8vw,36px);font-weight:500;line-height:1.48}.intro[data-v-781769b3]{color:var(--muted);margin:13px 0 0;font-size:14px;line-height:1.8}.login-form[data-v-781769b3]{background:#ffffffa8;border:1px solid #ffffffc7;border-radius:22px;gap:19px;margin-top:44px;padding:21px;display:grid;box-shadow:0 16px 42px #444f3714}.login label[data-v-781769b3]{color:var(--muted);font-size:12px}.login input[data-v-781769b3]{box-sizing:border-box;border:1px solid var(--line);background:#ffffffdb;border-radius:13px;width:100%;margin-top:8px;padding:14px 13px;font-size:16px;display:block}.login-form .primary-button[data-v-781769b3]{margin-top:3px}.login-note[data-v-781769b3]{text-align:center;color:var(--muted);margin-top:20px;font-size:11px}@media (width>=700px){.app[data-v-781769b3]{border-inline:1px solid var(--line)}.main[data-v-781769b3]{padding-inline:36px}.main.immersive[data-v-781769b3]{padding-inline:30px}}:root{--bg:#f8f9f5;--bg-accent:#e8ece1;--ink:#243128;--muted:#788175;--accent:#536e4d;--accent-soft:#e8eedf;--warn:#b96842;--warn-bg:#fdf3ef;--target:#ba633d;--card:#fff;--line:#e4e8de;--on-accent:#fff;--fs-body:16px;--fs-lemma:36px;--fs-title:26px;--radius:22px;--bottom-nav-height:72px;--study-actions-height:100px;--font-display:"Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body:-apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--sat:env(safe-area-inset-top,0px);--sab:env(safe-area-inset-bottom,0px);--sal:env(safe-area-inset-left,0px);--sar:env(safe-area-inset-right,0px)}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#app{background:var(--bg);min-height:100dvh;color:var(--ink);font-family:var(--font-body);font-size:var(--fs-body,16px);-webkit-font-smoothing:antialiased;margin:0}body:has(dialog[open]){overflow:hidden}button,input,textarea{font:inherit}button{cursor:pointer;touch-action:manipulation;color:inherit;transition:background-color .16s,transform .16s}button:active:not(:disabled){transform:scale(.97)}button:disabled{opacity:.45;cursor:not-allowed}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}svg{flex-shrink:0}.icon-button{background:0 0;border:0;border-radius:50%;place-items:center;width:44px;height:44px;display:inline-grid}.icon-button:hover{background:var(--accent-soft)}.primary-button,.secondary-button{border:0;border-radius:16px;justify-content:center;align-items:center;gap:12px;min-height:54px;padding:14px 22px;font-weight:600;display:flex}.primary-button{background:var(--accent);color:var(--on-accent)}.secondary-button{background:var(--accent-soft);color:var(--accent)}.text-button{min-height:44px;color:var(--muted);background:0 0;border:0;padding:8px 12px;font-size:13px}.eyebrow{color:var(--muted);letter-spacing:.22em;text-transform:uppercase;font-size:10px}.error-note{color:var(--warn);font-size:13px;line-height:1.6}.session-header{justify-content:space-between;align-items:center;min-height:54px;display:flex}.session-header .session-label{text-align:center;font-size:13px}.session-label small{color:var(--muted);margin-top:4px;font-size:11px;display:block}.session-footer{z-index:10;width:min(100%,600px);padding:14px max(22px, var(--sal)) calc(20px + var(--sab));background:linear-gradient(transparent, var(--bg) 16px);position:fixed;bottom:0;left:50%;transform:translate(-50%)}.session-footer .footnote{text-align:center;color:var(--muted);margin:8px 0 0;font-size:11px}.rating-actions{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.rating-actions button{background:var(--accent-soft);border:0;border-radius:18px;justify-items:center;gap:7px;padding:13px 4px;font-size:13px;display:grid}.rating-actions button:first-child{background:var(--warn-bg);color:var(--warn)}.rating-actions button:nth-child(2){color:#7c7b5e;background:#eeeee5}.rating-actions button:last-child{color:var(--accent)}.rating-actions small{opacity:.8;font-size:10px}.completion{text-align:center;padding:60px 16px}.completion .completion-icon{background:var(--accent-soft);width:84px;height:84px;color:var(--accent);border-radius:50%;place-items:center;margin:0 auto 26px;display:grid}.completion h1{font-size:26px;font-weight:600}.completion p{color:var(--muted);font-size:14px;line-height:1.8}.completion button{width:100%;margin-top:14px}.page-enter-active,.page-leave-active{transition:opacity .12s,transform .12s}.page-enter-from{opacity:0;transform:translateY(8px)}.page-leave-to{opacity:0}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}
