:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--system-blue:#007aff;--system-blue-pressed:#0062cc;--system-bg:#f2f2f7;--secondary-bg:#fff;--tertiary-bg:#f7f7fb;--label:#111;--secondary-label:#3c3c43ad;--tertiary-label:#3c3c4361;--separator:#3c3c432e;--fill:#7878801f;--card-shadow:0 10px 30px #0000000f}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--system-bg:#000;--secondary-bg:#1c1c1e;--tertiary-bg:#2c2c2e;--label:#fff;--secondary-label:#ebebf5ad;--tertiary-label:#ebebf561;--separator:#545458a6;--fill:#7878803d;--card-shadow:none}}*{box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0}body{background:var(--system-bg);color:var(--label);-webkit-font-smoothing:antialiased;text-rendering:optimizelegibility;font-family:-apple-system,BlinkMacSystemFont,SF Pro Text,SF Pro Display,PingFang SC,Helvetica Neue,Arial,sans-serif}button{font:inherit}button,input,textarea,select{-webkit-tap-highlight-color:transparent}button,a,[role=button]{touch-action:manipulation}.app-state{text-align:center;min-height:100%;color:var(--secondary-label);place-items:center;gap:12px;padding:24px;display:grid}.app-state-error p{color:var(--secondary-label);margin:0}.app-state-error button{background:var(--system-blue);color:#fff;border:0;border-radius:999px;padding:10px 18px;font-weight:600}.book-shelf{max-width:720px;min-height:100%;padding:calc(env(safe-area-inset-top) + 28px) 16px calc(env(safe-area-inset-bottom) + 28px);margin:0 auto}.shelf-header{margin:0 0 22px;padding:0 4px}.shelf-header h1{letter-spacing:-.04em;margin:0;font-size:34px;font-weight:800;line-height:1.05}.shelf-header .eyebrow,.shelf-header p,.shelf-footer{display:none}.book-list{gap:12px;display:grid}.book-item{background:var(--secondary-bg);width:100%;color:var(--label);text-align:left;box-shadow:var(--card-shadow);border:0;border-radius:18px;grid-template-columns:52px 1fr auto;align-items:center;gap:13px;padding:14px 16px;display:grid}.book-item:active,.chapter-item:active,.summary-face:active{transform:scale(.985)}.book-cover-mark{color:#fff;background:linear-gradient(145deg,#0a84ff,#5e5ce6);border-radius:14px;place-items:center;width:52px;height:52px;font-size:22px;font-weight:700;display:grid;overflow:hidden}.book-cover-mark.has-image{background:#dfe5f3}.book-cover-image{object-fit:cover;width:100%;height:100%;display:block}.book-info{min-width:0}.book-title{letter-spacing:-.01em;font-size:17px;font-weight:650}.book-meta,.book-progress{color:var(--secondary-label);margin-top:4px;font-size:13px;line-height:1.35}.book-enter,.chapter-arrow{color:var(--tertiary-label);font-size:22px;font-weight:500}.book-enter{color:var(--system-blue);font-size:15px}.toc-page{background:var(--system-bg);max-width:720px;min-height:100%;margin:0 auto}.toc-topbar,.reader-topbar{z-index:10;min-height:54px;padding:calc(env(safe-area-inset-top) + 8px) 16px 8px;border-bottom:.5px solid var(--separator);background:color-mix(in srgb, var(--system-bg) 82%, transparent);-webkit-backdrop-filter:saturate(180%)blur(20px);align-items:center;display:grid}.toc-topbar{grid-template-columns:56px 1fr 56px;position:sticky;top:0}.reader-topbar{background:var(--secondary-bg);flex:none;grid-template-columns:56px 1fr 72px;gap:10px}.toc-topbar button,.topbar-back{color:var(--system-blue);text-align:left;background:0 0;border:0;padding:0;font-weight:500}.toc-book-title,.topbar-book{text-align:center;letter-spacing:-.02em;white-space:nowrap;text-overflow:ellipsis;min-width:0;font-size:17px;font-weight:650;line-height:1.25;overflow:hidden}.topbar-title{text-align:center;min-width:0}.topbar-progress{text-align:right;color:var(--secondary-label);font-variant-numeric:tabular-nums;font-size:14px}.toc-content{padding:22px 16px calc(28px + env(safe-area-inset-bottom))}.toc-content-tree{padding-top:20px}.toc-content h1{letter-spacing:-.045em;margin:0 0 18px;font-size:34px;font-weight:800;line-height:1.06}.chapter-list,.toc-tree{gap:12px;display:grid}.chapter-item{background:var(--secondary-bg);width:100%;color:var(--label);text-align:left;box-shadow:var(--card-shadow);border:0;border-radius:18px;grid-template-columns:34px 1fr auto;align-items:center;gap:12px;padding:15px 16px;display:grid}.chapter-item.is-last-read{background:linear-gradient(180deg, color-mix(in srgb, var(--system-blue) 9%, var(--secondary-bg)), var(--secondary-bg));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--system-blue) 24%, transparent), var(--card-shadow)}.chapter-number{color:var(--secondary-label);font-variant-numeric:tabular-nums;font-size:13px;font-weight:650}.chapter-main{min-width:0}.chapter-main.has-centered-badge{padding-right:72px;position:relative}.chapter-title-row{align-items:flex-start;gap:8px;display:flex}.chapter-title-row .chapter-title{flex:1;min-width:0}.chapter-title{-webkit-line-clamp:2;line-clamp:2;letter-spacing:-.015em;-webkit-box-orient:vertical;font-size:17px;font-weight:650;line-height:1.35;display:-webkit-box;overflow:hidden}.chapter-meta-row{justify-content:space-between;align-items:center;gap:10px;margin-top:6px;display:flex}.chapter-meta{min-width:0;color:var(--secondary-label);font-size:13px;line-height:1.35}.bookmark-badge{background:color-mix(in srgb, var(--system-blue) 12%, transparent);color:var(--system-blue);white-space:nowrap;border-radius:999px;flex:none;align-items:center;padding:3px 8px;font-size:11px;font-weight:650;line-height:1.2;display:inline-flex}.bookmark-badge:before{content:"";background:currentColor;border-radius:999px;width:5px;height:5px;margin-right:5px}.bookmark-badge-inline{align-self:center}.bookmark-badge-centered{position:absolute;top:50%;right:0;transform:translateY(-50%)}.toc-node{gap:10px;display:grid}.toc-node-row{width:100%}.toc-node-main{min-width:0}.toc-node-main-shell{grid-template-columns:minmax(0,1fr) 64px;align-items:stretch;gap:0;padding:0;overflow:hidden}.toc-node-main-action{min-width:0;color:inherit;text-align:left;background:0 0;border:0;grid-template-columns:34px minmax(0,1fr);align-items:center;gap:12px;padding:15px 16px;display:grid}.toc-node-main.is-group{background:color-mix(in srgb, var(--secondary-bg) 88%, var(--tertiary-bg))}.toc-node-main.is-child{background:linear-gradient(180deg, color-mix(in srgb, var(--secondary-bg) 66%, var(--tertiary-bg)), color-mix(in srgb, var(--secondary-bg) 82%, var(--tertiary-bg)));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--separator) 70%, transparent);border-radius:16px;padding:13px 14px 13px 18px;position:relative}.toc-node-main.is-child:before{content:"";background:var(--system-blue);opacity:.92;border-radius:999px;width:3px;position:absolute;top:12px;bottom:12px;left:8px}.toc-node-main.is-complete.is-root{position:relative}.toc-node-main.is-complete.is-root:before{content:"";opacity:1;background:#ff9f0a;border-radius:999px;width:3px;position:absolute;top:12px;bottom:12px;left:8px}.toc-node-main.is-child .chapter-number{color:var(--tertiary-label);font-size:12px}.toc-node-main.is-child .chapter-title{font-size:15px;font-weight:620;line-height:1.38}.toc-node-main.is-child .chapter-meta{font-size:12px}.toc-node-main.is-child .bookmark-badge-inline{padding:2px 7px;font-size:10px}.toc-node-main.is-child.toc-node-main-shell{padding:0}.toc-node-main-shell.is-child .toc-node-main-action{padding:13px 14px 13px 18px}.toc-node-main.is-last-read.is-child{background:linear-gradient(180deg, color-mix(in srgb, var(--system-blue) 7%, var(--secondary-bg)), color-mix(in srgb, var(--system-blue) 3%, var(--tertiary-bg)));box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--system-blue) 20%, transparent)}.toc-node-main.is-last-read.is-child:before{background:var(--system-blue);opacity:1}.toc-node-main.is-complete.is-child:before{opacity:1;background:#ff9f0a}.toc-node-main.is-disabled{opacity:.72}.toc-node-main:disabled{cursor:default}.toc-node-inline-toggle{border:0;border-left:1px solid color-mix(in srgb, var(--separator) 80%, transparent);background:color-mix(in srgb, var(--secondary-bg) 92%, var(--tertiary-bg));width:100%;color:var(--secondary-label);justify-content:center;align-self:stretch;align-items:center;padding:0;display:inline-flex}.toc-node-inline-toggle.is-root{background:color-mix(in srgb, var(--secondary-bg) 88%, var(--tertiary-bg))}.toc-node-inline-toggle.is-child{background:linear-gradient(180deg, color-mix(in srgb, var(--secondary-bg) 56%, var(--tertiary-bg)), color-mix(in srgb, var(--secondary-bg) 74%, var(--tertiary-bg)))}.toc-node-inline-toggle.is-expanded{color:var(--label)}.chapter-arrow.is-expandable{justify-content:center;align-items:center;width:24px;min-width:24px;height:24px;margin-top:-1px;transition:transform .16s;display:inline-flex}.chapter-arrow-icon{width:14px;height:10px;display:inline-block;position:relative}.chapter-arrow-icon:before,.chapter-arrow-icon:after{content:"";background:currentColor;border-radius:999px;width:9px;height:2px;position:absolute;top:4px}.chapter-arrow-icon:before{transform-origin:100%;left:50%;transform:translate(-100%)rotate(50deg)}.chapter-arrow-icon:after{transform-origin:0;left:50%;transform:rotate(-50deg)}.chapter-arrow.is-expandable.is-expanded{transform:rotate(180deg)}.toc-node-children{gap:10px;display:grid}.toc-empty-hint{background:var(--secondary-bg);color:var(--secondary-label);text-align:center;box-shadow:var(--card-shadow);border-radius:16px;padding:20px 16px}.reader-shell{overscroll-behavior:none;background:var(--system-bg);flex-direction:column;height:100%;min-height:100dvh;display:flex;position:relative;overflow:hidden}.reader-stage{overscroll-behavior:contain;flex:1;min-height:0;padding:8px 10px 12px;overflow:hidden}.card-scroller{overscroll-behavior:contain;width:100%;height:100%;overflow:hidden}.reading-card-shell{height:100%;min-height:100%;padding:0}.reading-card{will-change:transform, opacity;background:var(--secondary-bg);height:100%;box-shadow:var(--card-shadow);border:0;border-radius:26px}.summary-face{cursor:pointer;flex-direction:column;padding:24px 22px 18px;transition:transform .16s;display:flex}.card-head{justify-content:space-between;align-items:center;gap:12px;display:flex}.card-head-right{flex-wrap:nowrap;flex:1;justify-content:flex-end;align-items:center;gap:8px;min-width:0;margin-left:auto;display:flex}.card-kicker,.summary-label{color:var(--system-blue);letter-spacing:.05em;text-transform:uppercase;font-size:12px;font-weight:700;line-height:1.25}.card-index{color:var(--secondary-label);font-variant-numeric:tabular-nums;font-size:13px}.core-badge{color:#b26200;background:#ff950024;border-radius:999px;padding:3px 8px;font-size:12px;font-weight:700;line-height:1.25}.core-badge-muted{color:var(--system-blue);background:#0a84ff1f}.question{letter-spacing:-.045em;margin:14px 0 24px;font-size:clamp(25px,7vw,32px);font-weight:750;line-height:1.18}.summary-label{margin-bottom:10px}.summary-list{color:var(--label);margin:0;padding-left:20px;font-size:18px;line-height:1.55}.summary-list li+li{margin-top:9px}.summary-list li::marker{color:var(--tertiary-label)}.card-footer{color:var(--secondary-label);justify-content:space-between;align-items:center;gap:14px;margin-top:auto;padding-top:20px;font-size:13px;line-height:1.4;display:flex}.card-footer-chapter{flex:1;min-width:0}.card-index-footer{text-align:right;white-space:nowrap;flex:none}.original-face{cursor:default;flex-direction:column;display:flex;overflow:hidden}.original-reader-shell{flex-direction:column;flex:1;min-height:0;display:flex;position:relative}.original-body{-webkit-user-select:text;user-select:text}.original-page-viewport{overscroll-behavior-x:contain;overscroll-behavior-y:none;scroll-behavior:smooth;scrollbar-width:none;-webkit-overflow-scrolling:touch;scroll-snap-type:x mandatory;scroll-snap-stop:always;touch-action:none;flex:1;min-height:0;overflow:auto hidden}.original-page-viewport::-webkit-scrollbar{display:none}.original-page-track{width:100%;height:100%;display:flex}.original-page{scroll-snap-align:start;scroll-snap-stop:always;flex:0 0 100%;width:100%;height:100%;position:relative}.favorite-button{z-index:2;background:color-mix(in srgb, var(--secondary-bg) 84%, transparent);width:40px;height:40px;color:var(--secondary-label);-webkit-backdrop-filter:saturate(180%)blur(20px);border:0;border-radius:999px;justify-content:center;align-items:center;display:inline-flex;position:absolute;bottom:12px;right:16px;box-shadow:0 10px 24px #0000001f}.favorite-button.is-active{background:color-mix(in srgb, var(--system-blue) 18%, var(--secondary-bg));color:var(--system-blue)}.favorite-button:active{transform:scale(.96)}.favorite-button-icon{font-size:20px;line-height:1}.original-page-inner{--original-body-font-size:18px;--original-body-line-height:1.8;--original-heading-1-size:28px;--original-heading-2-size:24px;--original-heading-3-size:21px;--original-quote-font-size:17px;--original-quote-line-height:1.74;--original-list-font-size:18px;--original-list-line-height:1.74;--original-page-padding-top:22px;--original-page-padding-right:22px;--original-page-padding-bottom:16px;--original-page-padding-left:22px;box-sizing:border-box;height:100%;padding:var(--original-page-padding-top) var(--original-page-padding-right) var(--original-page-padding-bottom) var(--original-page-padding-left);overflow:hidden}.original-page-inner,.original-page-inner *{word-break:break-word;overflow-wrap:anywhere}.original-page-measure-host{visibility:hidden;pointer-events:none;z-index:-1;position:fixed;top:0;left:-10000px}.original-page-inner-measure{height:auto;min-height:0}.original-page-inner p,.original-page-inner-measure p{color:var(--label);font-size:var(--original-body-font-size);line-height:var(--original-body-line-height);letter-spacing:-.012em;text-align:justify;text-justify:inter-character;text-align-last:auto;-webkit-hyphens:auto;hyphens:auto;margin:0 0 1.04em}.original-end{background:0 0;margin:1.3em 0 .2em;padding:.35em 0 0}.original-end-title{color:var(--tertiary-label);text-align:center;font-size:13px}.original-page-indicator{min-width:68px;height:22px;color:var(--secondary-label);font-variant-numeric:tabular-nums;text-align:center;flex:none;justify-content:center;align-self:center;align-items:center;margin:6px auto 14px;font-size:13px;line-height:1;display:flex}.attachments-panel{border-top:.5px solid var(--separator);flex:none;margin:0 14px 14px;padding-top:10px}.attachments-toggle{background:color-mix(in srgb, var(--system-blue) 10%, var(--tertiary-bg));width:100%;color:var(--label);text-align:left;border:0;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:11px 14px;font-size:14px;font-weight:650;display:flex}.attachments-toggle-icon{color:var(--secondary-label);font-size:12px;font-weight:600}.attachments-list{-webkit-overflow-scrolling:touch;gap:10px;max-height:min(36vh,280px);margin-top:10px;display:grid;overflow-y:auto}.attachment-card{background:var(--tertiary-bg);border:.5px solid var(--separator);border-radius:18px;padding:14px 14px 2px}.attachment-card-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:6px;display:flex}.attachment-card-type{color:var(--system-blue);letter-spacing:.03em;text-transform:uppercase;font-size:12px;font-weight:700}.attachment-card-score,.attachment-card-meta{color:var(--secondary-label);font-size:12px;line-height:1.5}.attachment-card-meta{margin-bottom:8px}.attachment-card-body .original-heading-1,.attachment-card-body .original-heading-2,.attachment-card-body .original-heading-3{margin-top:.3em}.attachment-card-body p{font-size:15px;line-height:1.72}.attachment-card-body .original-list,.attachment-card-body .original-blockquote{font-size:15px}@media (width>=760px){.reader-shell{border-left:.5px solid var(--separator);border-right:.5px solid var(--separator);max-width:520px;margin:0 auto}}@supports not (color:color-mix(in srgb, white, black)){.toc-topbar,.reader-topbar{background:#f2f2f7e0}.chapter-item.is-last-read{background:var(--secondary-bg);box-shadow:inset 0 0 0 1px #007aff3d, var(--card-shadow)}.bookmark-badge{background:#007aff1f}}.card-scroller.is-moving-up .reading-card-shell.is-active .reading-card,.card-scroller.is-moving-down .reading-card-shell.is-active .reading-card{animation-duration:.34s;animation-timing-function:cubic-bezier(.22,1,.36,1);animation-fill-mode:both}.card-scroller.is-moving-up .reading-card-shell.is-active .reading-card{animation-name:card-enter-up}.card-scroller.is-moving-down .reading-card-shell.is-active .reading-card{animation-name:card-enter-down}@keyframes card-enter-up{0%{opacity:.58;transform:translateY(38px)scale(.982)}72%{opacity:1;transform:translateY(-2px)scale(1)}to{opacity:1;transform:translate(0,0)scale(1)}}@keyframes card-enter-down{0%{opacity:.58;transform:translateY(-38px)scale(.982)}72%{opacity:1;transform:translateY(2px)scale(1)}to{opacity:1;transform:translate(0,0)scale(1)}}@media (prefers-reduced-motion:reduce){.card-scroller.is-moving-up .reading-card-shell.is-active .reading-card,.card-scroller.is-moving-down .reading-card-shell.is-active .reading-card{animation:none}}.reader-topbar{color:#fff;-webkit-backdrop-filter:none;background:#1c1c1e;border-bottom-color:#ffffff14}.reader-topbar .topbar-book{color:#fff}.reader-topbar .topbar-back{color:#0a84ff}.toc-topbar,.reader-topbar{color:#fff;-webkit-backdrop-filter:none;background:#1c1c1e;border-bottom-color:#ffffff14}.toc-topbar button,.toc-book-title,.reader-topbar .topbar-book,.reader-topbar .topbar-progress{color:#fff}.toc-topbar button,.reader-topbar .topbar-back{color:#0a84ff}.reader-topbar .topbar-progress{color:#ebebf5ad}.reader-topbar .bookmark-badge,.toc-topbar .bookmark-badge{color:#64d2ff;background:#0a84ff29}.login-page{min-height:100%;padding:calc(env(safe-area-inset-top) + 28px) 18px calc(env(safe-area-inset-bottom) + 28px);background:var(--system-bg);place-items:center;display:grid}.login-card{background:var(--secondary-bg);width:min(100%,390px);box-shadow:var(--card-shadow);border-radius:28px;padding:30px 22px 22px}.login-app-mark{color:#fff;letter-spacing:-.03em;background:linear-gradient(145deg,#0a84ff,#5e5ce6);border-radius:16px;place-items:center;width:58px;height:58px;font-size:20px;font-weight:800;display:grid}.login-card h1{letter-spacing:-.045em;margin:16px 0 24px;font-size:34px;font-weight:800;line-height:1.05}.login-form{gap:12px;display:grid}.login-field{gap:7px;display:grid}.login-field span{color:var(--secondary-label);font-size:13px;font-weight:550}.login-field input{background:var(--tertiary-bg);width:100%;color:var(--label);font:inherit;border:0;border-radius:14px;outline:none;padding:13px 14px;font-size:17px}.login-field input:focus{box-shadow:inset 0 0 0 1.5px var(--system-blue)}.login-error{color:#ff3b30;font-size:13px;line-height:1.4}.login-submit{background:var(--system-blue);color:#fff;border:0;border-radius:999px;margin-top:4px;padding:13px 18px;font-size:17px;font-weight:650}.login-submit:active{background:var(--system-blue-pressed);transform:scale(.985)}.login-note{color:var(--secondary-label);text-align:center;margin-top:16px;font-size:13px}.reader-generating-hint{left:50%;bottom:calc(env(safe-area-inset-bottom) + 18px);z-index:8;color:#ebebf5d1;pointer-events:none;background:#1c1c1eb8;border-radius:999px;padding:7px 12px;font-size:12px;line-height:1;position:absolute;transform:translate(-50%)}.original-highlight{color:#b26200;font-weight:inherit;text-underline-offset:3px;background:0 0;-webkit-text-decoration:underline #ff950094;text-decoration:underline #ff950094;text-decoration-thickness:2px}.original-highlight-expanded{color:#005ecb;text-decoration-color:#0a84ffb8}.selection-toolbar{z-index:30;-webkit-backdrop-filter:saturate(180%)blur(18px);background:#1c1c1eeb;border-radius:999px;padding:4px;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0000002e}.selection-toolbar button{color:#ffd60a;background:#ff95002e;border:0;border-radius:999px;padding:7px 14px;font-size:14px;font-weight:700}.original-heading{color:var(--label);letter-spacing:-.04em;margin:1.45em 0 .72em;font-weight:820}.original-heading:first-child{margin-top:0}.original-heading-1{font-size:var(--original-heading-1-size);line-height:1.18}.original-heading-2{font-size:var(--original-heading-2-size);line-height:1.22}.original-heading-3{font-size:var(--original-heading-3-size);line-height:1.28}.original-blockquote{color:var(--secondary-label);font-size:var(--original-quote-font-size);line-height:var(--original-quote-line-height);text-align:justify;text-justify:inter-character;text-align-last:auto;-webkit-hyphens:auto;hyphens:auto;background:#0a84ff14;border-left:4px solid #0a84ff73;border-radius:12px;margin:1.05em 0 1.2em;padding:13px 14px}.original-list{color:var(--label);font-size:var(--original-list-font-size);line-height:var(--original-list-line-height);margin:0 0 1.12em;padding-left:1.45em}.original-list li{text-align:justify;text-justify:inter-character;text-align-last:auto;-webkit-hyphens:auto;hyphens:auto}.original-list li+li{margin-top:.48em}.original-list li::marker{color:var(--tertiary-label)}.original-list-continuation{margin-left:-.05em;list-style:none}.original-list-continuation::marker{color:#0000}.original-divider{background:var(--separator);border:0;height:1px;margin:24px 0}.selection-toolbar.is-unmark button{color:#ff9f0a;background:#ff3b302e}.selection-toolbar{align-items:center;gap:6px;display:flex}.selection-toolbar-secondary{color:#7dc3ff;background:#0a84ff29}.expand-overlay{z-index:120;padding:calc(env(safe-area-inset-top) + 18px) 24px calc(env(safe-area-inset-bottom) + 18px);-webkit-backdrop-filter:blur(8px)saturate(140%);background:#00000047;justify-content:center;align-items:center;display:flex;position:fixed;inset:0}.expand-loading-modal{background:var(--secondary-bg);border:1px solid color-mix(in srgb, var(--separator) 60%, #ffffff80 40%);border-radius:24px;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:126px;height:126px;display:flex;box-shadow:0 18px 48px #0000002e}.book-loader{width:56px;height:44px;color:var(--secondary-label);position:relative}.book-loader-icon,.book-loader-flip{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.book-loader-shadow,.book-loader-outline,.book-loader-spine,.book-loader-page-line,.book-loader-flip-page{fill:none;stroke:currentColor;stroke-width:1.9px;stroke-linecap:round;stroke-linejoin:round}.book-loader-shadow{opacity:.22;stroke-width:1.5px}.book-loader-outline{opacity:.96}.book-loader-spine{opacity:.9}.book-loader-page-line{opacity:.48;stroke-width:1.5px}.book-loader-page-fill,.book-loader-flip-fill{fill:currentColor;stroke:none}.book-loader-page-fill{opacity:.08}.book-loader-flip{transform-origin:24px 18px;transform-box:fill-box;opacity:0}.book-loader-flip-fill{opacity:.16}.book-loader-flip-page{opacity:.9}.book-loader-flip-1{animation:2.35s cubic-bezier(.37,0,.2,1) infinite book-page-turn}.book-loader-flip-2{animation:2.35s cubic-bezier(.37,0,.2,1) .62s infinite book-page-turn}.expand-loading-text{color:var(--secondary-label);font-size:13px;line-height:1}.expand-result-modal{width:min(100%,560px);max-height:calc(100vh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 36px);background:var(--secondary-bg);border:1px solid color-mix(in srgb, var(--separator) 82%, #1c1c1eb8 18%);border-radius:26px;flex-direction:column;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #1c1c1e29,0 22px 60px #0003,0 6px 18px #00000014}.expand-result-quote{color:var(--secondary-label);border-bottom:.5px solid var(--separator);background:var(--tertiary-bg);text-overflow:ellipsis;-webkit-line-clamp:3;line-clamp:3;-webkit-box-orient:vertical;flex:none;margin:0;padding:18px 20px 14px;font-size:15px;line-height:1.7;display:-webkit-box;overflow:hidden}.expand-result-body{-webkit-overflow-scrolling:touch;flex:1;padding:18px 20px 22px;overflow-y:auto}.expand-result-text,.expand-result-error{white-space:pre-wrap;color:var(--label);font-size:16px;line-height:1.78}.expand-result-error{color:#ff453a}@keyframes book-page-turn{0%{opacity:0;transform:perspective(220px)rotateY(0)translate(0)}14%{opacity:.92;transform:perspective(220px)rotateY(-8deg)translate(0)}52%{opacity:.78;transform:perspective(220px)rotateY(-104deg)translate(-1px)}to{opacity:0;transform:perspective(220px)rotateY(-178deg)translate(-2px)}}.card-chat-overlay{z-index:130;padding:calc(env(safe-area-inset-top) + 64px) 10px calc(env(safe-area-inset-bottom) + 12px);-webkit-backdrop-filter:blur(10px)saturate(140%);background:#00000052;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.card-chat-modal{width:min(100%,500px);height:80%;max-height:calc(100dvh - env(safe-area-inset-top) - env(safe-area-inset-bottom) - 76px);background:var(--secondary-bg);border:1px solid color-mix(in srgb, var(--separator) 82%, #1c1c1eb8 18%);border-radius:26px;flex-direction:column;display:flex;overflow:hidden;box-shadow:inset 0 0 0 1px #1c1c1e24,0 24px 72px #0000003d,0 8px 22px #0000001a}.card-chat-head{border-bottom:.5px solid var(--separator);background:color-mix(in srgb, var(--tertiary-bg) 72%, transparent);flex:none;justify-content:space-between;align-items:center;gap:14px;padding:17px 18px 14px;display:flex}.card-chat-kicker{color:var(--system-blue);letter-spacing:.08em;text-transform:uppercase;font-size:11px;font-weight:800;line-height:1.2}.card-chat-title{color:var(--label);margin-top:4px;font-size:18px;font-weight:750;line-height:1.25}.card-chat-close{background:var(--tertiary-bg);color:var(--secondary-label);border:0;border-radius:999px;flex:none;padding:8px 12px;font-size:13px;font-weight:700}.card-chat-messages{-webkit-overflow-scrolling:touch;flex-direction:column;flex:1;gap:12px;min-height:0;padding:16px;display:flex;overflow-y:auto}.card-chat-empty{max-width:320px;color:var(--secondary-label);text-align:center;margin:auto;font-size:14px;line-height:1.7}.card-chat-bottom-anchor{pointer-events:none;flex-shrink:0;width:100%;height:1px}.card-chat-message{gap:5px;max-width:88%;display:grid}.card-chat-message-user{align-self:flex-end}.card-chat-message-assistant{align-self:flex-start}.card-chat-message-role{color:var(--tertiary-label);font-size:11px;font-weight:750;line-height:1}.card-chat-message-user .card-chat-message-role{text-align:right}.card-chat-message-content{white-space:pre-wrap;word-break:break-word;overflow-wrap:anywhere;color:var(--label);border-radius:18px;padding:10px 12px;font-size:15px;line-height:1.68}.card-chat-message-user .card-chat-message-content{background:color-mix(in srgb, var(--system-blue) 16%, var(--tertiary-bg));color:var(--label);border-top-right-radius:6px}.card-chat-message-assistant .card-chat-message-content{background:var(--tertiary-bg);border-top-left-radius:6px}.card-chat-message-pending .card-chat-message-content{color:var(--secondary-label);align-items:center;gap:8px;display:inline-flex}.card-chat-thinking-dot{background:var(--system-blue);border-radius:999px;flex:none;width:10px;height:10px;animation:1.45s ease-in-out infinite card-chat-thinking-breathe;position:relative;box-shadow:0 0 #0a84ff61}.card-chat-thinking-dot:after{content:"";border-radius:inherit;opacity:0;border:1px solid #0a84ff47;animation:1.45s ease-in-out infinite card-chat-thinking-ring;position:absolute;inset:-5px;transform:scale(.72)}@keyframes card-chat-thinking-breathe{0%,to{opacity:.62;transform:scale(.86);box-shadow:0 0 #0a84ff47}50%{opacity:1;transform:scale(1.08);box-shadow:0 0 16px 3px #0a84ff5c}}@keyframes card-chat-thinking-ring{0%{opacity:.52;transform:scale(.72)}70%,to{opacity:0;transform:scale(1.7)}}@media (prefers-reduced-motion:reduce){.card-chat-thinking-dot,.card-chat-thinking-dot:after{animation:none}}.card-chat-error{color:#ff453a;background:#ff3b301f;border-radius:14px;flex:none;margin:0 16px 12px;padding:10px 12px;font-size:14px;line-height:1.5}.card-chat-form{border-top:.5px solid var(--separator);background:color-mix(in srgb, var(--secondary-bg) 86%, var(--tertiary-bg));flex:none;grid-template-columns:1fr auto;align-items:end;gap:10px;padding:12px 14px 14px;display:grid}.card-chat-input{resize:vertical;box-sizing:border-box;border:.5px solid var(--separator);background:var(--secondary-bg);width:100%;min-height:48px;max-height:120px;color:var(--label);font:inherit;border-radius:17px;outline:none;padding:11px 12px;font-size:15px;line-height:1.55}.card-chat-input:focus{border-color:color-mix(in srgb, var(--system-blue) 62%, var(--separator));box-shadow:0 0 0 3px #0a84ff1f}.card-chat-send{background:var(--system-blue);color:#fff;border:0;border-radius:999px;padding:11px 15px;font-size:14px;font-weight:800;line-height:1}.card-chat-send:disabled,.card-chat-input:disabled{opacity:.45}.card-chat-send:disabled{cursor:default}
