:root{--bg-deep:#07080f;--bg-space:#0a0c18;--bg-card:#0f1320;--bg-hover:#151b2e;--border-dim:#1a2040;--border-glow:#4f8ff726;--text-primary:#e8d5c4;--text-secondary:#c0b4a8;--text-muted:#6b5f55;--text-accent:#6ba3f7;--text-warm:#e8d5c4;--gradient-primary:linear-gradient(135deg, #6ba3f7, #7c3aed);--gradient-subtle:linear-gradient(180deg, #6ba3f70f, transparent);--gradient-danger:linear-gradient(135deg, #f87171, #ef4444);--gradient-warm:linear-gradient(135deg, #e8d5c4, #d4c4b0);--gradient-glow:linear-gradient(135deg, #6ba3f726, #7c3aed14);--font-sans:"SF Pro Display", -apple-system, BlinkMacSystemFont, "Segoe UI", "Inter", system-ui, sans-serif;--font-serif:"Georgia", "Times New Roman", "Palatino Linotype", "Palatino", serif;--font-mono:"SF Mono", "JetBrains Mono", "Fira Code", "Consolas", monospace;--reading-width:70ch;--max-width:820px;--nav-width:260px;--transition:.3s cubic-bezier(.4, 0, .2, 1);--transition-slow:.6s cubic-bezier(.22, 1, .36, 1)}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html{scroll-behavior:smooth;background:var(--bg-deep);color:var(--text-primary);font-family:var(--font-serif);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:17px;line-height:1.8}body{background:var(--bg-deep);min-height:100vh;overflow-x:hidden}::selection{color:#fff;background:#6ba3f759}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:0 0}::-webkit-scrollbar-thumb{background:var(--border-dim);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#2a3560}.reading-progress{background:var(--gradient-primary);z-index:1000;width:0%;height:3px;transition:width .1s linear;position:fixed;top:0;left:0;box-shadow:0 0 8px #6ba3f766}.page-enter{animation:pageFadeIn .5s var(--transition-slow) forwards}@keyframes pageFadeIn{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.reveal{opacity:0;transition:opacity .6s ease-out,transform .6s ease-out;transform:translateY(24px)}.reveal.visible{opacity:1;transform:translateY(0)}.starfield{z-index:0;pointer-events:none;position:fixed;inset:0;overflow:hidden}.star{animation:twinkle var(--duration,3s) ease-in-out infinite alternate;background:#fff;border-radius:50%;position:absolute}@keyframes twinkle{0%{opacity:.15;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.app{z-index:1;min-height:100vh;display:flex;position:relative}.sidebar{width:var(--nav-width);min-width:var(--nav-width);border-right:1px solid var(--border-dim);z-index:100;scrollbar-width:thin;background:linear-gradient(#0a0c18f5,#07080ffc);flex-direction:column;padding:1.5rem 0;display:flex;position:fixed;top:0;bottom:0;left:0;overflow-y:auto}.sidebar-brand{border-bottom:1px solid var(--border-dim);margin-bottom:.75rem;padding:0 1.2rem 1.2rem}.sidebar-brand h1{letter-spacing:-.02em;font-size:.85rem;font-weight:700;font-family:var(--font-sans);background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.sidebar-brand .subtitle{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;font-family:var(--font-sans);margin-top:.15rem}.sidebar-section{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.6rem;font-weight:600;font-family:var(--font-sans);padding:.5rem 1.2rem .2rem}.sidebar-link{color:var(--text-secondary);font-size:.78rem;font-family:var(--font-sans);transition:var(--transition);border-left:2px solid #0000;align-items:center;gap:.5rem;padding:.4rem 1.2rem;text-decoration:none;display:flex;position:relative}.sidebar-link:hover{color:var(--text-primary);background:#ffffff05}.sidebar-link.active{color:var(--text-accent);border-left-color:var(--text-accent);background:#6ba3f70f}.sidebar-link .icon{text-align:center;opacity:.6;flex-shrink:0;width:16px;font-size:.7rem}.sidebar-badge{background:var(--gradient-primary);color:#fff;font-size:.55rem;font-weight:600;font-family:var(--font-sans);border-radius:4px;margin-left:auto;padding:.08rem .4rem}.sidebar-link .chapter-progress-dot{background:var(--text-muted);width:4px;height:4px;transition:var(--transition);border-radius:50%;flex-shrink:0;margin-left:auto}.sidebar-link.active .chapter-progress-dot{background:var(--text-accent);box-shadow:0 0 4px #6ba3f780}.main{margin-left:var(--nav-width);max-width:calc(var(--max-width) + var(--nav-width) + 5rem);flex:1;padding:2.5rem 2.5rem 5rem}.reading-content{max-width:var(--reading-width);margin-left:auto;margin-right:auto}.chapter-header{animation:chapterHeaderIn .7s var(--transition-slow) both;margin-bottom:2.5rem}@keyframes chapterHeaderIn{0%{opacity:0;transform:translateY(-16px)}to{opacity:1;transform:translateY(0)}}.chapter-number-badge{font-family:var(--font-sans);text-transform:uppercase;letter-spacing:.15em;color:var(--text-accent);background:#6ba3f70f;border:1px solid #6ba3f733;border-radius:20px;align-items:center;gap:.5rem;margin-bottom:.75rem;padding:.3rem .75rem;font-size:.65rem;font-weight:600;display:inline-flex;position:relative;overflow:hidden}.chapter-number-badge:after{content:"";background:var(--gradient-glow);opacity:0;border-radius:20px;transition:opacity .4s;position:absolute;inset:0}.chapter-number-badge:hover:after{opacity:1}.chapter-number-badge .badge-dot{background:var(--text-accent);border-radius:50%;width:6px;height:6px;animation:2s ease-in-out infinite badgePulse}@keyframes badgePulse{0%,to{opacity:.4}50%{opacity:1}}.chapter-header h1{letter-spacing:-.03em;font-size:2.2rem;font-weight:800;line-height:1.15;font-family:var(--font-sans);background:linear-gradient(135deg,#e8d5c4,#c0b4a8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem}.chapter-header .subtitle{color:var(--text-secondary);max-width:60ch;font-size:1rem;font-weight:400;line-height:1.6}.reading-meta{color:var(--text-muted);font-size:.75rem;font-family:var(--font-sans);border-bottom:1px solid var(--border-dim);flex-wrap:wrap;align-items:center;gap:1rem;margin-bottom:2rem;padding:.6rem 0;display:flex}.reading-time{color:var(--text-accent);background:#6ba3f714;border-radius:12px;align-items:center;gap:.35rem;padding:.2rem .6rem;font-weight:500;display:flex}.reading-time svg{fill:currentColor;width:12px;height:12px}.chapter-content>p:first-of-type:first-letter{float:left;color:var(--text-accent);font-size:3.5em;font-weight:700;line-height:.85;font-family:var(--font-sans);text-shadow:0 0 20px #6ba3f726;margin-top:.1rem;margin-right:.45rem;padding:.15rem .3rem .1rem 0}h1{letter-spacing:-.03em;font-size:2.2rem;font-weight:800;line-height:1.15;font-family:var(--font-sans);background:linear-gradient(135deg,#e8d5c4,#c0b4a8);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin-bottom:.5rem}.chapter-label{color:var(--text-accent);text-transform:uppercase;letter-spacing:.12em;font-size:.7rem;font-weight:600;font-family:var(--font-sans);margin-bottom:.75rem}.meta-line{color:var(--text-muted);font-size:.72rem;font-family:var(--font-mono);background:var(--bg-card);border:1px solid var(--border-dim);border-radius:6px;margin-bottom:2.5rem;padding:.8rem 1rem;line-height:1.8}h2{color:var(--text-primary);letter-spacing:-.01em;font-size:1.4rem;font-weight:700;font-family:var(--font-sans);margin:2.8rem 0 1rem}h3{color:var(--text-primary);font-size:1.1rem;font-weight:600;font-family:var(--font-sans);margin:2rem 0 .8rem}p{color:var(--text-warm);margin-bottom:1.3rem;line-height:1.85}strong{color:var(--text-primary);font-weight:600}em{color:var(--text-secondary)}blockquote{border-left:3px solid var(--text-accent);color:var(--text-secondary);background:#6ba3f70a;border-radius:0 8px 8px 0;margin:1.8rem 0;padding:1rem 1.2rem;font-size:.95rem;font-style:italic}blockquote strong{color:var(--text-muted);font-size:.8rem;font-style:normal;font-family:var(--font-sans);margin-top:.5rem;display:block}.chapter-nav{border-bottom:1px solid var(--border-dim);font-family:var(--font-sans);justify-content:space-between;align-items:center;margin-bottom:2rem;padding:1rem 0;display:flex}.chapter-nav a{color:var(--text-accent);transition:var(--transition);border-radius:4px;align-items:center;gap:.4rem;padding:.3rem .6rem;font-size:.8rem;font-weight:500;text-decoration:none;display:inline-flex}.chapter-nav a:hover{color:#93c5fd;background:#6ba3f70f}.chapter-nav .disabled{color:var(--text-muted);pointer-events:none;opacity:.4}.chapter-nav .chapter-nav-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.65rem}.chapter-nav-bottom{border-top:1px solid var(--border-dim);font-family:var(--font-sans);justify-content:space-between;align-items:center;margin-top:3rem;padding-top:1.5rem;display:flex}.chapter-nav-bottom a{color:var(--text-accent);transition:var(--transition);border-radius:6px;flex-direction:column;gap:.15rem;padding:.5rem .8rem;font-size:.8rem;font-weight:500;text-decoration:none;display:flex}.chapter-nav-bottom a:hover{background:#6ba3f70f}.chapter-nav-bottom a .nav-direction{text-transform:uppercase;letter-spacing:.08em;color:var(--text-muted);font-size:.6rem;font-weight:600}.chapter-nav-bottom a .nav-title{color:var(--text-primary);font-size:.9rem;font-weight:600}.chapter-nav-bottom a:hover .nav-title{color:var(--text-accent)}.chapter-nav-bottom .nav-disabled{opacity:.3;pointer-events:none}.chapter-progress{text-align:center;color:var(--text-muted);font-size:.65rem;font-family:var(--font-mono)}.chapter-progress-bar{background:var(--border-dim);border-radius:2px;width:80px;height:3px;margin:.4rem auto 0;overflow:hidden}.chapter-progress-bar .progress-fill{background:var(--gradient-primary);height:100%;transition:width var(--transition);border-radius:2px}.manual-header{background:linear-gradient(135deg,#f8717114,#ef44440a);border:1px solid #f8717126;border-radius:8px;align-items:center;gap:1rem;margin-bottom:1.5rem;padding:1.5rem;display:flex}.manual-header .icon{flex-shrink:0;font-size:2rem}.manual-header h1{background:linear-gradient(135deg,#f87171,#ef4444);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text;margin:0;font-size:1.3rem}.manual-section-nav{background:var(--bg-card);border:1px solid var(--border-dim);font-family:var(--font-sans);border-radius:8px;flex-wrap:wrap;gap:.4rem;margin-bottom:2rem;padding:.8rem;display:flex}.manual-section-nav a{color:var(--text-muted);transition:var(--transition);border:1px solid #0000;border-radius:4px;padding:.3rem .6rem;font-size:.7rem;text-decoration:none}.manual-section-nav a:hover{color:var(--text-accent);border-color:var(--border-dim);background:#6ba3f70a}.manual-section-nav a.active{color:#f87171;background:#f871710f;border-color:#f871714d}.manual-section{background:var(--bg-card);border:1px solid var(--border-dim);border-radius:8px;margin-bottom:1.5rem;padding:1.5rem}.manual-section h2{margin-top:0;font-size:1.1rem}.manual-section .scenario{color:var(--text-secondary);background:#f871710d;border-left:3px solid #f87171;border-radius:0 4px 4px 0;margin-bottom:1rem;padding:.8rem 1rem;font-size:.85rem;font-style:italic}.manual-grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:1.5rem 0;display:grid}.manual-card{background:var(--bg-card);border:1px solid var(--border-dim);color:var(--text-primary);transition:var(--transition);border-radius:8px;flex-direction:column;gap:.4rem;padding:1.2rem;text-decoration:none;display:flex}.manual-card:hover{border-color:#f871714d;transform:translateY(-2px);box-shadow:0 4px 20px #0000004d}.manual-card .section-num{color:#f87171;text-transform:uppercase;letter-spacing:.1em;font-size:.65rem;font-weight:700;font-family:var(--font-sans)}.manual-card h3{margin:0;font-size:.9rem}.manual-card p{color:var(--text-muted);margin:0;font-size:.78rem}code{font-family:var(--font-mono);color:var(--text-accent);background:#6ba3f71a;border-radius:3px;padding:.1rem .3rem;font-size:.85em}pre{border:1px solid var(--border-dim);background:#0a0c18;border-radius:6px;margin:1.2rem 0;padding:1rem 1.2rem;overflow-x:auto}pre code{color:var(--text-secondary);background:0 0;padding:0;font-size:.82rem}ul,ol{color:var(--text-secondary);margin:0 0 1.2rem 1.5rem;line-height:1.8}li{margin-bottom:.4rem}.hero{text-align:center;animation:heroFadeIn .8s var(--transition-slow) both;padding:4rem 0 3rem}@keyframes heroFadeIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.hero h1{margin-bottom:.5rem;font-size:3rem}.hero .tagline{color:var(--text-secondary);font-size:1.1rem;font-family:var(--font-serif);margin-bottom:.5rem}.hero .badge-row{flex-wrap:wrap;justify-content:center;gap:.6rem;margin-top:1.5rem;display:flex}.badge{background:var(--bg-card);border:1px solid var(--border-dim);color:var(--text-muted);font-size:.65rem;font-weight:500;font-family:var(--font-sans);border-radius:20px;align-items:center;gap:.3rem;padding:.25rem .7rem;display:inline-flex}.badge.accent{color:var(--text-accent);border-color:#6ba3f74d}.badge.danger{color:#f87171;border-color:#f871714d}.badge.green{color:#34d399;border-color:#34d3994d}.badge.warm{color:var(--text-warm);border-color:#e8d5c433}.story-stats{grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:1rem;margin:2rem 0;display:grid}.story-stat-card{background:var(--bg-card);border:1px solid var(--border-dim);text-align:center;border-radius:8px;padding:1.2rem}.story-stat-card .stat-value{font-size:1.4rem;font-weight:700;font-family:var(--font-sans);background:var(--gradient-primary);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.story-stat-card .stat-label{color:var(--text-muted);text-transform:uppercase;letter-spacing:.08em;font-size:.65rem;font-family:var(--font-sans);margin-top:.25rem}.chapter-grid{grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem;margin:2rem 0;display:grid}.chapter-card{background:var(--bg-card);border:1px solid var(--border-dim);color:var(--text-primary);transition:var(--transition);border-radius:8px;flex-direction:column;gap:.3rem;padding:1.2rem;text-decoration:none;display:flex;position:relative;overflow:hidden}.chapter-card:before{content:"";background:var(--gradient-primary);opacity:0;height:2px;transition:opacity var(--transition);position:absolute;top:0;left:0;right:0}.chapter-card:hover{border-color:var(--border-glow);transform:translateY(-3px);box-shadow:0 6px 24px #0000004d}.chapter-card:hover:before{opacity:1}.chapter-card .card-label{color:var(--text-accent);text-transform:uppercase;letter-spacing:.1em;font-size:.6rem;font-weight:600;font-family:var(--font-sans)}.chapter-card h3{margin:0;font-size:.95rem;font-weight:600}.chapter-card p{color:var(--text-muted);margin:0;font-size:.75rem;line-height:1.5}.chapter-card .card-read-time{color:var(--text-muted);font-size:.6rem;font-family:var(--font-sans);margin-top:auto;padding-top:.4rem}.back-link{color:var(--text-accent);transition:var(--transition);font-size:.8rem;font-weight:500;font-family:var(--font-sans);align-items:center;gap:.3rem;margin-bottom:1rem;text-decoration:none;display:inline-flex}.back-link:hover{color:#93c5fd}hr{background:linear-gradient(90deg, transparent, var(--border-dim), transparent);border:none;height:1px;margin:2.5rem 0}.timeline{border-left:2px solid var(--border-dim);margin:1.5rem 0;padding-left:1.5rem;position:relative}.timeline-item{opacity:0;margin-bottom:1.5rem;transition:opacity .5s,transform .5s;transform:translate(-10px)}.timeline-item.visible{opacity:1;transform:translate(0)}.timeline-item .time{color:var(--text-accent);font-size:.72rem;font-family:var(--font-mono);font-weight:600}.scroll-top{background:var(--bg-card);border:1px solid var(--border-dim);width:40px;height:40px;color:var(--text-muted);cursor:pointer;transition:var(--transition);opacity:0;pointer-events:none;z-index:50;font-size:1.2rem;font-family:var(--font-sans);border-radius:50%;justify-content:center;align-items:center;display:flex;position:fixed;bottom:2rem;right:2rem}.scroll-top.visible{opacity:1;pointer-events:auto}.scroll-top:hover{background:var(--bg-hover);border-color:var(--text-accent);color:var(--text-accent)}@media print{.sidebar,.starfield,.reading-progress,.scroll-top,.chapter-nav,.chapter-nav-bottom,.chapter-progress,.manual-section-nav,.back-link{display:none!important}.main{max-width:100%!important;margin-left:0!important;padding:0!important}.reading-content{max-width:100%!important}body{color:#111;background:#fff;font-size:12pt}:root{--bg-deep:#fff;--bg-card:#f5f5f5;--text-primary:#111;--text-secondary:#333;--text-muted:#666;--text-warm:#111;--border-dim:#ccc}.manual-section{break-inside:avoid;background:#fafafa;border:1px solid #ccc}.manual-header{background:#fee;border-color:#faa}h1,.chapter-header h1,.hero h1,.story-stat-card .stat-value{color:#111;-webkit-text-fill-color:#111;background:0 0}.chapter-number-badge{background:#f0f0f0;border-color:#ccc}.chapter-number-badge .badge-dot{background:#666}}@media (width<=900px){.sidebar{border-right:none;border-bottom:1px solid var(--border-dim);z-index:200;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);background:#07080ff7;flex-flow:wrap;width:100%;min-width:100%;height:auto;padding:.8rem 0;position:fixed;top:0;bottom:auto;left:0;overflow:visible}.sidebar-brand{cursor:pointer;border-bottom:none;align-items:center;gap:.5rem;width:100%;margin-bottom:0;padding:0 1rem;display:flex}.sidebar-brand h1{font-size:.8rem}.sidebar-brand .subtitle{font-size:.55rem}.sidebar-toggle{border:1px solid var(--border-dim);color:var(--text-secondary);cursor:pointer;background:0 0;border-radius:4px;margin-left:auto;padding:.3rem .5rem;font-size:.8rem}.sidebar-links{border-top:1px solid var(--border-dim);width:100%;max-height:60vh;margin-top:.5rem;padding:.5rem 0;display:none;overflow-y:auto}.sidebar-links.open{display:block}.sidebar-section,.sidebar-link{padding:.3rem 1rem}.main{margin-left:0;padding:5rem 1.2rem 4rem}.hero h1{font-size:2rem}.chapter-header h1,h1{font-size:1.6rem}.chapter-grid,.manual-grid{grid-template-columns:1fr}.story-stats{grid-template-columns:repeat(2,1fr)}.chapter-nav-bottom{flex-direction:column;gap:.8rem}.chapter-nav-bottom a{text-align:center;width:100%}.chapter-nav-bottom a:first-child{align-items:flex-start}.chapter-nav-bottom a:last-child{align-items:flex-end}.reading-content{max-width:100%}:root{--reading-width:100%}html{font-size:16px}}@media (width<=500px){.main{padding:4.5rem .8rem 3rem}.hero h1{font-size:1.6rem}.chapter-header h1{font-size:1.3rem}.story-stats{grid-template-columns:1fr 1fr}.chapter-content>p:first-of-type:first-letter{font-size:2.8em}}
