/* ==========================================================================
   METİN2 TEMASI – gerçek oyun görselleri, çerçeveler, imleçler, animasyonlar
   Görseller: assets/img/m2/
   ========================================================================== */
:root {
  --frame: url(../img/corner-tl.svg) top left no-repeat, url(../img/corner-tr.svg) top right no-repeat,
           url(../img/corner-bl.svg) bottom left no-repeat, url(../img/corner-br.svg) bottom right no-repeat;
  --panel: linear-gradient(180deg, #1d150d 0%, #140f0a 100%);
}
body {
  background:
    radial-gradient(1100px 600px at 50% -10%, rgba(255, 122, 26, .08), transparent 60%),
    var(--bg);
}
main, .footer, .topbar, .notice { position: relative; z-index: 1; }

/* ---------- Metin2 imleçleri ---------- */
html, body { cursor: url(../img/cursor-eye.png) 1 1, auto; }
a, button, select, summary, label, .btn, [data-lightbox], [data-yt], [data-copy], input[type=checkbox], input[type=submit] {
  cursor: url(../img/cursor-eye.png) 1 1, pointer;
}
input[type=text], input[type=search], input[type=email], input[type=url], input[type=number], textarea, input:not([type]) { cursor: text; }

/* ---------- Kenarlarda karakter görselleri (geniş ekran) ---------- */
.side-art {
  position: fixed; top: 0; bottom: 0; z-index: 0; pointer-events: none; display: none;
  width: calc((100vw - var(--container)) / 2 + 160px);
  background-size: auto 100%; background-repeat: no-repeat; opacity: .5;
}
.side-art-l {
  left: 0; background-image: url(../img/m2/parsomen-7.webp); background-position: 22% 50%;
  -webkit-mask-image: linear-gradient(90deg, #000 30%, transparent); mask-image: linear-gradient(90deg, #000 30%, transparent);
}
.side-art-r {
  right: 0; background-image: url(../img/m2/parsomen-6.webp); background-position: 22% 50%; transform: scaleX(-1);
  -webkit-mask-image: linear-gradient(90deg, #000 30%, transparent); mask-image: linear-gradient(90deg, #000 30%, transparent);
}
.side-art::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, rgba(11, 8, 6, .2), rgba(11, 8, 6, .75)); }
@media (min-width: 1500px) { .side-art { display: block; } }

/* ---------- Başlıklar ---------- */
h1, h2, h3, .widget-title, .card-title, .brand-text b { font-family: var(--display); letter-spacing: .02em; }
.srow-title, .vcard-head h3, .pcard h3, .mini-list b, .scard-body b { font-family: var(--display); font-weight: 700; }
.section-head { position: relative; padding-bottom: 12px; border-bottom: 1px solid var(--line); }
.section-head::after {
  content: ""; position: absolute; left: 0; bottom: -1px; width: 160px; height: 2px;
  background: linear-gradient(90deg, var(--gold), transparent);
}
.section-head h2 { color: #f6dfa6; text-shadow: 0 2px 0 #000, 0 0 18px rgba(240, 181, 74, .25); }
.section-head-center { justify-content: center; text-align: center; border: 0; }
.section-head-center::after { left: 50%; transform: translateX(-50%); width: 260px; background: linear-gradient(90deg, transparent, var(--gold), transparent); }

/* ---------- Metin2 pencere çerçevesi ---------- */
.card, .widget, .seo-text, .filters, .faq details, .srow, .scard, .pcard, .sv-head, .how-card, .finder, .toc, .vote-box, .big-countdown {
  background: var(--frame), var(--panel);
  border: 1px solid #4a3418;
  box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .7), inset 0 1px 0 rgba(255, 220, 150, .07), 0 10px 24px -14px #000;
}
.specs div { background: rgba(0, 0, 0, .28); box-shadow: inset 0 0 0 1px rgba(0, 0, 0, .5); border-color: #3a2812; }
.srow:hover, .scard:hover, .pcard:hover { border-color: #8a6224; background: var(--frame), linear-gradient(180deg, #241a0f, #17110b); }
.srow.is-vip { background: var(--frame), linear-gradient(90deg, rgba(240, 181, 74, .12), #17110b 45%); border-color: #8a6224; }
.vote-box, .widget-cta { background: var(--frame), radial-gradient(120% 80% at 50% 0, rgba(240, 181, 74, .18), transparent 60%), var(--panel); }
.big-countdown { background: var(--frame), radial-gradient(120% 90% at 50% 0, rgba(255, 122, 26, .18), transparent 65%), var(--panel); border-color: #6b4618; }
.cd-box { background: linear-gradient(180deg, #2a1d10, #0e0a06); border-color: #6b4618; box-shadow: inset 0 1px 0 rgba(255, 220, 150, .15); }
.cd-box b { color: #ffd98a; text-shadow: 0 0 12px rgba(255, 160, 60, .5); }
.tag-vip { background: linear-gradient(180deg, #ffe7a6, #d9962f); color: #2a1704; border: 1px solid #5a3608; }

/* ---------- Butonlar: bronz düğme ---------- */
.btn-gold {
  background: linear-gradient(180deg, #ffe7a6 0%, #f0b84f 45%, #c4801f 55%, #e2a23b 100%);
  border: 1px solid #5a3608; color: #2a1704; text-shadow: 0 1px 0 rgba(255, 240, 200, .6);
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6), inset 0 -2px 0 rgba(0, 0, 0, .25), 0 6px 18px -8px rgba(240, 160, 50, .8);
  position: relative; overflow: hidden;
}
.btn-gold::after {
  content: ""; position: absolute; top: 0; left: -60%; width: 40%; height: 100%;
  background: linear-gradient(100deg, transparent, rgba(255, 255, 255, .55), transparent); transform: skewX(-20deg);
}
.btn-gold:hover::after { animation: shine .7s ease; }
@keyframes shine { to { left: 130%; } }
.btn-ghost { background: linear-gradient(180deg, #2a1e12, #160f09); border-color: #5a3d18; color: #f1e6d0; box-shadow: inset 0 1px 0 rgba(255, 220, 150, .08); }

/* ---------- Üst menü ---------- */
.topbar { background: linear-gradient(180deg, rgba(26, 18, 10, .97), rgba(14, 10, 7, .94)); border-bottom: 1px solid #5a3d18; box-shadow: 0 8px 24px -12px #000; }
.topbar::after { content: ""; position: absolute; left: 0; right: 0; bottom: -2px; height: 1px; background: linear-gradient(90deg, transparent, rgba(240, 181, 74, .6), transparent); }
.brand-mark { width: 44px; height: 44px; padding: 0; overflow: hidden; border-radius: 10px; border: 1px solid #8a6224; box-shadow: 0 0 16px rgba(160, 90, 255, .35), inset 0 0 0 1px #000; background: #000; }
.brand-mark img { width: 100%; height: 100%; object-fit: cover; animation: stonepulse 3s ease-in-out infinite; }
@keyframes stonepulse { 50% { filter: brightness(1.35) saturate(1.3); } }
.brand-text b { color: #f6dfa6; text-shadow: 0 2px 0 #000; }
.nav a.active { background: rgba(240, 181, 74, .1); box-shadow: inset 0 -2px 0 var(--gold); border-radius: 6px 6px 0 0; }

/* ---------- Duyuru şeridi (oyun içi duyuru gibi) ---------- */
.notice { background: linear-gradient(180deg, rgba(0, 0, 0, .7), rgba(20, 12, 6, .7)); border-bottom: 1px solid #3a2812; overflow: hidden; }
.notice-inner { display: flex; align-items: center; gap: 14px; height: 38px; }
.notice-label { flex-shrink: 0; font-family: var(--display); font-weight: 700; font-size: 12px; text-transform: uppercase; letter-spacing: .1em; color: #2a1704; background: linear-gradient(180deg, #ffe7a6, #d9962f); padding: 3px 10px; border-radius: 3px; border: 1px solid #5a3608; }
.notice-track { overflow: hidden; flex: 1; -webkit-mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); mask-image: linear-gradient(90deg, transparent, #000 4%, #000 96%, transparent); }
.notice-move { display: flex; width: max-content; gap: 48px; animation: ticker 60s linear infinite; }
.notice:hover .notice-move { animation-play-state: paused; }
.notice-move a, .notice-move span { color: #ffe27a; font-weight: 600; font-size: 13.5px; white-space: nowrap; text-shadow: 0 1px 0 #000, 0 0 8px rgba(255, 210, 90, .35); }
.notice-move a::before, .notice-move span::before { content: "✦"; color: var(--red); margin-right: 10px; }
.notice-move a:hover { color: #fff; }
@keyframes ticker { to { transform: translateX(-50%); } }

/* ---------- Ana sayfa üst alanı ---------- */
.hero { padding: 96px 0 72px; min-height: 640px; display: flex; align-items: center; border-bottom: 1px solid #5a3d18; }
.hero-bg img.hero-photo { opacity: 1; object-position: 50% 62%; animation: kenburns 30s ease-in-out infinite alternate; transform-origin: 50% 65%; }
@keyframes kenburns { from { transform: scale(1.02); } to { transform: scale(1.14) translateY(-10px); } }
.hero-bg::after {
  background:
    radial-gradient(55% 60% at 50% 45%, rgba(8, 6, 4, .55), transparent 75%),
    linear-gradient(180deg, rgba(8, 6, 4, .35) 0%, rgba(8, 6, 4, .15) 45%, var(--bg) 100%);
}
.hero-glow { position: absolute; left: 50%; top: 64%; width: 260px; height: 320px; transform: translate(-50%, -50%); border-radius: 50%; background: radial-gradient(closest-side, rgba(140, 90, 255, .45), rgba(80, 140, 255, .15) 60%, transparent); mix-blend-mode: screen; animation: aura 3.2s ease-in-out infinite; z-index: 1; }
@keyframes aura { 50% { opacity: .45; transform: translate(-50%, -50%) scale(1.12); } }
.embers { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 2; pointer-events: none; }
.hero-inner { position: relative; z-index: 3; }
.hero h1 {
  margin: 0; font-size: clamp(38px, 6vw, 78px); font-weight: 800; letter-spacing: .03em; line-height: 1.05;
  background: linear-gradient(180deg, #fff7dc 0%, #ffd77a 38%, #c98a2a 52%, #f6c766 70%, #9b6418 100%);
  -webkit-background-clip: text; background-clip: text; color: transparent;
  filter: drop-shadow(0 3px 0 #2a1704) drop-shadow(0 0 24px rgba(255, 150, 40, .4));
}
.ornament { display: flex; align-items: center; justify-content: center; gap: 12px; margin: 14px auto 18px; max-width: 420px; }
.ornament span { flex: 1; height: 1px; background: linear-gradient(90deg, transparent, var(--gold)); }
.ornament span:last-child { background: linear-gradient(90deg, var(--gold), transparent); }
.ornament i { width: 12px; height: 12px; transform: rotate(45deg); background: linear-gradient(135deg, #ffe7a6, #c4801f); border: 1px solid #5a3608; box-shadow: 0 0 12px rgba(255, 170, 60, .7); animation: glow 2.6s ease-in-out infinite; }
@keyframes glow { 50% { box-shadow: 0 0 22px rgba(255, 170, 60, 1); } }
.hero-lead { color: #efe1c2; text-shadow: 0 2px 6px #000, 0 0 2px #000; font-size: 18px; }
.hero-char {
  position: absolute; right: min(-40px, calc((100vw - var(--container)) / 2 - 250px)); bottom: -20px; height: 104%; width: auto; z-index: 2; scale: -1 1;
  filter: drop-shadow(0 0 30px rgba(255, 120, 40, .25)) drop-shadow(0 20px 30px rgba(0, 0, 0, .8));
  animation: floaty 6s ease-in-out infinite; pointer-events: none;
  -webkit-mask-image: linear-gradient(180deg, #000 80%, transparent); mask-image: linear-gradient(180deg, #000 80%, transparent);
}
@keyframes floaty { 50% { transform: translateY(-14px); } }
.finder { background: var(--frame), linear-gradient(180deg, rgba(29, 21, 13, .93), rgba(16, 11, 7, .95)); border-color: #6b4618; padding: 10px; }
.finder-q, .finder select, .filters select, .filters-q { background-color: rgba(0, 0, 0, .4); border: 1px solid #3a2812; }
.hero-stats li { min-width: 120px; padding: 10px 14px; background: linear-gradient(180deg, rgba(29, 21, 13, .85), rgba(10, 7, 5, .85)); border: 1px solid #4a3418; border-radius: 6px; }
.hero-stats b { color: #ffd98a; font-family: var(--display); text-shadow: 0 0 14px rgba(255, 160, 60, .45); }

/* ---------- Sayfa başlıkları: parşömen karakter görseli ---------- */
.page-head { position: relative; overflow: hidden; padding: 34px 0 26px; border-bottom: 1px solid #5a3d18; isolation: isolate; height: 280px; display: flex; flex-direction: column; justify-content: center; }
/* Görsel yüksekliğe göre ölçeklenir ve sağa yaslanır: karakterin başı ve gövdesi kırpılmadan görünür */
.page-head::before {
  content: ""; position: absolute; inset: 0; z-index: -2;
  background: var(--art) right -4% top 6% / auto 165% no-repeat;
  -webkit-mask-image: linear-gradient(to left, #000 0, #000 640px, transparent 790px); mask-image: linear-gradient(to left, #000 0, #000 640px, transparent 790px);
  transform-origin: 85% 20%; animation: art-zoom 24s ease-in-out infinite alternate;
}
/* Orta alan: parşömen dokusu (görselin boş kâğıt köşesi büyütülerek) */
.page-head { background: url(../img/m2/parsomen-doku.webp) center / cover no-repeat, #1a130c; }
.page-head::after {
  content: ""; position: absolute; inset: 0; z-index: -1;
  background:
    linear-gradient(90deg, rgba(11, 8, 6, .55) 0, rgba(11, 8, 6, .86) 34%, rgba(11, 8, 6, .86) 46%, rgba(11, 8, 6, .2) 68%, rgba(11, 8, 6, .05) 100%),
    linear-gradient(180deg, transparent 75%, var(--bg));
}
@media (max-width: 980px) {
  .page-head { height: auto; min-height: 240px; }
  .page-head::before { background-position: 62% 6%; opacity: .55; -webkit-mask-image: none; mask-image: none; }
  .page-head::after { background: linear-gradient(180deg, rgba(11, 8, 6, .35), rgba(11, 8, 6, .85) 70%, var(--bg)); }
}
.page-head h1 { color: #f6dfa6; text-shadow: 0 2px 0 #000, 0 0 20px rgba(240, 181, 74, .3); }
.page-head .lead { color: #e2d3b5; text-shadow: 0 1px 3px #000; }

/* ---------- Nasıl çalışır ---------- */
.how { position: relative; overflow: hidden; isolation: isolate; padding-block: 60px; }
.how-bg { position: absolute; inset: 0; z-index: -1; background: url(../img/m2/parsomen-4.webp) 30% 30% / cover no-repeat; opacity: .5; }
.how-bg::after { content: ""; position: absolute; inset: 0; background: linear-gradient(180deg, var(--bg), rgba(11, 8, 6, .55) 30%, rgba(11, 8, 6, .55) 70%, var(--bg)); }
.how-grid { list-style: none; padding: 0; margin: 30px 0 0; display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 22px; }
.how-card { position: relative; text-align: center; padding: 10px 10px 22px; border-radius: 10px; transition: transform .3s, border-color .3s; }
.how-card:hover { border-color: #8a6224; }
.js .how-card.rv.is-in:hover { transform: translateY(-6px); }
.how-num { position: absolute; top: -16px; left: 50%; z-index: 2; width: 34px; height: 34px; display: grid; place-items: center; font-family: var(--display); font-weight: 800; font-size: 16px; color: #2a1704; background: linear-gradient(180deg, #ffe7a6, #d9962f); border: 1px solid #5a3608; border-radius: 50%; transform: translateX(-50%); box-shadow: 0 0 14px rgba(255, 170, 60, .6); }
.how-media { display: block; border-radius: 7px; overflow: hidden; margin-bottom: 16px; border: 1px solid #3a2812; }
.how-media img { width: 100%; aspect-ratio: 16 / 9; object-fit: cover; transition: transform .5s; }
.how-card:hover .how-media img { transform: scale(1.07); }
.how-card h3 { color: #f6dfa6; font-size: 19px; padding: 0 10px; }
.how-card p { color: var(--muted); margin: 0; font-size: 14.5px; padding: 0 12px; }

/* ---------- Yan sütun çağrı kutusu ---------- */
.widget-cta { padding-top: 0; overflow: hidden; }
.cta-art { width: calc(100% + 36px); max-width: none; margin: 0 -18px 14px; aspect-ratio: 616 / 300; object-fit: cover; object-position: 50% 20%; -webkit-mask-image: linear-gradient(180deg, #000 65%, transparent); mask-image: linear-gradient(180deg, #000 65%, transparent); }

/* ---------- VIP kartı: dönen altın kenar ---------- */
@property --ang { syntax: "<angle>"; initial-value: 0deg; inherits: false; }
.vcard { border: 0; background: var(--panel); }
.vcard::before { padding: 2px; background: conic-gradient(from var(--ang), #5a3608, #ffe7a6, #c4801f, #5a3608 40%, #5a3608 60%, #ffd77a, #5a3608); animation: spin 5s linear infinite; z-index: 2; }
@keyframes spin { to { --ang: 360deg; } }

.srow-rank b { font-family: var(--display); }
.top-1 .srow-rank b, .top-2 .srow-rank b, .top-3 .srow-rank b { font-size: 24px; }
.top-1 .srow-rank .i { filter: drop-shadow(0 0 6px rgba(255, 210, 100, .8)); animation: glow 2s infinite; }

/* ---------- 404 ---------- */
.notfound-wrap { position: relative; isolation: isolate; overflow: hidden; }
.notfound-wrap::before { content: ""; position: absolute; inset: 0; z-index: -1; background: linear-gradient(180deg, rgba(11, 8, 6, .55), var(--bg)), url(../img/m2/oyun-1.webp) center / cover no-repeat; }

/* ---------- Alt bilgi ---------- */
.footer { margin-top: 60px; background: #0c0806; border-top: 1px solid #5a3d18; overflow: hidden; isolation: isolate; }
.footer::before { content: ""; position: absolute; inset: 0; z-index: -1; background: url(../img/m2/parsomen-1.webp) 15% 30% / cover no-repeat; opacity: .14; }
.footer h3 { color: var(--gold); }

/* ---------- Kaydırınca belirme ---------- */
.js .rv { opacity: 0; transform: translateY(24px); transition: opacity .6s ease, transform .6s cubic-bezier(.2, .8, .2, 1), border-color .2s, background .2s; transition-delay: var(--d, 0ms); }
.js .rv.is-in { opacity: 1; transform: none; }
.js .vcard.rv.is-in:hover, .js .pcard.rv.is-in:hover { transform: translateY(-4px); }

@media (max-width: 1280px) { .hero-char { opacity: .45; right: -160px; } }
@media (max-width: 980px) { .how-grid { grid-template-columns: minmax(0, 1fr); } .hero-char { display: none; } }
@media (max-width: 640px) {
  .hero { min-height: 0; padding: 60px 0 40px; }
  .hero-stats li { min-width: 0; flex: 1 1 40%; }
  .notice-label { display: none; }
  .page-head { min-height: 0; }
}
@media (prefers-reduced-motion: reduce) {
  .js .rv { opacity: 1; transform: none; }
  .notice-move { animation: none; }
}

/* Reklam bannerları */
.ad a { display: block; }
.ad img { display: block; width: 100%; height: auto; margin: 0 auto; border-radius: 8px; border: 1px solid #4a3418; box-shadow: 0 10px 24px -14px #000; transition: filter .2s; }
.ad a:hover img { filter: brightness(1.12); }
.ad-ad_header img, .ad-ad_server img, .ad-ad_blog img { max-width: 728px; }
.ad-ad_home img { max-width: 970px; }
.ad-ad_sidebar img { max-width: 300px; }
