.ts-container{max-width:1200px;margin:0 auto;padding:16px}
.ts-topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px}
.ts-topbar a{color:#2563eb;text-decoration:none;font-weight:700}
.ts-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}
@media(min-width:640px){.ts-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
@media(min-width:768px){.ts-grid{grid-template-columns:repeat(4,minmax(0,1fr))}}
@media(min-width:1024px){.ts-grid{grid-template-columns:repeat(6,minmax(0,1fr))}}
.ts-card{background:#0f172a;border:1px solid #334155;border-radius:12px;overflow:hidden;cursor:pointer}
.ts-poster{aspect-ratio:2/3;overflow:hidden}
.ts-poster img{width:100%;height:100%;object-fit:cover;display:block}
.ts-title{padding:8px;color:#fff;font-weight:700;font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ts-meta{padding:0 8px 8px 8px;color:#94a3b8;font-size:11px;display:flex;justify-content:space-between}
.ts-filter{background:#0b1220;border:1px solid #334155;border-radius:12px;padding:12px;margin:12px 0}
.ts-filter input,.ts-filter select{width:100%;padding:10px;border-radius:10px;border:1px solid #334155;background:#0f172a;color:#fff}
.ts-filter .row{display:grid;grid-template-columns:1fr;gap:10px}
@media(min-width:768px){.ts-filter .row{grid-template-columns:repeat(5,1fr)}}
.ts-btn{display:inline-block;background:#2563eb;color:#fff;padding:10px 14px;border-radius:10px;text-decoration:none;font-weight:800}
.ts-box{background:#0b1220;border:1px solid #334155;border-radius:12px;padding:16px;color:#e2e8f0}
#ts-modal{position:fixed;inset:0;display:none;align-items:center;justify-content:center;padding:16px;background:rgba(0,0,0,.85);z-index:999999}
#ts-modal .inner{width:100%;max-width:980px;aspect-ratio:16/9;background:#000;border-radius:12px;overflow:hidden;position:relative}
#ts-modal iframe,#ts-modal video{width:100%;height:100%}
#ts-modal .close{position:absolute;top:10px;right:12px;background:rgba(0,0,0,.6);color:#fff;border:0;border-radius:10px;padding:8px 12px;cursor:pointer;font-weight:800}
.ts-episodes{display:grid;gap:8px;margin-top:12px}
.ts-ep{width:100%;text-align:left;background:#0f172a;border:1px solid #334155;color:#fff;border-radius:12px;padding:12px;cursor:pointer;display:flex;justify-content:space-between;align-items:center}
.ts-heart{position:absolute;top:8px;right:8px;background:rgba(0,0,0,.45);border:1px solid rgba(255,255,255,.15);border-radius:999px;width:34px;height:34px;display:flex;align-items:center;justify-content:center;color:#cbd5e1}
.ts-heart.on{color:#ef4444}

/* Simple grid (Movies) */
.ts-grid-simple{gap:14px}
.ts-grid-simple .ts-card{border-radius:14px;overflow:hidden;background:#0b1220}
.ts-grid-simple .ts-thumb{border-radius:12px}
.ts-grid-simple .ts-title{font-size:13px;line-height:1.2;margin:10px 0 2px 0}
.ts-grid-simple .ts-meta{opacity:.85}
.ts-grid-simple .ts-play{display:none !important}
