.novel-poster-card{color:inherit;text-decoration:none;transition:transform .25s cubic-bezier(.22,.61,.36,1);display:block}.novel-poster-card:hover{transform:translateY(-5px)}.novel-poster-cover-wrap{aspect-ratio:2/3;background:#12131c;border:1px solid #ffffff12;border-radius:8px;width:100%;margin-bottom:.5rem;position:relative;overflow:hidden;box-shadow:0 6px 20px #0006}.novel-poster-cover{object-fit:cover;width:100%;height:100%;transition:transform .25s,filter .25s;display:block}.novel-poster-card:hover .novel-poster-cover{filter:saturate(1.08);transform:scale(1.06)}.novel-poster-overlay{opacity:0;background:#00000080;justify-content:center;align-items:center;transition:opacity .2s;display:flex;position:absolute;inset:0}.novel-poster-card:hover .novel-poster-overlay{opacity:1}.novel-poster-play{color:#111;background:#fffffff2;border-radius:50%;justify-content:center;align-items:center;width:38px;height:38px;display:flex}.novel-poster-play svg{width:16px;height:16px}.novel-poster-status{text-transform:uppercase;letter-spacing:.08em;color:#fff;background:#ffffff1f;border-radius:999px;padding:3px 8px;font-size:10px;font-weight:700;display:inline-flex;position:absolute;top:6px;left:6px}.novel-poster-status.ongoing{color:#34d399;background:#10b9812b}.novel-poster-status.completed{color:#60a5fa;background:#3b82f62e}.novel-poster-status.hiatus{color:#fbbf24;background:#fbbf242e}.novel-poster-body{flex-direction:column;gap:.35rem;display:flex}.novel-poster-body h3{color:var(--text-primary);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:0;font-size:.8rem;font-weight:700;line-height:1.3;display:-webkit-box;overflow:hidden}.novel-poster-meta{color:var(--text-tertiary);align-items:center;gap:.25rem;font-size:.7rem;display:flex}.novel-poster-meta span{align-items:center;gap:.15rem;display:inline-flex}.novel-poster-meta svg{width:12px;height:12px}.novel-poster-meta>span:first-child{color:var(--gold,#fbbf24)}.novel-poster-dot{color:var(--text-tertiary)}.novel-poster-genres{flex-wrap:wrap;gap:.35rem;display:flex}.novel-poster-genres span{color:#ffffffb8;background:#3b82f61f;border:1px solid #3b82f647;border-radius:4px;padding:.15rem .4rem;font-size:.68rem}.novel-poster-body p{color:var(--text-secondary);margin:0;font-size:.8rem;line-height:1.45}@media (hover:none){.novel-poster-card:hover{transform:none}.novel-poster-card:hover .novel-poster-cover{filter:none;transform:none}.novel-poster-card:hover .novel-poster-overlay{opacity:0}}
