@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:400;src:url("../fonts/eb-garamond-latin-400-normal-BVFDQYWK.woff2") format("woff2"),url("../fonts/eb-garamond-latin-400-normal-KTP4KJXO.woff") format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:500;src:url("../fonts/eb-garamond-latin-500-normal-I4QRW4OQ.woff2") format("woff2"),url("../fonts/eb-garamond-latin-500-normal-GRQC6ZTE.woff") format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:600;src:url("../fonts/eb-garamond-latin-600-normal-XUM6TVKZ.woff2") format("woff2"),url("../fonts/eb-garamond-latin-600-normal-52UF7JLZ.woff") format("woff")}@font-face{font-family:EB Garamond;font-style:normal;font-display:swap;font-weight:700;src:url("../fonts/eb-garamond-latin-700-normal-52TJUJRB.woff2") format("woff2"),url("../fonts/eb-garamond-latin-700-normal-MBWVRGP5.woff") format("woff")}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:400;src:url("../fonts/eb-garamond-latin-400-italic-S77UGTKV.woff2") format("woff2"),url("../fonts/eb-garamond-latin-400-italic-KP3O76LJ.woff") format("woff")}@font-face{font-family:EB Garamond;font-style:italic;font-display:swap;font-weight:500;src:url("../fonts/eb-garamond-latin-500-italic-DK7ARYQY.woff2") format("woff2"),url("../fonts/eb-garamond-latin-500-italic-JIVYTKMB.woff") format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:400;src:url("../fonts/cormorant-garamond-latin-400-normal-WQ2RPA6D.woff2") format("woff2"),url("../fonts/cormorant-garamond-latin-400-normal-2F3VIC4I.woff") format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:500;src:url("../fonts/cormorant-garamond-latin-500-normal-2JNAKPEZ.woff2") format("woff2"),url("../fonts/cormorant-garamond-latin-500-normal-7MGP3LLF.woff") format("woff")}@font-face{font-family:Cormorant Garamond;font-style:normal;font-display:swap;font-weight:600;src:url("../fonts/cormorant-garamond-latin-600-normal-LDZNVCNX.woff2") format("woff2"),url("../fonts/cormorant-garamond-latin-600-normal-EIH7DX23.woff") format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:400;src:url("../fonts/cormorant-garamond-latin-400-italic-I5MQXJDL.woff2") format("woff2"),url("../fonts/cormorant-garamond-latin-400-italic-SAV6HFIK.woff") format("woff")}@font-face{font-family:Cormorant Garamond;font-style:italic;font-display:swap;font-weight:500;src:url("../fonts/cormorant-garamond-latin-500-italic-XO6KYVS5.woff2") format("woff2"),url("../fonts/cormorant-garamond-latin-500-italic-PSM2EVPG.woff") format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:700;src:url("../fonts/playfair-display-latin-700-normal-UQJJYTZU.woff2") format("woff2"),url("../fonts/playfair-display-latin-700-normal-OAOJD5TQ.woff") format("woff")}@font-face{font-family:Playfair Display;font-style:normal;font-display:swap;font-weight:900;src:url("../fonts/playfair-display-latin-900-normal-JKIRWG6Y.woff2") format("woff2"),url("../fonts/playfair-display-latin-900-normal-PB2S7QGV.woff") format("woff")}@font-face{font-family:Playfair Display;font-style:italic;font-display:swap;font-weight:400;src:url("../fonts/playfair-display-latin-400-italic-UGI3TOWG.woff2") format("woff2"),url("../fonts/playfair-display-latin-400-italic-S5G7JSPR.woff") format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:300;src:url("../fonts/poppins-latin-300-normal-YBCVDBLX.woff2") format("woff2"),url("../fonts/poppins-latin-300-normal-LGPMPPUP.woff") format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:400;src:url("../fonts/poppins-latin-400-normal-SFWTNBQB.woff2") format("woff2"),url("../fonts/poppins-latin-400-normal-ZPTYLX7I.woff") format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:500;src:url("../fonts/poppins-latin-500-normal-O53RGPUQ.woff2") format("woff2"),url("../fonts/poppins-latin-500-normal-7WHJNQSB.woff") format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:600;src:url("../fonts/poppins-latin-600-normal-3BUSBBSI.woff2") format("woff2"),url("../fonts/poppins-latin-600-normal-YBYM6FEI.woff") format("woff")}@font-face{font-family:Poppins;font-style:normal;font-display:swap;font-weight:700;src:url("../fonts/poppins-latin-700-normal-TKEB4KWA.woff2") format("woff2"),url("../fonts/poppins-latin-700-normal-ZA622GRH.woff") format("woff")}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:400;src:url("../fonts/roboto-mono-latin-400-normal-DHEUV3WG.woff2") format("woff2"),url("../fonts/roboto-mono-latin-400-normal-GEG7Y6WK.woff") format("woff")}@font-face{font-family:Roboto Mono;font-style:normal;font-display:swap;font-weight:500;src:url("../fonts/roboto-mono-latin-500-normal-7UWZR6OE.woff2") format("woff2"),url("../fonts/roboto-mono-latin-500-normal-T2GCQU2Q.woff") format("woff")}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:500;src:url("../fonts/syne-latin-500-normal-KGKLDJHV.woff2") format("woff2"),url("../fonts/syne-latin-500-normal-H6S4GXWS.woff") format("woff")}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:600;src:url("../fonts/syne-latin-600-normal-HBXTOGEW.woff2") format("woff2"),url("../fonts/syne-latin-600-normal-5LFNXGE5.woff") format("woff")}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:700;src:url("../fonts/syne-latin-700-normal-YPX6LSOK.woff2") format("woff2"),url("../fonts/syne-latin-700-normal-AKQAMC3F.woff") format("woff")}@font-face{font-family:Syne;font-style:normal;font-display:swap;font-weight:800;src:url("../fonts/syne-latin-800-normal-IACWSEYH.woff2") format("woff2"),url("../fonts/syne-latin-800-normal-QXEFEV2A.woff") format("woff")}:root.stage-galeria.theme-light,body.stage-galeria.theme-light{--bg-color: #efedea;--bg-gradient: radial-gradient( ellipse 34% 46% at 50% 6%, rgba(255, 255, 255, .95) 0%, rgba(255, 255, 255, .35) 55%, transparent 80% ), radial-gradient( ellipse 60% 58% at 50% 50%, #fbfaf8 0%, #f1efeb 55%, #e3e0db 85%, #d6d2cc 100% ), linear-gradient(180deg, #f4f2ee 0%, #ebe8e3 100%)}:root.stage-galeria.theme-dark,body.stage-galeria.theme-dark{--bg-color: #0b0b0c;--bg-gradient: radial-gradient( ellipse 30% 48% at 50% 4%, rgba(255, 244, 222, .2) 0%, rgba(255, 244, 222, .06) 50%, transparent 78% ), radial-gradient( ellipse 54% 52% at 50% 50%, #26241f 0%, #151412 50%, #0b0b0c 85%, #060606 100% )}:root.stage-mesa.theme-light,body.stage-mesa.theme-light,:root.stage-mesa.theme-dark,body.stage-mesa.theme-dark{--wood-grain: url("../fonts/nogal-AAVKVZXR.webp")}:root.stage-mesa.theme-light,body.stage-mesa.theme-light{--bg-color: #7a5236;--bg-gradient: radial-gradient( ellipse 70% 60% at 62% 38%, rgba(255, 228, 186, .38) 0%, rgba(255, 214, 160, .1) 55%, transparent 80% ), radial-gradient( ellipse 85% 80% at 50% 50%, transparent 55%, rgba(30, 16, 6, .45) 100% ), var(--wood-grain), linear-gradient( 100deg, #8a5d3b 0%, #7c5233 30%, #865a39 55%, #74492c 80%, #6a4228 100% )}:root.stage-mesa.theme-dark,body.stage-mesa.theme-dark{--bg-color: #24160c;--bg-gradient: radial-gradient( ellipse 52% 50% at 44% 44%, rgba(255, 186, 110, .22) 0%, rgba(255, 170, 90, .06) 55%, transparent 78% ), radial-gradient( ellipse 80% 75% at 50% 50%, transparent 40%, rgba(6, 3, 1, .75) 100% ), var(--wood-grain), linear-gradient(100deg, #3a2414 0%, #2f1d10 45%, #36210f 70%, #28180b 100%)}:root.stage-lino.theme-light,body.stage-lino.theme-light,:root.stage-lino.theme-dark,body.stage-lino.theme-dark{--linen-weave: url("../fonts/lino-C4OTHOZY.webp")}:root.stage-lino.theme-light,body.stage-lino.theme-light{--bg-color: #e6ddcc;--bg-gradient: radial-gradient( ellipse 62% 56% at 50% 46%, rgba(255, 252, 244, .55) 0%, transparent 75% ), radial-gradient( ellipse 90% 85% at 50% 50%, transparent 60%, rgba(90, 72, 48, .22) 100% ), var(--linen-weave), linear-gradient(180deg, #ebe3d3 0%, #e1d7c4 100%)}:root.stage-lino.theme-dark,body.stage-lino.theme-dark{--bg-color: #2a251d;--bg-gradient: radial-gradient( ellipse 58% 54% at 50% 46%, rgba(255, 236, 200, .14) 0%, transparent 75% ), radial-gradient( ellipse 85% 80% at 50% 50%, transparent 45%, rgba(8, 6, 4, .6) 100% ), var(--linen-weave), linear-gradient(180deg, #332d24 0%, #29241c 100%)}:root.stage-noche.theme-light,body.stage-noche.theme-light,:root.stage-noche.theme-dark,body.stage-noche.theme-dark{--bg-color: #070504;--bg-gradient: radial-gradient( ellipse 46% 44% at 36% 40%, rgba(255, 170, 84, .26) 0%, rgba(255, 150, 70, .08) 50%, transparent 76% ), radial-gradient( ellipse 70% 64% at 45% 48%, #1d130b 0%, #0f0a06 55%, #070504 100% )}:root.stage-transparente,body.stage-transparente{--bg-color: transparent;--bg-gradient: none}.stage-transparente .bg-ambient,.stage-galeria .bg-ambient,.stage-noche .bg-ambient{background:radial-gradient(ellipse 56% 48% at 50% 50%,var(--ambient-color) 0%,transparent 72%)}.stage-transparente .bg-ambient{display:none}:root{--bg-color: #0c0c0f;--bg-gradient: radial-gradient( ellipse 64% 60% at 50% 47%, #25252e 0%, #17171d 42%, #0c0c10 78%, #060608 100% );--surface-glass: rgba(22, 22, 26, .88);--surface-glass-solid: #16161a;--surface-border: rgba(255, 255, 255, .08);--surface-border-hover: rgba(255, 255, 255, .16);--ambient-color: rgba(166, 124, 82, .24);--text-main: #f5f5f7;--text-muted: #a1a1a6;--text-dim: #8a8a90;--accent: #a67c52;--on-accent: #1a1208;--accent-hover: #c49666;--accent-glow: rgba(166, 124, 82, .28);--accent-subtle: rgba(166, 124, 82, .12);--accent-dim: rgba(166, 124, 82, .22);--accent-electric: #d6d7fd;--accent-electric-glow: rgba(214, 215, 253, .18);--color-amber: #d4af37;--color-emerald: #2ecc71;--success: #2ecc71;--danger: #e74c3c;--space-2xs: 4px;--space-xs: 8px;--space-sm: 12px;--space-md: 16px;--space-lg: 24px;--space-xl: 32px;--space-2xl: 48px;--space-3xl: 72px;--radius-sm: 8px;--radius-md: 14px;--radius-lg: 24px;--radius-xl: 32px;--radius-full: 9999px;--blur-glass: 14px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3), 0 0 0 1px rgba(255, 255, 255, .05);--shadow-md: 0 10px 30px -10px rgba(0, 0, 0, .45), 0 0 0 1px rgba(255, 255, 255, .07);--shadow-lg: 0 20px 45px -12px rgba(0, 0, 0, .6), 0 0 0 1px rgba(255, 255, 255, .09);--shadow-xl: 0 30px 70px -15px rgba(0, 0, 0, .75), 0 0 0 1px rgba(255, 255, 255, .12);--font-display: "Syne", "Bebas Neue", -apple-system, sans-serif;--font-serif: "EB Garamond", "Cormorant Garamond", Georgia, serif;--font-sans: "Poppins", "Outfit", "Inter", system-ui, -apple-system, sans-serif;--font-mono: "Roboto Mono", monospace;--fb-font-ui: var(--font-sans);--fb-font-display: var(--font-display);--fb-table: var(--bg-color);--fb-ink: var(--text-main);--fb-muted: var(--text-muted);--fb-accent: var(--accent);--fb-bar: var(--surface-glass);--ease-editorial: cubic-bezier(.23, 1, .32, 1);--ease-out-editorial: cubic-bezier(.23, 1, .32, 1);--ease-in-out-editorial: cubic-bezier(.77, 0, .175, 1);--ease-spring: cubic-bezier(.16, 1, .3, 1);--ease-spring-subtle: cubic-bezier(.32, .72, 0, 1);--duration-micro: .12s;--duration-fast: .14s;--duration-ui: .24s;--duration-view: .38s;--duration-hero: .8s;--duration-normal: .24s;--duration-slow: .38s;--duration-slower: .5s;--ease-out-expo: cubic-bezier(.16, 1, .3, 1);--thumbnails-height: clamp(200px, 30vh, 260px)}button,input,select,textarea{font-family:inherit}.skip-link{position:fixed;inset-block-start:8px;inset-inline-start:8px;z-index:1000;padding:10px 14px;border-radius:var(--radius-sm);background:var(--surface-glass-solid);color:var(--text-main);transform:translateY(-160%)}.skip-link:focus{transform:translateY(0)}#primary-content:focus{outline:none}@media (prefers-color-scheme: light){:root:not(.theme-dark){--bg-color: #fafafa;--bg-gradient: radial-gradient( ellipse 64% 60% at 50% 47%, #ffffff 0%, #f6f5f2 45%, #e8e7e3 84%, #dddcd8 100% );--surface-glass: rgba(255, 255, 255, .88);--surface-glass-solid: #ffffff;--surface-border: rgba(0, 0, 0, .08);--surface-border-hover: rgba(0, 0, 0, .15);--text-main: #1c1d1f;--text-muted: #444444;--text-dim: #737373;--accent: #916840;--on-accent: #ffffff;--accent-hover: #75512e;--accent-glow: rgba(145, 104, 64, .22);--accent-subtle: rgba(145, 104, 64, .08);--accent-dim: rgba(145, 104, 64, .14);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .05), 0 0 0 1px rgba(0, 0, 0, .05);--shadow-md: 0 10px 25px -8px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .06);--shadow-lg: 0 18px 40px -10px rgba(0, 0, 0, .12), 0 0 0 1px rgba(0, 0, 0, .08);--shadow-xl: 0 28px 60px -12px rgba(0, 0, 0, .16), 0 0 0 1px rgba(0, 0, 0, .1)}}body.theme-light,html.theme-light,:root.theme-light{--bg-color: #fafafa;--bg-gradient: radial-gradient( ellipse 64% 60% at 50% 47%, #ffffff 0%, #f6f5f2 45%, #e8e7e3 84%, #dddcd8 100% );--surface-glass: rgba(255, 255, 255, .88);--surface-glass-solid: #ffffff;--surface-border: rgba(0, 0, 0, .08);--surface-border-hover: rgba(0, 0, 0, .15);--text-main: #1c1d1f;--text-muted: #444444;--text-dim: #737373;--accent: #916840;--on-accent: #ffffff;--accent-hover: #75512e;--accent-glow: rgba(145, 104, 64, .22);--accent-subtle: rgba(145, 104, 64, .08);--accent-dim: rgba(145, 104, 64, .14);--shadow-sm: 0 2px 6px rgba(0, 0, 0, .05), 0 0 0 1px rgba(0, 0, 0, .05);--shadow-md: 0 10px 25px -8px rgba(0, 0, 0, .08), 0 0 0 1px rgba(0, 0, 0, .06);--shadow-lg: 0 18px 40px -10px rgba(0, 0, 0, .12), 0 0 0 1px rgba(0, 0, 0, .08);--shadow-xl: 0 28px 60px -12px rgba(0, 0, 0, .16), 0 0 0 1px rgba(0, 0, 0, .1)}body.theme-dark,html.theme-dark,:root.theme-dark{--bg-color: #0c0c0f;--bg-gradient: radial-gradient( ellipse 64% 60% at 50% 47%, #25252e 0%, #17171d 42%, #0c0c10 78%, #060608 100% );--surface-glass: rgba(22, 22, 26, .88);--surface-glass-solid: #16161a;--surface-border: rgba(255, 255, 255, .08);--surface-border-hover: rgba(255, 255, 255, .16);--text-main: #f5f5f7;--text-muted: #a1a1a6;--text-dim: #8a8a90;--accent: #a67c52;--on-accent: #1a1208;--accent-hover: #c49666;--accent-glow: rgba(166, 124, 82, .28);--accent-subtle: rgba(166, 124, 82, .12);--accent-dim: rgba(166, 124, 82, .22);--shadow-sm: 0 2px 8px rgba(0, 0, 0, .3), 0 0 0 1px rgba(255, 255, 255, .05);--shadow-md: 0 10px 30px -10px rgba(0, 0, 0, .45), 0 0 0 1px rgba(255, 255, 255, .07);--shadow-lg: 0 20px 45px -12px rgba(0, 0, 0, .6), 0 0 0 1px rgba(255, 255, 255, .09);--shadow-xl: 0 30px 70px -15px rgba(0, 0, 0, .75), 0 0 0 1px rgba(255, 255, 255, .12)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#7d7d7d38;border-radius:var(--radius-full);border:2px solid transparent;background-clip:padding-box;transition:background-color var(--duration-fast) ease}::-webkit-scrollbar-thumb:hover{background:var(--accent)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}[hidden]{display:none!important}body,html{width:100vw;height:100vh;height:100dvh;overflow:hidden;position:fixed;top:0;left:0;background:var(--bg-gradient);background-color:var(--bg-color);font-family:var(--font-sans);color:var(--text-main);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;transition:background-color var(--duration-view) var(--ease-editorial),color var(--duration-view) var(--ease-editorial)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}@keyframes slideInUp{0%{opacity:0;transform:translate(-50%,100%)}to{opacity:1;transform:translate(-50%)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes breathe{0%,to{transform:scale(1);opacity:.6}50%{transform:scale(1.05);opacity:1}}.bg-ambient{position:absolute;inset:0;width:100%;height:100%;background:radial-gradient(ellipse 44% 28% at 50% 16%,rgba(255,255,255,.05) 0%,transparent 74%),radial-gradient(ellipse 60% 54% at 50% 48%,var(--ambient-color) 0%,transparent 72%);pointer-events:none;z-index:0}:root.stage-fashion.theme-light,body.stage-fashion.theme-light{--bg-color: #f6f4f5;--bg-gradient: radial-gradient( ellipse 78% 42% at 50% 14%, #ffffff 0%, rgba(255, 255, 255, .78) 46%, transparent 82% ), radial-gradient( ellipse 68% 62% at 50% 50%, #fdfbfc 0%, #f4f0f2 52%, #e6e0e4 86%, #dad2d7 100% )}:root.stage-fashion.theme-dark,body.stage-fashion.theme-dark{--bg-color: #100f14;--bg-gradient: radial-gradient( ellipse 64% 48% at 50% 24%, rgba(235, 228, 245, .13) 0%, transparent 70% ), radial-gradient( ellipse 66% 62% at 50% 48%, #282532 0%, #191720 44%, #0f0e14 80%, #08070b 100% )}.stage-fashion .bg-ambient{background:radial-gradient(ellipse 50% 32% at 50% 20%,rgba(255,252,254,.36) 0%,transparent 72%),radial-gradient(ellipse 62% 54% at 50% 49%,var(--ambient-color) 0%,transparent 74%)}:root.stage-atelier.theme-dark,body.stage-atelier.theme-dark{--bg-color: #0d0a08;--bg-gradient: radial-gradient( ellipse 46% 36% at 48% 18%, rgba(236, 185, 118, .12) 0%, transparent 74% ), radial-gradient( ellipse 62% 56% at 48% 47%, #33271e 0%, #1d1610 46%, #0f0b08 80%, #070504 100% )}:root.stage-atelier.theme-light,body.stage-atelier.theme-light{--bg-color: #f5efe4;--bg-gradient: radial-gradient( ellipse 56% 36% at 50% 18%, rgba(255, 251, 242, .85) 0%, transparent 75% ), radial-gradient( ellipse 66% 60% at 50% 47%, #fdfaf3 0%, #f3ece0 48%, #e4dac9 85%, #d6cab6 100% )}.stage-atelier .bg-ambient{background:radial-gradient(ellipse 46% 38% at 48% 40%,rgba(232,178,108,.2) 0%,transparent 70%),radial-gradient(ellipse 60% 54% at 50% 48%,var(--ambient-color) 0%,transparent 74%)}@property --ambient-color{syntax: "<color>"; inherits: true; initial-value: rgba(166,124,82,.24);}:root{transition:--ambient-color 1.6s var(--ease-out-expo)}@media (prefers-reduced-motion: reduce){:root{transition:none}}.autoflip-progress{position:fixed;top:0;left:0;height:3px;width:0%;background:linear-gradient(90deg,var(--accent) 0%,var(--accent-hover) 50%,var(--accent-electric) 100%);box-shadow:0 0 12px var(--accent-glow);z-index:1000;pointer-events:none;opacity:0;transition:opacity var(--duration-fast) ease}.autoflip-progress.active{opacity:1}#loading-screen{position:absolute;top:0;left:0;width:100%;height:100%;background:var(--bg-gradient);background-color:var(--bg-color);z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:var(--space-lg);transition:opacity var(--duration-slower) var(--ease-out-expo)}#loading-screen.is-handoff .loader-brand,#loading-screen.is-handoff .loader-sub{display:none}#loading-screen.is-handoff .spinner{position:fixed;left:50%;bottom:36px;width:24px;height:24px;margin-left:-12px;animation-delay:1.2s}.handoff-cover{position:fixed;display:block;object-fit:cover;transform-origin:0 0;border-radius:3px;box-shadow:0 2px 4px #0000002e,0 22px 48px -12px #00000073;will-change:transform}.handoff-cover--return{z-index:110;pointer-events:none}#loading-screen .loader-brand{font-size:clamp(1.2rem,3vw,1.6rem);font-weight:700;letter-spacing:-.02em;color:var(--text-main);animation:fadeInUp .6s var(--ease-out-expo) both}#loading-screen .loader-sub{font-size:.85rem;color:var(--text-muted);max-width:min(32rem,calc(100vw - 48px));text-align:center;animation:fadeInUp .6s var(--ease-out-expo) .1s both}.loader-error-message,.loader-error-hint{display:block}.loader-error-message{margin-bottom:var(--space-md);color:var(--text-muted);font-size:.9rem;overflow-wrap:anywhere}.loader-error-hint{font-size:.82rem;opacity:.8}.loader-error-hint code{padding:2px 6px;border-radius:4px;background:var(--accent-subtle);color:var(--text-main)}.loader-retry{display:block;margin:var(--space-lg) auto 0;padding:9px 16px;border:0;border-radius:10px;background:var(--accent);color:var(--on-accent);font:inherit;font-weight:650;cursor:pointer}.spinner{width:40px;height:40px;position:relative;animation:fadeIn .4s ease both}.spinner:before{content:"";position:absolute;inset:0;border:3px solid var(--surface-border);border-top-color:var(--accent);border-radius:50%;animation:spin .8s linear infinite}.spinner:after{content:"";position:absolute;inset:6px;border:2px solid transparent;border-top-color:var(--accent-hover);border-radius:50%;animation:spin 1.2s linear infinite reverse}#canvas-container{width:100vw;height:100vh;height:100dvh;position:fixed;top:0;left:0;z-index:1;display:flex;align-items:center;justify-content:center;overflow:hidden;perspective:1400px;animation:fadeIn .5s ease .2s both;touch-action:pan-y pinch-zoom}#canvas-container.drawer-inset{height:calc(100dvh - var(--thumbnails-height))}.book-wrapper{--book-scale: 1;--book-pan-x: 0px;--book-pan-y: 0px;position:relative;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 4px #0003,0 8px 16px #00000026,0 24px 48px #0003,0 48px 96px #00000040;border-radius:3px;transform-style:preserve-3d;transform:translate(var(--book-pan-x),var(--book-pan-y)) scale(var(--book-scale));transition:transform var(--duration-normal) var(--ease-spring),box-shadow var(--duration-slow) ease;margin:auto;will-change:transform;animation:fadeIn .4s var(--ease-out-expo) .2s both}.book-wrapper.is-panning{transition:none!important}.book-wrapper:before,.book-wrapper:after{content:"";position:absolute;top:3px;bottom:3px;width:6px;border-radius:2px;z-index:-1;pointer-events:none}.book-wrapper:before{left:-7px;background:linear-gradient(to right,#00000026,#c8c8d299,#dcdce6cc 60%,#f0f0f5);box-shadow:inset -1px 0 3px #00000026;transform:rotateY(-86deg);transform-origin:right center}.book-wrapper:after{right:-7px;background:linear-gradient(to left,#00000026,#c8c8d299,#dcdce6cc 60%,#f0f0f5);box-shadow:inset 1px 0 3px #00000026;transform:rotateY(86deg);transform-origin:left center}.book-wrapper.zoomed-in{--book-scale: 1.45;box-shadow:0 4px 8px #00000040,0 16px 32px #0003,0 32px 64px #00000040,0 64px 128px #0000004d}.stf__parent{overflow:visible!important;margin:0 auto}.page-item{position:relative;overflow:hidden}.page-item:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;background:linear-gradient(to right,#0000001a,#0000 3.5% 96.5%,#0000001a)}:root{--bar-h: 52px;--bar-gutter: 12px;--toolbar-w: 200px}.header-bar,.toolbar,.more-sheet,.page-popover,.page-jump-field{--ink-hover: rgba(125, 125, 125, .12);--ink-press: rgba(125, 125, 125, .2);--hairline: rgba(125, 125, 125, .22);--glass: var(--surface-glass);--track: rgba(125, 125, 125, .28)}@supports (color: color-mix(in srgb,red 50%,blue)){.header-bar,.toolbar,.more-sheet,.page-popover,.page-jump-field{--ink-hover: color-mix(in srgb, var(--text-main) 7%, transparent);--ink-press: color-mix(in srgb, var(--text-main) 13%, transparent);--hairline: color-mix(in srgb, var(--text-main) 11%, transparent);--glass: color-mix(in srgb, var(--surface-glass-solid) 80%, transparent);--track: color-mix(in srgb, var(--text-main) 18%, transparent)}}.bar-btn{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;min-width:44px;height:44px;padding:0;border:0;border-radius:12px;background:transparent;color:var(--text-muted);font:500 13.5px/1 var(--font-sans);text-decoration:none;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:color var(--duration-fast) ease}.bar-btn:before{content:"";position:absolute;inset:4px;border-radius:10px;background:transparent;transition:background-color var(--duration-fast) ease}.bar-btn>*{position:relative}.bar-btn svg,.more-item .ico{width:20px;height:20px;flex:none;fill:none;stroke:currentColor;stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.bar-btn:hover{color:var(--text-main)}.bar-btn:hover:before{background:var(--ink-hover)}.bar-btn:active:before{background:var(--ink-press)}.bar-btn[aria-expanded=true],.bar-btn[aria-pressed=true]{color:var(--accent)}.bar-btn[aria-expanded=true]:after,.bar-btn[aria-pressed=true]:after{content:"";position:absolute;left:50%;bottom:4px;width:14px;height:2px;margin-left:-7px;border-radius:2px;background:var(--accent)}.bar-btn:disabled{opacity:.32;cursor:default}.bar-btn:disabled:before{background:transparent}.bar-btn--text{gap:6px;padding:0 14px 0 12px}.bar-btn--text:before{inset:4px 2px}.bar-label{font-weight:500}.ico-on{display:none}[aria-pressed=true]>.ico-on{display:block}[aria-pressed=true]>.ico-off{display:none}.header-bar{--bar-side: 156px;position:fixed;top:0;left:0;right:0;z-index:10;display:grid;grid-template-columns:var(--bar-side) minmax(0,1fr) var(--bar-side);align-items:center;column-gap:8px;height:calc(var(--bar-h) + env(safe-area-inset-top,0px));padding:env(safe-area-inset-top,0px) max(var(--bar-gutter),env(safe-area-inset-right,0px)) 0 max(var(--bar-gutter),env(safe-area-inset-left,0px));background:var(--glass);backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);border-bottom:1px solid var(--hairline);transition:opacity .18s ease,visibility 0s linear 0s}@supports not (backdrop-filter: blur(12px)){.header-bar,.toolbar{background:var(--surface-glass-solid)}}.bar-start,.bar-end{display:flex;align-items:center;min-width:0}.bar-start{justify-self:start}.bar-end{justify-self:end;gap:2px}.header-bar h1{min-width:0;margin:0;font:600 16px/1.2 var(--font-display);letter-spacing:0;text-transform:none;text-align:center;color:var(--text-main);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.mobile-search-trigger{display:inline-flex}.search-box{display:none;position:relative;align-items:center;gap:8px;width:clamp(180px,14vw,224px);height:36px;margin-inline:4px;padding:0 12px;border:1px solid transparent;border-radius:var(--radius-full);background:var(--ink-hover);transition:background-color var(--duration-fast) ease,border-color var(--duration-fast) ease}.search-box:hover{background:var(--ink-press)}.search-box:focus-within{border-color:var(--accent)}.search-box:has(input:focus-visible){border-color:transparent;outline:2px solid var(--accent);outline-offset:2px}.search-box>svg{width:16px;height:16px;flex:none;fill:none;stroke:var(--text-dim);stroke-width:1.75;stroke-linecap:round;stroke-linejoin:round}.search-box input{flex:1;min-width:0;height:100%;border:0;outline:0;background:transparent;color:var(--text-main);font:400 13px/1 var(--font-sans)}.search-box input::placeholder{color:var(--text-dim)}.search-results-dropdown{position:absolute;top:calc(100% + 8px);right:0;width:min(340px,calc(100vw - 24px));background:var(--surface-glass-solid);border:1px solid var(--hairline);border-radius:var(--radius-md);box-shadow:var(--shadow-lg);max-height:min(320px,50dvh);overflow-y:auto;display:none;flex-direction:column;z-index:30;animation:fadeInUp .2s var(--ease-out-expo)}.search-results-dropdown.show{display:flex}.search-result-item{padding:var(--space-sm) var(--space-md);font-size:.8rem;cursor:pointer;border-bottom:1px solid var(--surface-border);display:flex;justify-content:space-between;align-items:center;gap:var(--space-sm);transition:background var(--duration-fast) ease}.search-result-item:last-child{border-bottom:none}.search-result-item:hover,.search-result-item.active{background:var(--accent-subtle)}.btn-icon-sm{background:#7d7d7d1a;border:1px solid transparent;color:var(--text-main);min-width:44px;min-height:44px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;cursor:pointer;font-weight:700;font-size:.85rem;font-family:var(--font-sans);transition:background-color var(--duration-normal) var(--ease-spring),color var(--duration-normal) var(--ease-spring),transform var(--duration-normal) var(--ease-spring),box-shadow var(--duration-normal) var(--ease-spring);flex-shrink:0}.btn-icon-sm:hover{background:var(--accent);color:#fff;transform:scale(1.08);box-shadow:var(--shadow-sm)}.btn-icon-sm.active{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}.toolbar{position:fixed;left:0;right:0;bottom:max(14px,env(safe-area-inset-bottom,0px));z-index:10;width:fit-content;max-width:calc(100% - (2*max(var(--bar-gutter),env(safe-area-inset-left,0px),env(safe-area-inset-right,0px))));height:48px;margin-inline:auto;padding:2px;display:flex;align-items:center;gap:2px;background:var(--glass);backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);border:1px solid var(--hairline);border-radius:var(--radius-full);box-shadow:0 8px 24px -16px #0000008c;transition:opacity .18s ease,visibility 0s linear 0s}.toolbar-sep{width:1px;height:20px;margin-inline:4px;background:var(--hairline)}.page-jump{--caret-w: 0px;position:relative;display:inline-flex;align-items:center;justify-content:center;gap:2px;height:44px;min-width:calc(var(--indicator-ch, 9) * 1ch + 20px + var(--caret-w));padding:0 10px;border:0;border-radius:22px;background:transparent;color:var(--text-main);font:500 13px/1 var(--font-sans);font-variant-numeric:tabular-nums;white-space:nowrap;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--duration-fast) ease}.page-jump:hover{background:var(--ink-hover)}.page-jump[aria-expanded=true]{color:var(--accent)}.page-indicator{font-variant-numeric:tabular-nums}.page-jump-caret{width:14px;height:14px;flex:none;margin-inline-start:2px;fill:none;stroke:var(--text-dim);stroke-width:2;stroke-linecap:round;stroke-linejoin:round;transition:transform var(--duration-fast) ease}.page-jump[aria-expanded=true] .page-jump-caret{stroke:var(--accent);transform:rotate(180deg)}.page-popover{display:contents}.slider-container{--slider-fill: 0%;--slider-ratio: 0;position:relative;display:flex;align-items:center;width:200px;height:44px;margin-inline:4px 6px}.slider-container input[type=range]{-webkit-appearance:none;appearance:none;width:100%;height:44px;margin:0;background:transparent;cursor:pointer;outline:none}.slider-container input[type=range]::-webkit-slider-runnable-track{height:4px;border-radius:2px;background:linear-gradient(to right,var(--accent) var(--slider-fill),var(--track) var(--slider-fill))}.slider-container input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;width:16px;height:16px;margin-top:-6px;border-radius:50%;border:2px solid var(--surface-glass-solid);background:var(--accent);box-shadow:0 0 0 1px var(--hairline);cursor:pointer;transition:transform var(--duration-fast) var(--ease-spring)}.slider-container input[type=range]:hover::-webkit-slider-thumb,.slider-container input[type=range]:active::-webkit-slider-thumb{transform:scale(1.2)}.slider-container input[type=range]:focus-visible::-webkit-slider-thumb{outline:2px solid var(--accent);outline-offset:2px}.slider-container input[type=range]::-moz-range-track{height:4px;border-radius:2px;background:var(--track)}.slider-container input[type=range]::-moz-range-progress{height:4px;border-radius:2px;background:var(--accent)}.slider-container input[type=range]::-moz-range-thumb{width:12px;height:12px;border-radius:50%;border:2px solid var(--surface-glass-solid);background:var(--accent);cursor:pointer}.slider-container input[type=range]:focus-visible::-moz-range-thumb{outline:2px solid var(--accent);outline-offset:2px}.slider-tooltip{position:absolute;bottom:calc(100% + 4px);left:calc(8px + (100% - 16px) * var(--slider-ratio));transform:translate(-50%) translateY(4px);padding:6px 10px;border:1px solid var(--hairline);border-radius:var(--radius-sm);background:var(--surface-glass-solid);color:var(--text-main);font:500 11.5px/1 var(--font-sans);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--duration-fast) ease,transform var(--duration-fast) ease}.slider-container:hover .slider-tooltip,.slider-container:has(input:active) .slider-tooltip{opacity:1;transform:translate(-50%) translateY(0)}.page-jump-field{display:none;align-items:center;gap:10px;color:var(--text-muted);font:400 13px/1 var(--font-sans)}.page-jump-field input{width:64px;height:36px;padding:0 8px;border:1px solid var(--hairline);border-radius:10px;background:var(--ink-hover);color:var(--text-main);font:500 14px/1 var(--font-sans);font-variant-numeric:tabular-nums;text-align:center;-moz-appearance:textfield;appearance:textfield}.page-jump-field input::-webkit-outer-spin-button,.page-jump-field input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.page-jump-field input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.toolbar.is-jump-open .page-jump-field{position:absolute;bottom:calc(100% + 10px);left:50%;transform:translate(-50%);display:flex;padding:10px 14px;border:1px solid var(--hairline);border-radius:14px;background:var(--surface-glass-solid);box-shadow:var(--shadow-lg);white-space:nowrap}@media (max-width: 1023px),(max-height: 480px){.page-jump{--caret-w: 18px}.page-popover{position:absolute;bottom:calc(100% + 10px);left:50%;z-index:2;display:none;flex-direction:column;gap:6px;width:min(320px,calc(100vw - 24px));padding:6px 16px 14px;transform:translate(-50%);border:1px solid var(--hairline);border-radius:16px;background:var(--surface-glass-solid);box-shadow:var(--shadow-lg)}.toolbar.is-jump-open .page-popover{display:flex}.page-popover .slider-container{width:100%;margin:0}.page-popover .slider-tooltip{display:none}.toolbar.is-jump-open .page-jump-field,.page-jump-field{position:static;display:flex;justify-content:center;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none}}@media (min-width: 1024px) and (min-height: 481px){.page-jump-caret{display:none}}.embed-only{display:none}body.mode-embed .embed-only{display:inline-flex}body.mode-embed .toolbar-sep.embed-only{display:block}body.mode-embed .header-bar,body.mode-embed .more-sheet,body.mode-embed .more-scrim{display:none!important}.bars-hidden .header-bar,.bars-hidden .toolbar{opacity:0;visibility:hidden;pointer-events:none;transition:opacity .4s ease,visibility 0s linear .4s}.more-scrim{position:fixed;inset:0;z-index:45;background:transparent;visibility:hidden;opacity:0;transition:opacity .24s ease,visibility 0s linear .24s}.more-scrim.open{visibility:visible;opacity:1;transition:opacity .24s ease}.more-sheet{position:fixed;top:0;right:0;bottom:0;z-index:50;display:flex;flex-direction:column;width:min(340px,100vw);padding:env(safe-area-inset-top,0px) env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) 0;background:var(--surface-glass-solid);border-left:1px solid var(--hairline);box-shadow:-24px 0 48px -32px #0000008c;transform:translate(100%);visibility:hidden;opacity:0;transition:transform .3s var(--ease-out-expo),opacity .2s ease,visibility 0s linear .3s}.more-sheet.open{transform:none;visibility:visible;opacity:1;transition-delay:0s}.more-grip{display:none}.more-header{display:flex;align-items:center;justify-content:space-between;min-height:56px;padding:4px 8px 0 20px}.more-title{margin:0;font:600 16px/1.2 var(--font-display);color:var(--text-main)}.more-body{flex:1;min-height:0;padding:0 8px 16px;overflow-y:auto;overscroll-behavior:contain;scrollbar-width:thin}.more-group+.more-group{margin-top:4px;border-top:1px solid var(--hairline)}.more-group-title{margin:0;padding:14px 12px 6px;color:var(--text-dim);font:500 12px/1 var(--font-sans);letter-spacing:.02em}.more-item{position:relative;display:flex;align-items:center;gap:14px;width:100%;min-height:44px;padding:0 12px;border:0;border-radius:12px;background:transparent;color:var(--text-main);font:500 14px/1.25 var(--font-sans);text-align:start;cursor:pointer;-webkit-tap-highlight-color:transparent;transition:background-color var(--duration-fast) ease}.more-item .ico{color:var(--text-muted);transition:color var(--duration-fast) ease}.more-item:hover{background:var(--ink-hover)}.more-item:active{background:var(--ink-press)}.more-item:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.more-item[aria-pressed=true] .ico,.more-item[aria-expanded=true] .ico{color:var(--accent)}#btn-bookmark[aria-pressed=true] .ico-bookmark{fill:currentColor}.more-label{flex:1;min-width:0}.more-kbd{color:var(--text-dim);font:500 11px/1 var(--font-mono);white-space:nowrap}.more-item:not([aria-pressed]) .more-kbd{margin-inline-end:48px}.more-state{color:var(--accent);font:500 12px/1 var(--font-sans)}.more-state.is-update{color:var(--text-main)}.more-details>summary{list-style:none}.more-details>summary::-webkit-details-marker{display:none}.more-chevron{transition:transform .18s var(--ease-out-expo)}.more-details[open] .more-chevron{transform:rotate(90deg)}.more-details-body{padding-inline-start:38px}.more-details-body .more-item{min-height:56px;padding-block:8px}.more-hint{display:block;margin-top:3px;color:var(--text-dim);font:400 12.5px/1.4 var(--font-sans)}.more-item:disabled{opacity:.5;cursor:default}.more-details-note{margin:4px 12px 10px;color:var(--text-dim);font:400 12.5px/1.4 var(--font-sans)}.more-switch{position:relative;flex:none;width:34px;height:20px;border:1.5px solid var(--text-dim);border-radius:10px;transition:border-color var(--duration-fast) ease}.more-switch:after{content:"";position:absolute;top:50%;left:3px;width:11px;height:11px;margin-top:-5.5px;border-radius:50%;background:var(--text-dim);transition:transform .18s var(--ease-out-expo),background-color var(--duration-fast) ease}.more-item[aria-pressed=true] .more-switch{border-color:var(--accent)}.more-item[aria-pressed=true] .more-switch:after{transform:translate(14px);background:var(--accent)}@media (max-width: 767px){.more-scrim{background:#00000080}.more-sheet{top:auto;left:0;width:auto;max-height:min(88dvh,700px);padding:0 env(safe-area-inset-right,0px) env(safe-area-inset-bottom,0px) env(safe-area-inset-left,0px);border-left:0;border-top:1px solid var(--hairline);border-radius:20px 20px 0 0;box-shadow:0 -24px 48px -28px #0009;transform:translateY(100%)}.more-grip{display:block;flex:none;width:36px;height:4px;margin:8px auto 0;border-radius:2px;background:var(--track)}.more-header{min-height:48px;padding-top:0}}@media (max-width: 767px),(pointer: coarse){.more-kbd{display:none}}@media (max-width: 767px){.header-bar{grid-template-columns:44px 44px minmax(0,1fr) 44px 44px;column-gap:0;padding-inline:max(4px,env(safe-area-inset-left,0px)) max(4px,env(safe-area-inset-right,0px))}.bar-start,.bar-end{display:contents}.header-bar>*,.bar-start>*,.bar-end>*{grid-row:1}#btn-back-library{grid-column:1;padding:0}#btn-toc{grid-column:2}.header-bar h1{grid-column:3;padding-inline:6px;font-size:15px}#btn-mobile-search{grid-column:4}#btn-more{grid-column:5}.bar-label{display:none}}@media (max-width: 1099px),(max-height: 480px){.search-box.mobile-open{position:absolute;top:calc(100% + 8px);right:max(var(--bar-gutter),env(safe-area-inset-right,0px));z-index:30;display:flex;width:min(380px,calc(100vw - 24px));height:48px;margin:0;padding:0 14px;border:1px solid var(--hairline);border-radius:14px;background:var(--surface-glass-solid);box-shadow:var(--shadow-lg)}.search-box.mobile-open .search-results-dropdown{width:100%}}@media (max-width: 767px){.search-box.mobile-open{left:max(8px,env(safe-area-inset-left,0px));right:max(8px,env(safe-area-inset-right,0px));width:auto}.search-box.mobile-open input{font-size:16px}}@media (min-width: 1100px){.header-bar{--bar-side: 340px}.mobile-search-trigger{display:none}.search-box{display:flex}}@media (max-height: 480px){:root{--bar-h: 48px}.header-bar{display:flex;gap:2px;padding-inline:max(8px,env(safe-area-inset-left,0px)) max(8px,env(safe-area-inset-right,0px))}.bar-start,.bar-end{display:contents}#btn-back-library{order:0;padding:0}#btn-toc{order:1}.header-bar h1{order:2;flex:1;padding-inline:8px;font-size:14.5px;text-align:start}#btn-mobile-search{order:3;display:inline-flex}.search-box:not(.mobile-open){display:none}#btn-more{order:5;margin-inline-start:calc(var(--toolbar-w) + 4px)}.bar-label{display:none}body:not(.mode-embed) .toolbar{top:env(safe-area-inset-top,0px);bottom:auto;left:auto;right:calc(max(8px,env(safe-area-inset-right,0px)) + 46px);width:auto;height:var(--bar-h);margin:0;padding:0;border:0;border-radius:0;background:transparent;backdrop-filter:none;-webkit-backdrop-filter:none;box-shadow:none}.page-popover{top:calc(100% + 8px);bottom:auto}}@media (prefers-reduced-motion: reduce){.header-bar,.toolbar{transition-duration:.12s,0s}.bars-hidden .header-bar,.bars-hidden .toolbar{transition-duration:.12s,0s;transition-delay:0s,.12s}.more-sheet,.more-scrim{transform:none;transition-property:opacity,visibility;transition-duration:.12s}.more-switch:after,.page-jump-caret,.slider-container input[type=range]::-webkit-slider-thumb{transition:none}}.toast-notification{position:fixed;top:calc(var(--bar-h) + env(safe-area-inset-top,0px) + 12px);left:50%;transform:translate(-50%) translateY(-16px);background:var(--surface-glass-solid, #16161a);color:var(--text-main, #ffffff);border:1px solid var(--surface-border, rgba(255, 255, 255, .12));padding:var(--space-sm) var(--space-lg);border-radius:var(--radius-full);font-size:.85rem;font-weight:600;box-shadow:var(--shadow-xl);z-index:10000;opacity:0;pointer-events:none;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);transition:opacity var(--duration-normal) var(--ease-spring),transform var(--duration-normal) var(--ease-spring)}.toast-notification.show{opacity:1;transform:translate(-50%) translateY(0)}body.mode-embed .toast-notification{top:calc(env(safe-area-inset-top,0px) + 16px)}.modal-overlay{position:absolute;top:0;left:0;width:100vw;height:100vh;background:#0009;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);z-index:60;display:flex;align-items:center;justify-content:center;visibility:hidden;opacity:0;transition:opacity var(--duration-normal) ease}.modal-overlay.open{visibility:visible;opacity:1}.modal-card{background:var(--surface-glass);backdrop-filter:blur(28px) saturate(1.3);-webkit-backdrop-filter:blur(28px) saturate(1.3);border:1px solid var(--surface-border);border-radius:var(--radius-lg);width:clamp(320px,50vw,440px);max-width:90vw;padding:var(--space-lg);box-shadow:var(--shadow-xl);transform:scale(.95);transition:transform var(--duration-normal) var(--ease-spring)}.modal-overlay.open .modal-card{transform:scale(1)}.modal-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-md);padding-bottom:var(--space-sm);border-bottom:1px solid var(--surface-border)}.modal-header h3{font-size:1.05rem;font-weight:700;letter-spacing:-.01em}.shortcuts-grid{display:flex;flex-direction:column;gap:var(--space-sm)}.shortcut-item{display:flex;align-items:center;justify-content:space-between;font-size:.85rem;color:var(--text-muted)}kbd{background:var(--accent-subtle);border:1px solid var(--surface-border);border-radius:6px;padding:2px 8px;font-family:var(--font-mono);font-size:.75rem;font-weight:600;color:var(--accent);min-width:28px;text-align:center}.toc-drawer{position:absolute;top:0;left:0;width:clamp(240px,35vw,300px);height:100vh;background:var(--surface-glass);backdrop-filter:blur(28px) saturate(1.3);-webkit-backdrop-filter:blur(28px) saturate(1.3);border-right:1px solid var(--surface-border);z-index:40;visibility:hidden;opacity:0;transform:translate(-100%);transition:opacity var(--duration-slow) var(--ease-out-expo),transform var(--duration-slow) var(--ease-out-expo);padding:var(--space-lg);display:flex;flex-direction:column;gap:var(--space-md);box-shadow:var(--shadow-xl)}.toc-drawer.open{visibility:visible;opacity:1;transform:translate(0)}.toc-header{display:flex;align-items:center;justify-content:space-between;gap:var(--space-xs);font-size:.95rem;font-weight:700;border-bottom:1px solid var(--surface-border);padding-bottom:var(--space-sm)}.toc-tabs{display:flex;gap:var(--space-xs);background:#7d7d7d14;padding:3px;border-radius:var(--radius-full)}.toc-tab{background:transparent;border:none;color:var(--text-muted);font-size:.78rem;font-weight:600;padding:4px 10px;border-radius:var(--radius-full);cursor:pointer;transition:all var(--duration-fast) ease}.toc-tab:hover{color:var(--text-main)}.toc-tab.active{background:var(--accent);color:var(--on-accent)}.toc-list{display:flex;flex-direction:column;gap:var(--space-xs);overflow-y:auto;flex:1;scrollbar-width:thin;scrollbar-color:var(--surface-border) transparent}.toc-item{padding:var(--space-sm) var(--space-md);background:#7d7d7d0d;border-radius:var(--radius-sm);font-size:.85rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:space-between;transition:background-color var(--duration-normal) ease,color var(--duration-normal) ease,transform var(--duration-normal) ease;color:var(--text-muted);width:100%;min-height:44px;border:0;text-align:start;font-family:inherit}.toc-item:hover{background:var(--accent-subtle);color:var(--accent);transform:translate(4px)}.bookmark-row{display:grid;grid-template-columns:minmax(0,1fr) 44px;gap:var(--space-xs);align-items:center}.thumbnails-overlay{position:fixed;top:0;left:0;width:100vw;height:100vh;background:#00000080;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);z-index:25;visibility:hidden;opacity:0;pointer-events:none;transition:opacity var(--duration-slow) ease}.thumbnails-overlay.open{visibility:visible;opacity:1;pointer-events:auto}.thumbnails-drawer{position:fixed;bottom:0;left:0;width:100%;height:var(--thumbnails-height);background:var(--surface-glass);backdrop-filter:blur(28px) saturate(1.3);-webkit-backdrop-filter:blur(28px) saturate(1.3);border-top:1px solid var(--surface-border);z-index:30;visibility:hidden;opacity:0;pointer-events:none;transform:translateY(100%);transition:opacity var(--duration-slow) var(--ease-out-expo),transform var(--duration-slow) var(--ease-out-expo);padding:var(--space-md) max(var(--space-lg),env(safe-area-inset-right)) max(var(--space-md),env(safe-area-inset-bottom)) max(var(--space-lg),env(safe-area-inset-left));display:flex;flex-direction:column;gap:var(--space-sm);box-shadow:0 -10px 40px #0000004d}.thumbnails-drawer.open{visibility:visible;opacity:1;pointer-events:auto;transform:translateY(0)}.thumbnails-header{display:flex;align-items:center;justify-content:space-between;font-size:.88rem;font-weight:700;color:var(--text-main);padding-bottom:var(--space-xs);border-bottom:1px solid var(--surface-border)}.btn-close{background:transparent;border:none;color:var(--text-muted);font-size:1.4rem;line-height:1;cursor:pointer;width:44px;height:44px;border-radius:var(--radius-full);display:flex;align-items:center;justify-content:center;transition:background-color var(--duration-normal) ease,color var(--duration-normal) ease}.btn-close:hover{background:#ef444426;color:var(--danger)}.thumbnails-grid{display:flex;gap:clamp(10px,2vw,18px);overflow-x:auto;height:clamp(120px,20vh,170px);align-items:center;padding-bottom:var(--space-xs);scrollbar-width:thin;scrollbar-color:var(--surface-border) transparent}.thumbnails-grid::-webkit-scrollbar{height:4px}.thumbnails-grid::-webkit-scrollbar-thumb{background:var(--surface-border);border-radius:2px}.thumb-item{flex:0 0 auto;height:clamp(110px,18vh,150px);display:flex;flex-direction:column;align-items:center;gap:var(--space-xs);cursor:pointer;border-radius:var(--radius-sm);padding:var(--space-xs);transition:background-color var(--duration-normal) var(--ease-spring),border-color var(--duration-normal) var(--ease-spring),transform var(--duration-normal) var(--ease-spring);border:2px solid transparent;background:#7d7d7d08;color:inherit;font-family:inherit}.thumb-item:hover{transform:translateY(-6px) scale(1.02);background:#7d7d7d1a}.thumb-item.active{border-color:var(--accent);box-shadow:var(--shadow-md);background:var(--accent-subtle)}.thumb-item img,.thumb-item canvas{height:clamp(85px,14vh,115px);width:auto;border-radius:4px;object-fit:contain;transition:transform var(--duration-normal) ease}.thumb-item:hover img,.thumb-item:hover canvas{transform:scale(1.03)}.thumb-item span{font-size:.7rem;font-weight:600;color:var(--text-dim);font-variant-numeric:tabular-nums}.thumb-item.active span{color:var(--accent)}@media (max-width: 600px){.toc-drawer{width:85vw}}@media print{.header-bar,.toolbar,.more-sheet,.more-scrim,.toc-drawer,.thumbnails-drawer,.bg-ambient,.toast-notification,.modal-overlay{display:none!important}}@media (prefers-reduced-motion: reduce){.bg-ambient,.autoflip-progress,.spinner,.library-hero{animation:none}.book-card,.collection-card,.thumb-item,.btn-icon-sm,.toc-item,.modal-overlay,.thumbnails-drawer{transition-property:color,background-color,border-color,visibility;transition-duration:.12s}.book-card:hover,.collection-card:hover,.thumb-item:hover,.btn-icon-sm:hover,.toc-item:hover{transform:none}}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.library-view{--accent: #c8a96e;--accent-hover: #dbbf88;--accent-dim: rgba(200, 169, 110, .25);--accent-subtle: rgba(200, 169, 110, .08);--card-bg: rgba(255, 255, 255, .02);--card-border: rgba(255, 255, 255, .07);--card-hover-border: rgba(200, 169, 110, .35);position:fixed;inset:0;overflow-y:auto;overflow-x:hidden;background:var(--bg-gradient);background-color:var(--bg-color);z-index:100;padding:0 0 100px;box-sizing:border-box;scrollbar-width:thin;scrollbar-color:rgba(255,255,255,.15) transparent;transition:background var(--duration-view) var(--ease-editorial),color var(--duration-view) var(--ease-editorial)}.library-view::-webkit-scrollbar{width:6px}.library-view::-webkit-scrollbar-thumb{background:#ffffff26;border-radius:9999px}.library-container{max-width:1360px;margin:0 auto;padding:0 clamp(20px,4vw,56px);display:flex;flex-direction:column}.library-nav{position:sticky;top:0;z-index:50;display:flex;align-items:center;justify-content:space-between;gap:20px;padding:16px 0;margin-bottom:clamp(28px,4vh,48px);isolation:isolate}.library-nav:before{content:"";position:absolute;inset:0 calc(50% - 50vw);z-index:-1;background:var(--surface-glass, rgba(10, 12, 18, .85));backdrop-filter:blur(24px) saturate(1.2);-webkit-backdrop-filter:blur(24px) saturate(1.2);border-bottom:1px solid var(--surface-border, rgba(255, 255, 255, .08));transition:background var(--duration-view) ease,border-color var(--duration-view) ease}body.theme-light .library-view,html.theme-light .library-view{--accent: #76501d;--accent-hover: #5f3f15;--accent-dim: rgba(118, 80, 29, .2);--accent-subtle: rgba(118, 80, 29, .08);--card-bg: #ffffff;--card-border: rgba(0, 0, 0, .07);--card-hover-border: rgba(145, 104, 64, .45);scrollbar-color:rgba(0,0,0,.15) transparent}body.theme-light .library-nav:before{background:#faf8f3d1;border-bottom:1px solid rgba(60,40,10,.08)}body.theme-light .library-nav-search input{background:#00000008;border:1px solid rgba(0,0,0,.1);color:var(--text-main)}body.theme-light .library-nav-search svg{color:var(--text-muted)}body.theme-light .btn-icon-sm{background:#00000008;border:1px solid rgba(0,0,0,.08);color:var(--text-muted)}body.theme-light .btn-icon-sm:hover{background:#0000000f;border-color:#00000026;color:var(--text-main)}body.theme-light .btn-breadcrumb{background:#00000008;border:1px solid rgba(0,0,0,.08)}body.theme-light .section-header{border-bottom:1px solid rgba(0,0,0,.06)}body.theme-light .section-count{background:#0000000f;color:var(--text-dim)}body.theme-light .collection-card{background:#fff;border:1px solid rgba(0,0,0,.07);box-shadow:0 4px 18px #0000000a}body.theme-light .collection-card:hover,body.theme-light .collection-card:focus-visible{background:#fff;border-color:var(--card-hover-border);box-shadow:0 16px 36px -10px #0000001a,0 0 0 1px var(--card-hover-border)}body.theme-light .collection-card-footer{border-top:1px solid rgba(0,0,0,.06)}body.theme-light .collection-count-pill{background:#0000000d}body.theme-light .collection-hero{border-bottom:1px solid rgba(0,0,0,.06)}body.theme-light .pill-btn{background:#00000008;border:1px solid rgba(0,0,0,.08);color:var(--text-muted)}body.theme-light .pill-btn:hover{background:#0000000f;border-color:#0000001f;color:var(--text-main)}body.theme-light .pill-btn.active{background:var(--accent);color:#fff;border-color:var(--accent)}body.theme-light .card-badge{background:#0000000d;color:var(--text-muted)}.library-brand{display:inline-flex;align-items:center;gap:10px;color:var(--text-main);text-decoration:none;font-family:var(--font-display);font-size:1.15rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;transition:opacity var(--duration-fast) ease}.library-brand:hover{opacity:.85}.library-brand svg{color:var(--accent)}.library-nav-search{position:relative;display:flex;align-items:center;flex:1;max-width:460px}.library-nav-search svg{position:absolute;left:12px;color:var(--text-dim);pointer-events:none}.library-nav-search input{width:100%;padding:9px 32px 9px 36px;background:#ffffff0a;border:1px solid rgba(255,255,255,.09);border-radius:var(--radius-sm);color:var(--text-main);font-family:var(--font-sans);font-size:.86rem;transition:all var(--duration-fast) ease;box-sizing:border-box}.library-nav-search input:focus{outline:none;border-color:var(--accent);background:#ffffff14;box-shadow:0 0 0 3px var(--accent-subtle)}.search-kbd{position:absolute;inset-inline-end:10px;display:none;min-width:22px;height:22px;padding:0 6px;align-items:center;justify-content:center;border:1px solid var(--surface-border, rgba(255, 255, 255, .12));border-radius:6px;color:var(--text-dim);font:500 .72rem/1 var(--font-mono, monospace);pointer-events:none}@media (pointer: fine){.library-nav-search input:placeholder-shown:not(:focus)~.search-kbd{display:inline-flex}}.btn-clear-search{position:absolute;inset-inline-end:0;width:44px;height:44px;align-items:center;justify-content:center;padding:0;border:0;border-radius:var(--radius-sm);background:transparent;color:var(--text-muted);font:inherit;font-size:1.2rem;cursor:pointer;transition:background-color var(--duration-fast) ease,color var(--duration-fast) ease}.btn-clear-search:hover,.btn-clear-search:focus-visible{background:var(--accent-subtle);color:var(--accent-hover)}.library-nav-actions{display:flex;align-items:center;gap:10px}.btn-icon-sm{min-width:44px;min-height:44px;border-radius:var(--radius-sm);background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--text-muted);display:inline-flex;align-items:center;justify-content:center;cursor:pointer;transition:background-color var(--duration-fast) var(--ease-spring),border-color var(--duration-fast) var(--ease-spring),color var(--duration-fast) var(--ease-spring),transform var(--duration-fast) var(--ease-spring)}.offline-card{max-width:520px}.offline-status{min-height:1.5em;color:var(--text-muted)}.offline-card progress{width:100%;height:10px;accent-color:var(--accent)}.offline-actions{display:flex;flex-wrap:wrap;gap:var(--space-sm);margin-block-start:var(--space-lg)}.btn-primary,.btn-secondary{min-height:44px;padding-inline:var(--space-md);border-radius:var(--radius-sm);border:1px solid var(--surface-border);font:600 .9rem/1 var(--font-sans);cursor:pointer}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn-secondary{background:var(--surface-glass-solid);color:var(--text-main)}.btn-icon-sm:hover{color:var(--text-main);background:#ffffff14;border-color:#ffffff29;transform:translateY(-1px)}.btn-icon-sm svg{width:18px;height:18px;fill:currentColor}.library-nav .btn-icon-sm.active,body.theme-light .library-nav .btn-icon-sm.active{background:transparent;color:var(--text-main);box-shadow:none}.library-nav .btn-icon-sm:hover,body.theme-light .library-nav .btn-icon-sm:hover{background:var(--accent-subtle);border-color:var(--accent);color:var(--accent);box-shadow:none;transform:none}.library-breadcrumbs{display:flex;align-items:center;gap:10px;font-family:var(--font-sans);font-size:.85rem;margin-bottom:24px}.btn-breadcrumb{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;border-radius:var(--radius-sm);background:#ffffff0d;border:1px solid rgba(255,255,255,.08);color:var(--text-muted);font-family:var(--font-sans);font-size:.84rem;font-weight:500;cursor:pointer;transition:all var(--duration-fast) ease}.btn-breadcrumb:hover{color:var(--text-main);background:#ffffff17;border-color:#ffffff26}.breadcrumb-sep{color:var(--text-dim)}.breadcrumb-current{color:var(--text-main);font-weight:600}.library-hero{text-align:left;padding:8px 0 clamp(24px,4vh,48px)}.library-hero-title{font-family:var(--font-display);font-size:clamp(2.4rem,4.8vw,3.6rem);font-weight:700;letter-spacing:.02em;color:var(--text-main);line-height:1.12;margin:0 0 12px;text-wrap:balance}.library-hero-subtitle{font-family:var(--font-serif);font-size:clamp(1.05rem,1.8vw,1.25rem);font-style:italic;font-weight:400;line-height:1.65;color:var(--text-muted);max-width:680px;margin:0;text-wrap:pretty}.library-hero-stats{display:flex;flex-wrap:wrap;gap:6px 18px;margin:18px 0 0;padding:0;list-style:none;font-family:var(--font-sans);font-size:.82rem;color:var(--text-dim);font-variant-numeric:tabular-nums}.library-hero-stats li{display:inline-flex;align-items:baseline;gap:6px}.library-hero-stats strong{color:var(--text-main);font-weight:600}.library-hero-stats li+li:before{content:"";width:4px;height:4px;margin-right:12px;align-self:center;border-radius:50%;background:var(--accent);opacity:.6}.library-hero-stats li+li:before{display:none}@media (min-width: 600px){.library-hero-stats li+li:before{display:block}}.collection-card-counts{display:inline-flex;align-items:center;flex-wrap:wrap;gap:6px 12px}.collection-card-stats{font-family:var(--font-sans);font-size:.78rem;color:var(--text-dim);font-variant-numeric:tabular-nums}.library-section{margin-bottom:clamp(40px,6vh,64px)}.section-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:24px;padding-bottom:12px;border-bottom:1px solid rgba(255,255,255,.06)}.section-title-wrap{display:flex;align-items:center;flex-wrap:wrap;gap:8px 12px;min-width:0}.section-title{font-family:var(--font-sans);font-size:1.25rem;font-weight:600;color:var(--text-main);letter-spacing:-.01em;margin:0}.section-count{font-family:var(--font-sans);font-size:.76rem;font-weight:600;color:var(--text-dim);padding:3px 10px;border-radius:9999px;background:#ffffff0f;white-space:nowrap;font-variant-numeric:tabular-nums}html[data-library-route=deep] #library-home-view{visibility:hidden;animation:library-deep-link-hold 0s linear 6s forwards}@keyframes library-deep-link-hold{to{visibility:visible}}.library-collections-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(min(100%,360px),1fr));gap:28px}.library-collections-grid>.collection-card:only-child{grid-column:1 / -1}@media (min-width: 1080px){.library-collections-grid{grid-template-columns:repeat(auto-fill,minmax(480px,1fr))}.library-collections-grid>.collection-card:only-child{grid-column:1 / -1;grid-template-columns:220px minmax(0,1fr);gap:48px;padding:40px 48px}.library-collections-grid>.collection-card:only-child .collection-info{max-width:680px}.library-collections-grid>.collection-card:only-child .collection-card-footer{margin-top:12px}.library-collections-grid>.collection-card:only-child .collection-card-title{font-size:2rem}.library-collections-grid>.collection-card:only-child .collection-card-desc{font-size:.95rem;-webkit-line-clamp:3}}.collection-card{display:grid;grid-template-columns:140px 1fr;gap:24px;padding:24px;background:var(--card-bg);border:1px solid var(--card-border);border-radius:16px;cursor:pointer;transition:all .3s cubic-bezier(.16,1,.3,1);outline:none;position:relative;overflow:hidden;min-width:0}.collection-card:focus-visible,.book-card:focus-visible{outline:2px solid var(--accent);outline-offset:3px}a.collection-card,a.book-card{color:inherit;text-decoration:none}@media (max-width: 480px){.collection-card{grid-template-columns:minmax(0,1fr);padding:20px 18px 18px;gap:18px}.collection-stack-wrap{width:62%;max-width:200px;margin:4px auto 0}.collection-info{min-width:0}}@media (min-width: 600px){.collection-card{grid-template-columns:175px 1fr;padding:30px;gap:30px}}.collection-card:hover,.collection-card:focus-visible{border-color:var(--accent, rgba(200, 169, 110, .45));background:#ffffff0d;transform:translateY(-5px);box-shadow:0 24px 50px -15px #000000a6,0 0 0 1px var(--accent-subtle, rgba(200, 169, 110, .25)),0 0 32px var(--accent-glow, rgba(166, 124, 82, .18))}.collection-stack-wrap{position:relative;display:flex;align-items:center;justify-content:center;perspective:700px;perspective-origin:50% 30%}.collection-stack{position:relative;width:100%;aspect-ratio:1 / 1.44;transform-style:preserve-3d}.stack-layer{position:absolute;inset:8.75% 8%;transform-style:preserve-3d;transition:transform .7s cubic-bezier(.22,1,.36,1)}.stack-layer>.book-volume{width:100%;height:100%}.stack-layer-1{z-index:3;transform:rotateX(5deg) rotateY(-30deg) translateZ(0)}.stack-layer-2{z-index:2;transform:translate(-20%) translateY(-3%) translateZ(-40px) rotateX(5deg) rotateY(-22deg) rotate(-3deg)}.stack-layer-3{z-index:1;transform:translate(30%) translateY(-5%) translateZ(-70px) rotateX(5deg) rotateY(-26deg) rotate(3deg)}.stack-layer-2 .book-front,.stack-layer-3 .book-front{filter:brightness(.72)}.collection-card:hover .stack-layer-1,.collection-card:focus-visible .stack-layer-1{transform:translateY(-4%) rotateX(3deg) rotateY(-18deg) translateZ(14px)}.collection-card:hover .stack-layer-2,.collection-card:focus-visible .stack-layer-2{transform:translate(-30%) translateY(-1%) translateZ(-40px) rotateX(4deg) rotateY(-14deg) rotate(-7deg)}.collection-card:hover .stack-layer-3,.collection-card:focus-visible .stack-layer-3{transform:translate(30%) translateY(-3%) translateZ(-60px) rotateX(4deg) rotateY(-34deg) rotate(6deg)}.collection-stack-wrap:after{content:"";position:absolute;left:8%;right:4%;bottom:-2%;height:12%;border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),rgba(0,0,0,.15) 55%,transparent 72%);filter:blur(8px);pointer-events:none}body.theme-light .collection-stack-wrap:after{background:radial-gradient(ellipse at center,rgba(80,50,20,.35),rgba(80,50,20,.1) 55%,transparent 72%)}.collection-info{position:relative;z-index:1;display:flex;flex-direction:column;justify-content:center;min-width:0}.collection-kicker{font-family:var(--font-sans);font-size:.7rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent);margin-bottom:6px}.collection-card-title{font-family:var(--font-serif);font-size:clamp(1.25rem,2.4vw,1.5rem);font-weight:600;color:var(--text-main);line-height:1.25;margin:0 0 6px;letter-spacing:-.01em;text-wrap:balance}.collection-card-subtitle{font-family:var(--font-sans);font-size:.86rem;font-weight:500;color:var(--text-muted);margin:0 0 10px}.collection-card-desc{font-family:var(--font-sans);font-size:.84rem;line-height:1.55;color:var(--text-dim);margin:0 0 16px;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-wrap:pretty}.collection-card-footer{display:flex;align-items:center;justify-content:space-between;padding-top:14px;border-top:1px solid rgba(255,255,255,.06);margin-top:auto;gap:12px}.collection-count-pill{font-family:var(--font-sans);font-size:.78rem;font-weight:600;color:var(--text-main);padding:4px 10px;border-radius:9999px;background:#ffffff12}.collection-cta{display:inline-flex;align-items:center;gap:6px;font-family:var(--font-sans);font-size:.82rem;font-weight:600;color:var(--accent);transition:gap .2s ease}.collection-card:hover .collection-cta{gap:9px}.collection-hero{display:flex;flex-direction:column;gap:16px;margin-bottom:32px;padding-bottom:24px;border-bottom:1px solid rgba(255,255,255,.08)}.collection-feature{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:20px 28px;color:inherit;text-decoration:none;border-radius:14px;padding:8px 4px}.collection-feature[hidden]{display:none}.collection-feature:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.collection-feature-stage{position:relative;perspective:900px;perspective-origin:50% 35%;padding:8px 18px 22px 10px}.collection-feature-stage:after{content:"";position:absolute;left:50%;bottom:6px;width:92%;height:34px;transform:translate(-48%);border-radius:50%;background:radial-gradient(ellipse at center,rgba(0,0,0,.55),rgba(0,0,0,.16) 52%,transparent 72%);filter:blur(10px);pointer-events:none}body.theme-light .collection-feature-stage:after{background:radial-gradient(ellipse at center,rgba(80,50,20,.42),rgba(80,50,20,.12) 55%,transparent 75%)}.collection-feature .collection-feature-book{width:clamp(140px,20vw,300px);max-width:none;max-height:none;transform:rotateX(4deg) rotateY(-24deg) translateZ(calc(var(--book-depth) * -.5))}.book-volume--feature .book-front{transform-origin:left center;transition:transform .9s cubic-bezier(.22,1,.36,1)}.collection-feature.is-open .book-front{transform:translateZ(var(--book-depth)) rotateY(-20deg)}.collection-feature.is-open:hover .book-front,.collection-feature.is-open:focus-visible .book-front{transform:translateZ(var(--book-depth)) rotateY(-30deg)}.book-flyleaf{inset:2px 2px 2px 1px;border-radius:1px 2px 2px 1px;transform:translateZ(calc(var(--book-depth) - var(--book-board)));background:linear-gradient(90deg,#d9cdb6,#efe6d4 7%,#f6efe1 40%,#efe6d3)}.collection-feature-info{display:flex;flex-direction:column;gap:6px;min-width:0}.collection-feature-kicker{font-family:var(--font-sans);font-size:.68rem;font-weight:600;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.collection-feature-title{font-family:var(--font-serif);font-size:clamp(1.15rem,2vw,1.5rem);line-height:1.25;color:var(--text-main);text-wrap:balance}.collection-feature-meta{font-family:var(--font-sans);font-size:.82rem;color:var(--text-dim)}.collection-feature-cta{margin-top:6px;font-family:var(--font-sans);font-size:.85rem;font-weight:600;color:var(--accent)}.collection-feature-cta:after{content:" \2192";display:inline-block;transition:transform .3s cubic-bezier(.22,1,.36,1)}.collection-feature:hover .collection-feature-cta:after,.collection-feature:focus-visible .collection-feature-cta:after{transform:translate(4px)}@media (min-width: 900px){.collection-hero:has(.collection-feature:not([hidden])){display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-rows:1fr auto 1fr;column-gap:48px;align-items:center}.collection-hero:has(.collection-feature:not([hidden])) .collection-hero-info{grid-column:1;grid-row:1;align-self:end}.collection-hero:has(.collection-feature:not([hidden])) .collection-hero-meta{grid-column:1;grid-row:2;align-self:start}.collection-hero .collection-feature{grid-column:2;grid-row:1 / span 3;grid-template-columns:auto minmax(160px,220px)}}.collection-title{font-family:var(--font-serif);font-size:clamp(2rem,4vw,2.8rem);font-weight:500;color:var(--text-main);margin:0 0 8px;letter-spacing:-.015em;text-wrap:balance}.collection-subtitle{font-family:var(--font-sans);font-size:1.05rem;font-weight:400;color:var(--text-muted);margin:0 0 10px}.collection-desc{font-family:var(--font-sans);font-size:.92rem;line-height:1.6;color:var(--text-dim);max-width:720px;margin:0;text-wrap:pretty}.collection-hero-meta{display:flex;flex-wrap:wrap;align-items:baseline;column-gap:24px;row-gap:8px}.collection-author-link{font-family:var(--font-sans);font-size:.9rem;font-weight:600;color:var(--accent);text-decoration:underline;text-decoration-thickness:1px;text-underline-offset:4px;text-decoration-color:color-mix(in srgb,var(--accent) 40%,transparent);transition:text-decoration-color .2s ease}.collection-author-link:after{content:" \2197";display:inline-block;margin-left:2px}.collection-author-link:hover{text-decoration-color:currentColor}.collection-author-link:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.collection-controls-bar{margin-bottom:36px;display:flex;align-items:flex-start;gap:16px}.collection-controls-bar>.library-pills{flex:1;min-width:0}.collection-sort{flex:none;display:inline-flex;align-items:center;gap:8px;margin-top:4px;font-family:var(--font-sans);font-size:.78rem;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--text-muted)}.collection-sort[hidden]{display:none}.collection-sort select{appearance:none;min-height:40px;padding:8px 34px 8px 16px;border-radius:9999px;border:1px solid color-mix(in srgb,var(--text-main) 14%,transparent);background:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12' viewBox='0 0 24 24' fill='none' stroke='%23999' stroke-width='2.5' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E") no-repeat right 14px center,color-mix(in srgb,var(--text-main) 4%,transparent);color:var(--text-main);font:500 .84rem var(--font-sans);letter-spacing:0;text-transform:none;cursor:pointer}.collection-sort select:hover{border-color:color-mix(in srgb,var(--text-main) 26%,transparent)}.collection-sort select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.collection-sort option{color:initial;background:initial}@media (pointer: coarse){.collection-sort select{min-height:44px}}@media (min-width: 768px) and (max-width: 1099px){.collection-controls-bar{flex-direction:column;align-items:stretch;gap:12px}.collection-sort{align-self:flex-end;margin-top:0}.collection-controls-bar .pill-btn{padding-inline:13px}.collection-controls-bar>.library-pills{flex-wrap:nowrap;overflow-x:auto;mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}}@media (max-width: 767px){.collection-controls-bar{flex-direction:column;align-items:stretch;gap:10px}.collection-sort{align-self:flex-end;margin-top:0}}.library-pills{display:flex;align-items:center;gap:8px;overflow-x:auto;scrollbar-width:none;-ms-overflow-style:none;padding:4px 0;scroll-snap-type:x proximity;scroll-padding-inline:4px;mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent);-webkit-mask-image:linear-gradient(90deg,#000 calc(100% - 40px),transparent)}.library-pills>.pill-btn{scroll-snap-align:start;flex:none;min-height:40px}@media (pointer: coarse){.library-pills>.pill-btn{min-height:44px}}@media (min-width: 768px){.library-pills{flex-wrap:wrap;overflow:visible;mask-image:none;-webkit-mask-image:none}}.library-pills::-webkit-scrollbar{display:none}.pill-btn{display:inline-flex;align-items:center;gap:8px;padding:8px 16px;border-radius:9999px;background:#ffffff0a;border:1px solid rgba(255,255,255,.08);color:var(--text-muted);font-family:var(--font-sans);font-size:.84rem;font-weight:500;cursor:pointer;white-space:nowrap;transition:all .2s ease}.pill-btn:hover{color:var(--text-main);background:#ffffff14}.pill-btn.active{background:var(--accent-dim);border-color:var(--accent);color:#fff;font-weight:600}.pill-count{font-variant-numeric:tabular-nums;font-size:.72rem;padding:1px 6px;border-radius:9999px;background:#ffffff1a;color:var(--text-dim)}.pill-btn.active .pill-count{background:#0000004d;color:#fff}.library-books-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:36px 24px}@media (max-width: 639px){.library-books-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 12px}.library-books-grid .book-card{padding:12px 10px 14px;border-radius:14px}.library-books-grid .book-cover-stage{height:auto;min-height:0;aspect-ratio:.86;margin-bottom:8px;padding:6px 10px 10px 6px}.library-books-grid .book-cover-3d{max-height:100%}.library-books-grid .book-card-category{font-size:.6rem;letter-spacing:.1em;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.library-books-grid .book-card-title{font-size:1rem;line-height:1.28}.library-books-grid .book-card-meta{font-size:.72rem;gap:5px}.library-books-grid .book-card-author{font-size:.72rem}.library-books-grid .book-action-pill{display:none}}@media (min-width: 640px){.library-books-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:44px 28px}}@media (min-width: 1024px){.library-books-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:52px 32px}}@keyframes libraryCardIn{0%{opacity:0;transform:translateY(14px)}}@media (prefers-reduced-motion: no-preference){.library-books-grid>.book-card,.library-collections-grid>.collection-card,.collection-hero{animation:libraryCardIn .55s cubic-bezier(.16,1,.3,1) backwards}.library-books-grid>.book-card:nth-child(2){animation-delay:45ms}.library-books-grid>.book-card:nth-child(3){animation-delay:90ms}.library-books-grid>.book-card:nth-child(4){animation-delay:135ms}.library-books-grid>.book-card:nth-child(5){animation-delay:.18s}.library-books-grid>.book-card:nth-child(6){animation-delay:225ms}.library-books-grid>.book-card:nth-child(7){animation-delay:.27s}.library-books-grid>.book-card:nth-child(8){animation-delay:315ms}.library-books-grid>.book-card:nth-child(n+9){animation-delay:.36s}}.book-card{display:flex;flex-direction:column;cursor:pointer;outline:none;position:relative;border-radius:18px;padding:18px 16px 20px;background:#ffffff06;border:1px solid rgba(255,255,255,.07);box-shadow:0 6px 20px #00000040;transition:transform .4s cubic-bezier(.23,1,.32,1),background .4s cubic-bezier(.23,1,.32,1),border-color .4s cubic-bezier(.23,1,.32,1),box-shadow .4s cubic-bezier(.23,1,.32,1)}.book-card:hover,.book-card:focus-visible{background:#ffffff0e;border-color:var(--accent, rgba(200, 169, 110, .45));transform:translateY(-6px);box-shadow:0 24px 48px -12px #000000a6,0 0 0 1px var(--accent-subtle, rgba(200, 169, 110, .25)),0 0 28px var(--accent-glow, rgba(166, 124, 82, .2))}body.theme-light .book-card{background:#fff;border:1px solid rgba(0,0,0,.07);box-shadow:0 6px 20px #0000000a,0 1px 3px #00000005}body.theme-light .book-card:hover,body.theme-light .book-card:focus-visible{background:#fff;border-color:var(--accent, rgba(145, 104, 64, .5));box-shadow:0 20px 42px -10px #91684029,0 0 0 1px var(--accent, rgba(145, 104, 64, .35))}body.stage-atelier #library-collection-view .book-card,body.stage-atelier #library-collection-view .book-card:hover,body.stage-atelier #library-collection-view .book-card:focus-visible{background:transparent;border-color:transparent;box-shadow:none;transform:none}body.stage-atelier #library-collection-view .book-card:focus-visible{outline:2px solid var(--accent);outline-offset:4px}body.stage-atelier #library-collection-view .book-cover-stage:before{width:70%;height:12px}body.stage-atelier #library-collection-view .book-cover-stage:after{opacity:.95}body.stage-atelier.theme-light #library-collection-view .book-cover-stage:after{opacity:.7}.book-cover-stage{position:relative;perspective:720px;perspective-origin:50% 30%;margin-bottom:16px;padding:8px 12px 14px 8px;height:240px;display:flex;align-items:center;justify-content:center}.book-cover-stage:before,.book-cover-stage:after{content:"";position:absolute;left:50%;border-radius:50%;pointer-events:none;transition:transform .6s cubic-bezier(.22,1,.36,1),opacity .6s cubic-bezier(.22,1,.36,1)}.book-cover-stage:before{bottom:8px;width:64%;height:10px;transform:translate(-46%);background:radial-gradient(ellipse at center,#000000b3,#0000 70%);filter:blur(3px)}.book-cover-stage:after{bottom:-2px;width:92%;height:30px;transform:translate(-48%);background:radial-gradient(ellipse at center,rgba(0,0,0,.55),rgba(0,0,0,.18) 50%,transparent 72%);filter:blur(10px);opacity:.8}.book-card:hover .book-cover-stage:before,.book-card:focus-visible .book-cover-stage:before{opacity:.35;transform:translate(-46%) scale(1.15,1.6)}.book-card:hover .book-cover-stage:after,.book-card:focus-visible .book-cover-stage:after{opacity:.5;transform:translate(-48%) translateY(6px) scale(1.12)}.book-card-landscape .book-cover-stage:before{bottom:30px}.book-card-landscape .book-cover-stage:after{bottom:18px}body.theme-light .book-cover-stage:before{background:radial-gradient(ellipse at center,#3c260e8c,#3c260e00 70%)}body.theme-light .book-cover-stage:after{opacity:.5;background:radial-gradient(ellipse at center,rgba(80,50,20,.45) 0%,rgba(80,50,20,.12) 55%,transparent 75%)}.book-volume{--book-depth: 10px;--book-color: #2b2420;--book-board: 1.5px;position:relative;transform-style:preserve-3d}.book-cover-3d{position:relative;width:100%;height:auto;max-width:168px;max-height:212px;transform-style:preserve-3d;transform:rotateX(5deg) rotateY(-32deg) translateZ(calc(var(--book-depth) * -.5));transition:transform .6s cubic-bezier(.22,1,.36,1)}.book-card-landscape .book-cover-3d{max-width:220px;max-height:152px;transform:rotateX(5deg) rotateY(-24deg) translateZ(calc(var(--book-depth) * -.5))}.book-card:hover .book-cover-3d,.book-card:focus-visible .book-cover-3d{transform:translateY(-10px) rotateX(3deg) rotateY(-16deg) translateZ(calc(var(--book-depth) * -.5))}.book-face{position:absolute;backface-visibility:hidden;-webkit-backface-visibility:hidden;pointer-events:none}.book-front{inset:0;border-radius:1px 3px 3px 1px;overflow:hidden;transform:translateZ(var(--book-depth));background:var(--book-color);box-shadow:inset 0 0 0 .5px #ffffff14}.book-cover-img{width:100%;height:100%;object-fit:cover;display:block}.book-spine{top:0;bottom:0;left:0;width:var(--book-depth);transform-origin:left center;transform:rotateY(-90deg);background-color:var(--book-color);background-size:auto 100%;background-position:left center;border-radius:2px 0 0 2px}.book-spine:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,#0000009e,#00000061 30%,#ffffff0f 55%,#00000073)}.book-pages{top:2px;bottom:2px;right:2px;width:calc(var(--book-depth) - 2 * var(--book-board));transform-origin:right center;transform:translateZ(var(--book-board)) rotateY(90deg);background:linear-gradient(180deg,rgba(0,0,0,.1),transparent 12%,transparent 85%,rgba(0,0,0,.18)),repeating-linear-gradient(90deg,#f4ecdd 0 .6px,#ddd1bd .6px 1.2px);box-shadow:inset 0 0 3px #503c1e59}.book-head,.book-tail{left:1px;right:2px;height:var(--book-depth);background:linear-gradient(180deg,var(--book-color) 0,var(--book-color) var(--book-board),transparent var(--book-board),transparent calc(100% - var(--book-board)),var(--book-color) calc(100% - var(--book-board))),repeating-linear-gradient(180deg,#f7f0e3 0 .7px,#e4d9c6 1.4px)}.book-head{top:0;transform-origin:center top;transform:rotateX(90deg);filter:brightness(1.04)}.book-tail{bottom:0;transform-origin:center bottom;transform:rotateX(-90deg);filter:brightness(.62)}.book-back{inset:0;border-radius:3px 1px 1px 3px;transform:rotateY(180deg);background:var(--book-color);filter:brightness(.7)}.book-spine-shadow{position:absolute;inset:0 auto 0 0;width:14%;background:linear-gradient(90deg,#0000006b,#ffffff29 7%,#0000000d 16%,#00000052 30%,#ffffff24 38%,#fff0 60%);mix-blend-mode:soft-light;pointer-events:none}.book-cover-shine{position:absolute;inset:0;background:linear-gradient(125deg,rgba(255,250,240,.22) 0%,rgba(255,255,255,.04) 42%,transparent 62%),linear-gradient(180deg,transparent 70%,rgba(0,0,0,.16));pointer-events:none;opacity:.75;transition:opacity .35s ease}.book-card:hover .book-cover-shine{opacity:1}.book-3d-badge{position:absolute;top:12px;right:12px;background:#0c0e14e6;color:#eab308;border:1px solid rgba(234,179,8,.55);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);font-family:var(--font-sans);font-size:.66rem;font-weight:700;letter-spacing:.12em;padding:4px 9px;border-radius:20px;text-transform:uppercase;z-index:6;box-shadow:0 4px 14px #00000080,inset 0 1px #ffffff26}body.theme-light .book-3d-badge{background:#ffffffeb;color:#a16207;border:1px solid rgba(161,98,7,.45);box-shadow:0 4px 12px #0000001f}.book-action-pill{position:absolute;bottom:16px;left:50%;transform:translate(-50%) translateY(12px);display:inline-flex;align-items:center;gap:8px;padding:9px 20px;border-radius:9999px;background:linear-gradient(135deg,#a67c52f2,#c49666f2);border:1px solid rgba(255,255,255,.35);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);font-family:var(--font-sans);font-size:.78rem;font-weight:600;color:#fff;opacity:0;pointer-events:none;white-space:nowrap;transition:all .32s cubic-bezier(.23,1,.32,1);z-index:7;box-shadow:0 10px 28px #a67c5273,0 0 0 1px #fff3}.book-card:hover .book-action-pill,.book-card:focus-visible .book-action-pill{opacity:1;transform:translate(-50%) translateY(0)}.book-card-body{display:flex;flex-direction:column;gap:6px;padding:8px 4px 0;margin-top:4px}.book-card-category{font-family:var(--font-sans);font-size:.68rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--accent)}.book-card-title{font-family:var(--font-serif);font-size:1.22rem;font-weight:600;line-height:1.32;color:var(--text-main);margin:0;min-height:2.6em;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;letter-spacing:-.015em;transition:color var(--duration-fast) ease;text-wrap:balance}.book-card:hover .book-card-title{color:var(--accent-hover)}.book-card-meta{display:flex;align-items:center;flex-wrap:wrap;gap:7px;font-family:var(--font-sans);font-size:.8rem;color:var(--text-muted);margin-top:2px}.book-card-author{display:block;max-width:100%;margin-top:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-family:var(--font-sans);font-size:.8rem;font-style:italic;font-weight:400;color:var(--text-muted)}.book-card-meta .meta-year{color:var(--text-dim);font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}.book-card-meta .meta-sep{color:var(--text-dim);opacity:.6}.book-card-meta .meta-pages{color:var(--text-dim);font-weight:500;white-space:nowrap;font-variant-numeric:tabular-nums}.book-card-meta .meta-tag{color:var(--accent);font-weight:600;font-size:.72rem;background:var(--accent-subtle, rgba(166, 124, 82, .14));padding:2px 8px;border-radius:6px;border:1px solid var(--accent-dim, rgba(166, 124, 82, .25))}.visually-hidden{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.library-empty{display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:64px 24px;background:#ffffff05;border:1px dashed rgba(255,255,255,.12);border-radius:16px;margin:32px 0}.empty-icon{margin-bottom:14px;color:var(--accent)}.empty-title{font-family:var(--font-serif);font-size:1.35rem;font-weight:500;color:var(--text-main);margin:0 0 8px}.empty-desc{font-family:var(--font-sans);font-size:.88rem;color:var(--text-muted);max-width:420px;margin:0 0 20px}.btn-reset-filters{min-height:44px;padding:8px 20px;background:var(--accent-subtle);border:1px solid var(--accent);border-radius:9999px;color:var(--accent);font-family:var(--font-sans);font-size:.82rem;font-weight:600;cursor:pointer;transition:all .2s ease}.btn-reset-filters:hover{background:var(--accent);color:#0c0e14}.btn-reset-filters:disabled{opacity:.6;cursor:progress}.library-hero-title:focus{outline:none}.library-cover-fallback{display:flex;align-items:center;justify-content:center;width:100%;height:100%;border-radius:inherit;background:linear-gradient(160deg,#1d2230,#0f1118);color:#ffffff4d}.library-cover-fallback svg{width:32px;height:32px}body.theme-light .library-view{--accent: #76501d;--accent-hover: #5f3f15;--accent-dim: rgba(118, 80, 29, .18);--accent-subtle: rgba(118, 80, 29, .08);--card-bg: rgba(0, 0, 0, .02);--card-border: rgba(0, 0, 0, .08);--card-hover-border: rgba(158, 117, 38, .4);--bg-gradient: radial-gradient( ellipse at 50% 10%, #ffffff 0%, #f7f5f0 60%, #ece8dd 100% )}body.theme-light .library-nav:before{background:#faf8f3d1;border-bottom-color:#3c280a14}body.theme-light .library-nav-search input{background:#0000000a;border-color:#0000001a;color:#11141d}body.theme-light .btn-icon-sm{background:#0000000a;border-color:#00000014;color:#4b5563}body.theme-light .btn-icon-sm.active{background:var(--accent);color:#fff;box-shadow:var(--shadow-sm)}body.theme-light .book-card-title{color:#11141d}body.theme-light .book-card-meta{color:#4b5563}body.theme-light .book-card-meta .meta-sep{color:#0003}@media (max-width: 600px){.library-container{padding-inline:16px}.library-nav{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"brand actions" "search search";display:grid;gap:10px 12px;padding:10px 0 12px}.library-brand{grid-area:brand}.library-nav-actions{grid-area:actions}.library-nav-search{grid-area:search;width:100%;max-width:none}.library-nav-search input{min-height:44px;font-size:1rem}.library-nav-actions{gap:8px}}body.layout-rails{--rail-edge: max(10px, env(safe-area-inset-left, 0px));--rail-top: 14px}body.layout-rails .header-bar,body.layout-rails .toolbar{inset:0;width:auto;height:auto;max-width:none;margin:0;padding:0;display:block;border:0;border-radius:0;background:none;box-shadow:none;backdrop-filter:none;-webkit-backdrop-filter:none;pointer-events:none}body.layout-rails .header-bar .bar-start,body.layout-rails .header-bar .bar-end,body.layout-rails #btn-prev,body.layout-rails #btn-next,body.layout-rails .page-jump{position:fixed;pointer-events:auto;background:var(--glass);backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);border:1px solid var(--hairline);box-shadow:0 8px 24px -16px #0000008c}body.layout-rails .header-bar .bar-start,body.layout-rails .header-bar .bar-end{top:var(--rail-top);display:flex;flex-direction:column;gap:2px;padding:2px;border-radius:24px}body.layout-rails .header-bar .bar-start{left:var(--rail-edge)}body.layout-rails .header-bar .bar-end{right:var(--rail-edge)}body.layout-rails .header-bar h1{position:absolute;width:1px;height:1px;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}body.layout-rails #btn-more{margin-inline-start:0}body.layout-rails #btn-back-library{padding:0}body.layout-rails #btn-back-library .bar-label,body.layout-rails .header-bar .search-box{display:none}body.layout-rails .mobile-search-trigger{display:inline-flex}body.layout-rails .header-bar .search-box.mobile-open{position:fixed;top:var(--rail-top);right:calc(var(--rail-edge) + 58px);z-index:30;display:flex;width:min(380px,calc(100vw - 140px));height:48px;margin:0;padding:0 14px;border:1px solid var(--hairline);border-radius:14px;background:var(--surface-glass-solid);box-shadow:var(--shadow-lg);pointer-events:auto}body.layout-rails .header-bar .search-box.mobile-open .search-results-dropdown{width:100%}body.layout-rails #btn-prev,body.layout-rails #btn-next{top:50%;width:48px;height:48px;border-radius:50%;transform:translateY(-50%)}body.layout-rails #btn-prev{left:var(--rail-edge)}body.layout-rails #btn-next{right:var(--rail-edge)}body.layout-rails .page-jump{right:var(--rail-edge);bottom:max(14px,env(safe-area-inset-bottom,0px));min-width:0;height:auto;min-height:48px;padding:7px 10px;border-radius:18px}body.layout-rails .page-indicator{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.1}body.layout-rails .pi-total{color:var(--text-dim);font-size:11px}body.layout-rails .page-jump-caret{display:none}body.layout-rails .page-popover{position:fixed;right:var(--rail-edge);bottom:calc(max(14px,env(safe-area-inset-bottom,0px)) + 58px);z-index:2;display:none;flex-direction:column;gap:6px;width:min(320px,calc(100vw - 24px));padding:6px 16px 14px;border:1px solid var(--hairline);border-radius:16px;background:var(--surface-glass-solid);box-shadow:var(--shadow-lg);pointer-events:auto}body.layout-rails .toolbar.is-jump-open .page-popover{display:flex}body.layout-rails .page-popover .slider-container{width:100%;margin:0}body.layout-rails .page-popover .slider-tooltip{display:none}body.layout-rails .toolbar.is-jump-open .page-jump-field,body.layout-rails .page-jump-field{position:static;display:flex;justify-content:center;padding:0;border:0;border-radius:0;background:transparent;box-shadow:none;transform:none}.reading-edge{--progress: 0;position:fixed;left:50%;bottom:max(18px,env(safe-area-inset-bottom,0px));z-index:12;display:flex;flex-direction:column;align-items:center;gap:6px;padding:9px 16px 10px;border:1px solid var(--surface-border);border-radius:var(--radius-full);background:var(--surface-glass);backdrop-filter:blur(12px) saturate(1.4);-webkit-backdrop-filter:blur(12px) saturate(1.4);color:var(--text-main);font:500 12.5px/1 var(--font-sans);pointer-events:none;opacity:0;transform:translate(-50%,8px);transition:opacity .16s ease,transform .22s var(--ease-out-expo)}.reading-edge.is-up{top:max(18px,env(safe-area-inset-top,0px));bottom:auto;transform:translate(-50%,-8px)}.reading-edge.is-on{opacity:1;transform:translate(-50%)}.reading-edge-fill{width:72px;height:2px;border-radius:2px;background:linear-gradient(90deg,var(--accent) calc(var(--progress) * 100%),var(--surface-border) 0)}@media (prefers-reduced-motion: reduce){.reading-edge,.reading-edge.is-up,.reading-edge.is-on{transform:translate(-50%);transition:opacity .12s ease}}@media (prefers-reduced-motion: reduce){.book-cover-3d,.stack-layer,.book-cover-stage:before,.book-cover-stage:after{transition:none}.book-card:hover .book-cover-3d,.book-card:focus-visible .book-cover-3d{transform:rotateX(5deg) rotateY(-32deg) translateZ(calc(var(--book-depth) * -.5))}.book-card-landscape:hover .book-cover-3d,.book-card-landscape:focus-visible .book-cover-3d{transform:rotateX(5deg) rotateY(-24deg) translateZ(calc(var(--book-depth) * -.5))}.collection-card:hover .stack-layer-1,.collection-card:focus-visible .stack-layer-1{transform:rotateX(5deg) rotateY(-30deg) translateZ(0)}.collection-card:hover .stack-layer-2,.collection-card:focus-visible .stack-layer-2{transform:translate(-20%) translateY(-3%) translateZ(-40px) rotateX(5deg) rotateY(-22deg) rotate(-3deg)}.collection-card:hover .stack-layer-3,.collection-card:focus-visible .stack-layer-3{transform:translate(30%) translateY(-5%) translateZ(-70px) rotateX(5deg) rotateY(-26deg) rotate(3deg)}}@media (prefers-reduced-motion: reduce){.book-volume--feature .book-front{transition:none}.collection-feature.is-open:hover .book-front,.collection-feature.is-open:focus-visible .book-front{transform:translateZ(var(--book-depth)) rotateY(-20deg)}}.book-card-progress{--progress: 0%;position:relative;display:block;margin-top:8px;padding-top:7px;font-family:var(--font-sans);font-size:.74rem;font-weight:600;color:var(--accent)}.book-card-progress:before,.book-card-progress:after{content:"";position:absolute;top:0;left:0;height:2px;border-radius:2px}.book-card-progress:before{right:0;background:color-mix(in srgb,var(--text-main) 12%,transparent)}.book-card-progress:after{width:max(var(--progress),4px);background:var(--accent)}
