/* ===========================================================================
   EINHEITLICHES DESIGN (v2) für ALLE Seiten außer der Turnierseite (die hat ihren eigenen, bereits eckigen Stil).
   Gleicher Stil wie Startseite v2 / Turnierseite: eckig (2 px), ruhig, klare Linien, Akzentfarbe, moderne Tabellen.
   Wird von header.php geladen; html.site-v2 wird dort gesetzt. Zurückstellen: Zeile <link … site_v2.css> in header.php entfernen.
   =========================================================================== */

html.site-v2 { --radius-sm: 2px; --radius-md: 2px; --radius-lg: 2px; --sv2-line: rgba(255,255,255,0.12); --sv2-line-soft: rgba(255,255,255,0.07); --sv2-panel: rgba(10,13,19,0.82); --sv2-muted: #8d969e; }


/* ---------- 0) Moderne Schrift statt „Schreibmaschine“: überall, wo 'Courier Prime' angefordert wird, kommt jetzt eine klare Sans-Serif (Überschriften bleiben Orbitron) ---------- */
@font-face { font-family: 'Courier Prime'; font-weight: 400; font-style: normal; src: local('Segoe UI'), local('Roboto'), local('Helvetica Neue'), local('Arial'); }
@font-face { font-family: 'Courier Prime'; font-weight: 700; font-style: normal; src: local('Segoe UI Bold'), local('Segoe UI Semibold'), local('Roboto Bold'), local('Helvetica Neue Bold'), local('Arial Bold'); }

/* ---------- 1) Alles eckig ---------- */
html.site-v2 *, html.site-v2 *::before, html.site-v2 *::after { border-radius: 2px !important; }
/* nur echte Kreise bleiben rund (Avatare, Status-Punkte, Lade-Anzeigen) */
html.site-v2 [class*="avatar"], html.site-v2 [class*="-dot"], html.site-v2 [class*="_dot"], html.site-v2 .gnav-av, html.site-v2 .mp-av, html.site-v2 .al-av, html.site-v2 .ac-av,
html.site-v2 .ember, html.site-v2 .radar-dot, html.site-v2 .hero-glow-ring, html.site-v2 .logo-energy-field, html.site-v2 .discord-widget-avatar,
html.site-v2 .spinner, html.site-v2 .loader, html.site-v2 input[type="radio"], html.site-v2 .sv2-round { border-radius: 50% !important; }

/* ---------- 2) Ruhiger statt Leuchten ---------- */
html.site-v2 * { text-shadow: none !important; }
html.site-v2 .glass-panel, html.site-v2 .btn, html.site-v2 .stat-box, html.site-v2 .chart-box, html.site-v2 .kpi-card, html.site-v2 .tool-card { box-shadow: none !important; }
html.site-v2 .glass-panel { background: var(--sv2-panel); border: 1px solid var(--sv2-line); backdrop-filter: none; -webkit-backdrop-filter: none; }

/* ---------- 3) Buttons: flach, eckig, ein Akzent ---------- */
html.site-v2 .btn { background: rgba(255,255,255,0.04); border: 1px solid #3a3f46; color: #d5d9de; font-weight: 600; letter-spacing: 0.05em; transition: background .15s, border-color .15s, color .15s; transform: none !important; }
html.site-v2 .btn:hover { background: rgba(46,204,113,0.14); border-color: var(--main-cyan, #2ecc71); color: #fff; }
html.site-v2 .btn-green, html.site-v2 .btn-cyan, html.site-v2 .btn-discord { background: var(--main-cyan, #2ecc71); border-color: var(--main-cyan, #2ecc71); color: #04150c; }
html.site-v2 .btn-green:hover, html.site-v2 .btn-cyan:hover { filter: brightness(1.1); background: var(--main-cyan, #2ecc71); color: #04150c; }

/* ---------- 4) Formularfelder ---------- */
html.site-v2 input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]):not([type="color"]), html.site-v2 select, html.site-v2 textarea {
    background: #0b0f14; border: 1px solid #3a3f46; color: #e9ecf2; outline: none; transition: border-color .15s, box-shadow .15s; }
html.site-v2 input:not([type="checkbox"]):not([type="radio"]):focus, html.site-v2 select:focus, html.site-v2 textarea:focus { border-color: var(--main-cyan, #2ecc71); box-shadow: 0 0 0 1px var(--main-cyan, #2ecc71); }
html.site-v2 input[type="checkbox"], html.site-v2 input[type="radio"], html.site-v2 input[type="range"] { accent-color: var(--main-cyan, #2ecc71); }

/* ---------- 5) Tabellen: modern statt 1990 (feine Linien, kleine Kopfzeile, Zeilen-Hover) ---------- */
html.site-v2 table:not(.no-v2):not([class*="wr-"]):not([class*="tn-"]) { border-collapse: collapse; border-spacing: 0; width: 100%; border: 0 !important; background: transparent; }
html.site-v2 table:not(.no-v2):not([class*="wr-"]):not([class*="tn-"]) th { background: rgba(255,255,255,0.035) !important; color: var(--sv2-muted) !important; font-size: 0.68rem; font-weight: 700; letter-spacing: 0.1em; text-transform: uppercase; text-align: left; padding: 10px 12px; border: 0 !important; border-bottom: 1px solid var(--sv2-line) !important; }
html.site-v2 table:not(.no-v2):not([class*="wr-"]):not([class*="tn-"]) td { padding: 10px 12px; border: 0 !important; border-bottom: 1px solid var(--sv2-line-soft) !important; background: transparent; }
html.site-v2 table:not(.no-v2):not([class*="wr-"]):not([class*="tn-"]) tbody tr:hover td, html.site-v2 table:not(.no-v2):not([class*="wr-"]):not([class*="tn-"]) tr:hover > td { background: rgba(255,255,255,0.03); }
html.site-v2 table:not(.no-v2) tr:last-child td { border-bottom: 0 !important; }

/* ---------- 6) Überschriften / Details ---------- */
html.site-v2 h1, html.site-v2 h2 { letter-spacing: 0.04em; }
html.site-v2 hr { border: 0; border-top: 1px solid var(--sv2-line); }
html.site-v2 ::-webkit-scrollbar { width: 10px; height: 10px; } html.site-v2 ::-webkit-scrollbar-track { background: #0b0f14; } html.site-v2 ::-webkit-scrollbar-thumb { background: #2f353d; } html.site-v2 ::-webkit-scrollbar-thumb:hover { background: #454c55; }

/* ---------- 7) Fußzeile: nur Impressum · Datenschutz · Cookie-Einstellungen + Copyright ---------- */
html.site-v2 .site-footer, .site-footer { margin-top: 60px; padding: 22px 16px 28px; text-align: center; border-top: 1px solid var(--sv2-line); background: rgba(6,8,12,0.6); }
.site-footer .footer-links { display: flex; flex-wrap: wrap; justify-content: center; align-items: center; gap: 6px 14px; font-size: 0.75rem; letter-spacing: 0.1em; }
.site-footer .footer-links a { color: #aab3bc; text-decoration: none; cursor: pointer; padding: 4px 2px; border-bottom: 1px solid transparent; } .site-footer .footer-links a:hover { color: #fff; border-bottom-color: var(--main-cyan, #2ecc71); }
.site-footer .footer-sep { color: #4a515a; }
.site-footer .footer-copy { margin-top: 12px; font-size: 0.74rem; color: #6b747d; }

/* ---------- 8) Seiten-Container: ruhiger Rahmen statt Neon-Kasten (Startseite ausgenommen) ---------- */
html.site-v2:not(.hp-v2) .content-wrapper, html.site-v2 .dossier-wrapper { border: 1px solid var(--sv2-line) !important; box-shadow: none !important; background: var(--sv2-panel) !important; }
html.site-v2 .dossier-wrapper { max-width: 1000px !important; }
html.site-v2 .top-secret { border-radius: 2px !important; }


/* ---------- 9) 💖 Spender-Abzeichen (deutlich sichtbar, Details per Mouseover) ---------- */
.god-donor { position: relative; display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; font-weight: 800; font-size: 0.74rem; letter-spacing: 0.08em; color: #1a0b14; cursor: help; vertical-align: middle;
    background-color: var(--dc, #ff7ab8); background-image: linear-gradient(110deg, transparent 30%, rgba(255,255,255,0.55) 50%, transparent 70%); background-size: 240% 100%; animation: godDonorShine 3.4s linear infinite;
    border: 1px solid rgba(255,255,255,0.6); box-shadow: 0 0 0 2px rgba(0,0,0,0.35), 0 0 16px var(--dc, #ff7ab8); }
@keyframes godDonorShine { from { background-position: 160% 0; } to { background-position: -80% 0; } }
.god-donor.god-donor-c { padding: 2px 7px; font-size: 0.95rem; letter-spacing: 0; }
.god-donor::after { content: attr(data-tip); position: absolute; left: 0; bottom: calc(100% + 10px); width: max-content; max-width: 290px; white-space: pre-line; padding: 11px 15px; text-align: left;
    background: #0b0f14; border: 1px solid var(--dc, #ff7ab8); color: #e9edf2; font-size: 0.78rem; font-weight: 500; letter-spacing: 0; line-height: 1.5; text-transform: none;
    box-shadow: 0 14px 40px rgba(0,0,0,0.65); opacity: 0; transform: translateY(4px); pointer-events: none; transition: opacity .15s, transform .15s; z-index: 9999; }
.god-donor:hover::after, .god-donor:focus::after { opacity: 1; transform: none; }
@media (prefers-reduced-motion: reduce) { .god-donor { animation: none; } }


/* ---------- 10) 🏅 Auszeichnungen (Sieger, Mapper, Mod, Gründer, 1 Jahr, Profil vollständig) ---------- */
.god-award { position: relative; display: inline-flex; align-items: center; gap: 6px; padding: 4px 11px; font-weight: 800; font-size: 0.72rem; letter-spacing: 0.06em; color: #fff; cursor: help; vertical-align: middle; margin: 0 6px 6px 0;
    background: linear-gradient(135deg, color-mix(in srgb, var(--ac, #2ecc71) 38%, #0b0f14), color-mix(in srgb, var(--ac, #2ecc71) 14%, #0b0f14)); border: 1px solid var(--ac, #2ecc71); border-left-width: 4px; }
.god-award.god-award-c { padding: 2px 7px; font-size: 0.95rem; letter-spacing: 0; margin: 0 4px 4px 0; }
.god-award::after { content: attr(data-tip); position: absolute; left: 0; bottom: calc(100% + 10px); width: max-content; max-width: 280px; white-space: pre-line; padding: 10px 14px; text-align: left; background: #0b0f14; border: 1px solid var(--ac, #2ecc71); color: #e9edf2; font-size: 0.78rem; font-weight: 500; letter-spacing: 0; line-height: 1.5; text-transform: none; box-shadow: 0 14px 40px rgba(0,0,0,0.65); opacity: 0; transform: translateY(4px); pointer-events: none; transition: opacity .15s, transform .15s; z-index: 9999; }
.god-award:hover::after, .god-award:focus::after { opacity: 1; transform: none; }
.god-award.god-award-c::after { display: none; }

/* 🦶 Fußzeile immer ganz unten: auch bei kurzen Seiten (z. B. Head-to-Head, Postfach) liegt sie am unteren Bildschirmrand.
   body ist eine Flex-Spalte mit min-height 100vh; ein dehnbarer Abstandshalter (min. 60 px) schiebt die Fußzeile nach unten. */
html.site-v2 body::after { content: ""; display: block; flex: 1 1 0; width: 100%; min-height: 60px; order: 9998; pointer-events: none; }
html.site-v2 .site-footer { margin-top: 0; order: 9999; }
