.popup-overlay[data-v-9b872ecc]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1000;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#020617b8;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.popup-card[data-v-9b872ecc]{position:relative;width:min(420px,100%);padding:2rem 1.75rem 1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);text-align:center}.popup-close[data-v-9b872ecc]{position:absolute;top:.75rem;right:.85rem;width:2rem;height:2rem;border:none;border-radius:999px;background:transparent;color:var(--text-muted);font-size:1.5rem;line-height:1;cursor:pointer}.popup-close[data-v-9b872ecc]:hover{background:#94a3b81f;color:var(--text)}.popup-badge[data-v-9b872ecc]{display:inline-block;padding:.25rem .75rem;margin-bottom:1rem;border-radius:999px;background:#10b98126;color:#6ee7b7;font-size:.8rem;font-weight:600}.popup-title[data-v-9b872ecc]{font-size:1.35rem;line-height:1.45;margin-bottom:.75rem}.popup-desc[data-v-9b872ecc]{color:var(--text-muted);font-size:.92rem;line-height:1.7;margin-bottom:1.5rem}.popup-actions[data-v-9b872ecc]{display:flex;flex-direction:column;gap:.65rem}.popup-actions .btn[data-v-9b872ecc]{width:100%;justify-content:center}.app[data-v-6b050771]{min-height:100vh;display:flex;flex-direction:column}.app.admin-mode[data-v-6b050771]{height:100vh;min-height:100vh;overflow:hidden}.header[data-v-6b050771]{position:sticky;top:0;z-index:100;background:#0f172ad9;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border)}.header-inner[data-v-6b050771]{position:relative;z-index:102;display:flex;align-items:center;justify-content:space-between;gap:1rem;height:64px}.logo[data-v-6b050771]{display:flex;align-items:center;gap:.5rem;min-width:0;font-size:1.15rem;font-weight:700;color:var(--text);text-decoration:none}.logo-icon[data-v-6b050771]{flex-shrink:0;color:var(--accent);font-size:1.4rem}.logo-text[data-v-6b050771]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.menu-toggle[data-v-6b050771]{display:none;flex-direction:column;justify-content:center;gap:5px;width:2.5rem;height:2.5rem;padding:.45rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-card);cursor:pointer}.menu-toggle-bar[data-v-6b050771]{display:block;width:100%;height:2px;border-radius:999px;background:var(--text);transition:transform .2s,opacity .2s}.menu-toggle.open .menu-toggle-bar[data-v-6b050771]:nth-child(1){transform:translateY(7px) rotate(45deg)}.menu-toggle.open .menu-toggle-bar[data-v-6b050771]:nth-child(2){opacity:0}.menu-toggle.open .menu-toggle-bar[data-v-6b050771]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.main-nav[data-v-6b050771]{display:flex;gap:1.5rem;align-items:center}.nav-link[data-v-6b050771]{color:var(--text-muted);text-decoration:none;font-size:1.0625rem;font-weight:500;transition:color .2s;white-space:nowrap}.nav-link[data-v-6b050771]:hover,.nav-link.router-link-active[data-v-6b050771]{color:var(--text);text-decoration:none}.nav-add[data-v-6b050771]{padding:.5rem 1rem;font-size:1.0625rem;background:var(--primary);color:#fff!important;border-radius:8px}.nav-add[data-v-6b050771]:hover{background:var(--primary-hover)}.nav-backdrop[data-v-6b050771]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:101;border:none;background:#0206178c;cursor:pointer}.app.notes-mode[data-v-6b050771]{height:100vh;overflow:hidden}.main.notes-main[data-v-6b050771]{padding:0;min-height:0;overflow:hidden;display:flex;flex-direction:column}.main[data-v-6b050771]{flex:1;padding:2rem 0 4rem}.main.admin-main[data-v-6b050771]{padding:0;min-height:0;overflow:hidden}.footer[data-v-6b050771]{padding:1.5rem 0;border-top:1px solid var(--border);text-align:center;color:var(--text-muted);font-size:.875rem}.footer-inner[data-v-6b050771]{display:flex;flex-direction:column;gap:.35rem}.footer-inner .icp[data-v-6b050771]{margin:0}.footer-inner .icp a[data-v-6b050771]{color:var(--text-muted);text-decoration:none}.footer-inner .icp a[data-v-6b050771]:hover{color:var(--text);text-decoration:underline}@media(max-width:768px){.header-inner[data-v-6b050771]{height:56px}.logo[data-v-6b050771]{font-size:1rem}.menu-toggle[data-v-6b050771]{display:flex;flex-shrink:0}.main-nav[data-v-6b050771]{position:fixed;top:56px;left:0;right:0;z-index:102;display:flex;flex-direction:column;align-items:stretch;gap:.35rem;max-height:0;overflow:hidden;padding:0 1rem;background:#0f172afa;border-bottom:1px solid transparent;transition:max-height .25s ease,padding .25s ease,border-color .25s ease}.main-nav.open[data-v-6b050771]{max-height:320px;padding:.75rem 1rem 1rem;border-bottom-color:var(--border)}.nav-link[data-v-6b050771]{padding:.75rem .85rem;border-radius:8px;font-size:1rem;white-space:normal}.nav-link[data-v-6b050771]:hover,.nav-link.router-link-active[data-v-6b050771]{background:#94a3b814}.nav-add[data-v-6b050771]{margin-top:.35rem;padding:.75rem 1rem;text-align:center}.main[data-v-6b050771]{padding:1.25rem 0 3rem}}@media(max-width:420px){.logo-text[data-v-6b050771]{max-width:9.5rem}}.card[data-v-41785562]{background:var(--bg-card);border-radius:var(--radius);overflow:hidden;border:1px solid var(--border);transition:transform .2s,box-shadow .2s}.card[data-v-41785562]:hover{transform:translateY(-4px);box-shadow:var(--shadow)}.card-link[data-v-41785562]{display:block;color:inherit;text-decoration:none}.cover[data-v-41785562]{position:relative;aspect-ratio:16 / 9;background:var(--bg-elevated);overflow:hidden}.cover img[data-v-41785562]{width:100%;height:100%;object-fit:cover}.cover-placeholder[data-v-41785562]{width:100%;height:100%;display:flex;align-items:center;justify-content:center;font-size:3rem;opacity:.5}.cover .tag[data-v-41785562]{position:absolute;top:.75rem;right:.75rem}.body[data-v-41785562]{padding:1.25rem}h2[data-v-41785562]{font-size:1.15rem;margin-bottom:.35rem;line-height:1.4}.author[data-v-41785562]{color:var(--accent);font-weight:600;font-size:.9rem;margin-bottom:.5rem}.bio[data-v-41785562]{color:var(--text-muted);font-size:.85rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin-bottom:.75rem}.meta-grid[data-v-41785562]{display:grid;grid-template-columns:1fr 1fr;gap:.5rem;margin-bottom:.75rem}.meta-item[data-v-41785562]{display:flex;flex-direction:column;gap:.1rem}.label[data-v-41785562]{font-size:.7rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.value[data-v-41785562]{font-size:.85rem;font-weight:600}.value.money[data-v-41785562]{color:var(--success)}.value.unsettled[data-v-41785562]{color:#fbbf24}.image-count[data-v-41785562]{font-size:.8rem;color:var(--text-muted)}.hero[data-v-20e9636c]{text-align:center;margin-bottom:2.5rem}.hero h1[data-v-20e9636c]{font-size:clamp(1.75rem,4vw,2.5rem);margin-bottom:.75rem;background:linear-gradient(135deg,var(--text),var(--accent));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.hero p[data-v-20e9636c]{color:var(--text-muted);max-width:560px;margin:0 auto}.grid[data-v-20e9636c]{display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:1.5rem}.error-box[data-v-20e9636c],.empty-box[data-v-20e9636c]{text-align:center;padding:4rem 2rem;background:var(--bg-card);border-radius:var(--radius);color:var(--text-muted)}.pagination[data-v-20e9636c]{display:flex;align-items:center;justify-content:center;gap:1rem;margin-top:2.5rem;color:var(--text-muted)}.gallery[data-v-d65728cc]{display:flex;flex-direction:column;gap:1rem}.main-image[data-v-d65728cc]{border-radius:var(--radius);overflow:hidden;background:var(--bg-elevated);border:1px solid var(--border)}.main-image img[data-v-d65728cc]{width:100%;max-height:480px;object-fit:contain;display:block;background:#000}.caption[data-v-d65728cc]{padding:.75rem 1rem;font-size:.875rem;color:var(--text-muted);border-top:1px solid var(--border)}.thumbs[data-v-d65728cc]{display:flex;gap:.5rem;flex-wrap:wrap}.thumb[data-v-d65728cc]{width:72px;height:54px;padding:0;border:2px solid transparent;border-radius:6px;overflow:hidden;background:none;opacity:.6;transition:opacity .2s,border-color .2s}.thumb.active[data-v-d65728cc],.thumb[data-v-d65728cc]:hover{opacity:1;border-color:var(--primary)}.thumb img[data-v-d65728cc]{width:100%;height:100%;object-fit:cover}.empty[data-v-d65728cc]{padding:3rem;text-align:center;color:var(--text-muted);background:var(--bg-card);border-radius:var(--radius);border:1px dashed var(--border)}.detail[data-v-361199e0]{max-width:900px}.back[data-v-361199e0]{margin-bottom:1.5rem}.detail-header[data-v-361199e0]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}h1[data-v-361199e0]{font-size:clamp(1.5rem,3vw,2rem);margin:.5rem 0}.author-line[data-v-361199e0]{color:var(--text-muted)}.author-line strong[data-v-361199e0]{color:var(--accent)}.info-panel[data-v-361199e0]{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:1rem;padding:1.25rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);margin-bottom:1.5rem}.info-item[data-v-361199e0]{display:flex;flex-direction:column;gap:.25rem}.label[data-v-361199e0]{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.value[data-v-361199e0]{font-weight:600}.value.money[data-v-361199e0]{color:var(--success);font-size:1.1rem}.value.unsettled[data-v-361199e0]{color:#fbbf24}.bio-section[data-v-361199e0],.gallery-section[data-v-361199e0]{margin-bottom:2rem}.bio-section h3[data-v-361199e0],.gallery-section h3[data-v-361199e0]{font-size:1rem;color:var(--text-muted);margin-bottom:.75rem;text-transform:uppercase;letter-spacing:.06em}.bio-section p[data-v-361199e0]{padding:1.25rem;background:var(--bg-card);border-radius:var(--radius);border:1px solid var(--border);line-height:1.8;white-space:pre-wrap}.error-box[data-v-361199e0]{text-align:center;padding:3rem;color:var(--text-muted)}.contact-page[data-v-124a9a22]{display:flex;justify-content:center;padding-top:1rem}.contact-card[data-v-124a9a22]{width:min(420px,100%);padding:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);text-align:center;box-shadow:var(--shadow)}.badge[data-v-124a9a22]{display:inline-block;padding:.25rem .75rem;margin-bottom:1rem;border-radius:999px;background:#3b82f626;color:#93c5fd;font-size:.8rem;font-weight:600}h1[data-v-124a9a22]{font-size:1.75rem;margin-bottom:.5rem}.subtitle[data-v-124a9a22]{color:var(--text-muted);font-size:.95rem;line-height:1.7;margin-bottom:2rem}.info-block[data-v-124a9a22]{display:flex;flex-direction:column;gap:.35rem;margin-bottom:1.75rem;padding:1rem;background:var(--bg-elevated);border-radius:8px}.label[data-v-124a9a22]{font-size:.75rem;color:var(--text-muted);text-transform:uppercase;letter-spacing:.06em}.name[data-v-124a9a22]{font-size:1.35rem;font-weight:700;color:var(--accent)}.qrcode-block[data-v-124a9a22]{display:flex;flex-direction:column;align-items:center;gap:.75rem;margin-bottom:1.75rem}.qrcode-wrap[data-v-124a9a22]{padding:.75rem;background:#fff;border-radius:12px;line-height:0}.qrcode-wrap img[data-v-124a9a22]{width:220px;height:220px;object-fit:contain;display:block}.hint[data-v-124a9a22]{font-size:.85rem;color:var(--text-muted)}.back-link[data-v-124a9a22]{display:inline-flex;text-decoration:none}.faq-panel[data-v-a25fcacd]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);padding:1.25rem 1.35rem;box-shadow:var(--shadow)}.faq-panel.page[data-v-a25fcacd]{max-width:760px;margin:0 auto;padding:2rem}.faq-panel.compact[data-v-a25fcacd]{padding:2rem}.faq-panel.compact h2[data-v-a25fcacd]{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:.5rem}.faq-panel.compact .faq-intro[data-v-a25fcacd]{font-size:1rem;margin-bottom:1.25rem}.faq-header h1[data-v-a25fcacd],h2[data-v-a25fcacd]{font-size:1.15rem;margin-bottom:.35rem;color:var(--text)}.faq-header h1[data-v-a25fcacd]{font-size:clamp(1.5rem,3vw,2rem);margin-bottom:.5rem}.faq-intro[data-v-a25fcacd]{font-size:.85rem;color:var(--text-muted);margin-bottom:1rem}.faq-panel.page .faq-intro[data-v-a25fcacd]{font-size:1rem;margin-bottom:1.5rem}.state[data-v-a25fcacd]{color:var(--text-muted);font-size:.95rem;padding:1rem 0}.state.error[data-v-a25fcacd]{color:#f87171}.faq-list[data-v-a25fcacd]{list-style:none;display:flex;flex-direction:column;gap:.5rem}.faq-panel.page .faq-list[data-v-a25fcacd]{gap:.65rem}.faq-item[data-v-a25fcacd]{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--bg-elevated)}.faq-question[data-v-a25fcacd]{width:100%;display:flex;align-items:flex-start;justify-content:space-between;gap:.75rem;padding:.75rem .85rem;background:none;border:none;color:var(--text);font-size:.9rem;font-weight:600;text-align:left;line-height:1.45;transition:background .2s}.faq-panel.page .faq-question[data-v-a25fcacd]{padding:1rem 1.1rem;font-size:1rem}.faq-question[data-v-a25fcacd]:hover,.faq-question.active[data-v-a25fcacd]{background:#3b82f61a}.icon[data-v-a25fcacd]{flex-shrink:0;color:var(--accent);font-size:1.1rem;line-height:1.2}.faq-answer[data-v-a25fcacd]{padding:0 .85rem .85rem}.faq-panel.page .faq-answer[data-v-a25fcacd]{padding:0 1.1rem 1rem}.faq-answer p[data-v-a25fcacd]{font-size:.85rem;color:var(--text-muted);line-height:1.65}.faq-panel.page .faq-answer p[data-v-a25fcacd]{font-size:.95rem}.faq-link[data-v-a25fcacd]{display:inline-block;margin-top:1rem;font-size:.875rem;font-weight:600;color:var(--accent);text-decoration:none}.faq-panel.page .faq-link[data-v-a25fcacd]{margin-top:1.5rem;font-size:1rem}.faq-link[data-v-a25fcacd]:hover{text-decoration:underline}.faq-page[data-v-e0a150bb]{padding-top:.5rem;padding-bottom:3rem}.back-link[data-v-e0a150bb]{display:inline-flex;margin-top:1.5rem;text-decoration:none}.note-video[data-v-a95c8bca]{margin-bottom:1.25rem;border:1px solid var(--border);border-radius:10px;overflow:hidden;background:#0f172a73}.note-video-head[data-v-a95c8bca]{padding:.55rem .85rem;border-bottom:1px solid var(--border);background:#10b98114}.note-video-badge[data-v-a95c8bca]{font-size:.78rem;font-weight:700;color:#6ee7b7}.video-frame-wrap[data-v-a95c8bca]{position:relative;width:100%;aspect-ratio:16 / 9;background:#000}.video-frame-wrap iframe[data-v-a95c8bca]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;border:0}.video-native[data-v-a95c8bca]{display:block;width:100%;max-height:420px;background:#000}.video-link-wrap[data-v-a95c8bca]{padding:1rem}.video-link-wrap p[data-v-a95c8bca]{margin-bottom:.75rem;color:var(--text-muted);font-size:.9rem}.video-link[data-v-a95c8bca]{display:inline-flex;padding:.45rem .85rem;border-radius:8px;background:#10b9811f;color:#6ee7b7;text-decoration:none;font-size:.88rem;font-weight:600}.rich-content[data-v-de121b5f] p{margin-bottom:.85rem;line-height:1.75}.rich-content[data-v-de121b5f] p:last-child{margin-bottom:0}.rich-content[data-v-de121b5f] h2,.rich-content[data-v-de121b5f] h3,.rich-content[data-v-de121b5f] h4{margin:1rem 0 .65rem;line-height:1.4;color:var(--text)}.rich-content[data-v-de121b5f] h2{font-size:1.2rem}.rich-content[data-v-de121b5f] h3{font-size:1.08rem}.rich-content[data-v-de121b5f] ul,.rich-content[data-v-de121b5f] ol{margin:.5rem 0 .85rem 1.25rem}.rich-content[data-v-de121b5f] li{margin-bottom:.35rem}.rich-content[data-v-de121b5f] blockquote{margin:.75rem 0;padding:.65rem .9rem;border-left:3px solid #34d399;background:#10b98114;color:var(--text-muted)}.rich-content[data-v-de121b5f] pre{margin:.75rem 0;padding:.85rem 1rem;background:#0f172a;border:1px solid var(--border);border-radius:8px;overflow-x:auto;font-size:.84rem;line-height:1.55}.rich-content[data-v-de121b5f] code{font-family:Consolas,Monaco,Courier New,monospace}.rich-content[data-v-de121b5f] p code,.rich-content[data-v-de121b5f] li code{padding:.1rem .35rem;border-radius:4px;background:#0f172acc}.rich-content[data-v-de121b5f] a{color:#6ee7b7;text-decoration:underline}.rich-content[data-v-de121b5f] strong{color:var(--text)}.rich-content[data-v-de121b5f] img{display:block;max-width:100%;height:auto;margin:.85rem 0;border-radius:8px;border:1px solid var(--border)}.phone-auth[data-v-05054c20]{display:flex;flex-direction:column;gap:.55rem}.phone-auth.compact .phone-auth-row[data-v-05054c20]{flex-direction:column}.phone-auth label[data-v-05054c20]{font-size:.85rem;color:var(--text-muted)}.phone-auth-row[data-v-05054c20]{display:flex;gap:.55rem}.phone-auth-row input[data-v-05054c20]{flex:1;min-width:0;padding:.65rem .8rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);color:var(--text)}.error[data-v-05054c20]{color:#f87171;font-size:.82rem;line-height:1.5}.book[data-v-50ac68db]{flex:1;min-height:0;display:flex;flex-direction:column;overflow:hidden;max-width:1280px;width:100%;margin:0 auto;padding:0 1rem}.book-toolbar[data-v-50ac68db]{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:.75rem 0 .85rem;border-bottom:1px solid var(--border)}.toolbar-left[data-v-50ac68db],.toolbar-right[data-v-50ac68db]{display:flex;align-items:center;gap:.75rem;min-width:0}.toolbar-right[data-v-50ac68db]{flex-shrink:0}.back-link[data-v-50ac68db]{flex-shrink:0;padding:.4rem .75rem;border:1px solid var(--border);border-radius:8px;color:var(--text-muted);font-size:.85rem;text-decoration:none;transition:all .2s}.back-link[data-v-50ac68db]:hover{color:var(--text);border-color:#10b98173}.book-title-wrap[data-v-50ac68db]{display:flex;align-items:center;gap:.65rem;min-width:0}.book-title-wrap h1[data-v-50ac68db]{font-size:1rem;font-weight:700;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;background:linear-gradient(135deg,var(--text),#34d399);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.auth-badge[data-v-50ac68db]{padding:.28rem .65rem;border-radius:999px;background:#94a3b81f;color:var(--text-muted);font-size:.75rem;white-space:nowrap}.auth-badge.ok[data-v-50ac68db]{background:#10b98126;color:#6ee7b7}.auth-btn[data-v-50ac68db]{padding:.4rem .75rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);color:var(--text-muted);font-size:.8rem;cursor:pointer;white-space:nowrap}.auth-btn.primary[data-v-50ac68db]{background:var(--primary);border-color:transparent;color:#fff}.state[data-v-50ac68db]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.state.error[data-v-50ac68db]{color:#f87171}.book-layout[data-v-50ac68db]{flex:1;min-height:0;display:grid;grid-template-columns:280px minmax(0,1fr);gap:1rem;padding:.85rem 0 1rem;overflow:hidden}.book-toc[data-v-50ac68db]{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.toc-head[data-v-50ac68db]{flex-shrink:0;padding:.75rem 1rem;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(16,185,129,.08),transparent)}.toc-label[data-v-50ac68db]{font-size:.9rem;font-weight:700;letter-spacing:.35em;color:var(--text)}.toc-tree[data-v-50ac68db]{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.5rem 0 .75rem;scrollbar-width:none;-ms-overflow-style:none}.toc-tree[data-v-50ac68db]::-webkit-scrollbar{display:none}.toc-chapter+.toc-chapter[data-v-50ac68db]{border-top:1px solid rgba(148,163,184,.12)}.toc-chapter.locked .toc-chapter-title[data-v-50ac68db]{color:var(--text)}.toc-chapter.locked .toc-section-title[data-v-50ac68db]{color:var(--text-muted)}.toc-chapter-btn[data-v-50ac68db]{width:100%;display:flex;align-items:flex-start;gap:.35rem;padding:.7rem .85rem .45rem;background:none;border:none;color:var(--text);text-align:left;cursor:pointer}.toc-chapter-btn.locked[data-v-50ac68db]{color:var(--text)}.toc-chapter-btn[data-v-50ac68db]:hover{background:#ffffff08}.toc-arrow[data-v-50ac68db]{flex-shrink:0;width:1rem;color:#34d399;font-size:.85rem;line-height:1.5}.toc-chapter.locked .toc-arrow[data-v-50ac68db]{color:#34d399}.toc-chapter-text[data-v-50ac68db]{display:flex;flex-direction:column;gap:.12rem;flex:1;min-width:0}.toc-chapter-no[data-v-50ac68db]{font-size:.7rem;color:#34d399;font-weight:700}.toc-chapter.locked .toc-chapter-no[data-v-50ac68db]{color:#34d399}.toc-chapter-title[data-v-50ac68db]{font-size:.88rem;font-weight:700;line-height:1.35}.lock-tag[data-v-50ac68db]{flex-shrink:0;font-size:.82rem;opacity:.85}.lock-tag.small[data-v-50ac68db]{font-size:.72rem}.toc-sections[data-v-50ac68db]{list-style:none;margin:0;padding:0 0 .3rem 1.5rem}.toc-section-btn[data-v-50ac68db]{width:100%;display:flex;align-items:flex-start;gap:.4rem;padding:.4rem .7rem .4rem 0;background:none;border:none;color:var(--text-muted);text-align:left;cursor:pointer;border-left:2px solid transparent;transition:all .2s}.toc-section-btn[data-v-50ac68db]:hover{color:var(--text);background:#ffffff08}.toc-section-btn.active[data-v-50ac68db]{color:var(--text);border-left-color:#34d399;background:#10b9811a}.toc-section-btn.locked[data-v-50ac68db]{opacity:.72}.toc-section-btn.locked.active[data-v-50ac68db]{border-left-color:#64748b;background:#64748b1f}.toc-section-no[data-v-50ac68db]{flex-shrink:0;min-width:1.75rem;font-size:.72rem;color:#64748b;font-variant-numeric:tabular-nums}.toc-section-btn.active .toc-section-no[data-v-50ac68db]{color:#34d399}.toc-section-title[data-v-50ac68db]{font-size:.82rem;line-height:1.4;flex:1}.video-tag[data-v-50ac68db]{flex-shrink:0;color:#34d399;font-size:.72rem}.book-content[data-v-50ac68db]{display:flex;flex-direction:column;min-height:0;overflow:hidden;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.content-scroll[data-v-50ac68db]{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1.35rem 1.5rem 1rem}.locked-panel[data-v-50ac68db]{max-width:420px;margin:2rem auto;text-align:center}.lock-icon-wrap[data-v-50ac68db]{width:4rem;height:4rem;margin:0 auto 1rem;display:flex;align-items:center;justify-content:center;border-radius:999px;background:#64748b26;font-size:1.6rem}.locked-panel h3[data-v-50ac68db]{font-size:1.25rem;margin-bottom:.65rem}.locked-panel p[data-v-50ac68db]{color:var(--text-muted);font-size:.92rem;line-height:1.7;margin-bottom:1.25rem}.locked-panel[data-v-50ac68db] .phone-auth{text-align:left;margin-bottom:1rem}.learn-link[data-v-50ac68db]{display:inline-block;margin-top:.5rem;font-size:.88rem;color:#6ee7b7;text-decoration:none}.content-meta[data-v-50ac68db]{display:flex;flex-wrap:wrap;align-items:center;gap:.35rem;margin-bottom:.65rem;font-size:.78rem;color:#34d399;font-weight:600}.content-divider[data-v-50ac68db]{color:var(--text-muted)}.content-title[data-v-50ac68db]{font-size:clamp(1.2rem,2vw,1.55rem);margin-bottom:1rem;line-height:1.35}.content-body[data-v-50ac68db] .rich-content{color:var(--text-muted);font-size:.95rem}.code-block[data-v-50ac68db]{margin-top:.85rem;padding:.9rem 1rem;background:#0f172a;border:1px solid var(--border);border-radius:8px;overflow-x:auto;font-size:.82rem;line-height:1.55;color:#cbd5e1;white-space:pre-wrap;word-break:break-word}.content-nav[data-v-50ac68db]{flex-shrink:0;display:flex;justify-content:space-between;gap:.75rem;padding:.75rem 1rem;border-top:1px solid var(--border);background:#0f172a59}.nav-spacer[data-v-50ac68db]{flex:1}.nav-btn[data-v-50ac68db]{max-width:46%;padding:.55rem .8rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);color:var(--text-muted);font-size:.8rem;line-height:1.35;text-align:left;cursor:pointer;transition:all .2s}.nav-btn-next[data-v-50ac68db]{text-align:right;margin-left:auto}.nav-btn[data-v-50ac68db]:hover{color:var(--text);border-color:#10b98173;background:#10b98114}.auth-modal-overlay[data-v-50ac68db]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#020617b8}.auth-modal[data-v-50ac68db]{position:relative;width:min(420px,100%);padding:1.5rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}.auth-modal-close[data-v-50ac68db]{position:absolute;top:.75rem;right:.85rem;width:2rem;height:2rem;border:none;border-radius:999px;background:transparent;color:var(--text-muted);font-size:1.5rem;cursor:pointer}.auth-modal h3[data-v-50ac68db]{margin-bottom:.5rem}.auth-modal p[data-v-50ac68db]{color:var(--text-muted);font-size:.9rem;line-height:1.65;margin-bottom:1rem}@media(max-width:900px){.book-layout[data-v-50ac68db]{grid-template-columns:1fr;grid-template-rows:minmax(180px,34vh) minmax(0,1fr)}.book-title-wrap h1[data-v-50ac68db]{font-size:.9rem}.toolbar-right[data-v-50ac68db]{flex-direction:column;align-items:flex-end;gap:.35rem}.auth-badge[data-v-50ac68db]{display:none}}.notes-page[data-v-4823f3e9]{flex:1;min-height:0;overflow:hidden;display:flex;flex-direction:column}.form-page[data-v-962ce016]{max-width:640px}h1[data-v-962ce016]{font-size:1.75rem;margin-bottom:.5rem}.subtitle[data-v-962ce016]{color:var(--text-muted);margin-bottom:2rem}.form[data-v-962ce016]{display:flex;flex-direction:column;gap:1.25rem}.field-row[data-v-962ce016]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:560px){.field-row[data-v-962ce016]{grid-template-columns:1fr}}.field label[data-v-962ce016]{display:block;font-size:.875rem;font-weight:600;margin-bottom:.4rem;color:var(--text-muted)}.field input[type=text][data-v-962ce016],.field input[type=url][data-v-962ce016],.field input[type=number][data-v-962ce016],.field input[type=datetime-local][data-v-962ce016],.field textarea[data-v-962ce016]{width:100%;padding:.65rem .85rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text)}.field input[data-v-962ce016]:focus,.field textarea[data-v-962ce016]:focus{outline:none;border-color:var(--primary)}.checkbox-field label[data-v-962ce016]{display:flex;align-items:center;gap:.5rem;cursor:pointer;color:var(--text)}.previews[data-v-962ce016]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.previews img[data-v-962ce016]{width:80px;height:60px;object-fit:cover;border-radius:6px;border:1px solid var(--border)}.actions[data-v-962ce016]{display:flex;gap:.75rem;margin-top:.5rem}.message[data-v-962ce016]{padding:1rem;background:var(--bg-card);border-radius:8px;font-size:.8rem;color:var(--text-muted);white-space:pre-wrap;overflow-x:auto}.admin-page[data-v-962ce016]{height:100%;overflow-y:auto;padding-top:1.5rem;padding-bottom:2rem}.login-page[data-v-f79f0186]{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:2rem;background:radial-gradient(circle at top,rgba(59,130,246,.12),transparent 55%)}.login-card[data-v-f79f0186]{width:100%;max-width:400px;padding:2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow)}h1[data-v-f79f0186]{font-size:1.5rem;margin-bottom:.35rem}.subtitle[data-v-f79f0186]{color:var(--text-muted);margin-bottom:1.75rem;font-size:.9rem}.field[data-v-f79f0186]{margin-bottom:1rem}.field label[data-v-f79f0186]{display:block;font-size:.85rem;font-weight:600;color:var(--text-muted);margin-bottom:.35rem}.field input[data-v-f79f0186]{width:100%;padding:.65rem .85rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;color:var(--text)}.btn-primary[data-v-f79f0186]{width:100%;margin-top:.5rem}.error[data-v-f79f0186]{margin-top:1rem;color:#f87171;font-size:.875rem}.back-link[data-v-f79f0186]{display:inline-block;margin-top:1.25rem;color:var(--text-muted);font-size:.875rem;text-decoration:none}.back-link[data-v-f79f0186]:hover{color:var(--text)}.admin-app[data-v-8eb2a3b0]{height:100%;display:grid;grid-template-columns:240px 1fr;overflow:hidden}.mobile-topbar[data-v-8eb2a3b0],.sidebar-backdrop[data-v-8eb2a3b0]{display:none}.sidebar[data-v-8eb2a3b0]{height:100%;background:var(--bg-card);border-right:1px solid var(--border);padding:1.5rem 1rem;display:flex;flex-direction:column;overflow-y:auto}.brand[data-v-8eb2a3b0]{display:flex;gap:.75rem;align-items:center;padding:0 .5rem 1.5rem;border-bottom:1px solid var(--border);margin-bottom:1rem;flex-shrink:0}.brand strong[data-v-8eb2a3b0]{display:block;font-size:1.125rem}.brand small[data-v-8eb2a3b0]{color:var(--text-muted);font-size:.875rem}.logo-icon[data-v-8eb2a3b0]{color:var(--accent);font-size:1.5rem}nav[data-v-8eb2a3b0]{display:flex;flex-direction:column;gap:.35rem;flex:1}.nav-item[data-v-8eb2a3b0]{padding:.75rem .85rem;border-radius:8px;color:var(--text-muted);text-decoration:none;font-size:1.125rem;font-weight:500;transition:background .2s,color .2s}.nav-item[data-v-8eb2a3b0]:hover,.nav-item.router-link-active[data-v-8eb2a3b0]{background:#3b82f61f;color:var(--text)}.sidebar-footer[data-v-8eb2a3b0]{border-top:1px solid var(--border);padding-top:1rem;flex-shrink:0}.user[data-v-8eb2a3b0]{font-size:.85rem;color:var(--text-muted);margin-bottom:.75rem}.btn-sm[data-v-8eb2a3b0]{width:100%;padding:.45rem .75rem;font-size:.85rem}.content[data-v-8eb2a3b0]{height:100%;min-height:0;overflow:hidden}@media(max-width:768px){.admin-app[data-v-8eb2a3b0]{grid-template-columns:1fr;grid-template-rows:auto 1fr}.mobile-topbar[data-v-8eb2a3b0]{display:flex;align-items:center;gap:.75rem;height:56px;padding:0 1rem;background:var(--bg-card);border-bottom:1px solid var(--border);flex-shrink:0}.mobile-brand[data-v-8eb2a3b0]{display:flex;align-items:center;gap:.5rem;min-width:0}.mobile-brand strong[data-v-8eb2a3b0]{font-size:1rem;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-toggle[data-v-8eb2a3b0]{display:flex;flex-direction:column;justify-content:center;gap:5px;width:2.5rem;height:2.5rem;padding:.45rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);cursor:pointer;flex-shrink:0}.sidebar-toggle-bar[data-v-8eb2a3b0]{display:block;width:100%;height:2px;border-radius:999px;background:var(--text);transition:transform .2s,opacity .2s}.sidebar-toggle.open .sidebar-toggle-bar[data-v-8eb2a3b0]:nth-child(1){transform:translateY(7px) rotate(45deg)}.sidebar-toggle.open .sidebar-toggle-bar[data-v-8eb2a3b0]:nth-child(2){opacity:0}.sidebar-toggle.open .sidebar-toggle-bar[data-v-8eb2a3b0]:nth-child(3){transform:translateY(-7px) rotate(-45deg)}.sidebar-backdrop[data-v-8eb2a3b0]{display:block;position:fixed;top:0;right:0;bottom:0;left:0;z-index:120;border:none;background:#0206178c;cursor:pointer}.sidebar[data-v-8eb2a3b0]{position:fixed;top:0;left:0;z-index:130;width:min(280px,84vw);height:100%;max-height:none;border-right:1px solid var(--border);border-bottom:none;transform:translate(-100%);transition:transform .25s ease;box-shadow:var(--shadow)}.sidebar.open[data-v-8eb2a3b0]{transform:translate(0)}.content[data-v-8eb2a3b0]{min-height:0}}.dashboard[data-v-813b9fee]{height:100%;min-height:0;display:flex;flex-direction:column;padding:1.5rem 2rem;overflow:hidden}.footer-bar[data-v-813b9fee]{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:1rem;padding-top:.5rem;flex-shrink:0}.stats[data-v-813b9fee]{color:var(--text-muted);font-size:1rem;margin:0}.pagination[data-v-813b9fee]{display:flex;align-items:center;gap:.75rem}.filters[data-v-813b9fee]{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;flex-shrink:0}.filter-item input[data-v-813b9fee],.filter-item select[data-v-813b9fee]{min-width:220px;padding:.65rem .85rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:1rem}.search-box input[data-v-813b9fee]{min-width:280px}.flash[data-v-813b9fee]{padding:.85rem 1rem;background:#22c55e1f;border:1px solid rgba(34,197,94,.25);border-radius:8px;margin-bottom:1rem;color:#86efac;font-size:1rem;flex-shrink:0}.table-area[data-v-813b9fee]{flex:1;min-height:0;display:flex;flex-direction:column}.loading[data-v-813b9fee],.empty[data-v-813b9fee]{color:var(--text-muted);font-size:1.0625rem;padding:2rem 0;text-align:center}.table-wrap[data-v-813b9fee]{flex:1;min-height:0;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}table[data-v-813b9fee]{width:100%;min-width:960px;border-collapse:separate;border-spacing:0;font-size:1.0625rem;table-layout:auto}th[data-v-813b9fee],td[data-v-813b9fee]{padding:1rem 1.1rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;line-height:1.5;background:var(--bg-card)}thead th[data-v-813b9fee]{position:sticky;top:0;z-index:2;background:var(--bg-elevated);box-shadow:0 1px 0 var(--border)}th[data-v-813b9fee]{color:var(--text-muted);font-weight:600;font-size:.95rem;white-space:nowrap}.col-title[data-v-813b9fee]{min-width:160px}.col-author[data-v-813b9fee]{min-width:100px}.col-settle[data-v-813b9fee]{min-width:120px}.col-date[data-v-813b9fee]{min-width:150px;white-space:nowrap}.col-actions[data-v-813b9fee]{min-width:220px}.title-cell[data-v-813b9fee],.author-cell[data-v-813b9fee]{white-space:normal;word-break:break-word}.title-cell[data-v-813b9fee]{font-weight:600;min-width:140px}.num-cell[data-v-813b9fee]{white-space:nowrap}.money[data-v-813b9fee]{color:var(--success);font-weight:600}.badge[data-v-813b9fee]{display:inline-block;padding:.25rem .65rem;border-radius:999px;font-size:.9375rem;font-weight:600;white-space:nowrap}.badge.ok[data-v-813b9fee]{background:#22c55e26;color:#86efac}.badge.warn[data-v-813b9fee]{background:#fbbf2426;color:#fbbf24}.actions[data-v-813b9fee]{white-space:nowrap}.link[data-v-813b9fee]{background:none;border:none;color:var(--primary);cursor:pointer;padding:.15rem 0;margin-right:.85rem;font-size:1rem}.link.danger[data-v-813b9fee]{color:#f87171}.page-header[data-v-963a6bd4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}h1[data-v-963a6bd4]{font-size:1.5rem;margin-bottom:.25rem}.page-header p[data-v-963a6bd4],.loading[data-v-963a6bd4]{color:var(--text-muted)}.form[data-v-963a6bd4]{max-width:760px;display:flex;flex-direction:column;gap:1.25rem}.field-row[data-v-963a6bd4]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:560px){.field-row[data-v-963a6bd4]{grid-template-columns:1fr}}.field label[data-v-963a6bd4]{display:block;font-size:.875rem;font-weight:600;margin-bottom:.4rem;color:var(--text-muted)}.field input[data-v-963a6bd4],.field textarea[data-v-963a6bd4]{width:100%;padding:.65rem .85rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text)}.checkbox-field label[data-v-963a6bd4]{display:flex;align-items:center;gap:.5rem;color:var(--text);cursor:pointer}.images-section h3[data-v-963a6bd4]{font-size:1rem;margin-bottom:.75rem}.image-grid[data-v-963a6bd4]{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.75rem}.image-item img[data-v-963a6bd4]{width:100%;aspect-ratio:4/3;object-fit:cover;border-radius:8px;border:1px solid var(--border)}.btn-sm[data-v-963a6bd4]{width:100%;margin-top:.35rem;padding:.35rem;font-size:.8rem}.previews[data-v-963a6bd4]{display:flex;flex-wrap:wrap;gap:.5rem;margin-top:.75rem}.previews img[data-v-963a6bd4]{width:80px;height:60px;object-fit:cover;border-radius:6px;border:1px solid var(--border)}.actions[data-v-963a6bd4]{display:flex;gap:.75rem}.message[data-v-963a6bd4]{padding:1rem;background:var(--bg-card);border-radius:8px;font-size:.8rem;color:var(--text-muted);white-space:pre-wrap}.admin-page[data-v-963a6bd4]{height:100%;overflow-y:auto;padding:1.5rem 2rem 2rem}.dashboard[data-v-ac4c5e31]{height:100%;min-height:0;display:flex;flex-direction:column;padding:1.5rem 2rem;overflow:hidden}.toolbar[data-v-ac4c5e31]{display:flex;flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:1rem;flex-shrink:0}.toolbar input[data-v-ac4c5e31]{flex:1;min-width:220px;padding:.65rem .85rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text);font-size:1rem}.flash[data-v-ac4c5e31]{padding:.85rem 1rem;background:#22c55e1f;border:1px solid rgba(34,197,94,.25);border-radius:8px;margin-bottom:1rem;color:#86efac;font-size:1rem;flex-shrink:0}.table-area[data-v-ac4c5e31]{flex:1;min-height:0;display:flex;flex-direction:column}.loading[data-v-ac4c5e31],.empty[data-v-ac4c5e31]{color:var(--text-muted);font-size:1.0625rem;padding:2rem 0;text-align:center}.table-wrap[data-v-ac4c5e31]{flex:1;min-height:0;overflow:auto;border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-card)}table[data-v-ac4c5e31]{width:100%;min-width:720px;border-collapse:separate;border-spacing:0;font-size:1.0625rem}th[data-v-ac4c5e31],td[data-v-ac4c5e31]{padding:1rem 1.1rem;text-align:left;border-bottom:1px solid var(--border);vertical-align:middle;line-height:1.5;background:var(--bg-card)}thead th[data-v-ac4c5e31]{position:sticky;top:0;z-index:2;background:var(--bg-elevated);box-shadow:0 1px 0 var(--border);color:var(--text-muted);font-weight:600;font-size:.95rem}.question-cell[data-v-ac4c5e31]{white-space:normal;word-break:break-word;font-weight:600}.num-cell[data-v-ac4c5e31]{white-space:nowrap}.badge[data-v-ac4c5e31]{display:inline-block;padding:.25rem .65rem;border-radius:999px;font-size:.9375rem;font-weight:600}.badge.ok[data-v-ac4c5e31]{background:#22c55e26;color:#86efac}.badge.muted[data-v-ac4c5e31]{background:#94a3b826;color:var(--text-muted)}.actions[data-v-ac4c5e31]{white-space:nowrap}.link[data-v-ac4c5e31]{background:none;border:none;color:var(--primary);cursor:pointer;padding:.15rem 0;margin-right:.85rem;font-size:1rem}.link.danger[data-v-ac4c5e31]{color:#f87171}.footer-bar[data-v-ac4c5e31]{margin-top:1rem;flex-shrink:0}.stats[data-v-ac4c5e31]{color:var(--text-muted);font-size:1rem;margin:0}.page-header[data-v-fefdd24e]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}h1[data-v-fefdd24e]{font-size:1.5rem}.loading[data-v-fefdd24e]{color:var(--text-muted)}.form[data-v-fefdd24e]{max-width:760px;display:flex;flex-direction:column;gap:1.25rem}.field-row[data-v-fefdd24e]{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media(max-width:560px){.field-row[data-v-fefdd24e]{grid-template-columns:1fr}}.field label[data-v-fefdd24e]{display:block;font-size:.875rem;font-weight:600;margin-bottom:.4rem;color:var(--text-muted)}.field input[data-v-fefdd24e],.field textarea[data-v-fefdd24e]{width:100%;padding:.65rem .85rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text)}.hint[data-v-fefdd24e]{margin-top:.35rem;font-size:.8rem;color:var(--text-muted)}.checkbox-field label[data-v-fefdd24e]{display:flex;align-items:center;gap:.5rem;color:var(--text);cursor:pointer;margin-top:1.75rem}.message[data-v-fefdd24e]{padding:1rem;background:var(--bg-card);border-radius:8px;font-size:.8rem;color:var(--text-muted);white-space:pre-wrap}.admin-page[data-v-fefdd24e]{height:100%;overflow-y:auto;padding:1.5rem 2rem 2rem}.admin-page[data-v-97329e42]{height:100%;overflow-y:auto;padding:1.5rem 2rem}.page-header[data-v-97329e42]{display:flex;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1.25rem}h1[data-v-97329e42]{font-size:1.5rem;margin-bottom:.35rem}.intro[data-v-97329e42]{color:var(--text-muted);font-size:.9rem;line-height:1.65;max-width:720px}.create-card[data-v-97329e42]{margin-bottom:1.25rem;padding:1.1rem 1.2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.create-card h2[data-v-97329e42]{font-size:1rem;margin-bottom:.85rem}.create-form[data-v-97329e42]{display:grid;grid-template-columns:repeat(4,minmax(0,1fr)) auto;gap:.75rem;align-items:end}.field label[data-v-97329e42]{display:block;margin-bottom:.35rem;font-size:.82rem;color:var(--text-muted)}.field input[data-v-97329e42]{width:100%}.hint[data-v-97329e42]{margin-top:.25rem;font-size:.75rem;color:var(--text-muted)}.checkbox-field[data-v-97329e42],.inline-check[data-v-97329e42]{display:flex;align-items:center;gap:.45rem;color:var(--text);font-size:.9rem}.flash[data-v-97329e42]{margin-bottom:.75rem;padding:.65rem .85rem;border-radius:8px;background:#10b9811f;color:#6ee7b7;font-size:.88rem}.flash.error[data-v-97329e42]{background:#ef44441f;color:#fca5a5}.table-area[data-v-97329e42],.table-wrap[data-v-97329e42]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.loading[data-v-97329e42],.empty[data-v-97329e42]{padding:2rem;text-align:center;color:var(--text-muted)}table[data-v-97329e42]{width:100%;border-collapse:collapse}th[data-v-97329e42],td[data-v-97329e42]{padding:.75rem 1rem;border-bottom:1px solid var(--border);text-align:left;font-size:.9rem;vertical-align:middle}th[data-v-97329e42]{color:var(--text-muted);font-weight:600}.num-input[data-v-97329e42]{width:5rem}.badge[data-v-97329e42]{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem}.badge.ok[data-v-97329e42]{background:#10b98126;color:#6ee7b7}.badge.muted[data-v-97329e42]{background:#94a3b81f;color:var(--text-muted)}.actions[data-v-97329e42]{display:flex;gap:.65rem}.link[data-v-97329e42]{border:none;background:none;color:#93c5fd;cursor:pointer;font-size:.85rem}.link[data-v-97329e42]:disabled{opacity:.45;cursor:not-allowed}.link.danger[data-v-97329e42]{color:#fca5a5}@media(max-width:960px){.create-form[data-v-97329e42]{grid-template-columns:1fr}.page-header[data-v-97329e42]{flex-direction:column}}.rich-editor[data-v-86dd3a13]{border:1px solid var(--border);border-radius:8px;overflow:hidden;background:var(--bg-elevated)}.rich-toolbar[data-v-86dd3a13]{display:flex;flex-wrap:wrap;gap:.35rem;padding:.55rem .65rem;border-bottom:1px solid var(--border);background:#0f172a59}.rich-toolbar button[data-v-86dd3a13]{padding:.3rem .55rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-card);color:var(--text-muted);font-size:.78rem;cursor:pointer}.rich-toolbar button[data-v-86dd3a13]:disabled{opacity:.6;cursor:wait}.rich-toolbar button.active[data-v-86dd3a13],.rich-toolbar button[data-v-86dd3a13]:hover:not(:disabled){color:var(--text);border-color:#10b98173;background:#10b9811a}.divider[data-v-86dd3a13]{width:1px;height:1.4rem;margin:0 .15rem;background:var(--border)}.rich-editor-body[data-v-86dd3a13] .tiptap{min-height:260px;max-height:420px;overflow-y:auto;padding:.85rem 1rem;color:var(--text);outline:none}.rich-editor-body[data-v-86dd3a13] .tiptap p.is-editor-empty:first-child:before{color:var(--text-muted);content:attr(data-placeholder);float:left;height:0;pointer-events:none}.rich-editor-body[data-v-86dd3a13] .tiptap p{margin-bottom:.75rem;line-height:1.7}.rich-editor-body[data-v-86dd3a13] .tiptap h2,.rich-editor-body[data-v-86dd3a13] .tiptap h3,.rich-editor-body[data-v-86dd3a13] .tiptap h4{margin:.85rem 0 .5rem;line-height:1.35}.rich-editor-body[data-v-86dd3a13] .tiptap ul,.rich-editor-body[data-v-86dd3a13] .tiptap ol{margin:.35rem 0 .75rem 1.2rem}.rich-editor-body[data-v-86dd3a13] .tiptap blockquote{margin:.65rem 0;padding-left:.85rem;border-left:3px solid #34d399;color:var(--text-muted)}.rich-editor-body[data-v-86dd3a13] .tiptap pre{margin:.65rem 0;padding:.75rem;border-radius:8px;background:#0f172a;overflow-x:auto}.rich-editor-body[data-v-86dd3a13] .tiptap a{color:#6ee7b7;text-decoration:underline}.rich-editor-body[data-v-86dd3a13] .tiptap img,.rich-editor-body[data-v-86dd3a13] .tiptap .rich-editor-image{display:block;max-width:100%;height:auto;margin:.75rem 0;border-radius:8px}.notes-admin[data-v-04cd5810]{height:100%;min-height:0;display:flex;flex-direction:column;padding:1.5rem 2rem;overflow:auto}.admin-toolbar[data-v-04cd5810]{display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;margin-bottom:1rem;flex-shrink:0}.toolbar-left h1[data-v-04cd5810]{font-size:1.35rem;margin-bottom:.25rem}.toolbar-left p[data-v-04cd5810]{color:var(--text-muted);font-size:.9rem}.toolbar-actions[data-v-04cd5810]{display:flex;flex-wrap:wrap;gap:.75rem;align-items:center}.toolbar-actions input[data-v-04cd5810]{min-width:240px;padding:.65rem .85rem;background:var(--bg-card);border:1px solid var(--border);border-radius:8px;color:var(--text)}.flash[data-v-04cd5810]{padding:.75rem 1rem;border-radius:8px;margin-bottom:.85rem;font-size:.92rem;flex-shrink:0}.flash.ok[data-v-04cd5810]{background:#22c55e1f;border:1px solid rgba(34,197,94,.25);color:#86efac}.flash.error[data-v-04cd5810]{background:#f871711f;border:1px solid rgba(248,113,113,.25);color:#fca5a5;white-space:pre-wrap}.state[data-v-04cd5810]{flex:1;display:flex;align-items:center;justify-content:center;color:var(--text-muted)}.book-admin-layout[data-v-04cd5810]{flex:1;min-height:0;display:grid;grid-template-columns:300px minmax(0,1fr);gap:1rem;overflow:hidden}.book-toc[data-v-04cd5810],.book-editor[data-v-04cd5810]{min-height:0;display:flex;flex-direction:column;overflow:hidden;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.toc-head[data-v-04cd5810]{flex-shrink:0;display:flex;align-items:center;justify-content:space-between;padding:.85rem 1rem;border-bottom:1px solid var(--border);background:linear-gradient(180deg,rgba(16,185,129,.08),transparent)}.toc-label[data-v-04cd5810]{font-size:.9rem;font-weight:700;letter-spacing:.35em}.toc-count[data-v-04cd5810]{font-size:.75rem;color:var(--text-muted)}.toc-tree[data-v-04cd5810]{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:.35rem 0 .75rem;scrollbar-width:none;-ms-overflow-style:none}.toc-tree[data-v-04cd5810]::-webkit-scrollbar{display:none}.toc-chapter+.toc-chapter[data-v-04cd5810]{border-top:1px solid rgba(148,163,184,.12)}.toc-chapter-head[data-v-04cd5810]{display:flex;align-items:flex-start;gap:.35rem;padding-right:.5rem}.toc-chapter-btn[data-v-04cd5810]{flex:1;min-width:0;display:flex;align-items:flex-start;gap:.35rem;padding:.7rem .35rem .45rem .85rem;background:none;border:none;color:var(--text);text-align:left;cursor:pointer}.toc-chapter-btn[data-v-04cd5810]:hover{background:#ffffff08}.toc-arrow[data-v-04cd5810]{flex-shrink:0;width:1rem;color:#34d399;font-size:.85rem;line-height:1.5}.toc-chapter-text[data-v-04cd5810]{flex:1;display:flex;flex-direction:column;gap:.12rem;min-width:0}.toc-chapter-no[data-v-04cd5810]{font-size:.7rem;color:#34d399;font-weight:700}.toc-chapter-title[data-v-04cd5810]{font-size:.88rem;font-weight:700;line-height:1.35}.chapter-add[data-v-04cd5810]{flex-shrink:0;width:1.5rem;height:1.5rem;border:1px solid var(--border);border-radius:6px;background:var(--bg-elevated);color:#34d399;cursor:pointer}.chapter-add[data-v-04cd5810]:hover{background:#10b9811f}.toc-sections[data-v-04cd5810]{list-style:none;margin:0;padding:0 0 .3rem 1.5rem}.toc-empty[data-v-04cd5810]{padding:.35rem .7rem .35rem 0;font-size:.8rem;color:var(--text-muted)}.toc-section-btn[data-v-04cd5810]{width:100%;display:flex;align-items:flex-start;gap:.4rem;padding:.4rem .7rem .4rem 0;background:none;border:none;color:var(--text-muted);text-align:left;cursor:pointer;border-left:2px solid transparent;transition:all .2s}.toc-section-btn[data-v-04cd5810]:hover{color:var(--text);background:#ffffff08}.toc-section-btn.active[data-v-04cd5810]{color:var(--text);border-left-color:#34d399;background:#10b9811a}.toc-section-no[data-v-04cd5810]{flex-shrink:0;min-width:1.75rem;font-size:.72rem;color:#64748b}.toc-section-btn.active .toc-section-no[data-v-04cd5810]{color:#34d399}.toc-section-title[data-v-04cd5810]{flex:1;font-size:.82rem;line-height:1.4}.video-tag[data-v-04cd5810]{flex-shrink:0;color:#34d399;font-size:.72rem}.draft-tag[data-v-04cd5810]{flex-shrink:0;padding:.1rem .35rem;border-radius:999px;background:#94a3b826;color:var(--text-muted);font-size:.65rem}.editor-head[data-v-04cd5810]{flex-shrink:0;display:flex;flex-wrap:wrap;align-items:flex-start;justify-content:space-between;gap:1rem;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.editor-mode[data-v-04cd5810]{display:inline-block;margin-bottom:.35rem;font-size:.75rem;color:#34d399;font-weight:700}.editor-head h2[data-v-04cd5810]{font-size:1rem;line-height:1.4}.editor-actions[data-v-04cd5810]{display:flex;gap:.65rem}.btn.danger[data-v-04cd5810]{color:#f87171;border-color:#f8717159}.editor-form[data-v-04cd5810]{flex:1;min-height:0;overflow-y:auto;overscroll-behavior:contain;padding:1rem 1.25rem 1.25rem;display:flex;flex-direction:column;gap:1rem}.field-row[data-v-04cd5810]{display:grid;grid-template-columns:1.2fr .8fr 1fr;gap:1rem}@media(max-width:960px){.book-admin-layout[data-v-04cd5810]{grid-template-columns:1fr;grid-template-rows:minmax(220px,34vh) minmax(0,1fr)}.field-row[data-v-04cd5810]{grid-template-columns:1fr}}.field label[data-v-04cd5810]{display:block;font-size:.875rem;font-weight:600;margin-bottom:.4rem;color:var(--text-muted)}.field input[data-v-04cd5810],.field textarea[data-v-04cd5810],.field select[data-v-04cd5810]{width:100%;padding:.65rem .85rem;background:var(--bg-elevated);border:1px solid var(--border);border-radius:8px;color:var(--text)}.hint[data-v-04cd5810]{margin-top:.35rem;font-size:.8rem;color:var(--text-muted)}.file-status[data-v-04cd5810]{margin-top:.5rem;font-size:.82rem;color:#6ee7b7;word-break:break-all}.field .link.danger[data-v-04cd5810]{margin-top:.5rem;background:none;border:none;padding:0;cursor:pointer;font-size:.85rem}.checkbox-field label[data-v-04cd5810]{display:flex;align-items:center;gap:.5rem;color:var(--text);cursor:pointer;margin-top:1.75rem}.admin-page[data-v-64c27271]{height:100%;overflow-y:auto;padding:1.5rem 2rem}.page-header[data-v-64c27271]{margin-bottom:1.25rem}h1[data-v-64c27271]{font-size:1.5rem;margin-bottom:.35rem}.intro[data-v-64c27271]{color:var(--text-muted);font-size:.9rem;line-height:1.65}.create-card[data-v-64c27271]{margin-bottom:1.25rem;padding:1.1rem 1.2rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.create-card h2[data-v-64c27271]{font-size:1rem;margin-bottom:.85rem}.create-form[data-v-64c27271]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr)) auto;gap:.75rem;align-items:end}.field label[data-v-64c27271]{display:block;margin-bottom:.35rem;font-size:.82rem;color:var(--text-muted)}.field input[data-v-64c27271]{width:100%}.checkbox-field[data-v-64c27271]{display:flex;align-items:center;gap:.45rem;padding-bottom:.55rem;color:var(--text);font-size:.9rem}.toolbar[data-v-64c27271]{margin-bottom:.85rem}.toolbar input[data-v-64c27271]{width:min(320px,100%);padding:.55rem .75rem;border:1px solid var(--border);border-radius:8px;background:var(--bg-elevated);color:var(--text)}.flash[data-v-64c27271]{margin-bottom:.75rem;padding:.65rem .85rem;border-radius:8px;background:#10b9811f;color:#6ee7b7;font-size:.88rem}.flash.error[data-v-64c27271]{background:#ef44441f;color:#fca5a5}.table-area[data-v-64c27271],.table-wrap[data-v-64c27271]{background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.loading[data-v-64c27271],.empty[data-v-64c27271]{padding:2rem;text-align:center;color:var(--text-muted)}table[data-v-64c27271]{width:100%;border-collapse:collapse}th[data-v-64c27271],td[data-v-64c27271]{padding:.75rem 1rem;border-bottom:1px solid var(--border);text-align:left;font-size:.9rem}th[data-v-64c27271]{color:var(--text-muted);font-weight:600}.badge[data-v-64c27271]{display:inline-block;padding:.15rem .55rem;border-radius:999px;font-size:.75rem}.badge.ok[data-v-64c27271]{background:#10b98126;color:#6ee7b7}.badge.muted[data-v-64c27271]{background:#94a3b81f;color:var(--text-muted)}.actions[data-v-64c27271]{display:flex;gap:.65rem}.link[data-v-64c27271]{border:none;background:none;color:#93c5fd;cursor:pointer;font-size:.85rem}.link.danger[data-v-64c27271]{color:#fca5a5}@media(max-width:900px){.create-form[data-v-64c27271]{grid-template-columns:1fr}}.page-header[data-v-5dfc187e]{display:flex;align-items:center;justify-content:space-between;margin-bottom:1.5rem}h1[data-v-5dfc187e]{font-size:1.5rem}.loading[data-v-5dfc187e]{color:var(--text-muted)}.form[data-v-5dfc187e]{max-width:560px}.settings-card[data-v-5dfc187e]{padding:1.25rem;background:var(--bg-card);border:1px solid var(--border);border-radius:var(--radius)}.settings-card h2[data-v-5dfc187e]{font-size:1.1rem;margin-bottom:.5rem}.intro[data-v-5dfc187e]{color:var(--text-muted);font-size:.9rem;line-height:1.65;margin-bottom:1.25rem}.field[data-v-5dfc187e]{margin-bottom:1rem}.field label[data-v-5dfc187e]{display:block;margin-bottom:.4rem;font-size:.9rem;color:var(--text-muted)}.field input[type=number][data-v-5dfc187e]{width:100%;max-width:180px}.checkbox-field label[data-v-5dfc187e]{display:flex;align-items:center;gap:.5rem;color:var(--text)}.preview[data-v-5dfc187e]{margin-top:1.25rem;padding:1rem;border-radius:8px;background:var(--bg-elevated);border:1px dashed var(--border)}.preview-label[data-v-5dfc187e]{display:block;margin-bottom:.5rem;font-size:.78rem;color:var(--text-muted)}.preview p[data-v-5dfc187e]{font-size:1rem;line-height:1.6}.preview .muted[data-v-5dfc187e]{color:var(--text-muted)}.actions[data-v-5dfc187e]{margin-top:1.25rem}.message[data-v-5dfc187e]{margin-top:1rem;padding:.75rem 1rem;border-radius:8px;font-size:.88rem;white-space:pre-wrap}.message.success[data-v-5dfc187e]{background:#10b9811f;color:#6ee7b7}.message.error[data-v-5dfc187e]{background:#ef44441f;color:#fca5a5}.admin-page[data-v-5dfc187e]{height:100%;overflow-y:auto;padding:1.5rem 2rem}.analytics-page[data-v-e8bbfd55]{height:100%;overflow:auto;padding:1.5rem}.page-header[data-v-e8bbfd55]{display:flex;justify-content:space-between;align-items:flex-start;gap:1rem;margin-bottom:1.5rem}.page-header h1[data-v-e8bbfd55]{margin:0 0 .35rem;font-size:1.5rem}.page-header p[data-v-e8bbfd55]{margin:0;color:var(--text-muted);font-size:.92rem}.message.error[data-v-e8bbfd55]{margin-bottom:1rem;padding:.75rem 1rem;border-radius:8px;background:#ef44441f;color:#fca5a5}.loading[data-v-e8bbfd55]{color:var(--text-muted)}.summary-grid[data-v-e8bbfd55]{display:grid;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:1rem;margin-bottom:1.5rem}.summary-card[data-v-e8bbfd55]{padding:1.25rem;border:1px solid var(--border);border-radius:12px;background:var(--bg-card)}.summary-card.primary[data-v-e8bbfd55]{border-color:#3b82f659;background:linear-gradient(135deg,#3b82f61f,#10b98114)}.summary-card .label[data-v-e8bbfd55]{display:block;margin-bottom:.5rem;color:var(--text-muted);font-size:.88rem}.summary-card .value[data-v-e8bbfd55]{display:block;font-size:2rem;line-height:1.1;margin-bottom:.35rem}.summary-card small[data-v-e8bbfd55]{color:var(--text-muted);font-size:.8rem}.section-panel[data-v-e8bbfd55]{border:1px solid var(--border);border-radius:12px;background:var(--bg-card);padding:1.25rem}.section-header[data-v-e8bbfd55]{margin-bottom:1rem}.section-header h2[data-v-e8bbfd55]{margin:0 0 .35rem;font-size:1.15rem}.section-header p[data-v-e8bbfd55]{margin:0;color:var(--text-muted);font-size:.85rem}.section-grid[data-v-e8bbfd55]{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:1rem}.section-card[data-v-e8bbfd55]{padding:1rem;border:1px solid var(--border);border-radius:10px;background:var(--bg-elevated)}.section-top[data-v-e8bbfd55]{display:flex;justify-content:space-between;align-items:center;gap:.75rem;margin-bottom:.85rem}.section-top h3[data-v-e8bbfd55]{margin:0;font-size:1rem}.rate[data-v-e8bbfd55]{font-size:1.25rem;font-weight:700;color:#6ee7b7}.metrics[data-v-e8bbfd55]{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;margin-bottom:.85rem}.metric-label[data-v-e8bbfd55]{display:block;margin-bottom:.2rem;color:var(--text-muted);font-size:.78rem}.metrics strong[data-v-e8bbfd55]{font-size:1.1rem}.progress[data-v-e8bbfd55]{height:6px;border-radius:999px;background:#94a3b82e;overflow:hidden}.progress-bar[data-v-e8bbfd55]{height:100%;border-radius:inherit;background:linear-gradient(90deg,#34d399,#60a5fa)}@media(max-width:768px){.analytics-page[data-v-e8bbfd55]{padding:1rem}.page-header[data-v-e8bbfd55]{flex-direction:column}}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--bg: #0f172a;--bg-card: #1e293b;--bg-elevated: #334155;--text: #f1f5f9;--text-muted: #94a3b8;--primary: #3b82f6;--primary-hover: #2563eb;--accent: #22d3ee;--success: #34d399;--border: #334155;--radius: 12px;--shadow: 0 4px 24px rgba(0, 0, 0, .35);font-family:Segoe UI,system-ui,-apple-system,sans-serif;line-height:1.6;color:var(--text);background:var(--bg)}body{min-height:100vh}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}button{cursor:pointer;font-family:inherit}input,textarea,select{font-family:inherit;font-size:1rem}.container{width:min(1200px,92vw);margin:0 auto}.btn{display:inline-flex;align-items:center;gap:.5rem;padding:.65rem 1.25rem;border:none;border-radius:8px;font-weight:600;transition:background .2s,transform .15s}.btn:active{transform:scale(.98)}.btn-primary{background:var(--primary);color:#fff}.btn-primary:hover{background:var(--primary-hover)}.btn-outline{background:transparent;color:var(--text);border:1px solid var(--border)}.btn-outline:hover{background:var(--bg-elevated)}.tag{display:inline-block;padding:.2rem .6rem;border-radius:999px;font-size:.75rem;font-weight:600}.tag-link{background:#3b82f633;color:#93c5fd}.tag-image{background:#22d3ee26;color:#67e8f9}.skeleton{background:linear-gradient(90deg,var(--bg-card) 25%,var(--bg-elevated) 50%,var(--bg-card) 75%);background-size:200% 100%;animation:shimmer 1.2s infinite;border-radius:var(--radius)}@keyframes shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}
