/*
Theme Name: AnimeOku Portal
Theme URI: https://animeoku.org
Author: NeedSEO
Description: Anime portal teması — filtreli sezon grid'i, puan rank listesi ve tür çipleri.
Version: 1.0.0
Text Domain: animeoku
*/

:root{
  --bg:#0b0d17; --bg2:#12152a; --card:#161a33; --line:#262b4d; --tx:#eef0ff; --mut:#8a8fb8;
  --acc:#8b5cf6; --acc2:#a78bfa; --pink:#ec4899; --radius:16px;
}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{background:var(--bg);color:var(--tx);font-family:'Inter',system-ui,sans-serif;font-size:15.5px;line-height:1.65;overflow-x:hidden}
img{max-width:100%;height:auto;display:block}
a{color:inherit;text-decoration:none}
ul{list-style:none}
.ao-wrap{max-width:1200px;margin:0 auto;padding:0 20px}
b{color:var(--acc2)}

/* dekoratif arka plan */
.ao-orb{position:fixed;top:-180px;right:-160px;width:520px;height:520px;border-radius:50%;background:radial-gradient(circle,#8b5cf633,transparent 65%);z-index:0;pointer-events:none}
.ao-h{position:sticky;top:0;z-index:50;background:rgba(11,13,23,.85);backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
.ao-h-in{display:flex;align-items:center;gap:18px;height:66px}
.ao-logo{display:flex;align-items:center;gap:10px}
.ao-logo-sq{width:34px;height:34px;border-radius:10px;background:linear-gradient(135deg,var(--acc),var(--pink));display:grid;place-items:center;font-family:'Sora',sans-serif;font-weight:800;font-size:13px;color:#fff}
.ao-logo-t{font-family:'Sora',sans-serif;font-size:19px;font-weight:600}
.ao-logo-t i{font-style:normal;color:var(--mut);font-size:12px;font-weight:400}
.ao-nav{margin-left:auto;overflow-x:auto;scrollbar-width:none}
.ao-nav::-webkit-scrollbar{display:none}
.ao-catnav{display:flex;gap:2px}
.ao-catnav a{display:block;padding:8px 12px;border-radius:9px;font-weight:600;font-size:13.5px;color:var(--mut);white-space:nowrap}
.ao-catnav a:hover{color:var(--tx);background:var(--card)}
.ao-burger{display:none;margin-left:auto;background:none;border:1px solid var(--line);border-radius:9px;width:40px;height:36px;cursor:pointer}
.ao-burger span{display:block;width:16px;height:2px;background:var(--tx);margin:4px auto}

/* SEZON ŞERİDİ */
.ao-season{display:grid;grid-template-columns:1fr 300px;gap:24px;align-items:stretch;margin:26px 0 8px;background:linear-gradient(120deg,#1a1240,#14182e);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.ao-season-txt{padding:34px 30px;display:flex;flex-direction:column;justify-content:center;gap:10px}
.ao-eyebrow{font-size:12px;font-weight:800;letter-spacing:.18em;text-transform:uppercase;color:var(--acc2)}
.ao-season-txt h1{font-family:'Sora',sans-serif;font-size:30px;line-height:1.2;letter-spacing:-.5px}
.ao-season-txt p{color:var(--mut);font-size:14px;max-width:480px}
.ao-spot{position:relative;min-height:240px;overflow:hidden}
.ao-spot img{width:100%;height:100%;object-fit:cover}
.ao-spot::after{content:"";position:absolute;inset:0;background:linear-gradient(0deg,#000c,transparent 60%)}
.ao-spot-txt{position:absolute;left:16px;right:16px;bottom:14px;z-index:2;color:#fff}
.ao-spot-no{position:absolute;top:12px;left:12px;background:var(--pink);font-family:'Sora';font-weight:800;font-size:12px;padding:3px 10px;border-radius:8px;color:#fff;z-index:2}
.ao-spot-txt h2{font-family:'Sora',sans-serif;font-size:17px;line-height:1.3}
.ao-spot-txt .ao-meta{margin-top:6px}

/* LAYOUT */
.ao-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;gap:26px;margin-top:24px;align-items:start}
.ao-main{min-width:0}
.ao-side{position:sticky;top:82px;display:flex;flex-direction:column;gap:18px}

/* FİLTRE ÇİPLERİ */
.ao-filter{display:flex;gap:7px;flex-wrap:wrap;margin-bottom:18px}
.ao-fbtn{background:var(--card);border:1px solid var(--line);color:var(--mut);font-weight:700;font-size:13px;padding:7px 14px;border-radius:999px;cursor:pointer;transition:.2s;font-family:inherit}
.ao-fbtn:hover{color:var(--tx);border-color:var(--acc)}
.ao-fbtn.on{background:linear-gradient(135deg,var(--acc),var(--pink));color:#fff;border-color:transparent}

/* GRID */
.ao-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}
.ao-card{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;transition:opacity .3s,transform .3s,border-color .2s}
.ao-card:hover{transform:translateY(-4px);border-color:var(--acc)}
.ao-card-art{position:relative;display:block}
.ao-card-art img{width:100%;aspect-ratio:5/7;object-fit:cover}
.ao-noimg{display:grid;place-items:center;aspect-ratio:5/7;background:linear-gradient(140deg,#1d2140,#13162e);font-size:44px;width:100%}
.ao-noimg.big{aspect-ratio:auto;height:100%;min-height:320px;font-size:80px}
.ao-score{position:absolute;top:10px;right:10px;background:#000a;backdrop-filter:blur(6px);color:#fbbf24;font-weight:800;font-size:12px;padding:3px 9px;border-radius:8px;border:1px solid #fbbf2440}
.ao-card-b{padding:12px 13px 14px}
.ao-cat{display:inline-block;font-size:10.5px;font-weight:800;letter-spacing:.1em;text-transform:uppercase;color:var(--acc2);margin-bottom:5px}
.ao-card-b h2{font-size:14.5px;line-height:1.35;font-family:'Sora';margin-bottom:7px}
.ao-card-b h2 a:hover{color:var(--acc2)}
.ao-meta{display:flex;flex-wrap:wrap;gap:5px}
.ao-meta span{font-size:11px;color:var(--mut);background:#ffffff08;border:1px solid var(--line);padding:2px 8px;border-radius:999px}
.ao-meta .puan{color:#fbbf24;border-color:#fbbf2440}
.ao-meta .devam{color:#34d399;border-color:#34d39940}
.ao-meta .bitti{color:#94a3b8}
.ao-meta .yil{color:#8b8fb8}
.ao-pager{margin:28px 0 10px}
.ao-pager .nav-links{display:flex;gap:7px;justify-content:center}
.ao-pager .page-numbers{padding:7px 13px;border:1px solid var(--line);border-radius:9px;font-weight:600;color:var(--mut);background:var(--card)}
.ao-pager .page-numbers.current{background:var(--acc);border-color:var(--acc);color:#fff}

/* RANK */
.ao-rankbox{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);padding:18px}
.ao-box-h{font-family:'Sora';font-size:13px;letter-spacing:.08em;text-transform:uppercase;color:var(--mut);margin-bottom:14px}
.ao-rank li+li{margin-top:11px}
.ao-rank a{display:flex;gap:11px;align-items:center}
.ao-rank img,.ao-r-noimg{width:40px;height:56px;object-fit:cover;border-radius:7px;flex:none}
.ao-r-noimg{display:grid;place-items:center;background:#1d2140;font-size:17px}
.ao-r-no{font-family:'Sora';font-weight:800;font-size:14px;color:#4a4f80;min-width:16px}
.ao-rank li:nth-child(-n+3) .ao-r-no{color:var(--pink)}
.ao-r-b{display:flex;flex-direction:column;min-width:0}
.ao-r-b strong{font-size:13px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ao-r-b small{color:var(--mut);font-size:11.5px}
.ao-chips{display:flex;flex-wrap:wrap;gap:7px}
.ao-chips a{font-size:12.5px;padding:5px 11px;border-radius:8px;background:#ffffff08;border:1px solid var(--line);color:var(--mut);display:inline-flex;gap:6px}
.ao-chips a i{font-style:normal;color:var(--acc2);font-weight:700}
.ao-chips a:hover{color:var(--tx);border-color:var(--acc)}

/* KATEGORİ */
.ao-cat-h{padding:32px 0 20px}
.ao-cat-h h1{font-family:'Sora';font-size:28px;letter-spacing:-.4px}
.ao-cat-h p{color:var(--mut);font-size:14px;margin-top:6px;max-width:600px}

/* SINGLE */
.ao-single{margin-top:26px;max-width:900px}
.ao-article{background:var(--card);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden}
.ao-art-h{padding:30px 34px 16px}
.ao-art-title{font-family:'Sora';font-size:32px;line-height:1.2;margin:8px 0 12px;letter-spacing:-.4px}
.ao-art-split{display:grid;grid-template-columns:280px 1fr;gap:26px;padding:0 34px 20px}
.ao-art-poster img{width:100%;border-radius:12px}
.ao-art-body p{margin-bottom:1.05em}
.ao-art-body h2,.ao-art-body h3{font-family:'Sora';margin:1.3em 0 .4em}
.ao-art-body ul{margin:0 0 1em 1.3em;list-style:disc}
.ao-art-body a{color:var(--acc2)}
.ao-art-foot{padding:18px 34px 30px;border-top:1px solid var(--line)}
.ao-art-foot h3{font-family:'Sora';font-size:15px;margin-bottom:14px;color:var(--mut);text-transform:uppercase;letter-spacing:.08em}
.ao-similar{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
.ao-sim{background:var(--bg2);border:1px solid var(--line);border-radius:10px;overflow:hidden;transition:.2s}
.ao-sim:hover{border-color:var(--acc);transform:translateY(-2px)}
.ao-sim img{width:100%;aspect-ratio:5/7;object-fit:cover}
.ao-sim .ao-noimg{aspect-ratio:5/7;font-size:26px}
.ao-sim strong{display:block;padding:8px 9px;font-size:12px;line-height:1.35}

/* FOOTER */
.ao-f{margin-top:60px;background:#0e1020;border-top:1px solid var(--line)}
.ao-f-grid{display:grid;grid-template-columns:1.5fr 1fr 1fr;gap:28px;padding:44px 20px 26px}
.ao-f-c p{color:var(--mut);font-size:13px;margin-top:12px;max-width:280px}
.ao-f-c h4{font-size:12px;letter-spacing:.14em;text-transform:uppercase;color:#555a85;margin-bottom:13px}
.ao-f-c li{margin-bottom:7px}
.ao-f-c li a{color:#9ea2cc;font-size:13.5px}
.ao-f-c li a:hover{color:var(--acc2)}
.ao-f-bot{border-top:1px solid var(--line);padding:15px;text-align:center}
.ao-f-bot p{color:#555a85;font-size:12px}

/* RESPONSIVE */
@media(max-width:1020px){
  .ao-layout{grid-template-columns:1fr}
  .ao-side{position:static;flex-direction:row;flex-wrap:wrap}
  .ao-rankbox{flex:1;min-width:260px}
}
@media(max-width:860px){
  .ao-season{grid-template-columns:1fr}
  .ao-spot{min-height:200px}
  .ao-art-split{grid-template-columns:1fr}
  .ao-art-poster{max-width:240px}
}
@media(max-width:700px){
  .ao-nav{display:none}
  .ao-burger{display:block}
  .ao-grid{grid-template-columns:repeat(auto-fill,minmax(140px,1fr))}
}

/* geçiş animasyonları */
@keyframes aoPop{from{opacity:0;transform:scale(.96) translateY(8px)}to{opacity:1;transform:none}}
.ao-card{animation:aoPop .35s ease both}
.ao-card.hide{display:none}
