.novel-detail-hero{display:flex;gap:40px;margin-bottom:40px;background-color:var(--panel-bg);padding:30px;border-radius:var(--radius-card);border:1px solid var(--border-color);box-shadow:0 4px 15px rgba(0,0,0,5%)}.hero-left{flex-shrink:0;width:240px}.hero-cover-container{width:100%;padding-top:133.33%;position:relative;border-radius:var(--radius-image);overflow:hidden;border:1px solid var(--border-color)}.hero-cover{position:absolute;top:0;left:0;width:100%;height:100%;object-fit:cover}.hero-right{display:flex;flex-direction:column;justify-content:center;gap:16px;flex-grow:1}.novel-title-bold{font-size:2.2rem;font-weight:900;color:var(--text-color);line-height:1.2}.novel-author-bold{font-size:1.1rem;font-weight:700;color:var(--color-accent)}.novel-meta-item{font-size:.95rem;color:var(--text-muted)}.novel-meta-item strong{color:var(--text-color)}.novel-tags-row{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.novel-tag-item{background-color:var(--border-color);color:var(--text-color);padding:6px 14px;border-radius:var(--radius-button);font-size:.85rem;font-weight:600}@media(max-width:768px){.novel-detail-hero{flex-direction:column;align-items:center;text-align:center;gap:24px}.hero-right{align-items:center}}.detail-stack-section{display:flex;flex-direction:column;gap:16px;margin-bottom:24px}.section-label{font-size:1.4rem;font-weight:800;color:var(--text-color);border-left:4px solid var(--color-accent);padding-left:12px}.description-text{font-size:1.05rem;color:var(--text-color);line-height:1.7;background-color:var(--panel-bg);padding:24px;border-radius:var(--radius-card);border:1px solid var(--border-color)}.description-text p{margin-bottom:24px!important}.description-text p:last-child{margin-bottom:0!important}.cards-slider-outer{position:relative;width:100%}.cards-slider-container{display:flex;gap:30px;overflow-x:auto;padding:20px 10px 12px;scroll-behavior:smooth}.cards-slider-container::-webkit-scrollbar{display:none}.cards-slider-container{-ms-overflow-style:none;scrollbar-width:none}.character-card-wrapper{position:relative;padding-left:30px;flex-shrink:0}.floating-vertical-text{position:absolute;left:0;top:50%;transform:translateY(-50%);display:flex;flex-direction:column;align-items:center;font-weight:900;color:var(--vertical-text-color);font-size:1.1rem;line-height:1.3;letter-spacing:2px;user-select:none;writing-mode:vertical-rl;text-orientation:upright}.character-card.polaroid{width:210px;height:310px;border:12px solid var(--panel-bg);border-bottom:none;box-shadow:0 8px 20px rgba(0,0,0,.1),var(--shadow-hover);background-color:var(--panel-bg);border-radius:4px;display:flex;flex-direction:column;align-items:center;position:relative}.polaroid-img-frame{width:186px;height:240px;position:relative;overflow:hidden;background-color:#000}.polaroid-img{width:100%;height:100%;object-fit:cover}.polaroid-frame-overlay{position:absolute;top:0;left:0;width:100%;height:100%;pointer-events:none;object-fit:cover}.polaroid-name{position:absolute;bottom:0;left:0;width:100%;height:calc(310px - 240px - 12px);display:flex;align-items:center;justify-content:center;font-size:1rem;font-weight:800;color:var(--text-color);text-align:center;padding:0 4px}.character-avatar-widget{width:140px;height:180px;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative;background-color:initial!important;border:none!important;box-shadow:none!important}.avatar-circle-frame{width:100px;height:100px;position:relative;border-radius:50%!important;overflow:hidden;border:3px solid var(--color-accent);box-shadow:var(--shadow-hover)}.avatar-circle-img{width:100%;height:100%;object-fit:cover}.avatar-circle-overlay{position:absolute;top:0;left:0;width:100%;height:100%;border-radius:50%!important;pointer-events:none;object-fit:cover}.avatar-circle-name{margin-top:12px;font-size:.95rem;font-weight:800;color:var(--text-color);text-align:center}.star-pagination{display:flex;justify-content:center;gap:12px;margin-top:10px;font-size:1.1rem;color:var(--text-color);user-select:none}.star-page-node{cursor:var(--cursor-pointer);transition:color var(--transition-fast)ease,text-shadow var(--transition-fast)ease}.star-page-node.active{color:var(--color-accent);text-shadow:0 0 10px var(--color-accent)}.quote-card{width:320px;height:360px;padding:24px;border-radius:0!important;position:relative;display:flex;flex-direction:column;justify-content:space-between;flex-shrink:0;transition:all var(--transition-normal)ease;background:rgba(255,255,255,.93)!important;backdrop-filter:blur(8px);border:1px solid rgba(163,199,255,.35)!important;box-sizing:border-box}.quote-card,.quote-card .quote-chapter,.quote-card .quote-text,.quote-card .quote-author{color:#111827!important;text-shadow:0 0 8px var(--color-accent)!important}[data-theme=dark] .quote-card{background:rgba(10,15,30,.65)!important;backdrop-filter:blur(12px);border:1px solid rgba(163,199,255,.2)!important}[data-theme=dark] .quote-card,[data-theme=dark] .quote-card .quote-chapter,[data-theme=dark] .quote-card .quote-text,[data-theme=dark] .quote-card .quote-author{color:#fff!important;text-shadow:0 0 8px #fff,0 0 18px var(--color-accent)!important}.quote-card:hover{border-color:var(--color-accent)!important;box-shadow:0 0 18px var(--color-accent-shadow)}.quote-top{display:flex;flex-direction:column;gap:8px;flex-grow:1;min-height:0}.quote-chapter{font-size:.75rem;font-weight:800;text-transform:uppercase;letter-spacing:1px;opacity:.95;flex-shrink:0}.quote-hr{border:none;height:2px;background:var(--color-accent);width:100%;margin:4px 0 10px;flex-shrink:0}.quote-text{font-size:.95rem;line-height:1.5;text-align:justify;overflow-y:auto;flex-grow:1;min-height:0}.quote-text::-webkit-scrollbar{display:none}.quote-text{-ms-overflow-style:none;scrollbar-width:none}.quote-author{align-self:flex-end;font-size:.8rem;font-style:italic;font-weight:700;opacity:.95;flex-shrink:0;margin-top:10px}.chapter-nav-bar{display:flex;justify-content:space-between;align-items:center;background-color:var(--panel-bg);padding:16px 24px;border-radius:var(--radius-button);border:1px solid var(--border-color);margin-bottom:20px;gap:16px;flex-wrap:wrap}.chapter-sort-toggles{display:flex;gap:12px}.sort-toggle-btn{background:0 0;border:1px solid var(--border-color);color:var(--text-color);padding:8px 16px;font-size:.9rem;font-weight:600;border-radius:var(--radius-button);cursor:var(--cursor-pointer)}.sort-toggle-btn.active{border-color:var(--color-accent);color:var(--color-accent);box-shadow:var(--shadow-hover)}.chapter-pagination{display:flex;align-items:center;gap:6px;font-size:.95rem;color:var(--text-color);user-select:none}.chapter-page-bracket{color:var(--text-muted);font-weight:700}.chapter-page-node{cursor:var(--cursor-pointer);padding:2px 6px;transition:all var(--transition-fast)ease}.chapter-page-node.active{color:var(--color-accent);font-weight:800;text-shadow:0 0 10px var(--color-accent)}.chapter-jump-box{position:relative;width:250px}.chapter-jump-input{width:100%;padding:8px 16px;border-radius:var(--radius-button);border:1px solid var(--border-color);background-color:var(--panel-bg);color:var(--text-color);font-size:.9rem;outline:none}.chapter-jump-input:focus{border-color:var(--color-accent);box-shadow:var(--shadow-hover)}.chapter-list-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:12px}.chapter-list-item{background-color:var(--panel-bg);border:1px solid var(--border-color);padding:14px 20px;border-radius:var(--radius-button);text-decoration:none;color:var(--text-color);font-weight:500;font-size:.95rem;display:block;transition:all var(--transition-fast)ease;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.chapter-list-item:hover{border-color:var(--color-accent);box-shadow:var(--shadow-hover);transform:translateX(4px)}.gallery-masonry{column-count:3;column-gap:16px;width:100%}@media(max-width:900px){.gallery-masonry{column-count:2}}@media(max-width:600px){.gallery-masonry{column-count:1}}.gallery-item{display:inline-block;width:100%;margin-bottom:16px;background-color:var(--panel-bg);border:1px solid var(--border-color);border-radius:var(--radius-card);overflow:hidden;box-shadow:0 4px 15px rgba(0,0,0,5%);transition:all var(--transition-normal);break-inside:avoid}.gallery-item:hover{box-shadow:var(--shadow-hover);border-color:var(--color-accent);transform:scale(1.02)}.gallery-img{width:100%;height:auto;display:block}.gallery-info-box{padding:12px;background-color:var(--panel-bg);border-top:1px solid var(--border-color);transition:background-color var(--transition-normal);text-align:left}.gallery-item-title{font-size:.9rem;font-weight:800;color:var(--text-color);margin-bottom:4px;line-height:1.3}.gallery-item-author{font-size:.75rem;color:var(--text-muted);font-weight:600}.media-carousel-item{height:260px;flex-shrink:0;border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--border-color);box-shadow:0 4px 15px rgba(0,0,0,5%);display:flex;flex-direction:column;background-color:var(--panel-bg);transition:width var(--transition-fast)ease}.media-carousel-item.is-portrait{width:190px!important}.media-carousel-item.is-portrait .carousel-gallery-img{width:100%!important;height:180px!important;object-fit:contain!important;background-color:rgba(0,0,0,3%);border-bottom:1px solid var(--border-color)}.media-carousel-item.is-landscape{width:310px!important}.media-carousel-item.is-landscape .carousel-gallery-img{width:100%!important;height:180px!important;object-fit:contain!important;background-color:rgba(0,0,0,3%);border-bottom:1px solid var(--border-color)}.slideshow-container{position:relative;max-width:680px;height:460px;margin:0 auto;border-radius:var(--radius-card);overflow:hidden;border:1px solid var(--border-color);background-color:rgba(0,0,0,2%);display:flex;flex-direction:column}@media(max-width:768px){.slideshow-container{height:330px}}.mySlides{display:none;height:100%;width:100%;flex-direction:column}.mySlides.active-slide{display:flex!important}.slideshow-img-link{display:block;flex-grow:1;height:0;width:100%}.slideshow-img{width:100%;height:100%;object-fit:contain!important;background-color:initial}.slideshow-prev,.slideshow-next{cursor:var(--cursor-pointer);position:absolute;top:calc(50% - 32px)!important;transform:translateY(-50%);padding:16px;color:#fff;font-weight:700;font-size:1.5rem;transition:.6s ease;user-select:none;background:rgba(0,0,0,.4)!important;z-index:100!important}.slideshow-prev{left:0;border-radius:0 3px 3px 0}.slideshow-next{right:0;border-radius:3px 0 0 3px}.slideshow-prev:hover,.slideshow-next:hover{background-color:rgba(0,0,0,.8)!important}.fade{animation-name:fade;animation-duration:1.5s}@keyframes fade{from{opacity:.4}to{opacity:1}}.timeline-tree-container{position:relative;border-left:2px solid var(--border-color);padding-bottom:20px;margin-left:20px;text-align:left}.timeline-node{margin-bottom:40px;padding-left:30px;position:relative}.timeline-node:last-child{margin-bottom:0}.timeline-summary{align-items:center;display:flex;font-size:1.25rem;font-weight:800;line-height:1.3;position:relative;cursor:var(--cursor-pointer);color:var(--color-accent)!important;list-style:none;user-select:none}.timeline-summary::-webkit-details-marker{display:none}.timeline-star{position:absolute;left:-39px;top:50%;transform:translateY(-50%);font-size:1.3rem;color:var(--color-accent)!important;text-shadow:0 0 10px var(--color-accent);z-index:5;user-select:none}.timeline-node-time{color:var(--text-color)!important;font-weight:800;margin-right:6px}.timeline-node-content{font-size:1rem;line-height:1.6;padding-top:15px;color:var(--text-color);opacity:.95}.timeline-node-content p{margin-bottom:12px!important}.timeline-node-content p:last-child{margin-bottom:0!important}.timeline-compare-container{display:flex;width:100%;align-items:stretch;justify-content:center;gap:20px;margin:0 auto;padding:20px 0;text-align:justify}.timeline-compare-pane{flex:1;width:50%!important;min-width:0!important;padding:10px 20px;display:flex;flex-direction:column}.timeline-compare-divider{background-color:var(--border-color);margin:40px 0;width:1px;flex-shrink:0}.timeline-pane-title{font-size:1.4rem;font-weight:800;letter-spacing:1px;margin-bottom:40px;text-align:center;color:var(--text-color)!important}.timeline-compare-pane .timeline-tree-container{margin-left:10px}@media(max-width:768px){.timeline-compare-container{flex-direction:column;gap:40px}.timeline-compare-pane{width:100%!important;padding:10px 0}.timeline-compare-divider{height:1px;width:100%;margin:20px 0}}