.reader-page.svelte-10j8pvl{min-height:100dvh;background:linear-gradient(180deg,#eef5ff,#f8fafc 360px,#f6f7fb);position:relative;padding:.75rem 1rem 3rem}.reader-nav.svelte-10j8pvl{position:sticky;top:.75rem;z-index:50;display:flex;align-items:center;gap:var(--space-3);max-width:820px;margin:0 auto;padding:.65rem .75rem;background:#ffffffdb;backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);border:1px solid rgba(205,213,228,.9);border-radius:999px;box-shadow:0 16px 48px #1a254214}.nav-back.svelte-10j8pvl{display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:999px;background:#f3f6fb;color:var(--color-text-secondary);transition:all var(--duration-fast) var(--ease-out);text-decoration:none}.nav-back.svelte-10j8pvl:hover{background:var(--color-bg-secondary);color:var(--color-text-primary)}.nav-info.svelte-10j8pvl{display:flex;align-items:center;gap:var(--space-2)}.nav-level.svelte-10j8pvl{padding:3px 9px;border-radius:var(--radius-full);font-size:.6rem;font-weight:800;color:#fff;text-transform:uppercase;letter-spacing:0}.nav-lang.svelte-10j8pvl{font-size:var(--text-sm);font-weight:600;color:var(--color-text-secondary)}.nav-hint.svelte-10j8pvl{margin-left:auto}.tap-hint.svelte-10j8pvl{font-size:var(--text-xs);color:var(--color-text-secondary);font-weight:700;animation:svelte-10j8pvl-fadeInHint .6s ease-out}@keyframes svelte-10j8pvl-fadeInHint{0%{opacity:0;transform:translateY(-4px)}to{opacity:1;transform:translateY(0)}}.reader-header.svelte-10j8pvl{max-width:820px;margin:1rem auto;padding:clamp(1.5rem,4vw,3rem);text-align:center;border:1px solid rgba(205,213,228,.88);border-radius:32px;background:linear-gradient(135deg,#fffffff5,#eef6ffe6);box-shadow:0 24px 70px #1c27451a}.header-emoji.svelte-10j8pvl{display:inline-flex;align-items:center;justify-content:center;width:3.25rem;height:3.25rem;margin-bottom:var(--space-3);border:1px solid rgba(205,213,228,.9);border-radius:18px;background:#fff;font-size:1.45rem;box-shadow:0 12px 30px #1c274514}.header-title.svelte-10j8pvl{font-family:var(--font-display);font-size:clamp(2rem,5vw,3.5rem);font-weight:900;color:var(--color-text-primary);letter-spacing:0;line-height:1.2;margin:0 0 var(--space-3)}.header-meta.svelte-10j8pvl{display:flex;align-items:center;justify-content:center;gap:var(--space-2);flex-wrap:wrap;font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:500}.meta-sep.svelte-10j8pvl{opacity:.4}.reader-body.svelte-10j8pvl{max-width:820px;margin:0 auto;padding:clamp(1.25rem,4vw,2.7rem);font-size:var(--text-base);line-height:1.85;color:var(--color-text-primary);border:1px solid rgba(205,213,228,.9);border-radius:32px;background:#fffffff5;box-shadow:0 20px 60px #1c274514}.reader-body.svelte-10j8pvl .art-h2{font-family:var(--font-display);font-size:var(--text-lg);font-weight:700;color:var(--color-text-primary);margin:var(--space-8) 0 var(--space-3);letter-spacing:0;padding-bottom:var(--space-2);border-bottom:2px solid rgba(26,115,232,.12)}.reader-body.svelte-10j8pvl .art-p{margin-bottom:var(--space-3)}.reader-body.svelte-10j8pvl .art-list-item{padding-left:var(--space-2)}.reader-body.svelte-10j8pvl .art-quote{padding:var(--space-4) var(--space-5);margin:var(--space-5) 0;background:var(--color-bg-secondary);border-left:3px solid var(--color-brand);border-radius:0 var(--radius-lg) var(--radius-lg) 0;font-size:var(--text-sm);line-height:1.7}.reader-body.svelte-10j8pvl .art-break{height:var(--space-2)}.reader-body.svelte-10j8pvl table{width:100%;border-collapse:collapse;margin:var(--space-5) 0;font-size:var(--text-sm);border-radius:var(--radius-lg);overflow:hidden}.reader-body.svelte-10j8pvl td{padding:var(--space-2) var(--space-3);border:1px solid var(--color-border);text-align:left}.reader-body.svelte-10j8pvl tr:first-child td{background:var(--color-bg-secondary);font-weight:600;font-size:var(--text-xs);text-transform:uppercase;letter-spacing:.3px}.reader-body.svelte-10j8pvl strong{font-weight:700;color:var(--color-brand)}.reader-body.svelte-10j8pvl em{font-style:italic;color:var(--color-text-secondary)}.reader-body.svelte-10j8pvl .tap-word{cursor:pointer;border-radius:3px;transition:all .15s ease;padding:0 1px}.reader-body.svelte-10j8pvl .tap-word:hover{background:#1a73e81a;color:var(--color-brand)}.reader-body.svelte-10j8pvl .tap-word.active{background:#1a73e829;color:var(--color-brand);box-shadow:0 0 0 2px #1a73e82e}.translate-popup.svelte-10j8pvl{position:absolute;transform:translate(-50%,-100%);z-index:100;background:var(--color-bg-elevated, var(--color-bg));border:1px solid var(--color-border);border-radius:var(--radius-xl);padding:var(--space-4);min-width:200px;max-width:280px;box-shadow:0 12px 40px #00000026,0 0 0 1px #00000008;text-align:center;animation:svelte-10j8pvl-popupIn .2s cubic-bezier(.34,1.56,.64,1)}@keyframes svelte-10j8pvl-popupIn{0%{opacity:0;transform:translate(-50%,-100%) scale(.9)}to{opacity:1;transform:translate(-50%,-100%) scale(1)}}.popup-arrow.svelte-10j8pvl{position:absolute;bottom:-6px;left:50%;transform:translate(-50%) rotate(45deg);width:12px;height:12px;background:var(--color-bg-elevated, var(--color-bg));border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.popup-word.svelte-10j8pvl{font-size:var(--text-xs);color:var(--color-text-tertiary);font-weight:500;text-transform:uppercase;letter-spacing:.5px;margin-bottom:var(--space-1)}.popup-translation.svelte-10j8pvl{font-family:var(--font-display);font-size:var(--text-lg);font-weight:800;color:var(--color-text-primary);margin-bottom:var(--space-1)}.popup-hint.svelte-10j8pvl{font-size:var(--text-xs);color:var(--color-text-tertiary);margin-bottom:var(--space-3)}.popup-loading.svelte-10j8pvl{padding:var(--space-2) 0}.popup-dots.svelte-10j8pvl{display:flex;align-items:center;justify-content:center;gap:4px}.popup-dots.svelte-10j8pvl span:where(.svelte-10j8pvl){width:6px;height:6px;border-radius:50%;background:var(--color-brand);animation:svelte-10j8pvl-dotBounce .6s infinite alternate}.popup-dots.svelte-10j8pvl span:where(.svelte-10j8pvl):nth-child(2){animation-delay:.15s}.popup-dots.svelte-10j8pvl span:where(.svelte-10j8pvl):nth-child(3){animation-delay:.3s}@keyframes svelte-10j8pvl-dotBounce{to{opacity:.3;transform:translateY(-3px)}}.popup-save-btn.svelte-10j8pvl{display:block;width:100%;padding:var(--space-2) var(--space-3);background:linear-gradient(135deg,var(--color-brand),#1557b0);color:#fff;font-weight:700;font-size:var(--text-xs);border:none;border-radius:var(--radius-lg);cursor:pointer;transition:all var(--duration-fast) var(--ease-out)}.popup-save-btn.svelte-10j8pvl:hover{transform:translateY(-1px);box-shadow:var(--shadow-md)}.popup-added.svelte-10j8pvl{font-size:var(--text-sm);font-weight:700;color:var(--color-success, #10b981);padding:var(--space-1) 0}.popup-register-btn.svelte-10j8pvl{display:block;width:100%;padding:var(--space-2) var(--space-3);background:#eef5ff;color:var(--color-brand);font-weight:700;font-size:var(--text-xs);border:1px solid rgba(36,82,255,.2);border-radius:var(--radius-lg);text-decoration:none;text-align:center;transition:all var(--duration-fast) var(--ease-out)}.popup-register-btn.svelte-10j8pvl:hover{background:var(--color-bg-secondary);transform:translateY(-1px)}.reader-footer.svelte-10j8pvl{max-width:820px;margin:0 auto;padding:var(--space-8) var(--space-5) var(--space-12);display:flex;flex-direction:column;align-items:center;gap:var(--space-5)}.footer-cta.svelte-10j8pvl{text-align:center;padding:var(--space-8) var(--space-6);background:linear-gradient(135deg,#111827,#16366f);border:1px solid rgba(255,255,255,.08);border-radius:28px;box-shadow:0 24px 70px #121d3a38;width:100%}.footer-cta.svelte-10j8pvl h3:where(.svelte-10j8pvl){font-family:var(--font-display);font-size:var(--text-lg);font-weight:800;color:#fff;margin-bottom:var(--space-2)}.footer-cta.svelte-10j8pvl p:where(.svelte-10j8pvl){font-size:var(--text-sm);color:#ffffffb8;line-height:1.6;margin-bottom:var(--space-5)}.footer-back.svelte-10j8pvl{font-size:var(--text-sm);font-weight:600;color:var(--color-brand);text-decoration:none}.footer-back.svelte-10j8pvl:hover{text-decoration:underline}.tutor-hint.svelte-10j8pvl{font-size:var(--text-xs);color:var(--color-brand);text-decoration:none;font-weight:600;transition:opacity .2s}.tutor-hint.svelte-10j8pvl:hover{opacity:.7}.header-tags.svelte-10j8pvl{display:flex;gap:var(--space-2);justify-content:center;flex-wrap:wrap;margin-top:var(--space-3)}.header-tag.svelte-10j8pvl{font-size:.65rem;color:var(--color-brand);background:#1a73e814;padding:.15rem .5rem;border-radius:var(--radius-full)}.tutor-cta.svelte-10j8pvl{max-width:820px;margin:0 auto;padding:var(--space-4) var(--space-5);display:flex;gap:var(--space-3);flex-wrap:wrap;justify-content:center}.tutor-btn.svelte-10j8pvl{display:inline-flex;padding:var(--space-3) var(--space-5);background:#eef5ff;color:var(--color-brand);font-weight:700;font-size:var(--text-sm);border:1px solid rgba(36,82,255,.2);border-radius:var(--radius-xl);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.tutor-btn.svelte-10j8pvl:hover{background:var(--color-bg-secondary);transform:translateY(-1px);box-shadow:var(--shadow-sm)}.chapter-link.svelte-10j8pvl{display:inline-flex;padding:var(--space-3) var(--space-5);background:var(--color-bg-card);color:var(--color-text-secondary);font-weight:600;font-size:var(--text-sm);border:1px solid var(--color-border);border-radius:var(--radius-xl);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.chapter-link.svelte-10j8pvl:hover{border-color:var(--color-brand);color:var(--color-brand)}.related-section.svelte-10j8pvl{max-width:820px;margin:0 auto;padding:var(--space-6) var(--space-5);border-top:1px solid var(--color-border)}.related-title.svelte-10j8pvl{font-family:var(--font-display);font-size:var(--text-base);font-weight:700;color:var(--color-text-primary);margin-bottom:var(--space-4)}.related-grid.svelte-10j8pvl{display:grid;grid-template-columns:1fr 1fr;gap:var(--space-3)}.related-card.svelte-10j8pvl{display:flex;align-items:center;gap:var(--space-3);padding:var(--space-3) var(--space-4);background:var(--color-bg-card);border:1px solid var(--color-border);border-radius:var(--radius-lg);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.related-card.svelte-10j8pvl:hover{border-color:var(--color-brand-light);box-shadow:var(--shadow-sm);transform:translateY(-1px)}.related-emoji.svelte-10j8pvl{font-size:1.5rem;flex-shrink:0}.related-info.svelte-10j8pvl{min-width:0}.related-name.svelte-10j8pvl{display:block;font-size:var(--text-sm);font-weight:600;color:var(--color-text-primary);line-height:1.3;display:-webkit-box;line-clamp:2;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.related-meta.svelte-10j8pvl{font-size:var(--text-xs);color:var(--color-text-tertiary)}.footer-btns.svelte-10j8pvl{display:flex;gap:var(--space-3);justify-content:center;flex-wrap:wrap}.footer-btn.primary.svelte-10j8pvl{display:inline-flex;padding:var(--space-3) var(--space-6);background:linear-gradient(135deg,var(--color-brand),#1557b0);color:#fff;font-family:var(--font-display);font-weight:700;font-size:var(--text-base);border-radius:var(--radius-lg);text-decoration:none;box-shadow:var(--shadow-md);transition:all var(--duration-fast) var(--ease-out)}.footer-btn.primary.svelte-10j8pvl:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.footer-btn.secondary.svelte-10j8pvl{display:inline-flex;padding:var(--space-3) var(--space-6);background:#ffffff1f;color:#fff;font-weight:700;font-size:var(--text-base);border:1px solid rgba(36,82,255,.2);border-radius:var(--radius-lg);text-decoration:none;transition:all var(--duration-fast) var(--ease-out)}.footer-btn.secondary.svelte-10j8pvl:hover{background:#2452ff0f;transform:translateY(-1px)}@media(max-width:640px){.reader-page.svelte-10j8pvl{padding:.5rem .75rem 2rem}.reader-nav.svelte-10j8pvl{border-radius:22px;top:.5rem}.nav-lang.svelte-10j8pvl,.tap-hint.svelte-10j8pvl{display:none}.reader-header.svelte-10j8pvl,.reader-body.svelte-10j8pvl{border-radius:24px}.related-grid.svelte-10j8pvl{grid-template-columns:1fr}.footer-btns.svelte-10j8pvl{flex-direction:column;align-items:center}}@media(min-width:640px){.reader-body.svelte-10j8pvl{font-size:1.05rem;line-height:1.9}}.page-shell.public-shell{padding-top:calc(var(--header-height) + var(--space-8) + var(--safe-area-top))}.article-breadcrumb.svelte-1mewhal{display:flex;align-items:center;gap:var(--space-2);margin-bottom:var(--space-8);overflow:hidden;color:var(--color-text-secondary);font-size:var(--text-sm);white-space:nowrap}.article-breadcrumb.svelte-1mewhal a:where(.svelte-1mewhal){color:inherit;font-weight:700;text-decoration:none}.article-breadcrumb.svelte-1mewhal a:where(.svelte-1mewhal):hover{color:var(--color-text-primary)}.article-breadcrumb.svelte-1mewhal span[aria-current=page]:where(.svelte-1mewhal){overflow:hidden;text-overflow:ellipsis}.article-author.svelte-1mewhal{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4);margin-top:var(--space-12);padding:var(--space-5);border:thin solid var(--color-border);border-radius:1.25rem;background:var(--color-bg-elevated)}.author-mark.svelte-1mewhal{display:grid;place-items:center;width:3rem;height:3rem;border-radius:var(--radius-full);background:var(--color-text-primary);color:var(--color-text-inverse);font-family:var(--font-display);font-weight:800}.author-kicker.svelte-1mewhal{margin:0 0 var(--space-1);color:var(--color-brand-dark);font-size:var(--text-sm);font-weight:750}.article-author.svelte-1mewhal h2:where(.svelte-1mewhal){margin:0;color:var(--color-text-primary);font-family:var(--font-display);font-size:var(--text-lg);font-weight:750}.article-author.svelte-1mewhal p:where(.svelte-1mewhal):last-child{margin:var(--space-1) 0 0;color:var(--color-text-secondary);font-size:var(--text-sm);line-height:1.5}.article-author.svelte-1mewhal>a:where(.svelte-1mewhal){display:inline-flex;align-items:center;gap:var(--space-2);color:var(--color-text-primary);font-size:var(--text-sm);font-weight:700;text-decoration:none}.article-author.svelte-1mewhal>a:where(.svelte-1mewhal):hover span:where(.svelte-1mewhal){transform:translate(3px)}.article-author.svelte-1mewhal>a:where(.svelte-1mewhal) span:where(.svelte-1mewhal),.related-guide.svelte-1mewhal small:where(.svelte-1mewhal) span:where(.svelte-1mewhal){transition:transform var(--duration-fast) var(--ease-out)}@media(max-width:640px){.article-author.svelte-1mewhal{grid-template-columns:auto minmax(0,1fr)}.article-author.svelte-1mewhal>a:where(.svelte-1mewhal){grid-column:1 / -1}}.page-shell .related-guides.svelte-1mewhal{width:min(100% - 2rem,64rem);margin-top:clamp(4rem,8vw,6rem);margin-bottom:clamp(4rem,8vw,6rem)}.related-guides-heading.svelte-1mewhal p:where(.svelte-1mewhal){margin:0 0 var(--space-3);color:var(--color-brand-dark);font-size:var(--text-sm);font-weight:750}.related-guides-heading.svelte-1mewhal h2:where(.svelte-1mewhal){margin:0 0 var(--space-6);color:var(--color-text-primary);font-family:var(--font-display);font-size:clamp(1.75rem,3.2vw,2.5rem);font-weight:800;line-height:1.15;letter-spacing:-.04em}.related-guides-grid.svelte-1mewhal{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.related-guide.svelte-1mewhal{display:grid;grid-template-rows:auto 1fr;overflow:hidden;border:thin solid var(--color-border);border-radius:1.25rem;background:var(--color-bg-elevated);color:var(--color-text-primary);text-decoration:none;transition:box-shadow var(--duration-fast) var(--ease-out)}.related-guide.svelte-1mewhal:hover{box-shadow:var(--shadow-sm)}.related-guide.svelte-1mewhal:hover small:where(.svelte-1mewhal) span:where(.svelte-1mewhal){transform:translate(3px)}.related-guide.svelte-1mewhal img:where(.svelte-1mewhal){display:block;width:100%;height:auto;aspect-ratio:16 / 9;-o-object-fit:cover;object-fit:cover}.related-guide.svelte-1mewhal>span:where(.svelte-1mewhal){display:flex;flex-direction:column;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5) var(--space-5)}.related-guide.svelte-1mewhal strong:where(.svelte-1mewhal){font-family:var(--font-display);font-size:var(--text-lg);line-height:1.3}.related-guide.svelte-1mewhal small:where(.svelte-1mewhal){display:inline-flex;align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:700}@media(max-width:700px){.related-guides-grid.svelte-1mewhal{grid-template-columns:minmax(0,1fr)}.related-guide.svelte-1mewhal{grid-template-columns:7rem minmax(0,1fr);grid-template-rows:auto}.related-guide.svelte-1mewhal img:where(.svelte-1mewhal){height:100%;aspect-ratio:1}}.page-shell.logged-in{padding-top:0;padding-bottom:calc(var(--tab-bar-height, 5.5rem) + 40px)}.reader-topbar.svelte-1mewhal{display:flex;align-items:center;gap:12px;padding:10px 16px;position:sticky;top:0;z-index:50;background:#ffffffeb;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid rgba(0,0,0,.06)}.reader-back.svelte-1mewhal{display:inline-flex;align-items:center;gap:var(--space-1);padding:6px 10px;border-radius:999px;color:var(--color-text-primary);font-size:14px;font-weight:700;text-decoration:none;transition:background .14s ease}.reader-back.svelte-1mewhal:hover{background:var(--color-bg-secondary)}.reader-title.svelte-1mewhal{flex:1;font-size:13px;font-weight:600;color:#333;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.reader-toggle.svelte-1mewhal{display:inline-flex;align-items:center;gap:var(--space-2);min-height:2.25rem;padding:0 12px;border:thin solid var(--color-border-strong);border-radius:999px;background:var(--color-bg-elevated);color:var(--color-text-primary);font-size:13px;font-weight:700;cursor:pointer}.reader-toggle.is-on.svelte-1mewhal{border-color:transparent;background:var(--color-text-primary);color:var(--color-text-inverse)}main.reading-active.svelte-1mewhal{cursor:text;-moz-user-select:text;user-select:text;-webkit-user-select:text}main.reading-active.svelte-1mewhal p,main.reading-active.svelte-1mewhal li,main.reading-active.svelte-1mewhal h2,main.reading-active.svelte-1mewhal h3{transition:background .16s ease}main.svelte-1mewhal span.aw-known{border-radius:2px;padding:0 1px;background-image:linear-gradient(transparent calc(100% - 2px),currentColor 2px);background-repeat:no-repeat;background-size:100% 100%;transition:background-color .16s ease}main.svelte-1mewhal span.aw-phase-new{color:inherit;background-image:linear-gradient(transparent calc(100% - 2px),#2452ff8c 2px)}main.svelte-1mewhal span.aw-phase-learning{color:inherit;background-color:#387dff1a;background-image:linear-gradient(transparent calc(100% - 2px),#387dffa6 2px)}main.svelte-1mewhal span.aw-phase-review{color:inherit;background-image:linear-gradient(transparent calc(100% - 2px),#22c55e8c 2px)}main.svelte-1mewhal span.aw-phase-mastered{color:inherit;background-image:none}main.svelte-1mewhal span.aw-phase-due{color:inherit;background-color:#f973161f;background-image:linear-gradient(transparent calc(100% - 2px),#f97316b3 2px)}.reader-progress.svelte-1mewhal{display:flex;align-items:center;gap:12px;padding:8px 16px 12px;flex-wrap:wrap}.rp-bar.svelte-1mewhal{position:relative;flex:1 1 200px;height:6px;background:var(--color-bg-secondary);border-radius:999px;overflow:hidden}.rp-bar-fill.svelte-1mewhal{position:absolute;inset:0 auto 0 0;background:var(--color-success);border-radius:inherit;transition:width .32s ease}.rp-meta.svelte-1mewhal{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--color-text-secondary, #555);font-variant-numeric:tabular-nums}.rp-stat.svelte-1mewhal{display:inline-flex;align-items:center;gap:4px;font-weight:700;color:var(--color-text-primary)}.rp-stat.svelte-1mewhal i:where(.svelte-1mewhal){width:8px;height:8px;border-radius:50%}.rp-stat-known.svelte-1mewhal i:where(.svelte-1mewhal){background:var(--color-success)}.rp-stat-due.svelte-1mewhal i:where(.svelte-1mewhal){background:var(--color-warning)}.rp-stat-new.svelte-1mewhal i:where(.svelte-1mewhal){background:var(--color-info)}.rp-stat-total.svelte-1mewhal{color:var(--color-text-tertiary, #888)}.rp-sep.svelte-1mewhal{opacity:.45}.rp-bulk.svelte-1mewhal{margin-left:auto;min-height:2.25rem;padding:0 12px;border:thin solid var(--color-border-strong);border-radius:999px;background:var(--color-bg-elevated);color:var(--color-text-primary);font-size:13px;font-weight:700;cursor:pointer}.rp-bulk.svelte-1mewhal:hover:not(:disabled){border-color:var(--color-text-primary)}.rp-bulk.svelte-1mewhal:disabled{opacity:.6;cursor:wait}
