:root{font-family:system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;display:flex;place-items:center;min-width:320px;min-height:100vh}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif;background:var(--background);color:var(--foreground);min-height:100vh;line-height:1.6}#root{width:100%;min-height:100vh}.book-app{width:100%;height:100vh;overflow:hidden}:root{--radius: .65rem;--background: oklch(1 0 0);--foreground: oklch(.141 .005 285.823);--card: oklch(1 0 0);--card-foreground: oklch(.141 .005 285.823);--popover: oklch(1 0 0);--popover-foreground: oklch(.141 .005 285.823);--primary: oklch(.795 .184 86.047);--primary-foreground: oklch(.421 .095 57.708);--secondary: oklch(.967 .001 286.375);--secondary-foreground: oklch(.21 .006 285.885);--muted: oklch(.967 .001 286.375);--muted-foreground: oklch(.552 .016 285.938);--accent: oklch(.967 .001 286.375);--accent-foreground: oklch(.21 .006 285.885);--destructive: oklch(.577 .245 27.325);--border: oklch(.92 .004 286.32);--input: oklch(.92 .004 286.32);--ring: oklch(.795 .184 86.047);--chart-1: oklch(.646 .222 41.116);--chart-2: oklch(.6 .118 184.704);--chart-3: oklch(.398 .07 227.392);--chart-4: oklch(.828 .189 84.429);--chart-5: oklch(.769 .188 70.08);--sidebar: oklch(.985 0 0);--sidebar-foreground: oklch(.141 .005 285.823);--sidebar-primary: oklch(.795 .184 86.047);--sidebar-primary-foreground: oklch(.421 .095 57.708);--sidebar-accent: oklch(.967 .001 286.375);--sidebar-accent-foreground: oklch(.21 .006 285.885);--sidebar-border: oklch(.92 .004 286.32);--sidebar-ring: oklch(.795 .184 86.047)}.dark{--background: oklch(.141 .005 285.823);--foreground: oklch(.985 0 0);--card: oklch(.21 .006 285.885);--card-foreground: oklch(.985 0 0);--popover: oklch(.21 .006 285.885);--popover-foreground: oklch(.985 0 0);--primary: oklch(.795 .184 86.047);--primary-foreground: oklch(.421 .095 57.708);--secondary: oklch(.274 .006 286.033);--secondary-foreground: oklch(.985 0 0);--muted: oklch(.274 .006 286.033);--muted-foreground: oklch(.705 .015 286.067);--accent: oklch(.274 .006 286.033);--accent-foreground: oklch(.985 0 0);--destructive: oklch(.704 .191 22.216);--border: oklch(1 0 0 / 10%);--input: oklch(1 0 0 / 15%);--ring: oklch(.554 .135 66.442);--chart-1: oklch(.488 .243 264.376);--chart-2: oklch(.696 .17 162.48);--chart-3: oklch(.769 .188 70.08);--chart-4: oklch(.627 .265 303.9);--chart-5: oklch(.645 .246 16.439);--sidebar: oklch(.21 .006 285.885);--sidebar-foreground: oklch(.985 0 0);--sidebar-primary: oklch(.795 .184 86.047);--sidebar-primary-foreground: oklch(.421 .095 57.708);--sidebar-accent: oklch(.274 .006 286.033);--sidebar-accent-foreground: oklch(.985 0 0);--sidebar-border: oklch(1 0 0 / 10%);--sidebar-ring: oklch(.554 .135 66.442)}.book-container{display:flex;min-height:100vh;background:var(--background);font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}.table-of-contents{width:240px;background:var(--sidebar);border-right:1px solid var(--sidebar-border);padding:0;position:fixed;height:100vh;overflow-y:auto;z-index:100}.toc-header{background:var(--sidebar);color:var(--sidebar-foreground);padding:16px;margin:0;border-bottom:1px solid var(--sidebar-border)}.toc-header h2{margin:0 0 4px;color:var(--sidebar-foreground);font-size:18px;font-weight:600}.subtitle{margin:0;color:var(--muted-foreground);font-size:12px;font-weight:400}.chapter-list{display:flex;flex-direction:column;gap:0;margin:0;padding:8px 0}.chapter-link{display:block;padding:8px 16px;background:transparent;border:none;cursor:pointer;transition:background-color .15s ease;text-align:left;font-size:13px;color:var(--sidebar-foreground);border-radius:0}.chapter-link:hover{background:var(--sidebar-accent)}.chapter-link.active{background:var(--muted);color:var(--foreground)}.chapter-number{font-size:10px;font-weight:500;display:block;margin-bottom:2px;opacity:.7;text-transform:uppercase}.chapter-title{font-size:12px;line-height:1.3;display:block;font-weight:400}.progress-indicator{position:sticky;bottom:0;background:var(--sidebar);padding:12px 16px;border-top:1px solid var(--sidebar-border)}.progress-bar{width:100%;height:3px;background:var(--muted);border-radius:2px;overflow:hidden;margin-bottom:6px}.progress-fill{height:100%;background:var(--primary);transition:width .3s ease}.progress-text{font-size:11px;color:var(--muted-foreground);text-align:center;display:block}.book-content{flex:1;margin-left:240px;padding:0;display:flex;flex-direction:column;background:var(--background);min-height:100vh;overflow-y:auto}.chapter-content{flex:0 0 auto;background:var(--card);padding:40px 60px 60px;line-height:1.6;max-width:900px;font-size:15px;color:var(--card-foreground)}.chapter-content h1{color:var(--foreground);font-size:32px;margin:0 0 24px;font-weight:600;border-bottom:1px solid var(--border);padding-bottom:8px}.chapter-content h2{color:var(--foreground);font-size:22px;margin:32px 0 16px;font-weight:500}.chapter-content h3{color:var(--foreground);font-size:18px;margin:24px 0 12px;font-weight:500}.chapter-content p{margin-bottom:16px;color:var(--foreground);font-size:15px;line-height:1.6}.chapter-content pre{background:var(--muted);border:1px solid var(--border);border-left:3px solid var(--primary);border-radius:var(--radius);padding:16px;margin:20px 0;overflow-x:auto;font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;line-height:1.4}.chapter-content code{background:var(--muted);padding:2px 6px;border-radius:calc(var(--radius) - 2px);font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;color:var(--foreground)}.chapter-content pre code{background:none;padding:0;color:inherit}.chapter-content ul,.chapter-content ol{margin:16px 0;padding-left:24px}.chapter-content li{margin-bottom:6px;line-height:1.6}.chapter-content blockquote{border-left:4px solid var(--primary);background:var(--muted);padding:16px 20px;margin:20px 0;font-style:italic;color:var(--muted-foreground);border-radius:var(--radius)}.chapter-content .reading-time{font-style:italic;color:var(--muted-foreground);text-align:center;margin-top:40px;margin-bottom:0;padding-top:20px;padding-bottom:0;border-top:1px solid var(--border);font-size:13px}.chapter-content .call-to-action{background:var(--muted);border:1px solid var(--border);border-radius:var(--radius);padding:20px;margin:30px 0;text-align:center}.chapter-content .call-to-action p{margin-bottom:16px;font-size:15px;color:var(--foreground)}.chapter-content .call-to-action button{background:var(--primary);color:var(--primary-foreground);border:none;padding:10px 20px;cursor:pointer;font-size:14px;border-radius:var(--radius);transition:opacity .15s ease}.chapter-content .call-to-action button:hover{opacity:.9}.chapter-content strong{font-weight:600;color:var(--foreground)}.chapter-content em{font-style:italic}@media (max-width: 768px){.table-of-contents{position:static;width:100%;height:auto}.book-content{margin-left:0}.chapter-content{padding:20px}}
