:root{--react-pdf-annotation-layer: 1;--annotation-unfocused-field-background: url("data:image/svg+xml;charset=UTF-8,<svg width='1px' height='1px' xmlns='http://www.w3.org/2000/svg'><rect width='100%' height='100%' style='fill:rgba(0, 54, 255, 0.13);'/></svg>");--input-focus-border-color: Highlight;--input-focus-outline: 1px solid Canvas;--input-unfocused-border-color: transparent;--input-disabled-border-color: transparent;--input-hover-border-color: black;--link-outline: none}@media screen and (forced-colors: active){:root{--input-focus-border-color: CanvasText;--input-unfocused-border-color: ActiveText;--input-disabled-border-color: GrayText;--input-hover-border-color: Highlight;--link-outline: 1.5px solid LinkText}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid selectedItem}.annotationLayer .linkAnnotation:hover{-webkit-backdrop-filter:invert(100%);backdrop-filter:invert(100%)}}.annotationLayer{position:absolute;top:0;left:0;pointer-events:none;transform-origin:0 0;z-index:3}.annotationLayer[data-main-rotation="90"] .norotate{transform:rotate(270deg) translate(-100%)}.annotationLayer[data-main-rotation="180"] .norotate{transform:rotate(180deg) translate(-100%,-100%)}.annotationLayer[data-main-rotation="270"] .norotate{transform:rotate(90deg) translateY(-100%)}.annotationLayer canvas{position:absolute;width:100%;height:100%}.annotationLayer section{position:absolute;text-align:initial;pointer-events:auto;box-sizing:border-box;margin:0;transform-origin:0 0}.annotationLayer .linkAnnotation{outline:var(--link-outline)}.textLayer.selecting~.annotationLayer section{pointer-events:none}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a{position:absolute;font-size:1em;top:0;left:0;width:100%;height:100%}.annotationLayer :is(.linkAnnotation,.buttonWidgetAnnotation.pushButton)>a:hover{opacity:.2;background:#ff0;box-shadow:0 2px 10px #ff0}.annotationLayer .textAnnotation img{position:absolute;cursor:pointer;width:100%;height:100%;top:0;left:0}.annotationLayer .textWidgetAnnotation :is(input,textarea),.annotationLayer .choiceWidgetAnnotation select,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{background-image:var(--annotation-unfocused-field-background);border:2px solid var(--input-unfocused-border-color);box-sizing:border-box;font:calc(9px * var(--scale-factor)) sans-serif;height:100%;margin:0;vertical-align:top;width:100%}.annotationLayer .textWidgetAnnotation :is(input,textarea):required,.annotationLayer .choiceWidgetAnnotation select:required,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:required{outline:1.5px solid red}.annotationLayer .choiceWidgetAnnotation select option{padding:0}.annotationLayer .buttonWidgetAnnotation.radioButton input{border-radius:50%}.annotationLayer .textWidgetAnnotation textarea{resize:none}.annotationLayer .textWidgetAnnotation :is(input,textarea)[disabled],.annotationLayer .choiceWidgetAnnotation select[disabled],.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input[disabled]{background:none;border:2px solid var(--input-disabled-border-color);cursor:not-allowed}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input:hover{border:2px solid var(--input-hover-border-color)}.annotationLayer .textWidgetAnnotation :is(input,textarea):hover,.annotationLayer .choiceWidgetAnnotation select:hover,.annotationLayer .buttonWidgetAnnotation.checkBox input:hover{border-radius:2px}.annotationLayer .textWidgetAnnotation :is(input,textarea):focus,.annotationLayer .choiceWidgetAnnotation select:focus{background:none;border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) :focus{background-image:none;background-color:transparent}.annotationLayer .buttonWidgetAnnotation.checkBox :focus{border:2px solid var(--input-focus-border-color);border-radius:2px;outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.radioButton :focus{border:2px solid var(--input-focus-border-color);outline:var(--input-focus-outline)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after,.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{background-color:CanvasText;content:"";display:block;position:absolute}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before,.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{height:80%;left:45%;width:1px}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:before{transform:rotate(45deg)}.annotationLayer .buttonWidgetAnnotation.checkBox input:checked:after{transform:rotate(-45deg)}.annotationLayer .buttonWidgetAnnotation.radioButton input:checked:before{border-radius:50%;height:50%;left:30%;top:20%;width:50%}.annotationLayer .textWidgetAnnotation input.comb{font-family:monospace;padding-left:2px;padding-right:0}.annotationLayer .textWidgetAnnotation input.comb:focus{width:103%}.annotationLayer .buttonWidgetAnnotation:is(.checkBox,.radioButton) input{-webkit-appearance:none;-moz-appearance:none;appearance:none}.annotationLayer .popupTriggerArea{height:100%;width:100%}.annotationLayer .fileAttachmentAnnotation .popupTriggerArea{position:absolute}.annotationLayer .popupWrapper{position:absolute;font-size:calc(9px * var(--scale-factor));width:100%;min-width:calc(180px * var(--scale-factor));pointer-events:none}.annotationLayer .popup{position:absolute;max-width:calc(180px * var(--scale-factor));background-color:#ff9;box-shadow:0 calc(2px * var(--scale-factor)) calc(5px * var(--scale-factor)) #888;border-radius:calc(2px * var(--scale-factor));padding:calc(6px * var(--scale-factor));margin-left:calc(5px * var(--scale-factor));cursor:pointer;font:message-box;white-space:normal;word-wrap:break-word;pointer-events:auto}.annotationLayer .popup>*{font-size:calc(9px * var(--scale-factor))}.annotationLayer .popup h1{display:inline-block}.annotationLayer .popupDate{display:inline-block;margin-left:calc(5px * var(--scale-factor))}.annotationLayer .popupContent{border-top:1px solid rgba(51,51,51,1);margin-top:calc(2px * var(--scale-factor));padding-top:calc(2px * var(--scale-factor))}.annotationLayer .richText>*{white-space:pre-wrap;font-size:calc(9px * var(--scale-factor))}.annotationLayer .highlightAnnotation,.annotationLayer .underlineAnnotation,.annotationLayer .squigglyAnnotation,.annotationLayer .strikeoutAnnotation,.annotationLayer .freeTextAnnotation,.annotationLayer .lineAnnotation svg line,.annotationLayer .squareAnnotation svg rect,.annotationLayer .circleAnnotation svg ellipse,.annotationLayer .polylineAnnotation svg polyline,.annotationLayer .polygonAnnotation svg polygon,.annotationLayer .caretAnnotation,.annotationLayer .inkAnnotation svg polyline,.annotationLayer .stampAnnotation,.annotationLayer .fileAttachmentAnnotation{cursor:pointer}.annotationLayer section svg{position:absolute;width:100%;height:100%;top:0;left:0}.annotationLayer .annotationTextContent{position:absolute;width:100%;height:100%;opacity:0;color:transparent;-webkit-user-select:none;-moz-user-select:none;user-select:none;pointer-events:none}.annotationLayer .annotationTextContent span{width:100%;display:inline-block}:root{--react-pdf-text-layer: 1;--highlight-bg-color: rgba(180, 0, 170, 1);--highlight-selected-bg-color: rgba(0, 100, 0, 1)}@media screen and (forced-colors: active){:root{--highlight-bg-color: Highlight;--highlight-selected-bg-color: ButtonText}}[data-main-rotation="90"]{transform:rotate(90deg) translateY(-100%)}[data-main-rotation="180"]{transform:rotate(180deg) translate(-100%,-100%)}[data-main-rotation="270"]{transform:rotate(270deg) translate(-100%)}.textLayer{position:absolute;text-align:initial;top:0;right:0;bottom:0;left:0;overflow:hidden;line-height:1;-webkit-text-size-adjust:none;-moz-text-size-adjust:none;text-size-adjust:none;forced-color-adjust:none;transform-origin:0 0;z-index:2}.textLayer :is(span,br){color:transparent;position:absolute;white-space:pre;cursor:text;margin:0;transform-origin:0 0}.textLayer span.markedContent{top:0;height:0}.textLayer .highlight{margin:-1px;padding:1px;background-color:var(--highlight-bg-color);border-radius:4px}.textLayer .highlight.appended{position:initial}.textLayer .highlight.begin{border-radius:4px 0 0 4px}.textLayer .highlight.end{border-radius:0 4px 4px 0}.textLayer .highlight.middle{border-radius:0}.textLayer .highlight.selected{background-color:var(--highlight-selected-bg-color)}.textLayer br::-moz-selection{background:transparent}.textLayer br::selection{background:transparent}.textLayer .endOfContent{display:block;position:absolute;top:100%;right:0;bottom:0;left:0;z-index:-1;cursor:default;-webkit-user-select:none;-moz-user-select:none;user-select:none}.textLayer.selecting .endOfContent{top:0}.hiddenCanvasElement{position:absolute;top:0;left:0;width:0;height:0;display:none}:root{--ebook-brand: #0b0b0d;--ebook-brand-hover: #000000;--ebook-brand-light: #f2f2f0;--ebook-ink: #0b0b0d;--ebook-paper: #fafaf8;--ebook-shelf: #f2f2f0;--ebook-border: rgba(11, 11, 13, .12);--ebook-shadow: transparent;--ebook-radius-sm: 4px;--ebook-radius-md: 4px;--ebook-radius-lg: 8px;--ebook-transition: .15s ease-out;--font-ui-system: "Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", "Helvetica Neue", Arial, sans-serif;--radius-sm: 4px;--radius-md: 4px;--radius-lg: 8px;--radius-xl: 8px;--card-radius: 8px;--card-pad: 16px;--card-pad-lg: 20px;--space-section: 32px;--space-card-gap: 16px;--fs-xs: 12px;--fs-sm: 13px;--fs-base: 14px;--fs-md: 15px;--fs-lg: 18px;--fs-xl: 24px;--fs-2xl: 32px;--fs-3xl: 40px}:root,[data-reader-theme=light]{--sig-bg: #fafaf8;--sig-fg: #0b0b0d;--sig-dim: #6a6a72;--sig-faint: #9a9aa2;--sig-surface: #ffffff;--sig-surface-2: #f2f2f0;--sig-overlay: rgba(11, 11, 13, .45);--sig-line: rgba(11, 11, 13, .12);--sig-line-2: rgba(11, 11, 13, .22);--sig-accent: #0d9488;--sig-accent-fg: #ffffff;--sig-danger: #c8362b;--sig-success: #2e7d32;--sig-warning: #b26a00;--sig-info: #2563eb;--bg-primary: var(--sig-bg);--bg-page: var(--sig-bg);--bg-page-edge: var(--sig-surface-2);--surface-base: var(--sig-bg);--surface-raised: var(--sig-surface);--surface-hover: color-mix(in srgb, var(--sig-fg) 4%, transparent);--surface-active: color-mix(in srgb, var(--sig-fg) 7%, transparent);--surface-sunken: var(--sig-surface-2);--surface-overlay: var(--sig-surface);--text-primary: var(--sig-fg);--text-secondary: var(--sig-dim);--text-muted: var(--sig-faint);--text-disabled: color-mix(in srgb, var(--sig-faint) 55%, transparent);--card-border: var(--sig-line);--border-color: var(--sig-line-2);--border-light: var(--sig-line);--border-strong: var(--sig-fg);--shadow-page: transparent;--shadow-spine: transparent;--accent: var(--sig-accent);--accent-hover: color-mix(in srgb, var(--sig-accent) 86%, black);--accent-light: color-mix(in srgb, var(--sig-accent) 12%, transparent);--accent-soft: color-mix(in srgb, var(--sig-accent) 12%, transparent);--code-bg: #e6e6e6;--code-block-bg: #141414;--code-block-text: #e8e8e8;--blockquote-bg: #fffbeb;--blockquote-border: #f59e0b;--table-header-bg: #dbeafe;--table-border: #cbd5e1;--link-color: #2563eb;--toolbar-bg: var(--sig-surface);--toolbar-border: var(--sig-line);--sidebar-bg: var(--sig-surface);--font-reading: "STKaiti", "KaiTi", "Kaiti SC", "BiauKai", "DFKai-SB", "Songti SC", serif;--font-ui: "Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--engrave-highlight: rgba(255, 255, 255, .78);--engrave-shadow: rgba(0, 0, 0, .15);--paper-texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.02'/%3E%3C/svg%3E");--error-bg: #fef2f2;--error-border: #fecaca;--error-text: #b91c1c;--success-bg: #f0fdf4;--success-border: #bbf7d0;--success-text: #15803d;--shadow-xs: none;--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--shadow-hover: none}[data-reader-theme=dark]{--sig-bg: #08080a;--sig-fg: #f4f4f2;--sig-dim: #8e8e96;--sig-faint: #5c5c64;--sig-surface: #111114;--sig-surface-2: #17171b;--sig-overlay: rgba(0, 0, 0, .6);--sig-line: rgba(255, 255, 255, .1);--sig-line-2: rgba(255, 255, 255, .22);--sig-accent: #2dd4bf;--sig-accent-fg: #06231f;--sig-danger: #ff6b5e;--sig-success: #6bbf6e;--sig-warning: #e0a030;--sig-info: #6b9bff;--bg-primary: var(--sig-bg);--bg-page: var(--sig-bg);--bg-page-edge: var(--sig-surface-2);--surface-base: var(--sig-bg);--surface-raised: var(--sig-surface);--surface-hover: color-mix(in srgb, var(--sig-fg) 4%, transparent);--surface-active: color-mix(in srgb, var(--sig-fg) 8%, transparent);--surface-sunken: var(--sig-surface-2);--surface-overlay: var(--sig-surface);--text-primary: var(--sig-fg);--text-secondary: var(--sig-dim);--text-muted: var(--sig-faint);--text-disabled: color-mix(in srgb, var(--sig-faint) 55%, transparent);--card-border: var(--sig-line);--border-color: var(--sig-line-2);--border-light: var(--sig-line);--border-strong: var(--sig-fg);--shadow-page: transparent;--shadow-spine: transparent;--accent: var(--sig-accent);--accent-hover: color-mix(in srgb, var(--sig-accent) 88%, white);--accent-light: color-mix(in srgb, var(--sig-accent) 18%, transparent);--accent-soft: color-mix(in srgb, var(--sig-accent) 18%, transparent);--code-bg: #2f2f2f;--code-block-bg: #101010;--code-block-text: #dddddd;--blockquote-bg: #1c1917;--blockquote-border: #f59e0b;--table-header-bg: #1e293b;--table-border: #313131;--link-color: #8ab4f8;--toolbar-bg: var(--sig-surface);--toolbar-border: var(--sig-line);--sidebar-bg: var(--sig-surface);--font-reading: "STKaiti", "KaiTi", "Kaiti SC", "BiauKai", "DFKai-SB", "Songti SC", serif;--font-ui: "Inter", "Noto Sans SC", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Microsoft YaHei", sans-serif;--engrave-highlight: rgba(255, 255, 255, .06);--engrave-shadow: rgba(0, 0, 0, .45);--paper-texture: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.55' numOctaves='2' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.025'/%3E%3C/svg%3E");--error-bg: #3a1d1d;--error-border: #5b2a2a;--error-text: #fca5a5;--success-bg: #1c3024;--success-border: #2f4a38;--success-text: #86efac;--shadow-xs: none;--shadow-sm: none;--shadow-md: none;--shadow-lg: none;--shadow-xl: none;--shadow-hover: none}:root,[data-reader-theme=light]{--nav-btn-bg: var(--sig-surface);--sidebar-active-bg: color-mix(in srgb, var(--sig-fg) 6%, transparent);--sidebar-active-text: var(--sig-fg);--progress-from: var(--sig-accent);--progress-to: var(--sig-accent);--wrapper-overlay-start: var(--sig-bg);--wrapper-overlay-end: var(--sig-bg);--toolbar-highlight: transparent;--body-overlay-start: var(--sig-bg);--body-overlay-end: var(--sig-bg);--container-overlay-start: var(--sig-bg);--container-overlay-end: var(--sig-bg);--inset-highlight: transparent}[data-reader-theme=dark]{--nav-btn-bg: var(--sig-surface);--sidebar-active-bg: color-mix(in srgb, var(--sig-fg) 8%, transparent);--sidebar-active-text: var(--sig-fg);--progress-from: var(--sig-accent);--progress-to: var(--sig-accent);--wrapper-overlay-start: var(--sig-bg);--wrapper-overlay-end: var(--sig-bg);--toolbar-highlight: transparent;--body-overlay-start: var(--sig-bg);--body-overlay-end: var(--sig-bg);--container-overlay-start: var(--sig-bg);--container-overlay-end: var(--sig-bg);--inset-highlight: transparent}:root,[data-reader-theme=light]{--md-heading-accent: #2563eb;--md-h1: #1e3a8a;--md-h2: #3730a3;--md-h3: #0f766e;--md-h4: #6b21a8;--md-h5: #475569;--md-h6: #64748b;--md-strong-color: #1e3a8a;--md-em-color: var(--text-secondary);--md-list-marker: #94a3b8;--md-inline-code-color: #db2777;--md-inline-code-bg: #fdf2f8;--md-inline-code-border: #fbcfe8;--md-blockquote-text: #78350f;--md-table-header-text: #1e3a8a;--md-link-underline: color-mix(in srgb, var(--link-color) 35%, transparent);--md-mark-bg: #fef08a;--md-mark-text: #713f12;--hljs-keyword: #d73a49;--hljs-string: #22863a;--hljs-title: #6f42c1;--hljs-number: #005cc5;--hljs-comment: #6a737d;--hljs-meta: #e36209;--hljs-variable: #e36209;--hljs-addition: #22863a;--hljs-addition-bg: rgba(34, 134, 58, .12);--hljs-deletion: #b31d28;--hljs-deletion-bg: rgba(179, 29, 40, .12);--hljs-name: #22863a}[data-reader-theme=dark]{--md-heading-accent: #7dd3fc;--md-h1: #93c5fd;--md-h2: #a5b4fc;--md-h3: #5eead4;--md-h4: #d8b4fe;--md-h5: #cbd5e1;--md-h6: #94a3b8;--md-strong-color: #fcd34d;--md-em-color: var(--text-secondary);--md-list-marker: #71717a;--md-inline-code-color: #f9a8d4;--md-inline-code-bg: #27272a;--md-inline-code-border: #3f3f46;--md-blockquote-text: #fde68a;--md-table-header-text: #93c5fd;--md-link-underline: color-mix(in srgb, var(--link-color) 45%, transparent);--md-mark-bg: #854d0e;--md-mark-text: #fef3c7;--hljs-keyword: #ff7b72;--hljs-string: #a5d6ff;--hljs-title: #d2a8ff;--hljs-number: #79c0ff;--hljs-comment: #8b949e;--hljs-meta: #ffa657;--hljs-variable: #ffa657;--hljs-addition: #aff5b4;--hljs-addition-bg: rgba(63, 185, 80, .15);--hljs-deletion: #ffdcd7;--hljs-deletion-bg: rgba(248, 81, 73, .15);--hljs-name: #7ee787}.reading-content{--tw-prose-body: var(--text-secondary);--tw-prose-headings: var(--md-h2);--tw-prose-lead: var(--text-secondary);--tw-prose-links: var(--link-color);--tw-prose-bold: var(--md-strong-color);--tw-prose-counters: var(--md-list-marker);--tw-prose-bullets: var(--md-list-marker);--tw-prose-hr: var(--border-light);--tw-prose-quotes: var(--md-blockquote-text);--tw-prose-quote-borders: var(--blockquote-border);--tw-prose-captions: var(--text-muted);--tw-prose-code: var(--md-inline-code-color);--tw-prose-pre-code: var(--code-block-text);--tw-prose-pre-bg: var(--code-block-bg);--tw-prose-th-borders: var(--table-border);--tw-prose-td-borders: var(--table-border)}[data-reader-theme=dark] .reading-content{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.reading-content pre .hljs-keyword,.reading-content pre .hljs-selector-tag,.reading-content pre .hljs-built_in,.reading-content pre .hljs-literal{color:var(--hljs-keyword)!important}.reading-content pre .hljs-string,.reading-content pre .hljs-attr,.reading-content pre .hljs-symbol,.reading-content pre .hljs-bullet{color:var(--hljs-string)!important}.reading-content pre .hljs-title,.reading-content pre .hljs-section,.reading-content pre .hljs-title.function_{color:var(--hljs-title)!important}.reading-content pre .hljs-number{color:var(--hljs-number)!important}.reading-content pre .hljs-comment,.reading-content pre .hljs-doctag{color:var(--hljs-comment)!important;font-style:italic}.reading-content pre .hljs-meta,.reading-content pre .hljs-tag{color:var(--hljs-meta)!important}.reading-content pre .hljs-variable,.reading-content pre .hljs-template-variable{color:var(--hljs-variable)!important}.reading-content pre .hljs-params{color:var(--code-block-text)!important}.reading-content pre .hljs-addition{color:var(--hljs-addition)!important;background:var(--hljs-addition-bg)}.reading-content pre .hljs-deletion{color:var(--hljs-deletion)!important;background:var(--hljs-deletion-bg)}.reading-content pre .hljs-name{color:var(--hljs-name)!important}.reading-content pre .hljs-attribute{color:var(--hljs-number)!important}.sig-root{font-family:Inter,Noto Sans SC,system-ui,sans-serif;-webkit-font-smoothing:antialiased}.sig-grid{background-image:linear-gradient(to right,var(--sig-line) 1px,transparent 1px),linear-gradient(to bottom,var(--sig-line) 1px,transparent 1px);background-size:72px 72px;-webkit-mask-image:radial-gradient(ellipse 110% 90% at 50% 0%,#000 45%,transparent 100%);mask-image:radial-gradient(ellipse 110% 90% at 50% 0%,#000 45%,transparent 100%)}.sig-mono{font-family:JetBrains Mono,ui-monospace,SFMono-Regular,monospace}.sig-kicker{font-family:JetBrains Mono,ui-monospace,monospace;text-transform:uppercase;letter-spacing:.24em;font-size:11px;font-weight:500;color:var(--sig-dim)}.sig-num{font-family:JetBrains Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums;letter-spacing:.02em}.sig-stat{font-family:JetBrains Mono,ui-monospace,monospace;font-variant-numeric:tabular-nums;font-weight:700;line-height:1;letter-spacing:-.01em}.sig-display{font-family:Inter,Noto Sans SC,sans-serif;font-weight:700;letter-spacing:-.035em;line-height:.96}.sig-accent-c{color:var(--sig-accent)}.sig-stroke{color:transparent;-webkit-text-stroke:1.2px var(--sig-fg)}.sig-hr{height:1px;width:100%;background:var(--sig-line);border:none}.sig-vr{width:1px;background:var(--sig-line);align-self:stretch}.sig-cta{display:inline-flex;align-items:center;gap:.6rem;background:var(--sig-accent);color:var(--sig-accent-fg);font-family:JetBrains Mono,ui-monospace,monospace;text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;font-weight:600;padding:1rem 1.5rem;border-radius:4px;border:1px solid var(--sig-accent);transition:transform .18s cubic-bezier(.2,0,0,1),box-shadow .18s,background .18s;cursor:pointer}.sig-cta:hover{transform:translateY(-2px);box-shadow:4px 4px 0 0 var(--sig-fg)}.sig-cta:active{transform:translateY(0);box-shadow:0 0 0 0 var(--sig-fg)}.sig-cta:disabled{opacity:.5;pointer-events:none}.sig-cta svg{transition:transform .2s ease}.sig-cta:hover svg{transform:translate(3px)}.sig-cta-ghost{display:inline-flex;align-items:center;gap:.5rem;font-family:JetBrains Mono,ui-monospace,monospace;text-transform:uppercase;letter-spacing:.14em;font-size:12.5px;font-weight:500;padding:1rem 1.25rem;border-radius:4px;border:1px solid var(--sig-line-2);color:var(--sig-fg);transition:border-color .18s,background .18s;cursor:pointer}.sig-cta-ghost:hover{border-color:var(--sig-fg);background:color-mix(in srgb,var(--sig-fg) 4%,transparent)}.sig-btn{display:inline-flex;align-items:center;justify-content:center;gap:.45rem;border-radius:4px;font-weight:500;font-size:13.5px;line-height:1;border:1px solid var(--sig-line-2);color:var(--sig-fg);background:transparent;padding:.55rem .95rem;white-space:nowrap;transition:transform .16s cubic-bezier(.2,0,0,1),box-shadow .16s,border-color .16s,background .16s,color .16s,opacity .16s;cursor:pointer}.sig-btn:hover{border-color:var(--sig-fg);background:color-mix(in srgb,var(--sig-fg) 5%,transparent)}.sig-btn:active{transform:translateY(1px)}.sig-btn:disabled{opacity:.45;pointer-events:none}.sig-btn svg{flex-shrink:0}.sig-btn-accent{background:var(--sig-accent);color:var(--sig-accent-fg);border-color:var(--sig-accent)}.sig-btn-accent:hover{transform:translateY(-1px);box-shadow:3px 3px 0 0 var(--sig-fg);background:var(--sig-accent)}.sig-btn-danger{color:var(--sig-danger);border-color:color-mix(in srgb,var(--sig-danger) 45%,transparent)}.sig-btn-danger:hover{border-color:var(--sig-danger);background:color-mix(in srgb,var(--sig-danger) 8%,transparent)}.sig-btn-ghost{border-color:transparent;color:var(--sig-dim)}.sig-btn-ghost:hover{color:var(--sig-fg);background:color-mix(in srgb,var(--sig-fg) 5%,transparent)}.sig-iconbtn{width:36px;height:36px;display:grid;place-items:center;border:1px solid var(--sig-line-2);border-radius:4px;color:var(--sig-fg);transition:border-color .18s,background .18s;cursor:pointer}.sig-iconbtn:hover{border-color:var(--sig-fg);background:color-mix(in srgb,var(--sig-fg) 4%,transparent)}.sig-card{background:var(--sig-surface);border:1px solid var(--sig-line);border-radius:8px}.sig-card-hover{transition:transform .18s cubic-bezier(.2,0,0,1),border-color .18s}.sig-card-hover:hover{transform:translateY(-2px);border-color:var(--sig-line-2)}.sig-hover-lift{transition:transform .18s cubic-bezier(.2,0,0,1)}.sig-hover-lift:hover{transform:translateY(-2px)}.sig-badge{display:inline-flex;align-items:center;gap:.3rem;font-size:11px;font-weight:600;line-height:1;white-space:nowrap;padding:.2rem .5rem;border-radius:3px;border:1px solid var(--sig-line-2);color:var(--sig-dim);background:transparent}.sig-badge-accent{color:var(--sig-accent);border-color:color-mix(in srgb,var(--sig-accent) 40%,transparent);background:color-mix(in srgb,var(--sig-accent) 9%,transparent)}.sig-badge-success{color:var(--sig-success);border-color:color-mix(in srgb,var(--sig-success) 42%,transparent);background:color-mix(in srgb,var(--sig-success) 10%,transparent)}.sig-badge-warning{color:var(--sig-warning);border-color:color-mix(in srgb,var(--sig-warning) 42%,transparent);background:color-mix(in srgb,var(--sig-warning) 10%,transparent)}.sig-badge-info{color:var(--sig-info);border-color:color-mix(in srgb,var(--sig-info) 42%,transparent);background:color-mix(in srgb,var(--sig-info) 10%,transparent)}.sig-badge-danger{color:var(--sig-danger);border-color:color-mix(in srgb,var(--sig-danger) 42%,transparent);background:color-mix(in srgb,var(--sig-danger) 10%,transparent)}.sig-field{width:100%;background:transparent;color:var(--sig-fg);border:1px solid var(--sig-line-2);border-radius:4px;padding:.85rem .95rem;font-size:15px;font-family:inherit;transition:border-color .18s,box-shadow .18s}.sig-field::-moz-placeholder{color:var(--sig-faint)}.sig-field::placeholder{color:var(--sig-faint)}.sig-field:focus{outline:none;border-color:var(--sig-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--sig-accent) 18%,transparent)}.sig-textarea{width:100%;background:transparent;color:var(--sig-fg);border:1px solid var(--sig-line-2);border-radius:4px;padding:.75rem .95rem;font-size:14px;font-family:inherit;line-height:1.6;transition:border-color .18s,box-shadow .18s;resize:vertical}.sig-textarea::-moz-placeholder{color:var(--sig-faint)}.sig-textarea::placeholder{color:var(--sig-faint)}.sig-textarea:focus{outline:none;border-color:var(--sig-accent);box-shadow:0 0 0 3px color-mix(in srgb,var(--sig-accent) 18%,transparent)}.sig-navlink{position:relative;color:var(--sig-dim);transition:color .18s}.sig-navlink:hover{color:var(--sig-fg)}.sig-navlink:after{content:"";position:absolute;left:0;bottom:-3px;height:1px;width:100%;background:var(--sig-accent);transform:scaleX(0);transform-origin:left;transition:transform .25s cubic-bezier(.2,0,0,1)}.sig-navlink:hover:after{transform:scaleX(1)}.sig-navlink-active{color:var(--sig-fg)}.sig-navlink-active:after{transform:scaleX(1)}.sig-navitem{position:relative;display:flex;align-items:center;gap:.7rem;width:100%;padding:.6rem .85rem;border-radius:4px;font-size:13px;font-weight:500;color:var(--sig-dim);text-align:left;transition:color .18s,background .18s}.sig-navitem:hover{color:var(--sig-fg);background:color-mix(in srgb,var(--sig-fg) 4%,transparent)}.sig-navitem-active{color:var(--sig-fg);background:color-mix(in srgb,var(--sig-fg) 6%,transparent)}.sig-navitem-active:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:2px;height:62%;background:var(--sig-accent)}.sig-row{position:relative;transition:background .2s ease,padding-left .25s cubic-bezier(.2,0,0,1)}.sig-row:before{content:"";position:absolute;left:0;top:0;bottom:0;width:2px;background:var(--sig-accent);transform:scaleY(0);transform-origin:top;transition:transform .25s cubic-bezier(.2,0,0,1)}.sig-row:hover{background:color-mix(in srgb,var(--sig-fg) 3%,transparent);padding-left:1.25rem}.sig-row:hover:before{transform:scaleY(1)}.sig-row:hover .sig-row-num{color:var(--sig-accent)}.sig-row-num{transition:color .2s ease}.sig-skeleton{background:color-mix(in srgb,var(--sig-fg) 8%,transparent);border-radius:4px;animation:sig-skeleton-pulse 1.5s ease-in-out infinite}@keyframes sig-skeleton-pulse{0%,to{opacity:.5}50%{opacity:1}}.sig-tooltip{background:var(--sig-fg);color:var(--sig-bg);border-radius:4px;font-size:12px;font-weight:500;padding:.35rem .6rem}.sig-progress{height:6px;width:100%;background:var(--sig-line);overflow:hidden}.sig-progress-fill{height:100%;background:var(--sig-accent);transition:width .3s ease}.sig-linemask{display:block;overflow:hidden;padding-bottom:.04em}.sig-linemask>span{display:block;transform:translateY(110%);animation:sig-line-up .85s cubic-bezier(.16,1,.3,1) forwards}@keyframes sig-line-up{to{transform:translateY(0)}}.sig-rise{opacity:0;animation:sig-rise .6s cubic-bezier(.2,0,0,1) forwards}@keyframes sig-rise{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion: reduce){.sig-linemask>span,.sig-rise{animation:none!important;opacity:1!important;transform:none!important}}.reader-sidebar-item.active,.notes-sidebar-item-active{box-shadow:inset 2px 0 0 var(--sig-accent)}body.reader-active .sig-grid{display:none}*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]:where(:not([hidden=until-found])){display:none}html{overflow-x:hidden}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0;font-family:var(--font-ui-system);color:var(--ebook-ink);background:var(--ebook-paper);min-height:100vh;overflow-x:hidden}#root{min-height:100vh}body.reader-active{color:var(--text-primary);background:var(--bg-primary)}html.immersive-active,body.immersive-active{overflow:hidden!important;overscroll-behavior:none}.container{width:100%}@media (min-width: 640px){.container{max-width:640px}}@media (min-width: 768px){.container{max-width:768px}}@media (min-width: 1024px){.container{max-width:1024px}}@media (min-width: 1280px){.container{max-width:1280px}}@media (min-width: 1536px){.container{max-width:1536px}}.reading-content{color:var(--tw-prose-body);max-width:65ch}.reading-content :where(p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.reading-content :where([class~=lead]):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-lead);font-size:1.25em;line-height:1.6;margin-top:1.2em;margin-bottom:1.2em}.reading-content :where(a):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-links);text-decoration:underline;font-weight:500}.reading-content :where(strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-bold);font-weight:600}.reading-content :where(a strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(blockquote strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(thead th strong):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(ol):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.reading-content :where(ol[type=A]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.reading-content :where(ol[type=a]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.reading-content :where(ol[type=A s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-alpha}.reading-content :where(ol[type=a s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-alpha}.reading-content :where(ol[type=I]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.reading-content :where(ol[type=i]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.reading-content :where(ol[type=I s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:upper-roman}.reading-content :where(ol[type=i s]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:lower-roman}.reading-content :where(ol[type="1"]):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:decimal}.reading-content :where(ul):not(:where([class~=not-prose],[class~=not-prose] *)){list-style-type:disc;margin-top:1.25em;margin-bottom:1.25em;padding-inline-start:1.625em}.reading-content :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{font-weight:400;color:var(--tw-prose-counters)}.reading-content :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *))::marker{color:var(--tw-prose-bullets)}.reading-content :where(dt):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.25em}.reading-content :where(hr):not(:where([class~=not-prose],[class~=not-prose] *)){border-color:var(--tw-prose-hr);border-top-width:1px;margin-top:3em;margin-bottom:3em}.reading-content :where(blockquote):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-style:italic;color:var(--tw-prose-quotes);border-inline-start-width:.25rem;border-inline-start-color:var(--tw-prose-quote-borders);quotes:"“""”""‘""’";margin-top:1.6em;margin-bottom:1.6em;padding-inline-start:1em}.reading-content :where(blockquote p:first-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:open-quote}.reading-content :where(blockquote p:last-of-type):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:close-quote}.reading-content :where(h1):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:800;font-size:2.25em;margin-top:0;margin-bottom:.8888889em;line-height:1.1111111}.reading-content :where(h1 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:900;color:inherit}.reading-content :where(h2):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:700;font-size:1.5em;margin-top:2em;margin-bottom:1em;line-height:1.3333333}.reading-content :where(h2 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:800;color:inherit}.reading-content :where(h3):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;font-size:1.25em;margin-top:1.6em;margin-bottom:.6em;line-height:1.6}.reading-content :where(h3 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.reading-content :where(h4):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;margin-top:1.5em;margin-bottom:.5em;line-height:1.5}.reading-content :where(h4 strong):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:700;color:inherit}.reading-content :where(img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.reading-content :where(picture):not(:where([class~=not-prose],[class~=not-prose] *)){display:block;margin-top:2em;margin-bottom:2em}.reading-content :where(video):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.reading-content :where(kbd):not(:where([class~=not-prose],[class~=not-prose] *)){font-weight:500;font-family:inherit;color:var(--tw-prose-kbd);box-shadow:0 0 0 1px var(--tw-prose-kbd-shadows),0 3px 0 var(--tw-prose-kbd-shadows);font-size:.875em;border-radius:.3125rem;padding-top:.1875em;padding-inline-end:.375em;padding-bottom:.1875em;padding-inline-start:.375em}.reading-content :where(code):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-code);font-weight:600;font-size:.875em}.reading-content :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:"`"}.reading-content :where(code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:"`"}.reading-content :where(a code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(h1 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(h2 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.875em}.reading-content :where(h3 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit;font-size:.9em}.reading-content :where(h4 code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(blockquote code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(thead th code):not(:where([class~=not-prose],[class~=not-prose] *)){color:inherit}.reading-content :where(pre):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-pre-code);background-color:var(--tw-prose-pre-bg);overflow-x:auto;font-weight:400;font-size:.875em;line-height:1.7142857;margin-top:1.7142857em;margin-bottom:1.7142857em;border-radius:.375rem;padding-top:.8571429em;padding-inline-end:1.1428571em;padding-bottom:.8571429em;padding-inline-start:1.1428571em}.reading-content :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)){background-color:transparent;border-width:0;border-radius:0;padding:0;font-weight:inherit;color:inherit;font-size:inherit;font-family:inherit;line-height:inherit}.reading-content :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):before{content:none}.reading-content :where(pre code):not(:where([class~=not-prose],[class~=not-prose] *)):after{content:none}.reading-content :where(table):not(:where([class~=not-prose],[class~=not-prose] *)){width:100%;table-layout:auto;margin-top:2em;margin-bottom:2em;font-size:.875em;line-height:1.7142857}.reading-content :where(thead):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-th-borders)}.reading-content :where(thead th):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-headings);font-weight:600;vertical-align:bottom;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.reading-content :where(tbody tr):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:1px;border-bottom-color:var(--tw-prose-td-borders)}.reading-content :where(tbody tr:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){border-bottom-width:0}.reading-content :where(tbody td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:baseline}.reading-content :where(tfoot):not(:where([class~=not-prose],[class~=not-prose] *)){border-top-width:1px;border-top-color:var(--tw-prose-th-borders)}.reading-content :where(tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){vertical-align:top}.reading-content :where(th,td):not(:where([class~=not-prose],[class~=not-prose] *)){text-align:start}.reading-content :where(figure>*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.reading-content :where(figcaption):not(:where([class~=not-prose],[class~=not-prose] *)){color:var(--tw-prose-captions);font-size:.875em;line-height:1.4285714;margin-top:.8571429em}.reading-content{--tw-prose-body: #374151;--tw-prose-headings: #111827;--tw-prose-lead: #4b5563;--tw-prose-links: #111827;--tw-prose-bold: #111827;--tw-prose-counters: #6b7280;--tw-prose-bullets: #d1d5db;--tw-prose-hr: #e5e7eb;--tw-prose-quotes: #111827;--tw-prose-quote-borders: #e5e7eb;--tw-prose-captions: #6b7280;--tw-prose-kbd: #111827;--tw-prose-kbd-shadows: rgb(17 24 39 / 10%);--tw-prose-code: #111827;--tw-prose-pre-code: #e5e7eb;--tw-prose-pre-bg: #1f2937;--tw-prose-th-borders: #d1d5db;--tw-prose-td-borders: #e5e7eb;--tw-prose-invert-body: #d1d5db;--tw-prose-invert-headings: #fff;--tw-prose-invert-lead: #9ca3af;--tw-prose-invert-links: #fff;--tw-prose-invert-bold: #fff;--tw-prose-invert-counters: #9ca3af;--tw-prose-invert-bullets: #4b5563;--tw-prose-invert-hr: #374151;--tw-prose-invert-quotes: #f3f4f6;--tw-prose-invert-quote-borders: #374151;--tw-prose-invert-captions: #9ca3af;--tw-prose-invert-kbd: #fff;--tw-prose-invert-kbd-shadows: rgb(255 255 255 / 10%);--tw-prose-invert-code: #fff;--tw-prose-invert-pre-code: #d1d5db;--tw-prose-invert-pre-bg: rgb(0 0 0 / 50%);--tw-prose-invert-th-borders: #4b5563;--tw-prose-invert-td-borders: #374151;font-size:1rem;line-height:1.75}.reading-content :where(picture>img):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0;margin-bottom:0}.reading-content :where(li):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;margin-bottom:.5em}.reading-content :where(ol>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.reading-content :where(ul>li):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:.375em}.reading-content :where(.prose>ul>li p):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.reading-content :where(.prose>ul>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.reading-content :where(.prose>ul>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.reading-content :where(.prose>ol>li>p:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em}.reading-content :where(.prose>ol>li>p:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:1.25em}.reading-content :where(ul ul,ul ol,ol ul,ol ol):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.75em;margin-bottom:.75em}.reading-content :where(dl):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:1.25em;margin-bottom:1.25em}.reading-content :where(dd):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:.5em;padding-inline-start:1.625em}.reading-content :where(hr+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.reading-content :where(h2+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.reading-content :where(h3+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.reading-content :where(h4+*):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.reading-content :where(thead th:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.reading-content :where(thead th:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.reading-content :where(tbody td,tfoot td):not(:where([class~=not-prose],[class~=not-prose] *)){padding-top:.5714286em;padding-inline-end:.5714286em;padding-bottom:.5714286em;padding-inline-start:.5714286em}.reading-content :where(tbody td:first-child,tfoot td:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-start:0}.reading-content :where(tbody td:last-child,tfoot td:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){padding-inline-end:0}.reading-content :where(figure):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:2em;margin-bottom:2em}.reading-content :where(.prose>:first-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-top:0}.reading-content :where(.prose>:last-child):not(:where([class~=not-prose],[class~=not-prose] *)){margin-bottom:0}.reading-content{max-width:none;font-family:var(--reader-font-family, var(--font-reading));font-size:var(--reader-font-size, 18px);color:var(--text-primary);line-height:var(--reader-line-height, 2.05);letter-spacing:.032em;font-feature-settings:"kern" 1,"liga" 1;text-rendering:optimizeLegibility;-webkit-font-smoothing:auto;-moz-osx-font-smoothing:auto;word-spacing:.08em;text-shadow:none;overflow-wrap:anywhere;word-break:break-word}.reading-content h1,.reading-content h2,.reading-content h3,.reading-content h4,.reading-content h5,.reading-content h6{font-weight:700;letter-spacing:.045em;font-family:var(--reader-font-family, var(--font-reading));scroll-margin-top:80px}.reading-content h1{color:var(--md-h1)}.reading-content h2{color:var(--md-h2)}.reading-content h3{color:var(--md-h3)}.reading-content h4{color:var(--md-h4)}.reading-content h5{color:var(--md-h5)}.reading-content h6{color:var(--md-h6)}.reading-content h2,.reading-content h3{border-bottom-color:color-mix(in srgb,var(--md-heading-accent) 30%,transparent)}.reading-content h2:before,.reading-content h3:before{color:var(--md-heading-accent)}.reading-content p{color:var(--text-secondary);line-height:var(--reader-line-height, 2.1);margin-bottom:var(--reader-para-spacing, 1.18em);text-indent:2em;text-align:justify;text-justify:inter-ideograph;-webkit-hyphens:auto;hyphens:auto}.reading-content h1+p,.reading-content h2+p,.reading-content h3+p,.reading-content h4+p{text-indent:0}.reading-content p:first-child{text-indent:0}.reading-content a{color:var(--link-color);text-decoration:none;border-bottom:1px solid var(--md-link-underline);transition:color .2s,border-color .2s,background-color .2s}.reading-content a:hover{border-bottom-color:var(--link-color);background:color-mix(in srgb,var(--link-color) 10%,transparent)}.reading-content ul>li::marker,.reading-content ol>li::marker{color:var(--md-list-marker)}.reading-content strong,.reading-content b{color:var(--md-strong-color);font-weight:700}.reading-content em{color:var(--md-em-color);font-style:italic}.reading-content mark{background:var(--md-mark-bg);color:var(--md-mark-text);padding:.05em .25em;border-radius:.25em}.reading-content code{background:var(--md-inline-code-bg);padding:2px 6px;border-radius:4px;font-size:.86em;color:var(--md-inline-code-color);border:1px solid var(--md-inline-code-border);font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-variant-ligatures:none;-webkit-box-decoration-break:clone;box-decoration-break:clone;word-break:break-all}.reading-content pre{border-radius:8px;border:1px solid var(--border-color);padding:1em;overflow-x:auto;max-width:100%;font-size:.875em;line-height:1.6}.reading-content pre code{padding:0;border:none;font-size:inherit}.reading-content img{border-radius:8px;box-shadow:0 4px 12px var(--shadow-page)}.reading-content blockquote{border-left:4px solid var(--blockquote-border);background:var(--blockquote-bg);padding:12px 16px;border-radius:0 8px 8px 0;color:var(--md-blockquote-text)}.reading-content table{border-collapse:collapse}.reading-content th{background:var(--table-header-bg);border:1px solid var(--table-border);padding:8px 16px;color:var(--md-table-header-text);font-weight:700}.reading-content td{border:1px solid var(--table-border);padding:8px 16px;color:var(--text-secondary)}.reading-content hr{border-color:var(--border-light)}.reading-content details{border:1px solid var(--border-light);border-radius:8px;padding:12px 16px;margin:1em 0;background:var(--blockquote-bg)}.reading-content details[open]{padding-bottom:16px}.reading-content details summary{cursor:pointer;font-weight:600;color:var(--text-primary);padding:4px 0;-webkit-user-select:none;-moz-user-select:none;user-select:none;list-style:revert}.reading-content details summary:hover{color:var(--accent, #3b82f6)}.reading-content details[open] summary{margin-bottom:8px;border-bottom:1px solid var(--border-light);padding-bottom:8px}.pointer-events-none{pointer-events:none}.visible{visibility:visible}.invisible{visibility:hidden}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.inset-0{top:0;right:0;bottom:0;left:0}.inset-y-0{top:0;bottom:0}.-right-2{right:-.5rem}.-top-1{top:-.25rem}.bottom-0{bottom:0}.bottom-\[1px\]{bottom:1px}.bottom-\[3px\]{bottom:3px}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:.75rem}.left-\[3px\]{left:3px}.left-\[6px\]{left:6px}.right-0{right:0}.right-1\.5{right:.375rem}.right-2{right:.5rem}.right-6{right:1.5rem}.right-\[3px\]{right:3px}.right-\[6px\]{right:6px}.top-0{top:0}.top-1\/2{top:50%}.top-2{top:.5rem}.top-20{top:5rem}.top-6{top:1.5rem}.top-full{top:100%}.z-0{z-index:0}.z-10{z-index:10}.z-20{z-index:20}.z-30{z-index:30}.z-40{z-index:40}.z-50{z-index:50}.z-\[100\]{z-index:100}.z-\[160\]{z-index:160}.z-\[170\]{z-index:170}.z-\[180\]{z-index:180}.z-\[1\]{z-index:1}.z-\[200\]{z-index:200}.z-\[60\]{z-index:60}.z-\[70\]{z-index:70}.mx-2{margin-left:.5rem;margin-right:.5rem}.mx-auto{margin-left:auto;margin-right:auto}.mb-1{margin-bottom:.25rem}.mb-10{margin-bottom:2.5rem}.mb-2{margin-bottom:.5rem}.mb-2\.5{margin-bottom:.625rem}.mb-3{margin-bottom:.75rem}.mb-4{margin-bottom:1rem}.mb-5{margin-bottom:1.25rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-0\.5{margin-left:.125rem}.ml-2{margin-left:.5rem}.ml-4{margin-left:1rem}.ml-auto{margin-left:auto}.mr-1{margin-right:.25rem}.mt-0\.5{margin-top:.125rem}.mt-1{margin-top:.25rem}.mt-1\.5{margin-top:.375rem}.mt-10{margin-top:2.5rem}.mt-2{margin-top:.5rem}.mt-3{margin-top:.75rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.line-clamp-2{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.flex{display:flex}.inline-flex{display:inline-flex}.grid{display:grid}.hidden{display:none}.h-1{height:.25rem}.h-1\.5{height:.375rem}.h-10{height:2.5rem}.h-12{height:3rem}.h-14{height:3.5rem}.h-16{height:4rem}.h-2\.5{height:.625rem}.h-24{height:6rem}.h-3{height:.75rem}.h-3\.5{height:.875rem}.h-4{height:1rem}.h-5{height:1.25rem}.h-6{height:1.5rem}.h-7{height:1.75rem}.h-8{height:2rem}.h-\[16px\]{height:16px}.h-\[18px\]{height:18px}.h-\[3px\]{height:3px}.h-\[52px\]{height:52px}.h-\[6px\]{height:6px}.h-\[calc\(100vh-64px\)\]{height:calc(100vh - 64px)}.h-full{height:100%}.h-px{height:1px}.max-h-24{max-height:6rem}.max-h-60{max-height:15rem}.max-h-\[40vh\]{max-height:40vh}.max-h-\[60vh\]{max-height:60vh}.max-h-\[80vh\]{max-height:80vh}.min-h-\[120px\]{min-height:120px}.min-h-\[44px\]{min-height:44px}.min-h-screen{min-height:100vh}.w-1\/2{width:50%}.w-10{width:2.5rem}.w-12{width:3rem}.w-16{width:4rem}.w-2\.5{width:.625rem}.w-3{width:.75rem}.w-3\.5{width:.875rem}.w-4{width:1rem}.w-44{width:11rem}.w-5{width:1.25rem}.w-6{width:1.5rem}.w-7{width:1.75rem}.w-8{width:2rem}.w-80{width:20rem}.w-9{width:2.25rem}.w-\[16px\]{width:16px}.w-\[18px\]{width:18px}.w-\[300px\]{width:300px}.w-\[320px\]{width:320px}.w-full{width:100%}.min-w-0{min-width:0px}.min-w-\[100px\]{min-width:100px}.min-w-\[18px\]{min-width:18px}.min-w-\[44px\]{min-width:44px}.max-w-2xl{max-width:42rem}.max-w-7xl{max-width:80rem}.max-w-\[1280px\]{max-width:1280px}.max-w-\[1360px\]{max-width:1360px}.max-w-\[50\%\]{max-width:50%}.max-w-\[85vw\]{max-width:85vw}.max-w-\[calc\(100vw-2rem\)\]{max-width:calc(100vw - 2rem)}.max-w-full{max-width:100%}.max-w-md{max-width:28rem}.max-w-xl{max-width:36rem}.flex-1{flex:1 1 0%}.flex-shrink-0,.shrink-0{flex-shrink:0}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-rotate-90{--tw-rotate: -90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-0{--tw-rotate: 0deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.rotate-90{--tw-rotate: 90deg;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.scale-110{--tw-scale-x: 1.1;--tw-scale-y: 1.1;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.select-none{-webkit-user-select:none;-moz-user-select:none;user-select:none}.resize-none{resize:none}.resize{resize:both}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.flex-col{flex-direction:column}.flex-wrap{flex-wrap:wrap}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-center{align-items:center}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-0{gap:0px}.gap-1{gap:.25rem}.gap-1\.5{gap:.375rem}.gap-2{gap:.5rem}.gap-2\.5{gap:.625rem}.gap-3{gap:.75rem}.gap-4{gap:1rem}.space-y-1>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.25rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.25rem * var(--tw-space-y-reverse))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-3>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.75rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.75rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-auto{overflow:auto}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.scroll-smooth{scroll-behavior:smooth}.truncate{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.rounded{border-radius:.25rem}.rounded-2xl{border-radius:1rem}.rounded-\[3px\]{border-radius:3px}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-md{border-radius:.375rem}.rounded-sm{border-radius:.125rem}.rounded-xl{border-radius:.75rem}.rounded-b-lg{border-bottom-right-radius:.5rem;border-bottom-left-radius:.5rem}.rounded-b-xl{border-bottom-right-radius:.75rem;border-bottom-left-radius:.75rem}.rounded-r-lg{border-top-right-radius:.5rem;border-bottom-right-radius:.5rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.rounded-tr-xl{border-top-right-radius:.75rem}.border{border-width:1px}.border-2{border-width:2px}.border-b{border-bottom-width:1px}.border-b-2{border-bottom-width:2px}.border-t{border-top-width:1px}.border-dashed{border-style:dashed}.border-none{border-style:none}.border-\[color\:var\(--card-border\)\]{border-color:var(--card-border)}.border-\[color\:var\(--sig-fg\)\]{border-color:var(--sig-fg)}.border-gray-300{--tw-border-opacity: 1;border-color:rgb(209 213 219 / var(--tw-border-opacity, 1))}.border-gray-800{--tw-border-opacity: 1;border-color:rgb(31 41 55 / var(--tw-border-opacity, 1))}.border-transparent{border-color:transparent}.border-t-blue-500{--tw-border-opacity: 1;border-top-color:rgb(59 130 246 / var(--tw-border-opacity, 1))}.bg-\[color\:var\(--text-muted\)\]{background-color:var(--text-muted)}.bg-amber-50{--tw-bg-opacity: 1;background-color:rgb(255 251 235 / var(--tw-bg-opacity, 1))}.bg-amber-500{--tw-bg-opacity: 1;background-color:rgb(245 158 11 / var(--tw-bg-opacity, 1))}.bg-black\/40{background-color:#0006}.bg-blue-50{--tw-bg-opacity: 1;background-color:rgb(239 246 255 / var(--tw-bg-opacity, 1))}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity, 1))}.bg-gray-100{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.bg-gray-300{--tw-bg-opacity: 1;background-color:rgb(209 213 219 / var(--tw-bg-opacity, 1))}.bg-gray-50{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.bg-stone-50{--tw-bg-opacity: 1;background-color:rgb(250 250 249 / var(--tw-bg-opacity, 1))}.bg-transparent{background-color:transparent}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity, 1))}.bg-white\/0{background-color:#fff0}.bg-white\/80{background-color:#fffc}.p-0{padding:0}.p-0\.5{padding:.125rem}.p-1{padding:.25rem}.p-1\.5{padding:.375rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-5{padding:1.25rem}.p-6{padding:1.5rem}.p-8{padding:2rem}.px-0\.5{padding-left:.125rem;padding-right:.125rem}.px-1{padding-left:.25rem;padding-right:.25rem}.px-1\.5{padding-left:.375rem;padding-right:.375rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-2\.5{padding-left:.625rem;padding-right:.625rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.px-5{padding-left:1.25rem;padding-right:1.25rem}.py-0\.5{padding-top:.125rem;padding-bottom:.125rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.py-12{padding-top:3rem;padding-bottom:3rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.py-20{padding-top:5rem;padding-bottom:5rem}.py-24{padding-top:6rem;padding-bottom:6rem}.py-3{padding-top:.75rem;padding-bottom:.75rem}.py-4{padding-top:1rem;padding-bottom:1rem}.py-5{padding-top:1.25rem;padding-bottom:1.25rem}.py-6{padding-top:1.5rem;padding-bottom:1.5rem}.py-8{padding-top:2rem;padding-bottom:2rem}.pb-1{padding-bottom:.25rem}.pb-1\.5{padding-bottom:.375rem}.pb-2{padding-bottom:.5rem}.pb-3{padding-bottom:.75rem}.pb-4{padding-bottom:1rem}.pt-1{padding-top:.25rem}.pt-2{padding-top:.5rem}.pt-2\.5{padding-top:.625rem}.pt-3{padding-top:.75rem}.pt-4{padding-top:1rem}.pt-5{padding-top:1.25rem}.pt-\[10vh\]{padding-top:10vh}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-\[10px\]{font-size:10px}.text-\[11px\]{font-size:11px}.text-\[12px\]{font-size:12px}.text-\[13px\]{font-size:13px}.text-\[15px\]{font-size:15px}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-normal{font-weight:400}.font-semibold{font-weight:600}.uppercase{text-transform:uppercase}.normal-case{text-transform:none}.italic{font-style:italic}.tabular-nums{--tw-numeric-spacing: tabular-nums;font-variant-numeric:var(--tw-ordinal) var(--tw-slashed-zero) var(--tw-numeric-figure) var(--tw-numeric-spacing) var(--tw-numeric-fraction)}.leading-5{line-height:1.25rem}.leading-snug{line-height:1.375}.leading-tight{line-height:1.25}.tracking-wider{letter-spacing:.05em}.text-\[color\:var\(--text-muted\)\]{color:var(--text-muted)}.text-\[color\:var\(--text-secondary\)\]{color:var(--text-secondary)}.text-amber-600{--tw-text-opacity: 1;color:rgb(217 119 6 / var(--tw-text-opacity, 1))}.text-blue-600{--tw-text-opacity: 1;color:rgb(37 99 235 / var(--tw-text-opacity, 1))}.text-gray-200{--tw-text-opacity: 1;color:rgb(229 231 235 / var(--tw-text-opacity, 1))}.text-gray-400{--tw-text-opacity: 1;color:rgb(156 163 175 / var(--tw-text-opacity, 1))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity, 1))}.text-gray-600{--tw-text-opacity: 1;color:rgb(75 85 99 / var(--tw-text-opacity, 1))}.text-gray-700{--tw-text-opacity: 1;color:rgb(55 65 81 / var(--tw-text-opacity, 1))}.text-gray-800{--tw-text-opacity: 1;color:rgb(31 41 55 / var(--tw-text-opacity, 1))}.text-stone-500{--tw-text-opacity: 1;color:rgb(120 113 108 / var(--tw-text-opacity, 1))}.text-stone-900{--tw-text-opacity: 1;color:rgb(28 25 23 / var(--tw-text-opacity, 1))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity, 1))}.opacity-0{opacity:0}.opacity-100{opacity:1}.opacity-25{opacity:.25}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-75{opacity:.75}.opacity-80{opacity:.8}.opacity-90{opacity:.9}.shadow-2xl{--tw-shadow: 0 25px 50px -12px rgb(0 0 0 / .25);--tw-shadow-colored: 0 25px 50px -12px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-md{--tw-shadow: 0 4px 6px -1px rgb(0 0 0 / .1), 0 2px 4px -2px rgb(0 0 0 / .1);--tw-shadow-colored: 0 4px 6px -1px var(--tw-shadow-color), 0 2px 4px -2px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-sm{--tw-shadow: 0 1px 2px 0 rgb(0 0 0 / .05);--tw-shadow-colored: 0 1px 2px 0 var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-xl{--tw-shadow: 0 20px 25px -5px rgb(0 0 0 / .1), 0 8px 10px -6px rgb(0 0 0 / .1);--tw-shadow-colored: 0 20px 25px -5px var(--tw-shadow-color), 0 8px 10px -6px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline-none{outline:2px solid transparent;outline-offset:2px}.drop-shadow{--tw-drop-shadow: drop-shadow(0 1px 2px rgb(0 0 0 / .1)) drop-shadow(0 1px 1px rgb(0 0 0 / .06));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.drop-shadow-sm{--tw-drop-shadow: drop-shadow(0 1px 1px rgb(0 0 0 / .05));filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.sepia{--tw-sepia: sepia(100%);filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke,opacity,box-shadow,transform,filter,backdrop-filter;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-\[opacity\,visibility\]{transition-property:opacity,visibility;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-200{transition-duration:.2s}.duration-300{transition-duration:.3s}.duration-500{transition-duration:.5s}.ease-in-out{transition-timing-function:cubic-bezier(.4,0,.2,1)}.book-container{background:var(--bg-primary);min-height:100%;transition:background-color .4s ease}.reader-shell{position:relative;overflow:hidden}.reader-shell:before{display:none}.reader-shell>*{position:relative;z-index:1}.reader-stage{padding-top:max(.25rem,env(safe-area-inset-top));padding-bottom:max(.25rem,env(safe-area-inset-bottom))}.reader-frame{position:relative}.paged-content-pad{padding-left:var(--reader-page-margin-x, 2rem);padding-right:var(--reader-page-margin-x, 2rem)}.reader-immersive:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:2;background:radial-gradient(120% 95% at 50% 50%,#0000 60%,#0000002e)}.reader-toolbar{background:var(--toolbar-bg);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--toolbar-border);box-shadow:none;transition:background-color .4s ease,border-color .4s ease,box-shadow .4s ease;font-family:var(--font-ui)}.reader-toolbar-btn{display:inline-flex;align-items:center;justify-content:center;padding:6px 10px;min-width:36px;min-height:36px;border-radius:var(--radius-md);transition:all .2s;color:var(--text-muted);border:1px solid rgba(0,0,0,0);box-shadow:inset 0 0 0 1px #fff0}.reader-toolbar-btn:hover{background:var(--accent-light);color:var(--accent);border-color:var(--border-light);box-shadow:none}.reader-toolbar-btn.active{background:var(--accent-light);color:var(--accent);border-color:var(--accent)}.theme-dot{width:18px;height:18px;border-radius:50%;border:2px solid var(--border-color);transition:all .2s;cursor:pointer}.theme-dot:hover{transform:scale(1.15)}.theme-dot.active{border-color:var(--accent);box-shadow:0 0 0 2px var(--accent-light)}.theme-dot-light{background:#f9f9f9}.theme-dot-dark{background:#1c1c1c}.reader-theme-item{min-width:40px}.reader-sidebar{background:var(--sidebar-bg);border-color:var(--border-color);transition:background-color .4s ease,border-color .4s ease}.reader-sidebar-item{color:var(--text-secondary);border-radius:var(--radius-md);transition:all .2s}.reader-sidebar-item:hover{background:var(--accent-light);color:var(--accent)}.reader-sidebar-item.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text);font-weight:500}.reader-sidebar-badge{width:24px;height:24px;border-radius:var(--radius-md);font-size:.6875rem;display:flex;align-items:center;justify-content:center;font-weight:600;flex-shrink:0}.reader-sidebar-badge.active{background:var(--sidebar-active-bg);color:var(--sidebar-active-text)}.reader-sidebar-badge.inactive{background:var(--border-light);color:var(--text-muted)}.chapter-title-line{border-bottom:2px solid var(--border-light);position:relative;font-family:var(--font-reading);letter-spacing:.06em;text-shadow:none}.chapter-title-line:after{content:"";position:absolute;bottom:-2px;left:0;width:60px;height:2px;background:var(--accent);border-radius:1px}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--text-muted)}.book-spinner{border-color:var(--border-color);border-top-color:var(--accent)}.paged-reader-wrapper{background:var(--bg-page);background-image:linear-gradient(180deg,var(--wrapper-overlay-start) 0%,var(--wrapper-overlay-end) 100%),var(--paper-texture);position:relative;border-radius:var(--card-radius);border:1px solid var(--border-color);overflow:hidden;transition:background-color .4s ease,color .4s ease,box-shadow .4s ease,border-color .4s ease;box-shadow:none}.paged-reader-wrapper:before{content:"";position:absolute;top:3px;right:0;bottom:3px;width:1px;background:linear-gradient(to bottom,transparent,var(--border-color) 10%,var(--border-color) 90%,transparent);border-radius:0;opacity:.35}.paged-reader-wrapper:after{content:"";position:absolute;bottom:0;right:0;width:16px;height:16px;background:linear-gradient(135deg,transparent 50%,var(--bg-page-edge) 50%);border-radius:0 0 16px;opacity:.24;transition:opacity .3s;z-index:2;pointer-events:none}.paged-reader-wrapper:hover:after{opacity:.42}.reader-immersive .reader-stage{padding:max(.5rem,env(safe-area-inset-top)) max(.5rem,env(safe-area-inset-right)) max(.5rem,env(safe-area-inset-bottom)) max(.5rem,env(safe-area-inset-left))!important}.reader-immersive .reader-frame{max-width:none}.paged-reader-immersive{border-radius:0;border:none;box-shadow:none}.paged-reader-immersive:before,.paged-reader-immersive:after{display:none}.paged-reader-immersive .paged-nav-btn{display:none!important}.paged-reader-immersive .paged-chapter-header{padding-top:.375rem;padding-bottom:.25rem}.paged-reader-immersive .paged-chapter-header h1{font-size:.8rem;padding-bottom:.25rem}.paged-chapter-header{border-bottom:1px solid var(--border-light)}.paged-viewport{perspective:2600px;transform-style:preserve-3d}.paged-columns{-moz-column-fill:auto;column-fill:auto;word-break:break-word;backface-visibility:hidden;transform-style:preserve-3d}.paged-columns .reading-content{padding:0 2px}.paged-columns .reading-content>h1,.paged-columns .reading-content>h2,.paged-columns .reading-content>h3,.paged-columns .reading-content>h4,.paged-columns .reading-content>h5,.paged-columns .reading-content>h6,.paged-columns .reading-content>blockquote,.paged-columns .reading-content>ul,.paged-columns .reading-content>ol,.paged-columns .reading-content>table{-moz-column-break-inside:avoid;break-inside:avoid}.paged-columns .reading-content>h1,.paged-columns .reading-content>h2,.paged-columns .reading-content>h3,.paged-columns .reading-content>h4{-moz-column-break-after:avoid;break-after:avoid}.paged-columns .reading-content img{-moz-column-break-inside:avoid;break-inside:avoid;max-height:80%;max-width:100%;-o-object-fit:contain;object-fit:contain}.paged-columns .reading-content pre{-moz-column-break-inside:avoid;break-inside:avoid;max-height:90%;overflow:auto;max-width:100%}.paged-columns .reading-content table{max-width:100%;display:block;overflow-x:auto}.paged-dot{width:6px;height:6px;border-radius:50%;background:var(--border-color);transition:all .25s;cursor:pointer;border:none;padding:0}.paged-dot:hover{background:var(--text-muted);transform:scale(1.3)}.paged-dot.active{background:var(--accent);width:18px;border-radius:3px}.paged-nav-btn{position:absolute;top:50%;transform:translateY(-50%);width:36px;height:64px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-md);cursor:pointer;color:var(--text-muted);background:var(--nav-btn-bg);box-shadow:none;border:1px solid var(--border-light);opacity:0;transition:opacity .25s,color .2s,border-color .2s,box-shadow .2s;z-index:5}.paged-reader-wrapper:hover .paged-nav-btn{opacity:.7}.paged-nav-btn:hover{opacity:1!important;color:var(--accent);border-color:var(--accent);box-shadow:none}.paged-nav-btn:disabled{opacity:0!important;cursor:default;pointer-events:none}.paged-nav-prev{left:6px}.paged-nav-next{right:6px}@media (max-width: 640px){.reader-stage{padding:0!important;padding-top:max(0px,env(safe-area-inset-top));padding-bottom:max(0px,env(safe-area-inset-bottom));padding-left:max(4px,env(safe-area-inset-left));padding-right:max(4px,env(safe-area-inset-right))}.paged-reader-wrapper{border-radius:0;border:none;box-shadow:none}.paged-reader-wrapper:before,.paged-reader-wrapper:after{display:none}.reading-content{line-height:1.95;letter-spacing:.025em}.reading-content p{margin-bottom:.9em}.reading-content pre{padding:.75em;font-size:.8em;border-radius:6px}.reading-content blockquote{padding:8px 12px}.reading-content table{font-size:.85em}.reading-content th,.reading-content td{padding:6px 8px}.reading-content code{font-size:.82em;padding:1px 4px}.paged-columns .reading-content{padding:0 12px}.paged-columns .reading-content>*{max-width:100%}.paged-nav-btn{display:none!important}.reader-toolbar{padding-top:max(.375rem,env(safe-area-inset-top))}.book-card-info-section{padding:10px 12px 9px}.lib-empty-state{padding:2.5rem 1.5rem}.lib-empty-icon{width:3.5rem;height:3.5rem}.lib-empty-heading{font-size:1.1rem}.lib-empty-text{font-size:.825rem}.upload-zone-icon svg{width:2.5rem;height:2.5rem}}@media (orientation: landscape) and (max-height: 500px){.paged-chapter-header{padding-top:.25rem;padding-bottom:.25rem}.paged-chapter-ornament{display:none}.paged-footer{padding-top:.125rem;padding-bottom:.125rem}.reader-toolbar{padding-top:.25rem;padding-bottom:.25rem}.settings-bottom-sheet{max-height:70vh;overflow-y:auto}}.paged-reader-wrapper{touch-action:manipulation;-webkit-tap-highlight-color:transparent}.reader-toolbar-btn{-webkit-tap-highlight-color:transparent}.reading-progress-bar{position:fixed;top:0;left:0;height:2px;background:linear-gradient(90deg,var(--progress-from),var(--progress-to));z-index:200;transition:width .5s cubic-bezier(.4,0,.2,1);border-radius:0 2px 2px 0;box-shadow:none}@keyframes chapterFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.chapter-fade-in{animation:chapterFadeIn .5s ease-out forwards}@media (prefers-reduced-motion: reduce){.chapter-fade-in,.reading-progress-bar{animation:none!important;transition:none!important;transform:none!important}}.reader-sidebar-badge.read{background:var(--accent-light);color:var(--accent)}@keyframes slideInLeft{0%{transform:translate(-100%);opacity:0}to{transform:translate(0);opacity:1}}.animate-slide-in-left{animation:slideInLeft .25s cubic-bezier(.22,1,.36,1) forwards}@keyframes slideUpSheet{0%{transform:translateY(100%)}to{transform:translateY(0)}}.settings-bottom-sheet{animation:slideUpSheet .3s cubic-bezier(.22,1,.36,1) forwards}.paged-reader-wrapper .flex-1.overflow-hidden{cursor:default}::-moz-selection{background:var(--accent-light);color:var(--text-primary)}::selection{background:var(--accent-light);color:var(--text-primary)}.reading-content pre{background:var(--code-block-bg)!important;color:var(--code-block-text)!important}.reading-content pre code,.reading-content pre code.hljs{background:transparent!important;color:inherit!important;border:none!important;padding:0!important}.reading-content :not(pre)>code:before,.reading-content :not(pre)>code:after{content:""!important;display:none!important}.reading-content :not(pre)>code{background:var(--md-inline-code-bg)!important;color:var(--md-inline-code-color)!important;border:1px solid var(--md-inline-code-border)!important;padding:2px 6px!important;border-radius:4px!important;font-size:.86em!important;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace!important;font-variant-ligatures:none!important;-webkit-box-decoration-break:clone!important;box-decoration-break:clone!important;word-break:break-all!important}.reading-content code{color:var(--md-inline-code-color)!important;background:var(--md-inline-code-bg)!important;border-color:var(--md-inline-code-border)!important}.reading-content p{text-indent:2em!important;text-align:justify!important;line-height:var(--reader-line-height, 2.1)!important;margin-bottom:var(--reader-para-spacing, 1.18em)!important}.reading-content h1+p,.reading-content h2+p,.reading-content h3+p,.reading-content h4+p,.reading-content p:first-child{text-indent:0!important}.sidebar-collapse-transition{transition:width .3s cubic-bezier(.4,0,.2,1),opacity .2s ease}.sidebar-collapsed-toggle{display:inline-flex;align-items:center;justify-content:center;padding:8px;border-radius:8px;color:var(--text-muted);transition:background .2s,color .2s}.sidebar-collapsed-toggle:hover{background:var(--accent-light);color:var(--accent)}.lib-page{color:var(--text-primary);background:transparent}.lib-heading{color:var(--text-primary);font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em;line-height:1.15;font-family:var(--font-ui-system)}@media (min-width: 768px){.lib-heading{font-size:var(--fs-3xl)}}.lib-subtext{color:var(--text-muted);font-size:var(--fs-sm);margin-top:6px}.lib-upload-btn{display:inline-flex;align-items:center;gap:6px;padding:8px 14px;height:36px;border-radius:var(--radius-md);background:var(--accent);color:#fff;font-size:var(--fs-sm);font-weight:500;transition:background var(--ebook-transition);white-space:nowrap;text-decoration:none;cursor:pointer;border:1px solid var(--accent)}.lib-upload-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover)}[data-reader-theme=dark] .lib-upload-btn{color:var(--bg-page)}.lib-empty-state{background:transparent;border:1px dashed var(--card-border);border-radius:var(--radius-xl);padding:80px 32px;text-align:center;box-shadow:none}.lib-empty-icon{display:inline-flex;align-items:center;justify-content:center;width:56px;height:56px;border-radius:var(--radius-lg);background:var(--surface-sunken);border:1px solid var(--card-border);margin-bottom:20px;color:var(--text-secondary)}.lib-empty-heading{font-size:var(--fs-lg);font-weight:600;color:var(--text-primary);margin-bottom:8px;font-family:var(--font-ui-system)}.lib-empty-text{color:var(--text-muted);margin-bottom:24px;font-size:var(--fs-sm)}.book-card-outer{background:var(--surface-raised);border:1px solid var(--card-border);border-radius:var(--radius-lg);overflow:hidden;transition:transform .15s ease-out,box-shadow .15s ease-out,border-color .15s ease-out;position:relative;box-shadow:none;cursor:pointer}.book-card-outer:hover{transform:translateY(-1px);box-shadow:var(--shadow-sm);border-color:var(--border-strong)}.book-card-cover{aspect-ratio:4 / 3;background:var(--surface-sunken);display:flex;align-items:center;justify-content:center;position:relative;border-bottom:1px solid var(--card-border)}.book-card-cover-initial{font-family:STKaiti,Songti SC,"Source Han Serif SC",serif;font-size:56px;font-weight:500;color:var(--text-secondary);-webkit-user-select:none;-moz-user-select:none;user-select:none;letter-spacing:-.02em}.book-card-cover-chapters{position:absolute;top:10px;right:12px;font-size:11px;font-weight:500;color:var(--text-muted);background:var(--surface-raised);padding:2px 8px;border-radius:var(--radius-sm);border:1px solid var(--card-border)}.book-card-progress-bar{position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--accent)}.book-card-info-section{padding:12px 14px;background:var(--surface-raised)}.book-card-title-text{color:var(--text-primary);font-weight:500;font-size:var(--fs-base);line-height:1.35;letter-spacing:-.005em}.book-card-date-text{color:var(--text-muted);font-size:var(--fs-xs)}.book-card-progress-text{color:var(--text-secondary);font-size:var(--fs-xs);font-weight:500}.book-card-edit-input{width:100%;font-size:var(--fs-base);font-weight:500;color:var(--text-primary);background:var(--surface-sunken);border:1px solid var(--border-color);border-radius:var(--radius-md);padding:6px 10px;outline:none;transition:border-color .15s,box-shadow .15s;font-family:var(--font-ui-system)}.book-card-edit-input:focus{border-color:var(--accent);box-shadow:0 0 0 2px var(--surface-active);background:var(--surface-raised)}.book-card-action-btn{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm);background:var(--surface-raised);border:1px solid var(--card-border);color:var(--text-muted);transition:background var(--ebook-transition),color var(--ebook-transition),border-color var(--ebook-transition)}.book-card-action-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.book-card-action-btn-danger:hover{background:var(--error-bg);color:var(--error-text);border-color:var(--error-border)}.theme-selector-row{display:flex;gap:8px}.theme-selector-btn{flex:1;padding:8px 6px;border-radius:10px;border:2px solid var(--border-light);display:flex;flex-direction:column;align-items:center;gap:6px;cursor:pointer;transition:border-color .2s,background .2s;background:transparent}.theme-selector-btn:hover{border-color:var(--border-color);background:var(--accent-light)}.theme-selector-btn.active{border-color:var(--accent);background:var(--accent-light)}.theme-preview{width:100%;height:28px;border-radius:6px;border:1px solid rgba(0,0,0,.08);position:relative;overflow:hidden}.theme-preview-light{background:linear-gradient(135deg,#fbfbfb 50%,#e6e6e6 50%)}.theme-preview-dark{background:linear-gradient(135deg,#191919 50%,#2f2f2f 50%);border-color:#ffffff0f}.theme-selector-label{font-size:.6875rem;font-weight:500;color:var(--text-muted);font-family:var(--font-ui)}.theme-selector-btn.active .theme-selector-label{color:var(--accent);font-weight:600}.font-size-steps{display:flex;align-items:flex-end;justify-content:center;gap:5px;height:24px;margin:6px 0 4px}.font-size-step-bar{width:7px;border-radius:3px 3px 0 0;background:var(--border-color);cursor:pointer;transition:background .15s,opacity .15s}.font-size-step-bar:hover{opacity:.75}.font-size-step-bar.reached{background:var(--accent);opacity:.45}.font-size-step-bar.active{background:var(--accent);opacity:1}.paged-chapter-ornament{display:flex;align-items:center;gap:8px;color:var(--text-muted);font-size:.6875rem;letter-spacing:.08em;margin-bottom:2px;font-family:var(--font-ui)}.paged-chapter-ornament:before,.paged-chapter-ornament:after{content:"";flex:1;height:1px;background:var(--border-light)}.paged-footer{font-family:var(--font-ui)}.auth-card{background:#fff;border:1px solid #e5e5e5;border-radius:1.25rem;box-shadow:0 1px 3px #0000000a}.lib-error-banner{border-radius:var(--card-radius);border:1px solid;padding:10px 16px;font-size:.875rem;color:#c0392b;background:#fff5f5;border-color:#fcc}[data-reader-theme=dark] .lib-error-banner{color:#ff8a80;background:#2a1515;border-color:#5a2020}.auth-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-page);padding:24px}.auth-form-container{width:100%;max-width:360px;animation:authFadeIn .3s ease-out}.auth-form-card{background:var(--surface-raised);border-radius:var(--radius-lg);border:1px solid var(--card-border);box-shadow:var(--shadow-xs);padding:32px 28px}@media (min-width: 480px){.auth-form-card{padding:40px 36px}}.auth-brand{display:flex;flex-direction:column;align-items:center;margin-bottom:24px}.auth-brand-mark{width:40px;height:40px;border-radius:var(--radius-md);background:var(--accent);color:var(--surface-raised);display:flex;align-items:center;justify-content:center;margin-bottom:12px}[data-reader-theme=dark] .auth-brand-mark{color:var(--bg-page)}.auth-brand-name{font-size:var(--fs-lg);font-weight:600;color:var(--text-primary);letter-spacing:-.01em}.auth-form-heading{font-size:var(--fs-xl);font-weight:600;color:var(--text-primary);letter-spacing:-.02em;margin-bottom:4px;text-align:center}.auth-form-subtitle{font-size:var(--fs-sm);color:var(--text-muted);margin-bottom:24px;text-align:center}.auth-input{width:100%;padding:9px 12px;height:40px;border:1px solid var(--card-border);border-radius:var(--radius-md);font-size:var(--fs-base);background:var(--surface-sunken);transition:border-color .15s ease-out,background .15s ease-out;outline:none;color:var(--text-primary);font-family:var(--font-ui-system)}.auth-input::-moz-placeholder{color:var(--text-muted)}.auth-input::placeholder{color:var(--text-muted)}.auth-input:focus{border-color:var(--border-strong);background:var(--surface-raised)}.auth-submit-btn{width:100%;padding:9px 16px;height:40px;background:var(--accent);color:#fff;border-radius:var(--radius-md);font-weight:500;font-size:var(--fs-base);transition:background var(--ebook-transition),transform .16s ease,box-shadow .16s ease;border:1px solid var(--accent);cursor:pointer}[data-reader-theme=dark] .auth-submit-btn{color:var(--bg-page)}.auth-submit-btn:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px);box-shadow:3px 3px 0 0 var(--text-primary)}.auth-submit-btn:disabled{opacity:.5;cursor:not-allowed}.auth-link{color:var(--text-primary);font-weight:500;text-decoration:underline;text-underline-offset:2px;transition:color var(--ebook-transition)}.auth-link:hover{color:var(--text-secondary)}.auth-label{font-size:var(--fs-sm);font-weight:500;color:var(--text-secondary);margin-bottom:6px;display:block}@keyframes authFadeIn{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.nav-tab{height:32px;display:inline-flex;align-items:center;padding:0 10px;border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:500;transition:background var(--ebook-transition),color var(--ebook-transition);text-decoration:none}.nav-tab-inactive{color:var(--text-secondary)}.nav-tab-inactive:hover{color:var(--text-primary);background:var(--surface-hover)}.nav-tab-active{background:var(--surface-active);color:var(--text-primary)}.app-shell{background:var(--bg-page);color:var(--text-primary);font-family:var(--font-ui-system)}body.reader-active .app-shell{background:var(--bg-primary)}.header-nav,.header-nav-ebook{background:var(--surface-raised);border-bottom:1px solid var(--card-border);box-shadow:none}.ebook-logo{text-decoration:none;cursor:pointer;transition:opacity var(--ebook-transition)}.ebook-logo:hover{opacity:.75}.ebook-logo-icon{width:28px;height:28px;border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;background:var(--accent);border:none;box-shadow:none;color:var(--surface-raised)}[data-reader-theme=dark] .ebook-logo-icon{color:var(--bg-page)}.ebook-logo-text{font-size:var(--fs-lg);font-weight:600;letter-spacing:-.01em;color:var(--text-primary);font-family:var(--font-ui-system)}.ebook-btn,.header-nav-btn{display:inline-flex;align-items:center;gap:6px;padding:6px 10px;height:32px;border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:500;transition:background var(--ebook-transition),color var(--ebook-transition);cursor:pointer;text-decoration:none;border:1px solid transparent;background:transparent;color:var(--text-secondary)}.ebook-btn:hover,.header-nav-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.ebook-btn-primary{display:inline-flex;align-items:center;gap:6px;padding:0 14px;height:32px;border-radius:var(--radius-md);font-size:var(--fs-sm);font-weight:500;background:var(--accent);color:#fff;border:1px solid var(--accent);box-shadow:none;transition:background var(--ebook-transition),transform .16s ease,box-shadow .16s ease;cursor:pointer;text-decoration:none;white-space:nowrap}[data-reader-theme=dark] .ebook-btn-primary{color:var(--bg-page)}.ebook-btn-primary:hover{background:var(--accent-hover);border-color:var(--accent-hover);transform:translateY(-1px);box-shadow:3px 3px 0 0 var(--text-primary)}.ebook-btn-primary:disabled{opacity:.5;cursor:not-allowed}.ebook-btn-ghost{display:inline-flex;align-items:center;justify-content:center;padding:6px;width:32px;height:32px;border-radius:var(--radius-md);color:var(--text-muted);background:transparent;border:none;transition:background var(--ebook-transition),color var(--ebook-transition);cursor:pointer}.ebook-btn-ghost:hover{color:var(--text-primary);background:var(--surface-hover)}.ebook-header-divider{width:1px;height:16px;background:var(--card-border);margin:0 4px}.ebook-avatar{width:28px;height:28px;border-radius:50%;display:flex;align-items:center;justify-content:center;flex-shrink:0;background:var(--surface-active);border:none}.ebook-avatar span{font-size:var(--fs-xs);font-weight:600;color:var(--text-primary);font-family:var(--font-ui-system)}.ebook-username{font-size:.8125rem;color:#666}.ebook-admin-badge{padding:1px 6px;border-radius:var(--radius-sm);font-size:var(--fs-xs);font-weight:500;letter-spacing:0;background:var(--surface-active);color:var(--text-secondary);border:1px solid var(--card-border)}.ebook-username{font-size:var(--fs-sm);color:var(--text-secondary);font-weight:500}.lib-heading-wrap{position:relative}.lib-heading-wrap:after{display:none}@keyframes cardFadeUp{0%{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}.lib-grid-animated>*{animation:cardFadeUp .25s ease-out both}.lib-grid-animated>*:nth-child(1){animation-delay:0ms}.lib-grid-animated>*:nth-child(2){animation-delay:40ms}.lib-grid-animated>*:nth-child(3){animation-delay:80ms}.lib-grid-animated>*:nth-child(4){animation-delay:.12s}.lib-grid-animated>*:nth-child(5){animation-delay:.16s}.lib-grid-animated>*:nth-child(6){animation-delay:.2s}.lib-grid-animated>*:nth-child(n+7){animation-delay:.24s}.toolbar-group-divider{width:1px;height:16px;background:var(--card-border);margin:0 4px;flex-shrink:0}.upload-page{color:var(--text-primary);background:transparent}.upload-heading{color:var(--text-primary);font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em;font-family:var(--font-ui-system)}.upload-subtext{color:var(--text-muted);font-size:var(--fs-sm);margin-top:6px}.upload-zone-ebook{background:var(--surface-sunken);border:1.5px dashed var(--card-border);border-radius:var(--radius-lg);box-shadow:none;transition:border-color .15s,background .15s}.upload-zone-idle:hover{border-color:var(--border-strong);background:var(--surface-hover)}.upload-zone-dragging{border-color:var(--accent);background:var(--surface-hover);border-style:solid}.upload-zone-icon{color:var(--text-muted)}.upload-zone-text{color:var(--text-primary);font-size:var(--fs-base);font-weight:500}.upload-zone-hint{color:var(--text-muted);font-size:var(--fs-sm)}.upload-zone-progress-track{width:100%;height:4px;border-radius:2px;background:var(--surface-active);overflow:hidden}.upload-zone-progress-fill{height:100%;border-radius:2px;background:var(--accent);transition:width .3s ease}.upload-zone-error{padding:10px 14px;border-radius:var(--radius-md);font-size:var(--fs-sm);color:var(--error-text);background:var(--error-bg);border:1px solid var(--error-border)}.upload-zone-success{padding:10px 14px;border-radius:var(--radius-md);font-size:var(--fs-sm);color:var(--success-text);background:var(--success-bg);border:1px solid var(--success-border)}.upload-docs-card{background:var(--surface-raised);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:24px;box-shadow:none}.upload-docs-title{color:var(--text-primary);font-size:.875rem;font-weight:700;margin-bottom:.75rem}.upload-code-block{background:#141414;color:#e8e8e8;border-radius:10px;padding:1rem 1.25rem;font-size:.8125rem;line-height:1.7;font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,monospace;overflow-x:auto;border:1px solid #2a2a2a}.upload-hint-list{margin-top:12px;display:flex;flex-direction:column;gap:6px}.upload-hint-item{display:flex;align-items:flex-start;gap:8px;font-size:var(--fs-sm);color:var(--text-secondary)}.upload-hint-dot{color:var(--text-muted);margin-top:6px;flex-shrink:0}.note-card-inner{background:var(--surface-raised);border:1px solid var(--card-border);border-radius:var(--radius-lg);box-shadow:none;transition:border-color .15s ease-out,background .15s ease-out}.note-card-inner:hover{border-color:var(--border-strong);background:var(--surface-hover)}body{overscroll-behavior-x:none}.reading-content pre,.reading-content table{overscroll-behavior-x:contain;-webkit-overflow-scrolling:auto}@media (hover: none){.note-card-inner:hover{transform:none;box-shadow:0 1px 3px #0000000f,0 1px 2px -1px #0000000a}.note-card-inner:active{background:#f8f8f8;transform:scale(.99)}}@media (max-width: 640px){.ebook-btn-primary{min-height:44px;min-width:44px}select{min-height:44px}}.density-chip{padding:8px 6px;border-radius:8px;border:1px solid var(--border-color);background:var(--bg-page);color:var(--text-secondary);cursor:pointer;transition:all .15s ease-out;text-align:center;font-size:12px}.density-chip:hover{border-color:var(--accent);color:var(--text-primary)}.density-chip.active{border-color:var(--accent);background:var(--accent-light);color:var(--accent);box-shadow:0 0 0 1px var(--accent) inset}.paged-columns .reading-content{padding-left:0;padding-right:0}.wikilink{color:var(--accent);text-decoration:none;border-bottom:1px dashed var(--accent);padding:0 2px;border-radius:2px;cursor:pointer;transition:background .15s ease-out}.wikilink:hover{background:var(--accent-light);border-bottom-style:solid}.wikilink-broken{color:#dc2626;background:#dc262614;padding:0 4px;border-radius:3px;font-style:italic;cursor:help}[data-reader-theme=dark] .wikilink-broken{color:#f87171;background:#f8717124}.wikilink-preview{position:absolute;z-index:200;width:320px;padding:12px 14px;background:var(--bg-page);border:1px solid var(--border-color);border-radius:10px;box-shadow:0 12px 28px -8px #00000038,0 0 0 1px var(--border-light);pointer-events:auto}.wikilink-preview-title{font-weight:600;font-size:13px;margin:0 0 6px;color:var(--text-primary)}.wikilink-preview-body{font-size:12px;line-height:1.55;margin:0 0 8px;color:var(--text-secondary);display:-webkit-box;-webkit-line-clamp:4;-webkit-box-orient:vertical;overflow:hidden}.wikilink-preview-link{display:inline-block;font-size:11px;color:var(--accent);text-decoration:none}.wikilink-preview-link:hover{text-decoration:underline}.notes-layout{min-height:calc(100vh - 52px);background:transparent}.notes-layout-fullscreen .notes-content{width:100%;margin-left:0}.notes-content{min-width:0;padding:0}@media (min-width: 1024px){.notes-content{margin-left:240px}.notes-layout-fullscreen .notes-content{margin-left:0}}.notes-sidebar{width:240px;flex-shrink:0;border-right:1px solid var(--card-border);background:var(--surface-raised);position:fixed;top:52px;left:0;bottom:0;overflow:hidden;display:flex;flex-direction:column;touch-action:pan-y;overscroll-behavior:contain;z-index:40;color:var(--text-primary);box-shadow:none}.notes-sidebar-inner{display:flex;flex-direction:column;height:100%;overflow:hidden}.notes-sidebar-header{display:flex;align-items:center;justify-content:space-between;padding:16px 16px 10px;flex-shrink:0}.notes-sidebar-title{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.notes-sidebar-add-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);color:var(--text-muted);transition:background var(--ebook-transition),color var(--ebook-transition)}.notes-sidebar-add-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.notes-sidebar-nav{flex:1;overflow-y:auto;padding:4px 8px 16px;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent}.notes-sidebar-nav::-webkit-scrollbar{width:4px}.notes-sidebar-nav::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.notes-sidebar-item{display:flex;align-items:center;gap:8px;padding:6px 8px;height:30px;border-radius:var(--radius-sm);font-size:var(--fs-sm);color:var(--text-secondary);transition:background var(--ebook-transition),color var(--ebook-transition);text-decoration:none;cursor:pointer}.notes-sidebar-item:hover{background:var(--surface-hover);color:var(--text-primary)}.notes-sidebar-item-active{background:var(--surface-active);color:var(--text-primary);font-weight:500}.notes-sidebar-count{margin-left:auto;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.notes-sidebar-section{margin-top:16px}.notes-sidebar-section-header{display:flex;align-items:center;justify-content:space-between;padding:6px 8px;width:100%;background:none;border:none;cursor:default}.notes-sidebar-section-toggle{cursor:pointer}.notes-sidebar-section-toggle:hover .notes-sidebar-section-label{color:var(--text-secondary)}.notes-sidebar-section-label{font-size:11px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--text-muted)}.notes-sidebar-section-action{display:flex;align-items:center;justify-content:center;width:20px;height:20px;border-radius:var(--radius-sm);color:var(--text-muted);transition:background var(--ebook-transition),color var(--ebook-transition)}.notes-sidebar-section-action:hover{background:var(--surface-hover);color:var(--text-primary)}.notes-sidebar-add-folder{padding:8px;margin:4px 0;background:var(--surface-sunken);border:1px solid var(--card-border);border-radius:var(--radius-md)}.notes-sidebar-add-input{width:100%;padding:5px 8px;height:28px;font-size:var(--fs-sm);border:1px solid var(--card-border);border-radius:var(--radius-sm);outline:none;background:var(--surface-raised);color:var(--text-primary);font-family:var(--font-ui-system)}.notes-sidebar-add-input:focus{border-color:var(--border-strong)}.notes-sidebar-add-confirm{flex:1;font-size:var(--fs-xs);padding:5px 0;height:26px;background:var(--accent);color:var(--surface-raised);border-radius:var(--radius-sm);transition:background var(--ebook-transition);font-weight:500}[data-reader-theme=dark] .notes-sidebar-add-confirm{color:var(--bg-page)}.notes-sidebar-add-confirm:hover{background:var(--accent-hover)}.notes-sidebar-add-cancel{flex:1;font-size:var(--fs-xs);padding:5px 0;height:26px;background:transparent;color:var(--text-muted);border-radius:var(--radius-sm);transition:background var(--ebook-transition),color var(--ebook-transition)}.notes-sidebar-add-cancel:hover{background:var(--surface-hover);color:var(--text-primary)}.notes-sidebar-footer{flex-shrink:0;padding:12px;border-top:1px solid var(--card-border)}.notes-sidebar-theme-row{display:flex;gap:4px}.notes-sidebar-theme-btn{flex:1;display:flex;align-items:center;justify-content:center;gap:5px;padding:6px 0;height:28px;border-radius:var(--radius-sm);border:1px solid transparent;background:transparent;color:var(--text-muted);transition:background var(--ebook-transition),color var(--ebook-transition);cursor:pointer}.notes-sidebar-theme-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.notes-sidebar-theme-btn-active{background:var(--surface-active);color:var(--text-primary)}.notes-sidebar-theme-dot{width:10px;height:10px;border-radius:50%;border:1px solid var(--card-border)}.notes-sidebar-theme-dot-light{background:#fff}.notes-sidebar-theme-dot-dark{background:#1a1a19}.notes-sidebar-mobile-toggle{position:fixed;bottom:20px;left:16px;z-index:50;width:40px;height:40px;display:flex;align-items:center;justify-content:center;border-radius:var(--radius-lg);background:var(--surface-raised);border:1px solid var(--card-border);box-shadow:var(--shadow-sm);color:var(--text-primary)}.notes-content-page{padding:32px 16px 48px;color:var(--text-primary);width:100%;max-width:100%;margin:0 auto}@media (max-width: 640px){.notes-content-page{padding:24px 16px 40px}}@media (min-width: 640px){.notes-content-page{padding:clamp(32px,4vw,56px) clamp(20px,3vw,40px) clamp(48px,4vw,64px);max-width:min(94%,1100px)}}@media (min-width: 1024px){.notes-content-page{max-width:min(93%,1300px)}}@media (min-width: 1280px){.notes-content-page{max-width:min(94%,1400px);padding:clamp(40px,4vw,56px) clamp(32px,3vw,56px) 64px}}@media (min-width: 1536px){.notes-content-page{max-width:min(95%,1500px);padding:56px clamp(40px,3vw,72px) 64px}}@media (min-width: 1920px){.notes-content-page{max-width:min(94%,1640px);padding:64px clamp(48px,3vw,88px) 72px}}.notes-content-header{display:flex;align-items:flex-end;justify-content:space-between;margin-bottom:24px}.notes-content-title{font-size:var(--fs-2xl);font-weight:700;color:var(--text-primary);letter-spacing:-.02em;line-height:1.15}.notes-content-filters{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:16px;padding:0;background:transparent;border:none;border-radius:0;box-shadow:none}.notes-search-input{width:100%;height:40px;padding:0 14px 0 40px;font-size:var(--fs-base);border:1px solid var(--card-border);border-radius:var(--radius-md);outline:none;transition:border-color .15s,background .15s;background:var(--surface-sunken);color:var(--text-primary);font-family:var(--font-ui-system)}.notes-search-input::-moz-placeholder{color:var(--text-muted)}.notes-search-input::placeholder{color:var(--text-muted)}.notes-search-input:focus{border-color:var(--sig-accent);background:var(--surface-raised);box-shadow:0 0 0 3px color-mix(in srgb,var(--sig-accent) 18%,transparent)}.notes-filter-select{height:36px;padding:0 12px;font-size:var(--fs-sm);border:1px solid var(--card-border);border-radius:var(--radius-md);outline:none;background:var(--surface-raised);color:var(--text-primary);font-family:var(--font-ui-system);transition:border-color .15s}.notes-filter-select:hover{border-color:var(--border-strong)}.notes-sort-toggle{display:flex;border:1px solid var(--card-border);border-radius:var(--radius-md);overflow:hidden;height:36px}.notes-sort-btn{padding:0 14px;height:100%;font-size:var(--fs-sm);color:var(--text-muted);background:var(--surface-raised);transition:background var(--ebook-transition),color var(--ebook-transition)}.notes-sort-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.notes-sort-btn-active{background:var(--surface-active);color:var(--text-primary);font-weight:500}.notes-sort-btn-active:hover{background:var(--surface-active)}.notes-empty-state{text-align:center;padding:80px 24px;color:var(--text-muted);background:transparent;border:1px dashed var(--card-border);border-radius:var(--radius-xl);box-shadow:none}.notes-list{display:flex;flex-direction:column;border:none;border-radius:0;overflow:visible;background:transparent;box-shadow:none;border-top:1px solid var(--card-border)}.note-list-row{position:relative;border-bottom:1px solid var(--card-border)}.note-list-row+.note-list-row{border-top:none}.note-list-row-link{display:flex;align-items:center;gap:12px;padding:10px 12px;height:44px;text-decoration:none;color:inherit;transition:background var(--ebook-transition);border-radius:var(--radius-sm)}.note-list-row-link:hover{background:var(--surface-hover)}.note-list-row-type{display:flex;align-items:center;justify-content:center;width:20px;height:20px;flex-shrink:0;color:var(--text-muted)}.note-list-row-type-note{background:transparent;color:var(--text-muted)}.note-list-row-body{flex:1;min-width:0;display:flex;align-items:center;gap:8px}.note-list-row-title{display:inline;font-size:var(--fs-base);font-weight:500;color:var(--text-primary);white-space:nowrap;overflow:hidden;text-overflow:ellipsis;flex-shrink:1;min-width:0}.note-list-row-meta{display:inline-flex;flex-wrap:nowrap;align-items:center;gap:6px;margin-top:0;flex-shrink:0}.note-list-row-category,.note-list-row-tag{font-size:var(--fs-xs);font-weight:400;padding:1px 7px;border-radius:var(--radius-sm);background:var(--surface-sunken);color:var(--text-secondary);border:1px solid var(--card-border);white-space:nowrap}.note-list-row-tag{background:transparent;border:none;color:var(--text-muted);padding:1px 0}.note-list-row-date{flex-shrink:0;font-size:var(--fs-xs);color:var(--text-muted);font-variant-numeric:tabular-nums}.note-list-row-actions{position:absolute;right:8px;top:50%;transform:translateY(-50%);display:flex;gap:2px;opacity:0;transition:opacity var(--ebook-transition)}.note-list-row:hover .note-list-row-actions{opacity:1}@media (hover: none){.note-list-row-actions{opacity:1}}.note-list-row-action{display:flex;align-items:center;justify-content:center;width:26px;height:26px;border-radius:var(--radius-sm);background:var(--surface-raised);border:1px solid var(--card-border);color:var(--text-muted);transition:background var(--ebook-transition),color var(--ebook-transition),border-color var(--ebook-transition)}.note-list-row-action:hover{background:var(--surface-hover);color:var(--text-primary)}.note-list-row-action-danger:hover{background:var(--error-bg);color:var(--error-text);border-color:var(--error-border)}.noteview-root{min-height:calc(100vh - 52px);background:transparent;transition:color .2s,background .2s;touch-action:pan-y;overscroll-behavior-x:none;-webkit-overflow-scrolling:touch}.noteview-columns{display:block;width:100%}.noteview-main{min-width:0;width:100%;max-width:100%;padding:32px 20px 48px;margin:0 auto}@media (min-width: 640px){.noteview-main{padding:clamp(40px,5vw,72px) clamp(24px,4vw,48px) clamp(56px,5vw,80px);max-width:min(94%,1100px)}}@media (min-width: 1024px){.noteview-main{max-width:min(92%,1300px)}}.noteview-toc-desktop{display:none}@media (min-width: 1280px){.noteview-toc-desktop{display:block;position:fixed;top:52px;right:0;bottom:0;width:220px;border-left:1px solid var(--card-border);background:var(--bg-page);z-index:39;overflow-y:auto;padding:32px 16px 32px 20px;scrollbar-width:thin;scrollbar-color:var(--border-color) transparent;box-shadow:none}.noteview-toc-desktop::-webkit-scrollbar{width:3px}.noteview-toc-desktop::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:2px}.noteview-columns{padding-right:220px}.noteview-main{max-width:min(95%,1400px);padding:clamp(56px,5vw,72px) clamp(40px,4vw,64px) 96px;margin:0 auto}}@media (min-width: 1536px){.noteview-toc-desktop{width:240px}.noteview-columns{padding-right:240px}.noteview-main{max-width:min(95%,1500px);padding:72px clamp(48px,4vw,80px) 96px}}@media (min-width: 1920px){.noteview-main{max-width:min(94%,1640px);padding:80px clamp(56px,4vw,96px) 96px}}@media (max-width: 639px){.noteview-main{padding:28px 16px 44px;max-width:100%}.noteview-root{overflow-x:hidden}}.noteview-mobile-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border-radius:var(--radius-md);color:var(--text-muted);transition:background var(--ebook-transition),color var(--ebook-transition);border:1px solid transparent;background:transparent}.noteview-mobile-btn:hover{background:var(--surface-hover);color:var(--text-primary)}.noteview-toc-mobile-sheet{position:fixed;bottom:0;left:0;right:0;z-index:170;border-top-left-radius:var(--radius-xl);border-top-right-radius:var(--radius-xl);box-shadow:var(--shadow-md);background:var(--surface-raised);border-top:1px solid var(--card-border);max-height:70vh;overflow-y:auto;padding-bottom:max(8px,env(safe-area-inset-bottom));touch-action:pan-y;overscroll-behavior:contain}@media (min-width: 1280px){.noteview-toc-mobile-sheet{display:none}}.ebook-card{background:var(--surface-raised);border:1px solid var(--card-border);border-radius:var(--radius-lg);padding:var(--card-pad);box-shadow:none;transition:border-color .15s,background .15s}.ebook-card-lg{padding:var(--card-pad-lg)}.ebook-card-hover{cursor:pointer}.ebook-card-hover:hover{border-color:var(--border-strong);background:var(--surface-hover)}.ebook-surface-raised{background:var(--surface-raised);border-radius:var(--radius-lg);box-shadow:none;border:1px solid var(--card-border)}.ebook-surface-overlay{background:var(--surface-overlay);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--card-border)}.ebook-section{margin-bottom:var(--space-section)}.ebook-divider{height:1px;background:var(--card-border);margin:var(--space-section) 0;border:0}.ebook-divider-tight{height:1px;background:var(--card-border);margin:16px 0;border:0}body{font-family:var(--font-ui-system);color:var(--text-primary);background:var(--bg-page)}.hover\:-translate-y-1:hover{--tw-translate-y: -.25rem;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.hover\:border-blue-300:hover{--tw-border-opacity: 1;border-color:rgb(147 197 253 / var(--tw-border-opacity, 1))}.hover\:bg-\[color\:var\(--surface-hover\)\]:hover{background-color:var(--surface-hover)}.hover\:bg-\[var\(--accent-light\)\]:hover{background-color:var(--accent-light)}.hover\:bg-amber-600:hover{--tw-bg-opacity: 1;background-color:rgb(217 119 6 / var(--tw-bg-opacity, 1))}.hover\:bg-blue-600:hover{--tw-bg-opacity: 1;background-color:rgb(37 99 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-200:hover{--tw-bg-opacity: 1;background-color:rgb(229 231 235 / var(--tw-bg-opacity, 1))}.hover\:bg-gray-50:hover{--tw-bg-opacity: 1;background-color:rgb(249 250 251 / var(--tw-bg-opacity, 1))}.hover\:text-\[color\:var\(--accent\)\]:hover{color:var(--accent)}.hover\:text-\[color\:var\(--error-text\)\]:hover{color:var(--error-text)}.hover\:text-\[color\:var\(--text-primary\)\]:hover{color:var(--text-primary)}.hover\:text-blue-500:hover{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity, 1))}.hover\:underline:hover{text-decoration-line:underline}.hover\:opacity-90:hover{opacity:.9}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-1:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(1px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-\[color\:var\(--sig-accent\)\]:focus{--tw-ring-color: var(--sig-accent)}.focus\:ring-blue-400:focus{--tw-ring-opacity: 1;--tw-ring-color: rgb(96 165 250 / var(--tw-ring-opacity, 1))}.active\:scale-95:active{--tw-scale-x: .95;--tw-scale-y: .95;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.active\:bg-\[color\:var\(--surface-active\)\]:active{background-color:var(--surface-active)}.active\:bg-gray-100:active{--tw-bg-opacity: 1;background-color:rgb(243 244 246 / var(--tw-bg-opacity, 1))}.active\:bg-red-50:active{--tw-bg-opacity: 1;background-color:rgb(254 242 242 / var(--tw-bg-opacity, 1))}.active\:text-\[color\:var\(--error-text\)\]:active{color:var(--error-text)}.active\:text-red-500:active{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity, 1))}.active\:opacity-70:active{opacity:.7}.disabled\:opacity-30:disabled{opacity:.3}.disabled\:opacity-50:disabled{opacity:.5}.group:hover .group-hover\:bg-white\/10{background-color:#ffffff1a}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width: 640px){.sm\:mb-4{margin-bottom:1rem}.sm\:ml-6{margin-left:1.5rem}.sm\:mt-2{margin-top:.5rem}.sm\:block{display:block}.sm\:inline-block{display:inline-block}.sm\:inline{display:inline}.sm\:flex{display:flex}.sm\:inline-flex{display:inline-flex}.sm\:hidden{display:none}.sm\:h-12{height:3rem}.sm\:h-\[18px\]{height:18px}.sm\:min-h-0{min-height:0px}.sm\:w-12{width:3rem}.sm\:w-20{width:5rem}.sm\:w-\[18px\]{width:18px}.sm\:min-w-0{min-width:0px}.sm\:grid-cols-3{grid-template-columns:repeat(3,minmax(0,1fr))}.sm\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.sm\:gap-1{gap:.25rem}.sm\:gap-1\.5{gap:.375rem}.sm\:gap-4{gap:1rem}.sm\:gap-5{gap:1.25rem}.sm\:p-10{padding:2.5rem}.sm\:p-2{padding:.5rem}.sm\:p-5{padding:1.25rem}.sm\:p-8{padding:2rem}.sm\:px-4{padding-left:1rem;padding-right:1rem}.sm\:px-5{padding-left:1.25rem;padding-right:1.25rem}.sm\:px-6{padding-left:1.5rem;padding-right:1.5rem}.sm\:py-1\.5{padding-top:.375rem;padding-bottom:.375rem}.sm\:py-10{padding-top:2.5rem;padding-bottom:2.5rem}.sm\:py-12{padding-top:3rem;padding-bottom:3rem}.sm\:py-2{padding-top:.5rem;padding-bottom:.5rem}.sm\:py-2\.5{padding-top:.625rem;padding-bottom:.625rem}.sm\:py-3{padding-top:.75rem;padding-bottom:.75rem}.sm\:pt-3{padding-top:.75rem}.sm\:pt-\[14vh\]{padding-top:14vh}.sm\:text-2xl{font-size:1.5rem;line-height:2rem}.sm\:text-base{font-size:1rem;line-height:1.5rem}.sm\:opacity-0{opacity:0}}@media (min-width: 768px){.md\:block{display:block}.md\:inline-block{display:inline-block}.md\:inline{display:inline}.md\:flex{display:flex}.md\:inline-flex{display:inline-flex}.md\:hidden{display:none}}@media (min-width: 1024px){.lg\:block{display:block}.lg\:flex{display:flex}.lg\:hidden{display:none}.lg\:w-72{width:18rem}.lg\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.lg\:gap-5{gap:1.25rem}.lg\:p-12{padding:3rem}.lg\:p-4{padding:1rem}.lg\:px-10{padding-left:2.5rem;padding-right:2.5rem}.lg\:px-8{padding-left:2rem;padding-right:2rem}}@media (min-width: 1280px){.xl\:hidden{display:none}.xl\:w-80{width:20rem}.xl\:grid-cols-5{grid-template-columns:repeat(5,minmax(0,1fr))}}@media (hover:none){.\[\@media\(hover\:none\)\]\:opacity-100{opacity:1}}
