.card { position:relative; }
.card>.poster { width:100%; padding:0; color:inherit; text-align:center; cursor:pointer; }
.card>.poster-info { left:auto; right:6px; width:28px; height:28px; padding:0; border:1px solid #ffffff24; cursor:help; }
.card>.poster-info:hover,.card>.poster-info[aria-expanded=true] { background:var(--accent); color:#fff; }
.card>.poster-info:focus-visible { outline:2px solid var(--accent); outline-offset:3px; }
.card,.resume-card { user-select:none; -webkit-user-select:none; -webkit-touch-callout:none; }
.card img,.resume-card img { -webkit-user-drag:none; }
.poster-rail,.continue-list { touch-action:pan-x pan-y; overscroll-behavior-x:contain; }
.poster-rail.is-dragging,.continue-list.is-dragging { cursor:grabbing; scroll-behavior:auto; }
.is-dragging .poster,.is-dragging .resume-card { cursor:grabbing; }
.anime-preview { position:fixed; z-index:70; width:min(390px,calc(100vw - 24px)); max-height:calc(100dvh - 24px); overflow-y:auto; overscroll-behavior:contain; padding:19px; color:var(--text); background:#202123; border:1px solid #595a5d; border-radius:13px; box-shadow:0 14px 45px #0009; animation:preview-in .15s ease-out; }
.preview-heading { display:flex; align-items:flex-start; gap:12px; }
.preview-heading h2 { flex:1; margin:0; font:600 23px/1.22 var(--display); overflow-wrap:anywhere; }
.preview-close { flex-shrink:0; width:30px; height:30px; min-height:30px; margin:-5px -6px 0 0; }
.preview-close svg { width:18px; height:18px; }
.preview-rating { display:flex; flex-wrap:wrap; gap:10px; align-items:center; margin:13px 0 10px; }
.preview-rating strong { color:#e7c98d; font-size:18px; }
.preview-rating>span { color:var(--muted); font-size:12px; }
.preview-facts,.preview-genres { display:flex; flex-wrap:wrap; gap:5px; margin:8px 0; }
.preview-facts span,.preview-genres span { border:1px solid #77797e; border-radius:6px; padding:3px 7px; font-size:11px; line-height:1.25; }
.preview-facts span { border-color:#ef795c80; color:#ffd2c6; }
.preview-genres span { color:#d1cec6; border-color:#6a6c70; }
.preview-description { font-size:13px; line-height:1.6; margin:13px 0 15px; max-height:10em; overflow:auto; overflow-wrap:anywhere; scrollbar-width:thin; }
.preview-open { width:100%; font-size:12px; min-height:41px; padding:9px 12px; }
.preview-open svg { width:17px; height:17px; }
.anime-preview.preview-sheet { left:12px; right:12px; bottom:max(14px,env(safe-area-inset-bottom)); top:auto; width:auto; max-height:75dvh; border-radius:18px; padding:20px; }
.preview-sheet .preview-heading h2 { font-size:25px; }
.preview-sheet .preview-description { max-height:24dvh; }
@keyframes preview-in { from { opacity:0; transform:translateY(5px); } to { opacity:1; transform:translateY(0); } }
@media(prefers-reduced-motion:reduce){.anime-preview { animation:none; }}
