@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2c55a0e60120577a-s.0-dom-5bn10r2.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/9c72aa0f40e4eef8-s.1y4-pdgsjb-pw.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/ad66f9afd8947f86-s.3lvt2whj97whp.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/5476f68d60460930-s.2uwcyprjm3xu3.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/2bbe8d2671613f1f-s.0k62hbripvv8p.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1bffadaabf893a1e-s.3-6t-g6q0vh0a.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Inter;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/83afe278b6a6bb3c-s.p.2bn3s6zvc0dyp.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Inter Fallback;src:local(Arial);ascent-override:90.44%;descent-override:22.52%;line-gap-override:0.0%;size-adjust:107.12%}.inter_7b064e0d-module__MOT0tq__className{font-family:Inter,Inter Fallback;font-style:normal}.inter_7b064e0d-module__MOT0tq__variable{--font-inter:"Inter", "Inter Fallback"}
@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/dcc06fc59088004f-s.26afxfjuoa9fw.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/14a4f422adc8017e-s.0g2162x3jbg9n.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/294dd5272e5dc576-s.24z3xhdtefne-.woff2)format("woff2");unicode-range:U+1F??}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/c0f3072741f3158c-s.0ip40b8wahlg_.woff2)format("woff2");unicode-range:U+370-377,U+37A-37F,U+384-38A,U+38C,U+38E-3A1,U+3A3-3FF}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/32ed8f926ffc9cc2-s.0cu0ymttrfic-.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/b6a9aad84d41ea38-s.19z0m3vc7o74g.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Literata;font-style:normal;font-weight:200 900;font-display:swap;src:url(../media/30bdb5bb2b173ee1-s.p.0zb6_9j98fvm-.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Literata Fallback;src:local(Times New Roman);ascent-override:99.62%;descent-override:26.07%;line-gap-override:0.0%;size-adjust:118.15%}.literata_31e4591d-module__eQ_YRW__className{font-family:Literata,Literata Fallback;font-style:normal}.literata_31e4591d-module__eQ_YRW__variable{--font-literata:"Literata", "Literata Fallback"}
*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{-moz-text-size-adjust:100%;text-size-adjust:100%;tab-size:4;scroll-behavior:smooth;height:100%}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;min-height:100%;line-height:1.6}img,picture,video,canvas,svg{max-width:100%;display:block}input,button,textarea,select{font:inherit;color:inherit}p,h1,h2,h3,h4,h5,h6{overflow-wrap:break-word}ul,ol{list-style:none}a{color:inherit;text-decoration:none}table{border-collapse:collapse;border-spacing:0}:root{--color-navy-900:#0a0e1a;--color-navy-800:#111827;--color-navy-700:#1a1f2e;--color-navy-600:#232a3b;--color-navy-500:#2d3548;--color-navy-400:#3b4560;--color-navy-300:#4b5678;--color-navy-200:#6b7a99;--color-navy-100:#94a3b8;--color-amber-500:#f59e0b;--color-amber-400:#fbbf24;--color-amber-300:#fcd34d;--color-amber-600:#d97706;--color-amber-700:#b45309;--color-purple-500:#8b5cf6;--color-purple-400:#a78bfa;--color-purple-600:#7c3aed;--color-purple-300:#c4b5fd;--color-white:#fff;--color-gray-50:#f8fafc;--color-gray-100:#f1f5f9;--color-gray-200:#e2e8f0;--color-gray-300:#cbd5e1;--color-gray-400:#94a3b8;--color-gray-500:#64748b;--color-gray-600:#475569;--color-gray-700:#334155;--color-gray-800:#1e293b;--color-gray-900:#0f172a;--color-red-500:#ef4444;--color-green-500:#22c55e;--color-blue-500:#3b82f6;--bg-primary:#0a0e1a;--bg-secondary:#111827;--bg-tertiary:#1a1f2e;--bg-surface:#232a3b;--bg-elevated:#2d3548;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--accent-primary:#f59e0b;--accent-secondary:#8b5cf6;--accent-hover:#fbbf24;--border-color:#ffffff1a;--border-subtle:#ffffff0d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 40px #00000080;--shadow-xl:0 20px 60px #0009;--shadow-glow:0 0 20px #f59e0b26;--shadow-glow-accent:0 0 30px #f59e0b33;--glass-bg:#111827bf;--glass-border:#ffffff14;--glass-blur:20px;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;--font-serif:"Literata", Georgia, "Times New Roman", Times, serif;--font-mono:"SF Mono", "Fira Code", "Cascadia Code", Consolas, monospace;--font-size-xs:.75rem;--font-size-sm:.8125rem;--font-size-base:.875rem;--font-size-md:1rem;--font-size-lg:1.125rem;--font-size-xl:1.25rem;--font-size-2xl:1.5rem;--font-size-3xl:1.875rem;--font-size-4xl:2.25rem;--font-size-5xl:3rem;--font-weight-light:300;--font-weight-regular:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.6;--line-height-relaxed:1.75;--line-height-loose:2;--letter-spacing-tight:-.025em;--letter-spacing-normal:0;--letter-spacing-wide:.025em;--letter-spacing-wider:.05em;--space-1:.25rem;--space-2:.5rem;--space-3:.75rem;--space-4:1rem;--space-5:1.25rem;--space-6:1.5rem;--space-8:2rem;--space-10:2.5rem;--space-12:3rem;--space-16:4rem;--space-20:5rem;--space-24:6rem;--radius-xs:4px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:24px;--radius-full:9999px;--border-width-thin:1px;--border-width-medium:2px;--transition-fast:.15s ease;--transition-base:.2s ease;--transition-slow:.3s ease;--transition-slower:.4s ease;--transition-spring:.3s cubic-bezier(.34, 1.56, .64, 1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-toolbar:300;--z-overlay:400;--z-modal:500;--z-popover:600;--z-toast:700;--z-tooltip:800;--reader-font-family:var(--font-serif);--reader-font-size:1.125rem;--reader-line-height:1.8;--reader-paragraph-spacing:1.25em;--reader-char-spacing:0;--reader-max-width:42em;--reader-margin-x:var(--space-6);--header-height:56px;--sidebar-width:320px;--container-max:1200px;--container-narrow:680px}html,body{max-width:100vw;overflow-x:hidden}body{font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:var(--font-weight-regular);color:var(--text-primary);background-color:var(--bg-primary);transition:background-color var(--transition-slow), color var(--transition-slow);flex-direction:column;display:flex}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);letter-spacing:var(--letter-spacing-tight);color:var(--text-primary)}h1{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold)}h2{font-size:var(--font-size-3xl)}h3{font-size:var(--font-size-2xl)}h4{font-size:var(--font-size-xl)}h5{font-size:var(--font-size-lg)}h6{font-size:var(--font-size-md);font-weight:var(--font-weight-medium)}p{line-height:var(--line-height-normal);color:var(--text-secondary)}small{font-size:var(--font-size-sm);color:var(--text-tertiary)}strong{font-weight:var(--font-weight-semibold)}a{transition:color var(--transition-fast), opacity var(--transition-fast)}a:hover{color:var(--accent-primary)}button{cursor:pointer;font-family:var(--font-sans);font-size:var(--font-size-base);font-weight:var(--font-weight-medium);transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast), box-shadow var(--transition-fast), transform var(--transition-fast), opacity var(--transition-fast);background:0 0;border:none;line-height:1}button:active:not(:disabled){transform:scale(.97)}button:disabled{cursor:not-allowed;opacity:.5}.btn{justify-content:center;align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-4);border-radius:var(--radius-md);font-weight:var(--font-weight-medium);white-space:nowrap;-webkit-user-select:none;user-select:none;display:inline-flex}.btn-primary{background:var(--accent-primary);color:var(--color-navy-900);font-weight:var(--font-weight-semibold)}.btn-primary:hover:not(:disabled){background:var(--accent-hover);box-shadow:var(--shadow-glow)}.btn-secondary{background:var(--bg-surface);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-color)}.btn-secondary:hover:not(:disabled){background:var(--bg-elevated);border-color:var(--accent-primary)}.btn-ghost{color:var(--text-secondary);background:0 0}.btn-ghost:hover:not(:disabled){background:var(--bg-surface);color:var(--text-primary)}.btn-icon{border-radius:var(--radius-md);justify-content:center;align-items:center;width:36px;height:36px;padding:0;display:inline-flex}.btn-sm{padding:var(--space-1) var(--space-3);font-size:var(--font-size-sm);border-radius:var(--radius-sm)}.btn-lg{padding:var(--space-3) var(--space-6);font-size:var(--font-size-md);border-radius:var(--radius-lg)}input,textarea{width:100%;padding:var(--space-2) var(--space-3);background:var(--bg-surface);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);transition:border-color var(--transition-fast), box-shadow var(--transition-fast), background-color var(--transition-fast);outline:none}input::placeholder,textarea::placeholder{color:var(--text-tertiary)}input:focus,textarea:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #f59e0b26}input:hover:not(:focus):not(:disabled),textarea:hover:not(:focus):not(:disabled){border-color:var(--navy-300,#ffffff26)}select{padding:var(--space-2) var(--space-3);background:var(--bg-surface);color:var(--text-primary);border:var(--border-width-thin) solid var(--border-color);border-radius:var(--radius-md);font-size:var(--font-size-base);cursor:pointer;transition:border-color var(--transition-fast), box-shadow var(--transition-fast);outline:none}select:focus{border-color:var(--accent-primary);box-shadow:0 0 0 3px #f59e0b26}label{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary);margin-bottom:var(--space-1);display:block}hr{border:none;border-top:var(--border-width-thin) solid var(--border-color);margin:var(--space-4) 0}:focus-visible{outline:2px solid var(--accent-primary);outline-offset:2px}:focus:not(:focus-visible){outline:none}::selection{color:var(--text-primary);background:#f59e0b4d}::selection{color:var(--text-primary);background:#f59e0b4d}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--bg-elevated);border-radius:var(--radius-full);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-thumb:hover{background:var(--color-navy-300);background-clip:content-box;border:2px solid #0000}::-webkit-scrollbar-corner{background:0 0}*{scrollbar-width:thin;scrollbar-color:var(--bg-elevated) transparent}.flex{display:flex}.flex-col{flex-direction:column;display:flex}.flex-row{flex-direction:row;display:flex}.flex-wrap{flex-wrap:wrap}.flex-1{flex:1}.flex-shrink-0{flex-shrink:0}.items-center{align-items:center}.items-start{align-items:flex-start}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.justify-start{justify-content:flex-start}.self-center{align-self:center}.grid{display:grid}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.gap-1{gap:var(--space-1)}.gap-2{gap:var(--space-2)}.gap-3{gap:var(--space-3)}.gap-4{gap:var(--space-4)}.gap-6{gap:var(--space-6)}.gap-8{gap:var(--space-8)}.container{width:100%;max-width:var(--container-max);padding-inline:var(--space-4);margin-inline:auto}.container-narrow{width:100%;max-width:var(--container-narrow);padding-inline:var(--space-4);margin-inline:auto}.relative{position:relative}.absolute{position:absolute}.fixed{position:fixed}.sticky{position:sticky}.inset-0{inset:0}.w-full{width:100%}.h-full{height:100%}.min-h-screen{min-height:100dvh}.overflow-hidden{overflow:hidden}.overflow-auto{overflow:auto}.overflow-y-auto{overflow-y:auto}.text-center{text-align:center}.text-left{text-align:left}.text-right{text-align:right}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.hidden{display:none!important}.invisible{visibility:hidden}.pointer{cursor:pointer}.select-none{-webkit-user-select:none;user-select:none}.glass{background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--border-width-thin) solid var(--glass-border)}.glass-elevated{-webkit-backdrop-filter:blur(24px);border:var(--border-width-thin) solid #ffffff1a;box-shadow:var(--shadow-lg);background:#1a1f2ed9}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(24px)}to{opacity:1;transform:translate(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(24px)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.95)}to{transform:scale(1)}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease both}.animate-slide-up{animation:slideUp var(--transition-slow) ease both}.animate-slide-down{animation:slideDown var(--transition-slow) ease both}.animate-scale-in{animation:scaleIn var(--transition-slow) ease both}.animate-shimmer{background:linear-gradient(90deg, var(--bg-surface) 25%, var(--bg-elevated) 50%, var(--bg-surface) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite shimmer}.animate-pulse{animation:2s cubic-bezier(.4,0,.6,1) infinite pulse}.animate-spin{animation:1s linear infinite spin}.transition-all{transition:all var(--transition-base)}.transition-colors{transition:background-color var(--transition-fast), color var(--transition-fast), border-color var(--transition-fast)}.transition-transform{transition:transform var(--transition-fast)}.transition-opacity{transition:opacity var(--transition-fast)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg-primary:#0a0e1a;--bg-secondary:#111827;--bg-tertiary:#1a1f2e;--bg-surface:#232a3b;--bg-elevated:#2d3548;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--accent-primary:#f59e0b;--accent-secondary:#8b5cf6;--accent-hover:#fbbf24;--border-color:#ffffff1a;--border-subtle:#ffffff0d;--shadow-sm:0 1px 2px #0000004d;--shadow-md:0 4px 12px #0006;--shadow-lg:0 12px 40px #00000080;--glass-bg:#111827bf;--glass-border:#ffffff14}[data-theme=light]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-primary:#f8fafc;--bg-secondary:#fff;--bg-tertiary:#f1f5f9;--bg-surface:#fff;--bg-elevated:#f8fafc;--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#94a3b8;--accent-primary:#d97706;--accent-secondary:#7c3aed;--accent-hover:#b45309;--border-color:#0000001a;--border-subtle:#0000000d;--shadow-sm:0 1px 3px #0000000f, 0 1px 2px #0000000a;--shadow-md:0 4px 12px #00000014, 0 2px 4px #0000000a;--shadow-lg:0 12px 40px #0000001a, 0 4px 12px #0000000f;--glass-bg:#fffc;--glass-border:#0000000f;scrollbar-color:#cbd5e1 transparent}[data-theme=light] ::-webkit-scrollbar-thumb{background:#cbd5e1 padding-box content-box;border:2px solid #0000}[data-theme=light] ::-webkit-scrollbar-thumb:hover{background:#94a3b8 padding-box content-box;border:2px solid #0000}[data-theme=light] ::selection{color:#0f172a;background:#d9770633}[data-theme=light] ::selection{color:#0f172a;background:#d9770633}[data-theme=light] :focus-visible{outline-color:#d97706}[data-theme=light] input:focus,[data-theme=light] textarea:focus,[data-theme=light] select:focus{border-color:#d97706;box-shadow:0 0 0 3px #d977061f}[data-theme=light] .btn-primary{color:#fff;background:#d97706}[data-theme=light] .btn-primary:hover:not(:disabled){background:#b45309;box-shadow:0 0 20px #d9770633}[data-theme=light] .btn-secondary{background:#fff;border-color:#0000001f}[data-theme=light] .btn-secondary:hover:not(:disabled){background:#f1f5f9;border-color:#d97706}[data-theme=light] .btn-ghost:hover:not(:disabled){background:#f1f5f9}[data-theme=light] .glass{background:#fffc;border-color:#0000000f}[data-theme=light] .glass-elevated{background:#ffffffe6;border-color:#00000014;box-shadow:0 12px 40px #0000001a}[data-theme=light] .animate-shimmer{background:linear-gradient(90deg,#f1f5f9 25%,#e2e8f0 50%,#f1f5f9 75%) 0 0/200% 100%}[data-theme=sepia]{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg-primary:#f5e6c8;--bg-secondary:#ede0c8;--bg-tertiary:#e8d8bc;--bg-surface:#f0dcc0;--bg-elevated:#ede0c8;--text-primary:#3d2b1f;--text-secondary:#5c4033;--text-tertiary:#8b7355;--accent-primary:#b45309;--accent-secondary:#92400e;--accent-hover:#78350f;--border-color:#5d403326;--border-subtle:#5d403314;--shadow-sm:0 1px 3px #5d40330f, 0 1px 2px #5d40330a;--shadow-md:0 4px 12px #5d403314, 0 2px 4px #5d40330a;--shadow-lg:0 12px 40px #5d40331a, 0 4px 12px #5d40330f;--glass-bg:#f5e6c8d9;--glass-border:#5d40331a;scrollbar-color:#c4a882 transparent}[data-theme=sepia] ::-webkit-scrollbar-thumb{background:#c4a882 padding-box content-box;border:2px solid #0000}[data-theme=sepia] ::-webkit-scrollbar-thumb:hover{background:#a68b6b padding-box content-box;border:2px solid #0000}[data-theme=sepia] ::selection{color:#3d2b1f;background:#b4530933}[data-theme=sepia] ::selection{color:#3d2b1f;background:#b4530933}[data-theme=sepia] :focus-visible{outline-color:#b45309}[data-theme=sepia] input,[data-theme=sepia] textarea,[data-theme=sepia] select{background:#f0dcc0}[data-theme=sepia] input:focus,[data-theme=sepia] textarea:focus,[data-theme=sepia] select:focus{border-color:#b45309;box-shadow:0 0 0 3px #b453091f}[data-theme=sepia] .btn-primary{color:#f5e6c8;background:#b45309}[data-theme=sepia] .btn-primary:hover:not(:disabled){background:#92400e;box-shadow:0 0 20px #b4530933}[data-theme=sepia] .btn-secondary{background:#f0dcc0;border-color:#5d403326}[data-theme=sepia] .btn-secondary:hover:not(:disabled){background:#e8d8bc;border-color:#b45309}[data-theme=sepia] .btn-ghost:hover:not(:disabled){background:#e8d8bc}[data-theme=sepia] .glass{background:#f5e6c8d9;border-color:#5d40331a}[data-theme=sepia] .glass-elevated{background:#ede0c8e6;border-color:#5d40331f;box-shadow:0 12px 40px #5d40331a}[data-theme=sepia] .animate-shimmer{background:linear-gradient(90deg,#e8d8bc 25%,#dccba8 50%,#e8d8bc 75%) 0 0/200% 100%}[data-theme],[data-theme] input,[data-theme] textarea,[data-theme] select,[data-theme] button,[data-theme] .glass,[data-theme] .glass-elevated{transition:background-color .3s,color .3s,border-color .3s,box-shadow .3s}
.reader-container{background:var(--bg-primary);flex-direction:column;width:100%;height:100dvh;display:flex;position:relative;overflow:hidden}.reader-toolbar{height:var(--header-height);padding:0 var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border-bottom:var(--border-width-thin) solid var(--glass-border);z-index:var(--z-toolbar);transition:transform .3s,opacity .3s,background-color .3s;display:flex;position:fixed;top:0;left:0;right:0}.reader-toolbar.hidden{opacity:0;pointer-events:none;transform:translateY(-100%)}.reader-toolbar-left,.reader-toolbar-center,.reader-toolbar-right{align-items:center;gap:var(--space-2);display:flex}.reader-toolbar-left{flex:none;min-width:0}.reader-toolbar-center{flex:1;justify-content:center;min-width:0;overflow:hidden}.reader-toolbar-right{flex:none}.reader-toolbar-title{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-primary);white-space:nowrap;text-overflow:ellipsis;max-width:400px;overflow:hidden}.reader-toolbar-chapter{font-size:var(--font-size-xs);color:var(--text-tertiary);white-space:nowrap;text-overflow:ellipsis;max-width:300px;overflow:hidden}.reader-toolbar .btn-icon{color:var(--text-secondary);border-radius:var(--radius-md)}.reader-toolbar .btn-icon:hover{color:var(--text-primary);background:#ffffff14}[data-theme=light] .reader-toolbar .btn-icon:hover,[data-theme=sepia] .reader-toolbar .btn-icon:hover{background:#0000000f}.reader-content{padding-top:var(--header-height);flex:1;justify-content:center;align-items:center;width:100%;display:flex;position:relative;overflow:hidden}.reader-content.toolbar-hidden{padding-top:0}.epub-container{width:100%;height:100%;max-width:var(--reader-max-width);padding:var(--space-8) var(--reader-margin-x);margin:0 auto;position:relative;overflow:hidden}.epub-container iframe{border:none!important}.epub-container .epub-view{position:relative;overflow:hidden}.reading-content{font-family:var(--reader-font-family);font-size:var(--reader-font-size);line-height:var(--reader-line-height);letter-spacing:var(--reader-char-spacing);color:var(--text-primary);word-wrap:break-word;overflow-wrap:break-word;-webkit-hyphens:auto;hyphens:auto}.reading-content p{margin-bottom:var(--reader-paragraph-spacing);color:var(--text-primary)}.reading-content h1,.reading-content h2,.reading-content h3,.reading-content h4,.reading-content h5,.reading-content h6{line-height:var(--line-height-tight);font-family:var(--font-sans);margin-top:1.5em;margin-bottom:.5em}.reading-content h1{font-size:1.8em}.reading-content h2{font-size:1.5em}.reading-content h3{font-size:1.25em}.reading-content blockquote{padding:var(--space-3) var(--space-6);border-left:3px solid var(--accent-primary);background:var(--bg-surface);border-radius:0 var(--radius-sm) var(--radius-sm) 0;color:var(--text-secondary);margin:1em 0;font-style:italic}.reading-content a{color:var(--accent-primary);text-underline-offset:2px;text-decoration:underline;text-decoration-thickness:1px}.reading-content a:hover{color:var(--accent-hover)}.reading-content img{border-radius:var(--radius-sm);max-width:100%;height:auto;margin:1em auto}.reading-content pre,.reading-content code{font-family:var(--font-mono);background:var(--bg-surface);border-radius:var(--radius-xs);font-size:.9em}.reading-content code{padding:.15em .4em}.reading-content pre{padding:var(--space-4);border-radius:var(--radius-md);margin:1em 0;overflow-x:auto}.reading-content pre code{background:0 0;padding:0}.reading-content hr{border:none;border-top:1px solid var(--border-color);margin:2em 0}.reading-content ul,.reading-content ol{margin:1em 0;padding-left:1.5em}.reading-content ul{list-style-type:disc}.reading-content ol{list-style-type:decimal}.reading-content li{margin-bottom:.35em}.reading-content table{border:1px solid var(--border-color);border-radius:var(--radius-sm);width:100%;margin:1em 0;overflow:hidden}.reading-content th,.reading-content td{padding:var(--space-2) var(--space-3);border:1px solid var(--border-color);text-align:left}.reading-content th{background:var(--bg-surface);font-weight:var(--font-weight-semibold)}.reading-content ::selection{background:#f59e0b4d}[data-theme=sepia] .reading-content ::selection{background:#b4530940}.highlight-yellow{cursor:pointer;transition:background var(--transition-fast);background:#fbbf244d;border-bottom:2px solid #fbbf2499;border-radius:2px;padding:0 1px}.highlight-yellow:hover{background:#fbbf2473}.highlight-green{cursor:pointer;transition:background var(--transition-fast);background:#22c55e40;border-bottom:2px solid #22c55e80;border-radius:2px;padding:0 1px}.highlight-green:hover{background:#22c55e66}.highlight-blue{cursor:pointer;transition:background var(--transition-fast);background:#3b82f640;border-bottom:2px solid #3b82f680;border-radius:2px;padding:0 1px}.highlight-blue:hover{background:#3b82f666}.highlight-pink{cursor:pointer;transition:background var(--transition-fast);background:#ec489940;border-bottom:2px solid #ec489980;border-radius:2px;padding:0 1px}.highlight-pink:hover{background:#ec489966}.highlight-active{box-shadow:0 0 0 2px var(--accent-primary)}.highlight-menu{align-items:center;gap:var(--space-1);padding:var(--space-1);background:var(--glass-bg);-webkit-backdrop-filter:blur(var(--glass-blur));border:var(--border-width-thin) solid var(--glass-border);border-radius:var(--radius-lg);box-shadow:var(--shadow-lg);z-index:var(--z-popover);transform-origin:bottom;animation:.15s both scaleIn;display:flex;position:absolute}.highlight-menu-btn{border-radius:var(--radius-full);cursor:pointer;width:28px;height:28px;transition:transform var(--transition-fast), box-shadow var(--transition-fast);border:2px solid #0000}.highlight-menu-btn:hover{box-shadow:var(--shadow-sm);transform:scale(1.15)}.highlight-menu-btn.color-yellow{background:#fbbf24}.highlight-menu-btn.color-green{background:#22c55e}.highlight-menu-btn.color-blue{background:#3b82f6}.highlight-menu-btn.color-pink{background:#ec4899}.page-turn-left-enter{animation:.3s both pageSlideLeftIn}.page-turn-left-exit{animation:.3s both pageSlideLeftOut}.page-turn-right-enter{animation:.3s both pageSlideRightIn}.page-turn-right-exit{animation:.3s both pageSlideRightOut}@keyframes pageSlideLeftIn{0%{opacity:0;transform:translate(40px)}to{opacity:1;transform:translate(0)}}@keyframes pageSlideLeftOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(-40px)}}@keyframes pageSlideRightIn{0%{opacity:0;transform:translate(-40px)}to{opacity:1;transform:translate(0)}}@keyframes pageSlideRightOut{0%{opacity:1;transform:translate(0)}to{opacity:0;transform:translate(40px)}}.page-nav-zone{cursor:pointer;width:20%;min-width:60px;z-index:var(--z-base);transition:background var(--transition-fast);position:absolute;top:0;bottom:0}.page-nav-zone:hover{background:#ffffff05}.page-nav-zone.prev{left:0}.page-nav-zone.next{right:0}[data-theme=light] .page-nav-zone:hover,[data-theme=sepia] .page-nav-zone:hover{background:#00000005}.progress-bar{background:var(--bg-tertiary);height:3px;z-index:var(--z-toolbar);transition:opacity var(--transition-base), height var(--transition-base);position:fixed;bottom:0;left:0;right:0;overflow:hidden}.progress-bar:hover{cursor:pointer;height:6px}.progress-bar-fill{background:linear-gradient(90deg, var(--accent-primary), var(--accent-hover));border-radius:0 var(--radius-full) var(--radius-full) 0;height:100%;transition:width .4s;position:relative}.progress-bar-fill:after{content:"";background:var(--accent-hover);border-radius:var(--radius-full);opacity:0;width:8px;height:8px;transition:opacity var(--transition-fast);position:absolute;top:50%;right:0;transform:translateY(-50%);box-shadow:0 0 8px #f59e0b66}.progress-bar:hover .progress-bar-fill:after{opacity:1}.progress-bar-label{font-size:var(--font-size-xs);color:var(--text-tertiary);padding:var(--space-1) var(--space-3);background:var(--glass-bg);-webkit-backdrop-filter:blur(12px);border-radius:var(--radius-full);border:var(--border-width-thin) solid var(--glass-border);white-space:nowrap;opacity:0;pointer-events:none;transition:opacity var(--transition-fast);z-index:var(--z-toolbar);position:fixed;bottom:12px;left:50%;transform:translate(-50%)}.progress-bar:hover~.progress-bar-label,.progress-bar-label.visible{opacity:1}.reader-settings-overlay{z-index:var(--z-overlay);opacity:0;pointer-events:none;background:#0006;transition:opacity .3s;position:fixed;inset:0}.reader-settings-overlay.open{opacity:1;pointer-events:auto}.reader-settings-panel{width:var(--sidebar-width);background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);border-left:var(--border-width-thin) solid var(--glass-border);max-width:90vw;box-shadow:var(--shadow-xl);z-index:var(--z-modal);flex-direction:column;transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;bottom:0;right:0;overflow:hidden;transform:translate(100%)}.reader-settings-panel.open{transform:translate(0)}[data-theme=light] .reader-settings-panel{background:#ffffffeb}[data-theme=sepia] .reader-settings-panel{background:#f5e6c8eb}.reader-settings-header{padding:var(--space-4);border-bottom:var(--border-width-thin) solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.reader-settings-header h2{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold)}.reader-settings-body{padding:var(--space-4);flex:1;overflow-y:auto}.reader-settings-section{margin-bottom:var(--space-6)}.reader-settings-section-title{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);text-transform:uppercase;letter-spacing:var(--letter-spacing-wider);margin-bottom:var(--space-3)}.settings-row{padding:var(--space-2) 0;justify-content:space-between;align-items:center;gap:var(--space-3);display:flex}.settings-row label{font-size:var(--font-size-base);color:var(--text-primary);font-weight:var(--font-weight-regular);margin-bottom:0}.settings-slider{appearance:none;background:var(--bg-elevated);border-radius:var(--radius-full);cursor:pointer;border:none;outline:none;width:120px;height:4px;padding:0}.settings-slider::-webkit-slider-thumb{-webkit-appearance:none;background:var(--accent-primary);border-radius:var(--radius-full);cursor:pointer;width:16px;height:16px;transition:transform var(--transition-fast);box-shadow:0 1px 4px #0000004d}.settings-slider::-webkit-slider-thumb:hover{transform:scale(1.2)}.settings-slider::-moz-range-thumb{background:var(--accent-primary);border-radius:var(--radius-full);cursor:pointer;width:16px;height:16px;transition:transform var(--transition-fast);border:none;box-shadow:0 1px 4px #0000004d}.settings-slider::-moz-range-thumb:hover{transform:scale(1.2)}.theme-selector{gap:var(--space-2);display:flex}.theme-pill{border-radius:var(--radius-full);border:2px solid var(--border-color);cursor:pointer;width:40px;height:40px;transition:border-color var(--transition-fast), transform var(--transition-fast), box-shadow var(--transition-fast);position:relative;overflow:hidden}.theme-pill:hover{transform:scale(1.1)}.theme-pill.active{border-color:var(--accent-primary);box-shadow:0 0 0 2px var(--accent-primary)}.theme-pill.dark{background:linear-gradient(135deg,#0a0e1a,#1a1f2e)}.theme-pill.light{background:linear-gradient(135deg,#f8fafc,#e2e8f0)}.theme-pill.sepia{background:linear-gradient(135deg,#f5e6c8,#e8d8bc)}.font-selector{gap:var(--space-2);flex-wrap:wrap;display:flex}.font-pill{padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);border:var(--border-width-thin) solid var(--border-color);background:var(--bg-surface);color:var(--text-secondary);cursor:pointer;font-size:var(--font-size-sm);transition:border-color var(--transition-fast), color var(--transition-fast), background-color var(--transition-fast)}.font-pill:hover{border-color:var(--accent-primary);color:var(--text-primary)}.font-pill.active{border-color:var(--accent-primary);color:var(--accent-primary);background:#f59e0b1a}.tts-controls{bottom:var(--space-6);align-items:center;gap:var(--space-3);padding:var(--space-2) var(--space-4);background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);border:var(--border-width-thin) solid var(--glass-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-lg);z-index:var(--z-toolbar);justify-content:center;min-width:280px;animation:.3s both slideUp;display:flex;position:fixed;left:50%;transform:translate(-50%)}[data-theme=light] .tts-controls{background:#ffffffe6}[data-theme=sepia] .tts-controls{background:#f5e6c8eb}.tts-controls.hidden{pointer-events:none;animation:.2s both slideDown}.tts-btn{border-radius:var(--radius-full);width:36px;height:36px;color:var(--text-secondary);cursor:pointer;transition:color var(--transition-fast), background var(--transition-fast), transform var(--transition-fast);background:0 0;border:none;justify-content:center;align-items:center;display:flex}.tts-btn:hover{color:var(--text-primary);background:#ffffff14}[data-theme=light] .tts-btn:hover,[data-theme=sepia] .tts-btn:hover{background:#0000000f}.tts-btn.play{background:var(--accent-primary);width:44px;height:44px;color:var(--color-navy-900);border-radius:var(--radius-full)}.tts-btn.play:hover{background:var(--accent-hover);box-shadow:var(--shadow-glow);transform:scale(1.05)}[data-theme=light] .tts-btn.play,[data-theme=sepia] .tts-btn.play{color:#fff}.tts-speed{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);color:var(--text-tertiary);text-align:center;cursor:pointer;min-width:36px;padding:var(--space-1);border-radius:var(--radius-sm);transition:color var(--transition-fast), background var(--transition-fast)}.tts-speed:hover{color:var(--text-primary);background:#ffffff0f}.tts-progress{background:var(--bg-elevated);border-radius:var(--radius-full);width:80px;height:3px;overflow:hidden}.tts-progress-fill{background:var(--accent-primary);border-radius:var(--radius-full);height:100%;transition:width .2s linear}.tts-word-active{background:#f59e0b33;border-radius:2px;padding:0 1px;transition:background .1s}.toc-panel{width:var(--sidebar-width);background:var(--glass-bg);-webkit-backdrop-filter:blur(24px);border-right:var(--border-width-thin) solid var(--glass-border);max-width:90vw;box-shadow:var(--shadow-xl);z-index:var(--z-modal);flex-direction:column;transition:transform .3s cubic-bezier(.32,.72,0,1);display:flex;position:fixed;top:0;bottom:0;left:0;overflow:hidden;transform:translate(-100%)}.toc-panel.open{transform:translate(0)}[data-theme=light] .toc-panel{background:#ffffffeb}[data-theme=sepia] .toc-panel{background:#f5e6c8eb}.toc-header{padding:var(--space-4);border-bottom:var(--border-width-thin) solid var(--border-color);flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.toc-list{padding:var(--space-2);flex:1;overflow-y:auto}.toc-item{align-items:center;gap:var(--space-2);padding:var(--space-2) var(--space-3);border-radius:var(--radius-md);color:var(--text-secondary);font-size:var(--font-size-base);cursor:pointer;transition:background var(--transition-fast), color var(--transition-fast);display:flex}.toc-item:hover{background:var(--bg-surface);color:var(--text-primary)}.toc-item.active{color:var(--accent-primary);font-weight:var(--font-weight-medium);background:#f59e0b1a}.toc-item.nested-1{padding-left:var(--space-8)}.toc-item.nested-2{padding-left:var(--space-12)}.reader-loading{justify-content:center;align-items:center;gap:var(--space-4);flex-direction:column;height:100%;display:flex}.reader-loading-spinner{border:3px solid var(--border-color);border-top-color:var(--accent-primary);border-radius:var(--radius-full);width:40px;height:40px;animation:.8s linear infinite spin}.reader-loading-text{font-size:var(--font-size-sm);color:var(--text-tertiary);animation:2s ease-in-out infinite pulse}.skeleton-line{border-radius:var(--radius-xs);height:1em;margin-bottom:.75em}.skeleton-line.animate-shimmer{opacity:.6}.skeleton-line:nth-child(odd){width:100%}.skeleton-line:nth-child(2n){width:85%}.skeleton-line:last-child{width:60%}.bookmark-indicator{top:0;right:var(--space-4);background:var(--accent-primary);clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%);width:24px;height:36px;z-index:var(--z-sticky);transition:transform var(--transition-spring), opacity var(--transition-fast);transform-origin:top;position:absolute}.bookmark-indicator.entering{animation:.4s both bounceIn}@media (max-width:1024px){:root{--reader-margin-x:var(--space-4)}.reader-toolbar-title{max-width:250px}.reader-toolbar-chapter{display:none}}@media (max-width:768px){:root{--header-height:48px;--sidebar-width:100%;--reader-margin-x:var(--space-3)}.reader-toolbar{padding:0 var(--space-3)}.reader-toolbar-title{max-width:180px;font-size:var(--font-size-xs)}.reader-settings-panel{border-left:none;border-radius:0;width:100%;max-width:100%}.toc-panel{border-right:none;border-radius:0;width:100%;max-width:100%}.epub-container{padding:var(--space-4) var(--space-3)}.page-nav-zone{width:15%;min-width:44px}.tts-controls{bottom:var(--space-4);min-width:260px;padding:var(--space-2) var(--space-3)}.highlight-menu{bottom:var(--space-4);position:fixed;top:auto;left:50%;transform:translate(-50%)}}@media (max-width:480px){:root{--reader-margin-x:var(--space-2);--reader-font-size:1rem}.reader-toolbar-title{max-width:140px}.tts-controls{width:calc(100% - var(--space-6));min-width:0}.settings-slider{width:100px}}@media (min-width:1440px){:root{--reader-max-width:48em}.epub-container{padding:var(--space-12) var(--space-8)}}@media print{.reader-toolbar,.progress-bar,.tts-controls,.reader-settings-panel,.reader-settings-overlay,.toc-panel,.highlight-menu,.page-nav-zone,.bookmark-indicator{display:none!important}.reader-content{padding-top:0}.reading-content{color:#000;font-size:12pt;line-height:1.6}}

