/* ==========================================================================
   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, .notice { position: relative; z-index: 1; }
.topbar { position: sticky; top: 0; z-index: 80; }

/* ---------- 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; }

/* ---------- Üst menü arama kutusu ---------- */
.mini-search {
  position: relative; overflow: hidden; width: 215px; height: 42px; padding: 0 8px 0 12px; gap: 9px;
  border-radius: 10px; color: #a8916a;
  background: var(--frame), linear-gradient(180deg, #1d150d, #0e0a06);
  border: 1px solid #4a3418;
  box-shadow: inset 0 1px 0 rgba(255, 220, 150, .07), inset 0 0 0 1px rgba(0, 0, 0, .6), 0 6px 16px -10px #000;
  transition: width .35s cubic-bezier(.2, .8, .2, 1), border-color .25s, box-shadow .25s;
}
.mini-search::before {
  content: ""; position: absolute; inset: 0; pointer-events: none;
  background: linear-gradient(100deg, transparent 35%, rgba(255, 215, 130, .14) 50%, transparent 65%);
  transform: translateX(-120%); animation: ms-shine 7s ease-in-out infinite;
}
@keyframes ms-shine { 0%, 70% { transform: translateX(-120%); } 100% { transform: translateX(120%); } }
.mini-search .ms-icon { display: grid; place-items: center; color: var(--gold); transition: transform .3s; filter: drop-shadow(0 0 4px rgba(240, 160, 50, .4)); }
.mini-search input { color: #f1e6d0; font-size: 14px; }
.mini-search input::placeholder { color: #8a7a60; opacity: 1; }
.mini-search input::-webkit-search-cancel-button { filter: sepia(1) saturate(3) hue-rotate(-10deg); cursor: pointer; }
.ms-kbd {
  flex-shrink: 0; min-width: 22px; height: 22px; display: grid; place-items: center; padding: 0 6px;
  font: 700 12px/1 var(--font); color: #d9b46a; border-radius: 5px;
  background: linear-gradient(180deg, #2a1e12, #160f09); border: 1px solid #5a3d18; box-shadow: 0 2px 0 #000;
  transition: opacity .2s;
}
.mini-search:focus-within {
  border-color: #c4892c;
  box-shadow: 0 0 0 3px rgba(240, 181, 74, .14), 0 0 24px -2px rgba(240, 160, 50, .35), inset 0 1px 0 rgba(255, 220, 150, .1);
}
.mini-search:focus-within .ms-icon { transform: scale(1.15) rotate(-10deg); }
.mini-search:focus-within .ms-kbd { opacity: 0; }
.mini-search:focus-within::before { animation-duration: 2.4s; }
@media (prefers-reduced-motion: reduce) { .mini-search::before { animation: none; } }

/* ---------- Cloudflare doğrulama kutusu ---------- */
.turnstile-box { min-height: 65px; max-width: 420px; }
.comment-form .turnstile-box, .form .turnstile-box { margin: 2px 0 4px; }

/* ---------- Sunucu detay: düzenli buton ızgarası ---------- */
.sv-head { gap: 16px; }
.sv-actions { display: grid; grid-template-columns: repeat(var(--cols, 2), minmax(0, 1fr)); gap: 10px; }
.sv-actions .btn { width: 100%; height: 46px; padding: 0 12px; justify-content: center; }
.sv-actions .btn .i { color: var(--gold); }
.sv-actions .btn-gold .i { color: inherit; }
.sv-quick { display: flex; flex-wrap: wrap; gap: 8px 18px; margin: 0; padding: 12px 0 0; border-top: 1px solid var(--line); color: var(--muted); font-size: 13.5px; }
.sv-quick span { display: inline-flex; align-items: center; gap: 6px; }
.sv-quick .i { color: var(--gold); }
.sv-quick b { color: var(--text); font-weight: 700; }
@media (max-width: 640px) {
  .sv-actions { grid-template-columns: repeat(2, minmax(0, 1fr)); }
  .sv-actions .btn { flex: none; }
}

/* ---------- Yukarı çık butonu ---------- */
.to-top {
  position: fixed; right: 22px; bottom: 22px; z-index: 60; width: 56px; height: 56px; padding: 0; border: 0; border-radius: 50%;
  display: grid; place-items: center; color: #2a1704;
  background: radial-gradient(circle at 50% 35%, #2a1d10, #0e0a06 70%);
  box-shadow: 0 10px 24px -8px rgba(0, 0, 0, .9), inset 0 0 0 1px rgba(0, 0, 0, .8);
  opacity: 0; visibility: hidden; transform: translateY(24px) scale(.8);
  transition: opacity .35s, transform .35s cubic-bezier(.2, .8, .2, 1.3), visibility .35s, box-shadow .3s;
}
.to-top.show { opacity: 1; visibility: visible; transform: none; }
.to-top .tt-ring { position: absolute; inset: 0; width: 100%; height: 100%; transform: rotate(-90deg); }
.to-top .tt-track { fill: none; stroke: #3a2812; stroke-width: 3; }
.to-top .tt-bar {
  fill: none; stroke: #f0b84f; stroke-width: 3; stroke-linecap: round;
  stroke-dasharray: 132; stroke-dashoffset: 132; filter: drop-shadow(0 0 3px rgba(255, 170, 60, .7)); transition: stroke-dashoffset .1s linear;
}
.to-top .tt-icon {
  position: relative; width: 38px; height: 38px; border-radius: 50%; display: grid; place-items: center;
  background: linear-gradient(180deg, #ffe7a6 0%, #f0b84f 45%, #c4801f 55%, #e2a23b 100%);
  border: 1px solid #5a3608; box-shadow: inset 0 1px 0 rgba(255, 255, 255, .6), inset 0 -2px 0 rgba(0, 0, 0, .25);
  overflow: hidden; transition: transform .25s;
}
.to-top:hover { box-shadow: 0 10px 28px -6px rgba(240, 160, 50, .55), inset 0 0 0 1px rgba(0, 0, 0, .8); }
.to-top:hover .tt-icon { transform: translateY(-2px); }
.to-top:hover .tt-icon svg { animation: tt-nudge .8s ease-in-out infinite; }
.to-top:focus-visible { outline: 2px solid var(--gold); outline-offset: 3px; }
/* En alta gelince parlar ve ok zıplar */
.to-top.at-bottom { animation: tt-glow 1.6s ease-in-out infinite; }
.to-top.at-bottom .tt-icon svg { animation: tt-nudge 1s ease-in-out infinite; }
/* Tıklayınca ok yukarı fırlar */
.to-top.launch .tt-icon svg { animation: tt-launch .6s cubic-bezier(.5, 0, .2, 1) forwards; }
@keyframes tt-nudge { 50% { transform: translateY(-4px); } }
@keyframes tt-glow { 50% { box-shadow: 0 0 0 6px rgba(240, 181, 74, .12), 0 0 30px rgba(255, 160, 50, .6), inset 0 0 0 1px rgba(0, 0, 0, .8); } }
@keyframes tt-launch { 0% { transform: translateY(0); opacity: 1; } 45% { transform: translateY(-30px); opacity: 0; } 46% { transform: translateY(30px); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } }
@media (max-width: 640px) { .to-top { right: 14px; bottom: 14px; width: 50px; height: 50px; } .to-top .tt-icon { width: 34px; height: 34px; } }
@media (prefers-reduced-motion: reduce) { .to-top, .to-top * { animation: none !important; } }

/* ---------- Üst menü (Metin2 stili) ---------- */
.nav-links { position: relative; display: flex; align-items: center; gap: 2px; }
.nav .nav-links a {
  position: relative; display: inline-flex; align-items: center; gap: 7px; height: 44px; padding: 0 10px;
  border-radius: 9px; background: none; box-shadow: none; color: #c9b994; font-weight: 600; font-size: 14px; letter-spacing: .01em; white-space: nowrap;
  transition: color .2s, transform .2s;
}
/* Öğeler arası küçük elmas ayraç */
.nav .nav-links a + a::before {
  content: ""; position: absolute; left: -2px; top: 50%; width: 4px; height: 4px; transform: translate(-50%, -50%) rotate(45deg);
  background: #5a3d18; transition: background .2s;
}
/* Üzerine gelince alttan yükselen sıcak ışık */
.nav .nav-links a::after {
  content: ""; position: absolute; inset: 4px 2px; border-radius: 9px; pointer-events: none; z-index: -1;
  background: radial-gradient(80% 110% at 50% 110%, rgba(240, 160, 50, .22), transparent 70%);
  opacity: 0; transform: scaleY(.6); transform-origin: bottom; transition: opacity .25s, transform .3s;
}
.nav-ico { display: grid; place-items: center; color: #8a6224; transition: color .2s, transform .35s cubic-bezier(.2, .8, .2, 1.6), filter .2s; }
.nav .nav-links a:hover, .nav .nav-links a:focus-visible { color: #ffe7a6; transform: translateY(-1px); background: none; }
.nav .nav-links a:hover::after, .nav .nav-links a:focus-visible::after { opacity: 1; transform: none; }
.nav .nav-links a:hover .nav-ico, .nav .nav-links a:focus-visible .nav-ico { color: var(--gold); transform: translateY(-2px) rotate(-10deg) scale(1.15); filter: drop-shadow(0 0 6px rgba(240, 160, 50, .7)); }
/* Bulunulan sayfa: bronz levha + parlayan elmas */
.nav .nav-links a.active {
  color: #ffd88a; border-radius: 9px 9px 6px 6px;
  background: linear-gradient(180deg, rgba(74, 50, 22, .85), rgba(30, 21, 12, .9));
  box-shadow: inset 0 0 0 1px #6b4618, inset 0 1px 0 rgba(255, 220, 150, .18), 0 6px 16px -8px rgba(240, 160, 50, .5);
  text-shadow: 0 0 12px rgba(255, 190, 80, .45);
}
.nav .nav-links a.active .nav-ico { color: var(--gold); filter: drop-shadow(0 0 5px rgba(240, 160, 50, .8)); }
.nav .nav-links a.active::after { opacity: 1; transform: none; }
.nav .nav-links a.active .nav-label::after {
  content: ""; position: absolute; left: 50%; bottom: -5px; width: 9px; height: 9px; transform: translateX(-50%) rotate(45deg);
  background: linear-gradient(135deg, #ffe7a6, #c4801f); border: 1px solid #5a3608; box-shadow: 0 0 10px rgba(255, 170, 60, .9);
  animation: nav-gem 2.4s ease-in-out infinite;
}
@keyframes nav-gem { 50% { box-shadow: 0 0 18px rgba(255, 170, 60, 1); } }
.nav .nav-links a.active + a::before, .nav .nav-links a:has(+ a.active)::before { background: #8a6224; }
/* Fareyi takip eden altın çizgi */
.nav-glider {
  position: absolute; left: 0; bottom: -1px; height: 2px; width: 0; border-radius: 2px; pointer-events: none; opacity: 0;
  background: linear-gradient(90deg, transparent, #ffd88a 20%, #fff2c8 50%, #ffd88a 80%, transparent);
  box-shadow: 0 0 10px rgba(255, 190, 80, .9), 0 0 2px #fff;
  transition: transform .35s cubic-bezier(.2, .8, .2, 1), width .35s cubic-bezier(.2, .8, .2, 1), opacity .25s;
}
.nav-glider.on { opacity: 1; }

@media (max-width: 980px) {
  .nav-links { display: grid; gap: 4px; }
  .nav .nav-links a { height: auto; padding: 13px 14px; font-size: 15px; border-radius: 10px; }
  .nav .nav-links a + a::before, .nav-glider { display: none; }
  .nav .nav-links a:hover { transform: none; background: rgba(240, 181, 74, .06); }
  .nav .nav-links a.active { border-radius: 10px; box-shadow: inset 3px 0 0 var(--gold), inset 0 0 0 1px #4a3418; }
  .nav .nav-links a.active .nav-label::after { display: none; }
}
@media (prefers-reduced-motion: reduce) { .nav-glider, .nav-ico { transition: none; } }
/* Dar masaüstü: menü sığsın diye ikonlar gizlenir */
@media (max-width: 1320px) and (min-width: 981px) {
  .nav-ico { display: none; }
  .nav .nav-links a { padding: 0 9px; font-size: 13.5px; }
  .topbar-inner { gap: 14px; }
}
/* Üst çubuk içerikten biraz daha geniş: ikonlu menü rahat sığsın */
.topbar .container { max-width: 1440px; }

/* ==========================================================================
   Sunucu Ekle sayfası
   ========================================================================== */
.prose-lead p { margin: 0; }
.sub-steps { display: flex; gap: 8px; margin: 0 0 20px; overflow-x: auto; scrollbar-width: none; }
.sub-steps a {
  flex: 1 1 0; min-width: 170px; display: flex; align-items: center; gap: 10px; padding: 12px 14px; border-radius: 10px;
  background: var(--frame), linear-gradient(180deg, #1d150d, #120d08); border: 1px solid #3a2812; color: var(--muted); font-weight: 600; font-size: 14px;
  transition: border-color .2s, color .2s;
}
.sub-steps a b {
  width: 30px; height: 30px; flex-shrink: 0; display: grid; place-items: center; border-radius: 50%; font-family: var(--display);
  background: #241a0f; border: 1px solid #5a3d18; color: var(--gold); transition: background .25s, color .25s, box-shadow .25s;
}
.sub-steps a:hover { border-color: #8a6224; color: var(--text); }
.sub-steps a.done b { background: linear-gradient(180deg, #ffe7a6, #d9962f); color: #2a1704; border-color: #5a3608; box-shadow: 0 0 12px rgba(255, 170, 60, .6); }
.sub-steps a.done { color: #f6dfa6; }
.sub-steps a.current { border-color: #c4892c; color: var(--gold-2); }

.sub-grid { display: grid; grid-template-columns: minmax(0, 1fr) 360px; gap: 26px; align-items: start; }
.sub-main { display: grid; gap: 20px; min-width: 0; }
.sub-main .card + .card { margin-top: 0; }
.sub-card { padding: 22px 24px 24px; scroll-margin-top: 90px; }
.sub-head { display: flex; gap: 16px; align-items: center; margin: 0 0 18px; padding-bottom: 14px; border-bottom: 1px solid var(--line); }
.sub-head h2 { font-size: 19px; margin: 0; color: #f6dfa6; }
.sub-head p { margin: 2px 0 0; color: var(--muted); font-size: 13.5px; }
.sub-num {
  position: relative; width: 38px; height: 38px; flex-shrink: 0; display: grid; place-items: center; margin: 0 4px;
  font: 800 17px var(--display); color: #2a1704; z-index: 0;
}
.sub-num::before {
  content: ""; position: absolute; inset: 3px; z-index: -1; transform: rotate(45deg); border-radius: 7px;
  background: linear-gradient(135deg, #ffe7a6, #c4801f); border: 1px solid #5a3608; box-shadow: 0 0 14px rgba(255, 170, 60, .45);
}
.sub-card .form { gap: 16px; }
.req { color: #ff8a8a; font-style: normal; }

.level-range { display: flex; align-items: center; gap: 10px; }
.level-range input { text-align: center; }
.level-range span { color: var(--gold); font-weight: 700; }
.pill-group { display: flex; flex-wrap: wrap; gap: 8px; }
.pill { position: relative; }
.pill input { position: absolute; opacity: 0; width: 1px; height: 1px; }
.pill span {
  display: inline-flex; align-items: center; height: 38px; padding: 0 15px; border-radius: 999px; cursor: pointer;
  border: 1px solid #4a3418; background: rgba(0, 0, 0, .25); color: var(--muted); font-weight: 600; font-size: 13.5px;
  transition: all .18s;
}
.pill span:hover { border-color: #8a6224; color: var(--text); }
.pill input:checked + span { background: linear-gradient(180deg, rgba(74, 50, 22, .9), rgba(30, 21, 12, .9)); border-color: #c4892c; color: var(--gold-2); box-shadow: inset 0 1px 0 rgba(255, 220, 150, .18), 0 0 12px -2px rgba(240, 160, 50, .5); }
.pill input:focus-visible + span { outline: 2px solid var(--gold); outline-offset: 2px; }
.chip-suggest { display: flex; flex-wrap: wrap; gap: 6px; }
.chip-suggest button {
  padding: 5px 12px; border-radius: 999px; border: 1px dashed #4a3418; background: none; color: var(--muted); font-size: 12.5px; font-weight: 500; cursor: pointer; transition: all .15s;
}
.chip-suggest button::before { content: "+ "; color: var(--gold); }
.chip-suggest button:hover { border-color: var(--gold); color: var(--gold-2); }
.chip-suggest button.on { border-style: solid; border-color: rgba(49, 196, 127, .55); background: rgba(49, 196, 127, .1); color: #9ee6c2; }
.chip-suggest button.on::before { content: "\2713  "; color: #6fe0a6; }
.input-ico { position: relative; }
.input-ico > .i { position: absolute; left: 13px; top: 50%; transform: translateY(-50%); color: #8a6224; pointer-events: none; transition: color .15s; }
.input-ico input { padding-left: 42px !important; }
.input-ico:focus-within > .i { color: var(--gold); }
.field-count { font-size: 12px; color: var(--dim); text-align: right; margin-top: -2px; }
.field-count.ok { color: #6fe0a6; }
.field-count.low { color: #ffb36b; }

.sub-uploads { display: grid; grid-template-columns: 220px minmax(0, 1fr); gap: 20px; align-items: start; }
.size-tag { font-style: normal; color: var(--gold); font-weight: 700; font-size: 11.5px; margin-left: 6px; padding: 1px 8px; border-radius: 999px; background: rgba(240, 181, 74, .1); }
.drop { position: relative; display: block; border-radius: 12px; overflow: hidden; border: 2px dashed #4a3418; background: rgba(0, 0, 0, .25); cursor: pointer; transition: border-color .15s, transform .15s; }
.drop img { width: 100%; object-fit: cover; display: block; }
.drop-square img { aspect-ratio: 1 / 1; }
.drop-wide img { aspect-ratio: 1200 / 630; }
.drop-over { position: absolute; inset: 0; display: grid; place-items: center; align-content: center; gap: 6px; padding: 10px; text-align: center; background: rgba(12, 9, 7, .72); color: var(--gold-2); font-weight: 600; font-size: 13px; opacity: 0; transition: opacity .15s; }
.drop:hover .drop-over, .drop.drag .drop-over { opacity: 1; }
.drop.drag { border-color: var(--gold); transform: scale(1.01); }
.drop.has-file { border-style: solid; border-color: rgba(49, 196, 127, .6); }
.drop input[type=file] { position: absolute; inset: 0; opacity: 0; cursor: pointer; }
.check-box { padding: 14px 16px; border-radius: 10px; border: 1px solid #3a2812; background: rgba(0, 0, 0, .2); cursor: pointer; }
.check-box b { color: var(--text); }
.sub-send { display: flex; flex-wrap: wrap; align-items: center; gap: 14px; }
.sub-send small { display: inline-flex; align-items: center; gap: 6px; }
.sub-send small .i { color: var(--green); }
.sub-send .btn { min-width: 230px; }

.sub-side { position: sticky; top: 88px; display: grid; gap: 18px; }
.sub-preview .pv-card { pointer-events: none; }
.pv-card .vcard-body p { min-height: 2.6em; overflow-wrap: anywhere; }
.pv-card h3 { overflow-wrap: anywhere; }
.pv-feat { display: flex; flex-wrap: wrap; gap: 5px; margin: -4px 0 12px; }
.pv-feat span { font-size: 11px; padding: 2px 8px; border-radius: 999px; background: rgba(49, 196, 127, .1); border: 1px solid rgba(49, 196, 127, .3); color: #9ee6c2; }
.sub-progress { margin-top: 14px; display: grid; gap: 7px; font-size: 12.5px; color: var(--muted); }
.sub-progress-bar { height: 8px; border-radius: 999px; background: #1a120b; border: 1px solid #3a2812; overflow: hidden; }
.sub-progress-bar i { display: block; height: 100%; width: 0; border-radius: inherit; background: linear-gradient(90deg, #c4801f, #ffd88a); box-shadow: 0 0 10px rgba(255, 170, 60, .6); transition: width .4s cubic-bezier(.2, .8, .2, 1); }
.flow { list-style: none; margin: 0 0 14px; padding: 0; counter-reset: f; display: grid; }
.flow li { position: relative; padding: 0 0 16px 40px; display: grid; gap: 2px; counter-increment: f; }
.flow li::before {
  content: counter(f); position: absolute; left: 0; top: 0; width: 28px; height: 28px; display: grid; place-items: center; border-radius: 50%;
  font: 800 13px var(--display); color: #2a1704; background: linear-gradient(180deg, #ffe7a6, #d9962f); border: 1px solid #5a3608;
}
.flow li:not(:last-child)::after { content: ""; position: absolute; left: 13px; top: 30px; bottom: 2px; width: 2px; background: linear-gradient(#8a6224, #3a2812); }
.flow b { color: #f6dfa6; font-size: 14px; }
.flow span { color: var(--muted); font-size: 13px; }
.sub-vip { display: flex; align-items: center; gap: 8px; padding: 12px 14px; border-radius: 10px; border: 1px solid rgba(240, 181, 74, .35); background: rgba(240, 181, 74, .07); color: var(--muted); font-size: 13.5px; }
.sub-vip .i { color: var(--gold); }
.sub-vip b { color: var(--gold-2); }
.sub-vip:hover { border-color: var(--gold); color: var(--text); }

@media (max-width: 1100px) {
  .sub-grid { grid-template-columns: minmax(0, 1fr); }
  .sub-side { position: static; grid-template-columns: repeat(2, minmax(0, 1fr)); }
}
@media (max-width: 760px) {
  .sub-side { grid-template-columns: minmax(0, 1fr); }
  .sub-uploads { grid-template-columns: minmax(0, 1fr); }
  .sub-uploads .field:first-child .drop { max-width: 200px; }
  .sub-card { padding: 18px 16px 20px; }
  .sub-steps a { min-width: 150px; }
  .sub-send .btn { width: 100%; }
}

.sub-card .field > .label { font-weight: 600; font-size: 14px; color: var(--text); }

/* Sunucu Ekle: sade yükleme kutuları (boşken ikon + yazı, görsel seçilince önizleme) */
.sub-uploads { grid-template-columns: 170px minmax(0, 1fr); gap: 18px; }
.drop { height: 170px; border: 2px dashed #5a3d18; background: radial-gradient(120% 90% at 50% 0, rgba(240, 181, 74, .07), transparent 70%), rgba(0, 0, 0, .28); }
.drop-square { width: 170px; }
.drop img, .drop-square img, .drop-wide img { width: 100%; height: 100%; aspect-ratio: auto; object-fit: cover; }
.drop img[hidden] { display: none; }
.drop-empty {
  position: absolute; inset: 0; display: grid; place-content: center; justify-items: center; gap: 4px; padding: 12px; text-align: center;
  transition: transform .2s;
}
.drop-empty b { color: #f6dfa6; font-size: 14px; font-weight: 700; }
.drop-empty small { color: var(--dim); font-size: 12px; }
.drop-ico {
  width: 46px; height: 46px; margin-bottom: 6px; display: grid; place-items: center; border-radius: 50%; color: var(--gold);
  background: rgba(240, 181, 74, .1); border: 1px solid rgba(240, 181, 74, .35); box-shadow: 0 0 16px -4px rgba(240, 160, 50, .5);
  transition: transform .25s cubic-bezier(.2, .8, .2, 1.5), background .2s;
}
.drop:hover { border-color: #c4892c; }
.drop:hover .drop-ico, .drop.drag .drop-ico { transform: translateY(-3px) scale(1.08); background: rgba(240, 181, 74, .2); }
/* Boşken üstteki "Değiştir" katmanı gösterilmez; görsel seçilince boş durum gizlenir */
.drop:not(.has-file) .drop-over { display: none; }
.drop.has-file .drop-empty { display: none; }
.drop.drag { border-style: solid; }
@media (max-width: 760px) {
  .sub-uploads { grid-template-columns: minmax(0, 1fr); }
  .sub-uploads .field:first-child .drop { max-width: none; }
  .drop-square { width: 150px; height: 150px; }
  .drop-wide { height: 150px; }
}

/* ---------- Mobil menü paneli ---------- */
.nav-scrim { display: none; }
@media (max-width: 980px) {
  .nav {
    inset: 68px 0 auto 0; padding: 14px 16px 18px; gap: 6px; z-index: -1;
    max-height: calc(100vh - 68px); max-height: calc(100dvh - 68px);
    background: var(--frame), linear-gradient(180deg, #1c140c 0%, #0e0a07 100%);
    border-bottom: 1px solid #6b4618; box-shadow: 0 30px 60px -10px rgba(0, 0, 0, .85), inset 0 1px 0 rgba(240, 181, 74, .25);
    visibility: hidden; opacity: 0; transform: translateY(-14px);
    transition: transform .3s cubic-bezier(.2, .8, .2, 1), opacity .25s, visibility .3s;
  }
  .nav.open { visibility: visible; opacity: 1; transform: none; }
  .nav .nav-links a { opacity: 0; transform: translateX(-12px); transition: opacity .3s, transform .3s, background .2s, color .2s; transition-delay: calc(var(--k, 0) * 45ms); }
  .nav.open .nav-links a { opacity: 1; transform: none; }
  .nav .nav-links a .nav-ico { display: grid; width: 32px; height: 32px; border-radius: 9px; background: rgba(240, 181, 74, .08); border: 1px solid #3a2812; }
  .nav .nav-links a.active .nav-ico { background: rgba(240, 181, 74, .18); border-color: #8a6224; }
  .nav .nav-links a::after { display: none; }
  .nav-cta { margin: 10px 0 0; height: 48px; font-size: 15px; }
  /* Menü açıkken arka planı karart */
  .nav-scrim {
    display: block; position: fixed; inset: 0; z-index: 70; background: rgba(5, 3, 2, .65); backdrop-filter: blur(2px);
    opacity: 0; visibility: hidden; transition: opacity .25s, visibility .25s;
  }
  body.nav-open .nav-scrim { opacity: 1; visibility: visible; }
  body.nav-open { overflow: hidden; }
  .menu-btn { color: var(--gold); border-color: #5a3d18; background: linear-gradient(180deg, #241a10, #160f09); transition: border-color .2s, transform .2s; }
  .menu-btn[aria-expanded="true"] { border-color: var(--gold); box-shadow: 0 0 14px -2px rgba(240, 160, 50, .6); }
  .menu-btn .i { transition: transform .3s; }
  .menu-btn[aria-expanded="true"] .i { transform: rotate(90deg); }
}
@media (prefers-reduced-motion: reduce) { .nav, .nav .nav-links a { transition: none !important; } }

/* ==========================================================================
   Üst menü kaydırma davranışı (Ayarlar → Menü & Alt Bilgi)
   header-sticky | header-smart | header-static  (+ header-shrink)
   ========================================================================== */
.topbar { --hdr-h: 68px; transition: transform .35s cubic-bezier(.2, .8, .2, 1), box-shadow .3s, background .3s; }
.topbar-inner { height: var(--hdr-h); transition: height .3s cubic-bezier(.2, .8, .2, 1); }
@media (max-width: 980px) {
  .nav { inset: var(--hdr-h) 0 auto 0; max-height: calc(100vh - var(--hdr-h)); max-height: calc(100dvh - var(--hdr-h)); }
}

/* Sabit: sayfanın başında kalır */
.header-static .topbar { position: relative; }
html:has(body.header-static) { scroll-padding-top: 16px; }

/* Akıllı: aşağı kaydırınca gizlenir, yukarı kaydırınca geri gelir */
.header-smart .topbar.is-hidden { transform: translateY(calc(-100% - 4px)); box-shadow: none; }

/* Kaydırınca incelme ve gölge */
.header-shrink .topbar.is-scrolled { --hdr-h: 58px; background: linear-gradient(180deg, rgba(22, 15, 9, .98), rgba(12, 8, 6, .97)); box-shadow: 0 12px 30px -10px rgba(0, 0, 0, .9), 0 1px 0 rgba(240, 181, 74, .25); }
.header-shrink .topbar .logo-fx img { transition: height .3s cubic-bezier(.2, .8, .2, 1); }
.header-shrink .topbar.is-scrolled .logo-fx img { height: calc(var(--logo-h, 46px) * .82); }
.header-shrink .topbar .brand-mark { transition: width .3s, height .3s; }
.header-shrink .topbar.is-scrolled .brand-mark { width: 38px; height: 38px; }
.header-shrink .topbar.is-scrolled .mini-search { height: 38px; }
@media (max-width: 640px) {
  .header-shrink .topbar.is-scrolled { --hdr-h: 56px; }
  .header-shrink .topbar.is-scrolled .logo-fx img { height: min(calc(var(--logo-h, 46px) * .82), 34px); }
}
@media (prefers-reduced-motion: reduce) { .topbar, .topbar-inner { transition: none; } }
