.anime-card.focus {
  outline: none;
  transform: none;
}

.anime-card.focus .poster {
  outline: 4px solid #fff;
  outline-offset: 3px;
}

.icon-button {
  border-color: rgba(255, 255, 255, 0.44);
}

.primary { background:#151d27; color:#eef3f8; border:1px solid #4b5866; }
.primary.focus,.secondary.focus,.back-button.focus { background:#38bdf8; color:#061018; border:4px solid #fff; outline:0; }
.filter-open { margin-left:auto; margin-right:30px; }
.season-section { margin-top:28px; }
.season-section h2 { font-size:22px; margin:0 0 12px; }
.season-row { display:flex; gap:14px; width:1040px; overflow:hidden; padding:5px; }
.season-card { flex:0 0 170px; height:190px; border:1px solid #7d8996; border-radius:9px; background:center/cover no-repeat; position:relative; overflow:hidden; }
.season-card span { position:absolute; left:0; right:0; bottom:0; padding:30px 10px 10px; background:linear-gradient(transparent,#05080c); font-weight:700; }
.season-card.focus { outline:4px solid #38bdf8; transform:none; }
.filter-dialog { display:none; position:absolute; inset:0; background:rgba(8,12,18,.94); z-index:20; padding:45px 180px; }
.filter-dialog.open { display:block; }
.filter-box { height:100%; background:#101720; border:1px solid #405064; border-radius:12px; padding:28px 38px; display:flex; flex-direction:column; }
.filter-box h1 { margin:0 0 12px; }
.filter-scroll { flex:1; overflow:hidden; }
.filter-scroll h3 { margin:18px 0 8px; color:#cbd5e1; }
.filter-years { display:flex; gap:18px; }
.filter-years input { width:230px; height:54px; background:#27313c; border:1px solid #526173; border-radius:8px; color:#fff; padding:0 18px; }
.filter-checks { display:grid; grid-template-columns:repeat(4,1fr); gap:10px 18px; }
.filter-check { height:45px; display:flex; align-items:center; gap:10px; background:#18222d; border:1px solid #354250; border-radius:7px; padding:0 12px; }
.filter-check:before { content:'□'; width:20px; }
.filter-check.checked:before { content:'✓'; color:#38bdf8; }
.filter-actions { display:flex; gap:14px; padding-top:18px; }
