.sk-cover-hero{border-radius:var(--radius);height:320px}.sk-novel-hero{grid-template-columns:220px 1fr;align-items:start;gap:24px;display:grid}.sk-novel-body{flex-direction:column;gap:14px;padding:6px 0;display:flex}.sk-tabs{gap:8px;margin-top:28px;display:flex}.sk-tab{border-radius:20px;width:80px;height:36px}@media (max-width:680px){.sk-novel-hero{grid-template-columns:1fr}.sk-cover-hero{height:200px}}.novel-reviews-panel,.comments-panel{gap:18px;padding:4px 0 8px;display:grid}.community-section-title,.comments-head{justify-content:space-between;align-items:flex-end;gap:14px;display:flex}.community-section-title h2,.comments-head h2{margin:2px 0 0}.reviews-summary-row{grid-template-columns:minmax(160px,.58fr) minmax(0,1.42fr);align-items:stretch;gap:12px;display:grid}.reviews-summary-row.is-single{grid-template-columns:minmax(160px,220px)}.reviews-aggregate-card,.review-auth-prompt,.own-review-card,.review-card,.comment-form,.comment-auth-prompt,.comment-card{border:1px solid var(--line);background:var(--surface);border-radius:14px}.reviews-aggregate-card{text-align:center;align-content:center;place-items:center;gap:6px;min-height:142px;padding:17px;display:grid}.reviews-avg-score{color:var(--text);font-size:36px;font-weight:900;line-height:1}.reviews-count,.reviews-no-score{color:var(--muted);font-size:12px}.review-auth-prompt,.comment-auth-prompt{color:var(--muted);justify-content:space-between;align-items:center;gap:14px;padding:17px;display:flex}.review-auth-prompt p,.comment-auth-prompt p{margin:0}.review-auth-prompt .secondary-button,.comment-auth-prompt .primary-button{flex:none}.own-review-card{border-color:color-mix(in srgb, var(--primary) 30%, var(--line));background:color-mix(in srgb, var(--primary) 5%, var(--surface));flex-direction:column;gap:10px;padding:16px 18px;display:flex}.own-review-head,.own-review-actions,.review-form-actions,.review-form-stars,.review-vote-row{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.own-review-label{color:var(--primary);letter-spacing:.06em;text-transform:uppercase;font-size:11px;font-weight:850}.own-review-head time{margin-left:auto;font-size:12px}.review-delete-btn{border-color:color-mix(in srgb, var(--danger) 38%, var(--line));color:var(--danger)}.review-delete-btn:hover{background:color-mix(in srgb, var(--danger) 8%, var(--surface))}.review-form{gap:12px}.star-btn{color:var(--line);cursor:pointer;background:0 0;border:0;padding:3px;line-height:1;transition:color .12s,transform .12s;display:inline-flex}.star-btn:hover,.star-btn.active{color:#2788d9;transform:translateY(-1px)scale(1.08)}.star-label{color:var(--muted);margin-left:5px;font-size:13px}.review-textarea{box-sizing:border-box;resize:vertical;border:1px solid var(--line);background:var(--surface);width:100%;min-height:102px;color:var(--text);font:inherit;border-radius:10px;outline:0;padding:11px 13px;line-height:1.55}.review-textarea:focus{border-color:color-mix(in srgb, var(--primary) 58%, var(--line));box-shadow:0 0 0 3px color-mix(in srgb, var(--primary) 10%, transparent)}.review-error{color:var(--danger);margin:0;font-size:13px}.review-list,.comment-list{gap:9px;display:grid}.review-card{gap:10px;padding:14px;display:grid}.community-identity{grid-template-columns:34px minmax(0,1fr);align-items:center;gap:9px;min-width:0;display:grid}.community-avatar{background:color-mix(in srgb, var(--primary) 15%, var(--surface-2));width:34px;height:34px;color:var(--primary);border-radius:50%;place-items:center;font-size:13px;font-weight:900;display:grid}.community-identity-copy{gap:3px;min-width:0;display:grid}.community-identity-line{flex-wrap:wrap;align-items:baseline;gap:7px;display:flex}.community-identity-line strong{color:var(--text);text-overflow:ellipsis;white-space:nowrap;font-size:13px;overflow:hidden}.community-identity-line time{color:var(--muted);margin-left:auto;font-size:11px}.review-body{color:var(--reader-text);overflow-wrap:anywhere;white-space:pre-wrap;margin:0;font-size:14px;line-height:1.65}.vote-btn,.comment-card footer button,.comment-action{min-height:30px;color:var(--muted);cursor:pointer;background:0 0;border:1px solid #0000;border-radius:999px;align-items:center;gap:5px;padding:4px 9px;font-size:12px;display:inline-flex}.vote-btn{border-color:var(--line)}.vote-btn:hover,.comment-card footer button:hover,.comment-action:hover{background:var(--surface-2);color:var(--text)}.vote-btn.voted{border-color:color-mix(in srgb, var(--danger) 36%, var(--line));background:color-mix(in srgb, var(--danger) 9%, transparent);color:var(--danger)}.review-vote-row .report-box,.comment-card footer .report-box{display:inline-flex}.reviews-empty,.comments-empty{border:1px dashed var(--line);color:var(--muted);text-align:center;border-radius:14px;margin:0;padding:25px 16px}.reviews-empty-quiet{padding:17px}.comment-form{background:var(--surface-2);gap:8px;padding:14px;display:grid}.comment-form>strong{color:var(--text);font-size:14px}.comment-form textarea{resize:vertical;width:100%;min-height:92px;color:var(--text);font:inherit;background:0 0;border:0;outline:0;padding:0;line-height:1.6}.comment-form-context{color:var(--primary);justify-content:space-between;gap:10px;font-size:12px;font-weight:750;display:flex}.comment-form-context button{color:var(--muted);cursor:pointer;background:0 0;border:0}.comment-form-footer{justify-content:space-between;align-items:center;gap:10px;display:flex}.comment-form-footer>span{color:var(--muted);font-size:11px}.comment-thread{gap:8px;min-width:0;display:grid}.comment-card{grid-template-columns:34px minmax(0,1fr);gap:8px 9px;padding:12px;display:grid}.comment-card>.community-identity{grid-column:1/-1}.comment-card>p{color:var(--reader-text);overflow-wrap:anywhere;white-space:pre-wrap;grid-column:2;margin:0;line-height:1.6}.comment-card>footer{flex-wrap:wrap;grid-column:2;gap:4px;display:flex}.comment-card footer .comment-delete-action{color:var(--danger)}.comment-replies{border-left:2px solid color-mix(in srgb, var(--primary) 23%, var(--line));gap:8px;margin-left:28px;padding-left:11px;display:grid}.comment-card-skeleton{background:linear-gradient(100deg, var(--surface) 25%, var(--surface-2) 45%, var(--surface) 65%);background-size:220% 100%;min-height:112px;animation:1.35s ease-in-out infinite community-shimmer}@keyframes community-shimmer{to{background-position:-220% 0}}@media (max-width:680px){.community-section-title{align-items:stretch}.comments-head{align-items:center}.reviews-summary-row,.reviews-summary-row.is-single{grid-template-columns:1fr}.reviews-aggregate-card{text-align:left;justify-content:flex-start;gap:10px;min-height:0;display:flex}.reviews-avg-score{font-size:28px}.review-auth-prompt,.comment-auth-prompt{flex-direction:column;align-items:flex-start}.own-review-card,.review-card{padding:12px}.own-review-head time{width:100%;margin-left:0}.comment-replies{margin-left:14px;padding-left:8px}.comment-card{grid-template-columns:30px minmax(0,1fr);padding:10px}.community-identity{grid-template-columns:30px minmax(0,1fr)}.community-avatar{width:30px;height:30px}.comment-form-footer{align-items:flex-end}}@media (prefers-reduced-motion:reduce){.comment-card-skeleton{animation:none}}.detail-summary{max-width:720px;color:var(--muted);font-size:17px;line-height:1.55}.description-toggle{max-width:none;color:var(--muted);font-size:14px;line-height:1.55}.description-toggle summary{cursor:pointer;gap:8px;list-style:none;display:grid}.description-toggle summary::-webkit-details-marker{display:none}.description-toggle summary strong{width:max-content;color:var(--primary);font-family:Trebuchet MS,Segoe UI,sans-serif;font-size:13px}.description-toggle[open] summary strong{display:none}.description-toggle p{margin:10px 0 0}.chapter-list{margin-top:20px;overflow:hidden}.chapter-row{border-bottom:1px solid var(--line);grid-template-columns:58px 1fr minmax(86px,auto);align-items:center;gap:12px;min-height:62px;padding:11px 14px;display:grid}.chapter-number{background:var(--primary);color:#fff;border-radius:12px;place-items:center;width:42px;height:42px;font-weight:950;display:grid}.chapter-date{justify-self:end;font-size:13px;font-weight:850}.report-box{gap:10px;display:grid}.chapter-group-landmarks{border-top:1px solid color-mix(in srgb, var(--line) 65%, transparent);flex-wrap:wrap;gap:10px 14px;padding:8px 14px 11px;display:flex}.chapter-group-landmarks a{color:var(--muted);font-size:11px;font-weight:750}.chapter-group-landmarks a:hover{color:var(--primary)}.chapter-row-current{background:color-mix(in srgb, var(--primary) 6%, var(--surface));border-left:3px solid var(--primary)}.chapter-row-badge{background:color-mix(in srgb, var(--primary) 15%, var(--surface));color:var(--primary);border-radius:999px;margin-left:auto;padding:2px 8px;font-size:11px;font-weight:700}.tag-chip{background:color-mix(in srgb, var(--primary) 10%, var(--surface));color:var(--primary);border:1px solid #0000;border-radius:999px;align-items:center;padding:4px 9px;font-size:11px;font-weight:600;text-decoration:none;transition:background .13s,color .13s;display:inline-flex}.tag-chip:hover{background:color-mix(in srgb, var(--primary) 18%, var(--surface))}.similar-novels-section{margin-top:16px}.similar-novels-section h2{margin:0 0 10px;font-size:20px;font-weight:800}.novel-hero{grid-template-columns:190px minmax(0,1fr);align-items:start;gap:24px;padding:0;display:grid}.novel-hero-cover{width:190px;height:280px;min-height:0;box-shadow:var(--shadow);border-radius:14px;overflow:hidden}.novel-hero-body{flex-direction:column;gap:14px;padding:6px 0;display:flex}.novel-hero-author{color:var(--primary);margin:0;font-size:13px;font-weight:850}.novel-hero-title{margin:0;font-size:clamp(22px,3.2vw,36px);line-height:1.05}.novel-hero-meta{flex-wrap:wrap;gap:7px;display:flex}.novel-translation-progress{border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);gap:7px;max-width:560px;padding:12px 14px;display:grid}.novel-translation-progress-label{justify-content:space-between;align-items:baseline;gap:16px;font-size:13px;font-weight:800;display:flex}.novel-translation-progress-track{background:var(--line);border-radius:999px;height:9px;overflow:hidden}.novel-translation-progress-track>span{border-radius:inherit;background:var(--primary);min-width:2px;height:100%;display:block}.novel-translation-progress small{color:var(--muted);font-weight:700}.novel-hero-actions{flex-wrap:wrap;align-items:center;gap:7px;margin-top:4px;display:flex}.novel-hero-actions button{gap:5px;min-height:40px;padding:9px 10px;font-size:14px;font-weight:700}.novel-tabs-wrap{box-shadow:none;background:0 0;border:0;border-radius:0;margin-top:24px;overflow:visible}.novel-tab-panel{min-width:0}.similar-novels-section{border-top:0;padding-top:0}.novel-about-block-full{grid-column:1/-1}.novel-tabs{border-bottom:1px solid var(--line);background:0 0;gap:0;display:flex;overflow-x:auto}.novel-tab{min-height:44px;color:var(--muted);white-space:nowrap;cursor:pointer;background:0 0;border:none;border-bottom:2px solid #0000;align-items:center;gap:8px;padding:0 15px;font-size:14px;font-weight:850;transition:color .14s,background .14s;display:inline-flex}.novel-tab:hover{color:var(--text);background:0 0}.novel-tab.active{border-bottom-color:var(--primary);box-shadow:none;background:0 0}.novel-tab-badge{background:color-mix(in srgb, var(--primary) 14%, var(--surface-2));color:#475569;border-radius:999px;place-items:center;min-width:22px;height:20px;padding:0 5px;font-size:11px;font-weight:900;display:inline-grid}[data-theme=dark] .novel-tab-badge{color:var(--muted)}.novel-tab-panel{padding:16px 0 0}.novel-about{flex-direction:column;gap:28px;display:flex}.novel-about-block{flex-direction:column;gap:12px;display:flex}.novel-block-title{border-left:3px solid var(--primary);color:var(--text);margin:0;padding-left:12px;font-size:15px;font-weight:950}.novel-detail-dl{grid-template-columns:130px 1fr;gap:10px 16px;margin:0;font-size:14px;display:grid}.novel-detail-dl dt{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;align-self:start;padding-top:2px;font-size:11px;font-weight:900}.novel-detail-dl dd{color:var(--text);margin:0;font-weight:750;line-height:1.4}.novel-about-chips{flex-direction:column;gap:8px;display:flex}.novel-chips-label{color:var(--muted);text-transform:uppercase;letter-spacing:.05em;font-size:11px;font-weight:900}.novel-chips-row{flex-wrap:wrap;gap:6px;display:flex}.novel-chapter-list{flex-direction:column;gap:0;display:flex}.chapter-cta{flex-wrap:wrap;align-items:center;gap:12px;padding-bottom:18px;display:flex}.chapter-list-notice{margin:0;padding-bottom:12px;font-size:.85rem}.chapter-section{border:1px solid var(--line);border-radius:var(--radius);margin-bottom:14px;overflow:hidden}.chapter-section-title{border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--primary) 6%, var(--surface-2));text-transform:uppercase;letter-spacing:.06em;color:var(--muted);align-items:center;gap:10px;margin:0;padding:12px 16px;font-size:13px;font-weight:950;display:flex}.chapter-section-count{background:color-mix(in srgb, var(--primary) 14%, var(--surface-2));font-variant-numeric:tabular-nums;border-radius:999px;place-items:center;min-width:22px;height:20px;padding:0 5px;font-size:11px;display:inline-grid}.chapter-group{border-bottom:1px solid var(--line)}.chapter-group:last-child{border-bottom:none}.chapter-group-header{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;align-items:center;gap:10px;padding:13px 16px;font-size:14px;font-weight:850;transition:background .12s;display:flex}.chapter-group-header:hover{background:color-mix(in srgb, var(--primary) 6%, var(--surface))}.chapter-group-count{color:var(--muted);font-variant-numeric:tabular-nums;margin-left:auto;font-size:12px}.chapter-group-chevron{color:var(--muted);flex-shrink:0;transition:transform .2s}.chapter-group-list{background:color-mix(in srgb, var(--surface-2) 60%, var(--surface))}.chapter-row{border-bottom:1px solid var(--line);min-height:54px;color:var(--text);grid-template-columns:46px minmax(0,1fr) auto auto;align-items:center;gap:12px;padding:10px 16px;transition:background .1s;display:grid}.chapter-row:last-child{border-bottom:none}.chapter-row:hover{background:color-mix(in srgb, var(--primary) 5%, var(--surface))}.chapter-row-current{background:color-mix(in srgb, var(--primary) 6%, var(--surface))}.chapter-row-locked{color:var(--muted);background:color-mix(in srgb, var(--surface-2) 72%, var(--surface))}.chapter-row-locked:hover{background:color-mix(in srgb, var(--surface-2) 55%, var(--surface))}.chapter-row-locked .chapter-number{background:var(--surface-2);box-shadow:inset 0 0 0 1px var(--line);color:var(--muted)}.chapter-row-locked-label{color:var(--muted);white-space:nowrap;align-items:center;gap:5px;font-size:11px;font-weight:850;display:inline-flex}.chapter-number{background:var(--primary);color:#fff;border-radius:10px;place-items:center;width:36px;height:36px;font-size:12px;font-weight:950;display:grid}.chapter-row-title{text-overflow:ellipsis;white-space:nowrap;font-size:14px;font-weight:750;line-height:1.3;overflow:hidden}.chapter-row-badge{border:1px solid color-mix(in srgb, var(--primary) 38%, var(--line));background:color-mix(in srgb, var(--primary) 10%, var(--surface));color:var(--primary);white-space:nowrap;border-radius:999px;align-items:center;padding:2px 8px;font-size:11px;font-weight:900;display:inline-flex}.chapter-date{white-space:nowrap;color:var(--muted);font-size:12px;font-weight:750}.chapter-row-line{align-items:stretch;gap:4px;display:flex}.chapter-row-line .chapter-row{flex:1;min-width:0}.chapter-row-check{width:40px;color:var(--muted);cursor:pointer;background:0 0;border:none;flex-shrink:0;place-items:center;display:grid}.chapter-row-check:hover{color:var(--primary)}.bulk-order-bar{z-index:5;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);box-shadow:var(--shadow);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;margin-top:10px;padding:12px 16px;font-size:13px;font-weight:800;display:flex;position:sticky;bottom:0}.bulk-order-bar-actions{flex-wrap:wrap;gap:8px;display:flex}.novel-stub-tab{text-align:center;color:var(--muted);padding:40px 24px;font-size:15px}@media (max-width:680px){.novel-hero{grid-template-columns:1fr}.novel-hero-cover{max-width:200px;min-height:280px}.novel-tab-panel{padding:16px}.novel-detail-dl{grid-template-columns:100px 1fr}}[data-theme=dark] .novel-tabs-wrap,[data-theme=dark] .novel-tabs{background:0 0}[data-theme=dark] .chapter-group-list{background:color-mix(in srgb, var(--surface-2) 70%, var(--surface))}.share-landing-actions{flex-wrap:wrap;justify-content:center;align-items:center;gap:10px;margin-top:20px;display:flex}.similar-novels-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.similar-novels-grid .expandable-novel-card{width:100%;min-width:0}.collection-menu-wrap{display:inline-flex;position:relative}.collection-menu{z-index:40;border:1px solid var(--line);border-radius:var(--radius);background:var(--surface);width:280px;box-shadow:var(--shadow);padding:8px;position:absolute;top:calc(100% + 8px);left:0}.collection-menu-empty{color:var(--muted,color-mix(in srgb, var(--text) 55%, transparent));padding:8px 6px;font-size:13px}.collection-menu-list{max-height:240px;margin:0 0 8px;padding:0;list-style:none;overflow-y:auto}.collection-menu-item{width:100%;color:var(--text);text-align:left;cursor:pointer;background:0 0;border:none;border-radius:8px;justify-content:space-between;align-items:center;gap:8px;padding:8px 10px;font-size:13px;font-weight:700;display:flex}.collection-menu-item:hover:not(:disabled){background:color-mix(in srgb, var(--primary) 12%, var(--surface))}.collection-menu-item.is-added{color:color-mix(in srgb, var(--primary) 70%, var(--text));cursor:default}.collection-menu-create{border-top:1px solid var(--line);gap:6px;padding-top:8px;display:flex}.collection-menu-create input{border:1px solid var(--line);background:var(--bg,var(--surface));min-width:0;min-height:34px;color:var(--text);border-radius:8px;flex:1;padding:6px 10px;font-size:13px}.collection-menu-create button{background:var(--primary);color:#fff;cursor:pointer;border:1px solid #0000;border-radius:8px;justify-content:center;align-items:center;min-width:36px;display:inline-flex}.collection-menu-create button:disabled{opacity:.5;cursor:not-allowed}.boost-copy{margin:0;font-size:13.5px}.boost-explainer{gap:8px;display:grid}.boost-explainer>div{border:1px solid color-mix(in srgb, var(--primary) 16%, var(--border));background:color-mix(in srgb, var(--primary) 5%, var(--surface));border-radius:12px;grid-template-columns:30px minmax(0,1fr);align-items:start;gap:10px;padding:10px 11px;display:grid}.boost-explainer>div>svg{width:30px;height:30px;color:var(--primary);background:color-mix(in srgb, var(--primary) 12%, transparent);border-radius:9px;padding:7px}.boost-explainer p{gap:2px;margin:0;font-size:12.5px;line-height:1.4;display:grid}.boost-explainer strong{color:var(--text);font-size:13px}.boost-explainer span{color:var(--muted)}.boost-state{flex-wrap:wrap;gap:12px;margin:0;font-size:13px;display:flex}.boost-state span{color:var(--primary);align-items:center;gap:5px;font-weight:700;display:inline-flex}.boost-packs{flex-wrap:wrap;gap:10px;display:flex}.boost-balance{margin:0;font-size:12.5px}.boost-thanks{color:var(--primary);align-items:center;gap:8px;margin:0;font-weight:700;display:flex}.novel-about{grid-template-columns:minmax(0,1fr) 300px;gap:16px;display:grid}.novel-about-block{border:1px solid var(--line);background:var(--surface);border-radius:15px;padding:16px}@media (max-width:680px){.novel-hero{grid-template-columns:92px minmax(0,1fr);gap:8px 11px;padding:0}.novel-hero-cover{border-radius:12px;grid-area:1/1/span 2;width:92px;max-width:none;height:138px;min-height:0}.novel-hero-body{display:contents}.novel-hero-author{grid-column:2;align-self:end}.novel-hero-title{grid-column:2;align-self:start;font-size:20px}.novel-hero-meta,.novel-translation-progress,.novel-hero-actions{grid-column:1/-1}.novel-hero-meta>:nth-child(n+4){display:none}.novel-hero-actions{grid-template-columns:42px minmax(0,1fr) minmax(0,1fr);gap:7px;display:grid}.novel-hero-actions>.primary-button{grid-column:1/-1;width:100%}.novel-hero-actions>:nth-child(5){grid-column:1/3}.novel-hero-actions .secondary-button,.novel-hero-actions .secondary-action{white-space:nowrap;width:100%;min-width:0;min-height:40px;padding-inline:7px;font-size:13px}.add-to-library-action .secondary-action-label{display:none}.novel-about{grid-template-columns:1fr;gap:12px}.novel-about-block:first-child{grid-row:auto}.novel-tabs-wrap{margin-inline:0}.novel-tab-panel{padding:12px 0 0}.similar-novels-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}.genre-pager{justify-content:center;align-items:center;gap:16px;margin-top:28px;display:flex}.genre-pager span[aria-disabled]{opacity:.45;pointer-events:none}
