.destiny-canvas{--destiny-canvas:#dcdcd9;--destiny-nav:#2c2420;--destiny-nav-foreground:#e8e0d5;--destiny-nav-active:#be4b3d;--destiny-nav-muted:#8a7f74;--destiny-cover:#ede5d8;--destiny-paper:#faf6ef;--destiny-paper-muted:#f0e9dd;--destiny-spine:#d4c9b8;--destiny-ink:#2c2420;--destiny-ink-muted:#6b6058;--destiny-ink-faint:#9a8f85;--destiny-rule:#d4c9b8;--destiny-rule-soft:#e8dfcf;--destiny-accent:#be4b3d;--destiny-accent-soft:#f4ddd8;--destiny-gold:#b8923f;--destiny-gold-soft:#f0e6d0;--destiny-shadow-book:0 2px 8px rgba(44,36,32,0.08),0 8px 24px rgba(44,36,32,0.06);--destiny-shadow-page:0 1px 3px rgba(44,36,32,0.04);--destiny-radius-cover:6px;--destiny-radius-page:4px;--destiny-spine-width:10px;--destiny-book-radius:6px;--destiny-book-shadow:0 4px 12px rgba(44,36,32,0.10),0 12px 40px rgba(44,36,32,0.08);--destiny-book-max-width:1200px;--destiny-nav-rail-width:76px;--destiny-font-serif:"Noto Serif SC",Georgia,"Times New Roman",serif;--destiny-font-sans:"Noto Sans SC",-apple-system,BlinkMacSystemFont,sans-serif}@media (prefers-reduced-motion:reduce){.destiny-canvas,.destiny-canvas *{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important;scroll-behavior:auto!important}}[data-force-reduced-motion=true] *,[data-force-reduced-motion=true] :after,[data-force-reduced-motion=true] :before{animation-duration:.001ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.001ms!important}.destiny-paper-texture{position:relative}.destiny-paper-texture:before{content:"";position:absolute;inset:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='2' stitchTiles='stitch'/%3E%3CfeColorMatrix values='0 0 0 0 0.17 0 0 0 0 0.14 0 0 0 0 0.13 0 0 0 0.04 0'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");background-repeat:repeat;pointer-events:none;opacity:.6;border-radius:inherit;z-index:0}.destiny-paper-texture>*{position:relative;z-index:1}.destiny-book-body{border-radius:var(--destiny-book-radius);box-shadow:var(--destiny-book-shadow);overflow:hidden}.destiny-page-edges{position:relative}.destiny-page-edges:after{content:"";position:absolute;top:4px;right:-3px;bottom:4px;width:4px;background:linear-gradient(90deg,rgba(212,201,184,.9),rgba(212,201,184,.5),transparent);border-radius:0 3px 3px 0;pointer-events:none;z-index:2}.destiny-page-edges:before{content:"";position:absolute;top:8px;right:-7px;bottom:8px;width:5px;background:linear-gradient(90deg,rgba(212,201,184,.6),rgba(212,201,184,.25),transparent);border-radius:0 2px 2px 0;pointer-events:none;z-index:1}.destiny-page-edges-outer{position:relative}.destiny-page-edges-outer:after{content:"";position:absolute;top:12px;right:-11px;bottom:12px;width:4px;background:linear-gradient(90deg,rgba(212,201,184,.4),rgba(212,201,184,.15),transparent);border-radius:0 2px 2px 0;pointer-events:none;z-index:0}.destiny-spine-gutter{width:var(--destiny-spine-width);background:linear-gradient(90deg,rgba(0,0,0,.12),rgba(0,0,0,.04) 30%,rgba(0,0,0,.06) 50%,rgba(0,0,0,.02) 70%,rgba(0,0,0,.08));position:relative;z-index:3}.destiny-spine-gutter:before{content:"";position:absolute;top:0;bottom:0;left:50%;width:1px;background:rgba(44,36,32,.15);transform:translateX(-.5px)}.destiny-chapter-enter{animation:destiny-fade-in .3s ease-out}@keyframes destiny-fade-in{0%{opacity:0;transform:translateX(8px)}to{opacity:1;transform:translateX(0)}}.destiny-flip-stage{perspective:1800px}@media (max-width:767px){.destiny-flip-stage{perspective:2400px}}.destiny-flip-page{transform-style:preserve-3d;backface-visibility:hidden}[data-flip-init]{visibility:hidden}.destiny-flip-out-forward{transform-origin:left center;animation:destiny-flip-out-fwd .24s ease-in forwards;will-change:transform,opacity}@keyframes destiny-flip-out-fwd{0%{transform:rotateY(0deg);opacity:1}80%{opacity:1}to{transform:rotateY(-100deg);opacity:0}}.destiny-flip-in-forward{animation:destiny-flip-in-fwd .18s ease-out;will-change:transform,opacity}@keyframes destiny-flip-in-fwd{0%{opacity:0;transform:scale(.995)}to{opacity:1;transform:scale(1)}}.destiny-flip-out-back{transform-origin:right center;animation:destiny-flip-out-bck .24s ease-in forwards;will-change:transform,opacity}@keyframes destiny-flip-out-bck{0%{transform:rotateY(0deg);opacity:1}80%{opacity:1}to{transform:rotateY(100deg);opacity:0}}.destiny-flip-in-back{animation:destiny-flip-in-bck .18s ease-out;will-change:transform,opacity}@keyframes destiny-flip-in-bck{0%{opacity:0;transform:scale(.995)}to{opacity:1;transform:scale(1)}}@media (prefers-reduced-motion:reduce){.destiny-flip-in-back,.destiny-flip-in-forward,.destiny-flip-out-back,.destiny-flip-out-forward{animation:none}}.destiny-shimmer{background:linear-gradient(90deg,var(--destiny-paper-muted) 25%,var(--destiny-rule-soft) 50%,var(--destiny-paper-muted) 75%);background-size:200% 100%;animation:destiny-shimmer 1.5s infinite}@keyframes destiny-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.destiny-score-ring{transform:rotate(-90deg)}.destiny-score-ring circle{fill:none;stroke-width:6;stroke-linecap:round}.destiny-bottom-sheet-backdrop{animation:destiny-fade-in .2s ease-out}.destiny-bottom-sheet{animation:destiny-slide-up .25s ease-out}@keyframes destiny-slide-up{0%{transform:translateY(100%)}to{transform:translateY(0)}}.destiny-safe-bottom{padding-bottom:env(safe-area-inset-bottom,0)}.destiny-full-viewport{height:100vh}@supports (height:100dvh){.destiny-full-viewport{height:100dvh}}.destiny-chapter-numeral{font-family:var(--destiny-font-serif);font-size:4rem;font-weight:700;line-height:1;color:var(--destiny-gold);opacity:.25;letter-spacing:-.02em}.destiny-drop-cap:first-letter{font-family:var(--destiny-font-serif);font-size:3.2em;font-weight:700;float:left;line-height:.85;margin:.08em .12em 0 0;color:var(--destiny-accent)}.destiny-ornament{display:flex;align-items:center;justify-content:center;gap:12px;color:var(--destiny-gold);opacity:.5}.destiny-ornament:after,.destiny-ornament:before{content:"";height:1px;flex:1;max-width:60px;background:linear-gradient(to right,transparent,var(--destiny-rule),transparent)}.destiny-running-header{font-size:.7rem;letter-spacing:.15em;text-transform:uppercase}.destiny-page-number,.destiny-running-header{font-family:var(--destiny-font-serif);color:var(--destiny-ink-faint)}.destiny-page-number{font-size:.75rem;text-align:center}.destiny-bookmark{position:absolute;top:-2px;right:24px;width:12px;height:48px;background:var(--destiny-accent);clip-path:polygon(0 0,100% 0,100% 100%,50% 80%,0 100%);z-index:10;opacity:.85;box-shadow:1px 1px 3px rgba(44,36,32,.15)}.destiny-mobile-page{margin:16px 16px 0;border-radius:var(--destiny-book-radius);box-shadow:0 2px 8px rgba(44,36,32,.12),0 8px 24px rgba(44,36,32,.08);border:1px solid var(--destiny-rule);overflow:hidden;position:relative}.destiny-mobile-page:after{content:"";position:absolute;top:4px;right:-3px;bottom:4px;width:4px;background:linear-gradient(90deg,rgba(212,201,184,.7),rgba(212,201,184,.3),transparent);border-radius:0 2px 2px 0;pointer-events:none}.destiny-contents-tab{display:flex;align-items:center;gap:4px;padding:4px 8px 4px 10px;background:var(--destiny-accent);border:1px solid var(--destiny-accent);border-radius:4px;font-family:var(--destiny-font-serif);font-size:.65rem;letter-spacing:.08em;color:#fff;cursor:pointer;transition:opacity .15s ease}.destiny-contents-tab:active{opacity:.85}.destiny-progress-line{height:2px;background:var(--destiny-rule-soft);border-radius:1px;overflow:hidden}.destiny-progress-line-fill{height:100%;background:var(--destiny-gold);border-radius:1px;transition:width .3s ease}.destiny-chapter-nav{display:flex;justify-content:space-between;align-items:center;gap:8px}.destiny-chapter-nav-btn{display:flex;flex-direction:column;gap:2px;padding:10px 14px;border-radius:var(--destiny-radius-page);background:var(--destiny-paper-muted);border:1px solid var(--destiny-rule-soft);min-height:56px;flex:1;transition:background .15s ease}.destiny-chapter-nav-btn:active{background:var(--destiny-rule-soft)}.destiny-chapter-nav-btn-prev{text-align:left}.destiny-chapter-nav-btn-next{text-align:right}.destiny-chapter-nav-label{font-size:.65rem;color:var(--destiny-ink-faint);letter-spacing:.05em}.destiny-chapter-nav-name{font-family:var(--destiny-font-serif);font-size:.85rem;font-weight:600;color:var(--destiny-ink)}.destiny-chapter-nav-placeholder{flex:1}.destiny-page-break{position:relative;height:28px}.destiny-page-break:after{content:"\2767";position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-family:var(--destiny-font-serif);font-size:.7rem;color:var(--destiny-ink-faint);opacity:.25}.destiny-visual-page{position:relative;padding-top:4px}.destiny-mini-folio{justify-content:space-between;padding-bottom:8px;margin-bottom:12px;border-bottom:1px solid var(--destiny-rule-soft);text-transform:uppercase}.destiny-mini-folio,.destiny-mini-footer{display:flex;align-items:center;font-family:var(--destiny-font-serif);font-size:.65rem;letter-spacing:.1em;color:var(--destiny-ink-faint)}.destiny-mini-footer{justify-content:center;padding-top:10px;margin-top:14px;border-top:1px solid var(--destiny-rule-soft)}