/* assets/css/style.css
   Magic World Online — Dark Fantasy Theme
   Place images in assets/img/: dark-bg.jpg, hero-bg.jpg, parchment.jpg, gallery placeholders
*/

/* ---------- Fonts (header includes Google fonts; these fallbacks here) ---------- */
:root{
  --gold: #d4af37;
  --deep-red: #6b0000;
  --cream: #e0d8c3;
  --panel-bg: rgba(18,18,18,0.82);
  --accent-shadow: rgba(212,175,55,0.18);
  --glass-border: rgba(255,255,255,0.03);
}

/* Base */
* { box-sizing: border-box; }
html,body { height: 100%; margin: 0; padding: 0; }
body.dark-bg {
  background: url('/img/hero-bg.bmp') no-repeat center center fixed;
  background-size: cover;
  color: var(--cream);
  font-family: "Cormorant Garamond", Georgia, serif;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale;
  line-height: 1.5;
  -webkit-text-size-adjust: 100%;
}

/* Container main spacing */
main.container {
  max-width: 1200px;
  margin: 0 auto;
  padding-left: 1rem;
  padding-right: 1rem;
}

/* ---------- Navbar ---------- */
.navbar {
  background: linear-gradient(90deg, rgba(10,6,6,0.95), rgba(30,14,14,0.65));
  border-bottom: 1px solid rgba(255,255,255,0.02);
  box-shadow: 0 4px 18px rgba(0,0,0,0.6);
  padding-top: 0.5rem;
  padding-bottom: 0.5rem;
}
.fantasy-logo {
  font-family: "Cinzel", serif;
  font-size: 1.6rem;
  color: var(--gold) !important;
  letter-spacing: 0.6px;
  text-shadow: 0 0 12px rgba(128,0,0,0.5);
}

/* Navbar links */
.navbar-nav .nav-link {
  color: #c9c9c9 !important;
  font-weight: 700;
  letter-spacing: 0.6px;
  transition: color .18s ease, text-shadow .18s ease, transform .12s ease;
  font-family: "Cinzel", serif;
}
.navbar-nav .nav-link:hover {
  color: #fff !important;
  text-shadow: 0 0 6px var(--gold);
  transform: translateY(-2px);
}

/* Mobile nav toggler bigger icon */
.navbar-toggler {
  border: 1px solid rgba(255,255,255,0.03);
}

/* ---------- Hero Section ---------- */
.hero-section {
  background: url('../img/hero-bg.jpg') center center/cover no-repeat;
  position: relative;
  min-height: 68vh;
  display: flex;
  align-items: center;
  justify-content: center;
  margin-bottom: 2rem;
}
.hero-section::before{
  content: "";
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, rgba(0,0,0,0.55), rgba(0,0,0,0.75));
  z-index: 0;
}
.hero-section .overlay {
  position: relative;
  z-index: 2;
  background: rgba(8,6,6,0.5);
  padding: 2.25rem;
  border-radius: 12px;
  border: 1px solid var(--glass-border);
  box-shadow: 0 8px 30px rgba(0,0,0,0.7);
  backdrop-filter: blur(3px);
  max-width: 980px;
}

/* Hero headings */
.hero-section h1, .hero-section .display-3 {
  font-family: "Cinzel", serif;
  font-weight: 700;
  color: var(--gold);
  text-shadow: 0 0 12px rgba(212,175,55,0.12), 0 8px 18px rgba(0,0,0,0.6);
  margin: 0 0 0.35rem 0;
}
.hero-section p.lead {
  font-size: 1.125rem;
  margin-bottom: 1.25rem;
  color: rgba(224,216,195,0.95);
  font-family: "Cormorant Garamond", Georgia, serif;
}

/* Rune / crystal button */
.btn-primary {
  display:inline-block;
  background: linear-gradient(180deg, var(--deep-red), #8a0000);
  border: 2px solid var(--gold);
  color: #fff;
  text-transform: uppercase;
  padding: 0.65rem 1.3rem;
  font-weight: 800;
  font-family: "Cinzel", serif;
  box-shadow: 0 6px 22px rgba(0,0,0,0.6), 0 0 18px rgba(139,0,0,0.12);
  letter-spacing: 0.8px;
  border-radius: 8px;
  transition: transform .12s ease, box-shadow .12s ease;
}
.btn-primary:hover, .btn-primary:focus {
  transform: translateY(-3px);
  box-shadow: 0 12px 30px rgba(0,0,0,0.75), 0 0 28px rgba(212,175,55,0.18);
  background: linear-gradient(180deg, #8a0000, #b00000);
  color: #fff;
}

/* ---------- Card Dark (panels) ---------- */
.card-dark {
  background: var(--panel-bg);
  border: 1px solid rgba(58,26,26,0.6);
  border-radius: 10px;
  padding: 1.5rem;
  box-shadow: 0 12px 28px rgba(0,0,0,0.65);
  transition: transform .12s ease, box-shadow .12s ease, border-color .12s ease;
  font-family: "Cormorant Garamond", Georgia, serif;
}
.card-dark h3 {
  color: var(--gold);
  margin-top: 0;
  margin-bottom: 0.6rem;
  text-shadow: 0 0 8px rgba(255,0,0,0.14);
  font-family: "Cinzel", serif;
}
.card-dark p { color: rgba(224,216,195,0.95); margin-bottom: 0; }

/* ---------- Transparent / Focused Scroll News ---------- */
.card-scroll {
  background: rgba(0, 0, 0, 0.0); /* fully transparent */
  color: #fff9d8; /* bright readable text */
  border: 2px solid rgba(212,175,55,0.8); /* goldish border */
  border-radius: 12px;
  padding: 1.5rem 1.75rem;
  font-family: "Cormorant Garamond", Georgia, serif;
  position: relative;
  overflow: hidden;
  box-shadow: 0 0 30px rgba(0,0,0,0.5); /* subtle shadow for depth */
  backdrop-filter: blur(4px); /* optional: slightly blur background */
  transition: transform 0.3s ease, box-shadow 0.3s ease;
}

/* subtle gradient overlay to guide focus to center text */
.card-scroll::before {
  content: "";
  position: absolute;
  top: 0; left: 0; right: 0; bottom: 0;
  background: radial-gradient(circle, rgba(0,0,0,0.2) 0%, rgba(0,0,0,0.6) 100%);
  pointer-events: none;
}

/* hover effect */
.card-scroll:hover {
  transform: translateY(-3px);
  box-shadow: 0 0 50px rgba(212,175,55,0.7); /* glowing shadow on hover */
}

.card-scroll h2 { 
  color: var(--gold); 
  margin: 0 0 0.75rem 0; 
  font-family: "Cinzel", serif;
  text-shadow: 0 0 12px rgba(212,175,55,0.8); /* makes heading glow */
  position: relative;
  z-index: 1;
}

.card-scroll ul li { 
  padding-left: 0.25rem; 
  margin-bottom: 0.6rem; 
  font-weight: 600; 
  color: #fff9d8; 
  text-shadow: 0 0 6px rgba(0,0,0,0.5); /* subtle glow for readability */
  position: relative;
  z-index: 1;
}


.card-scroll ul li { padding-left: 0.25rem; margin-bottom: 0.6rem; font-weight: 600; }

/* ---------- Form ---------- */
.form-label { 
  color: rgba(224,216,195,0.95); 
  font-weight:700; 
  font-family: "Cinzel", serif; 
}
.form-control {
  background: rgba(12,12,12,0.7);
  border: 1px solid rgba(255,255,255,0.03);
  color: var(--cream);
  border-radius: 6px;
  padding: 0.6rem .8rem;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.02);
  font-family: "Cormorant Garamond", Georgia, serif;
}
.form-check-label { 
  color: rgba(224,216,195,0.9); 
  font-family: "Cormorant Garamond", serif; 
}

/* ---------- Footer ---------- */
footer {
  background: rgba(3,3,3,0.85);
  color: #bfb6a0;
  padding: 1rem 0;
  border-top: 1px solid rgba(255,255,255,0.02);
  text-align:center;
  font-size: 0.95rem;
  font-family: "Cormorant Garamond", Georgia, serif;
}

/* ---------- Ranking Panel ---------- */
.ranking-panel {
  background: linear-gradient(145deg, rgba(20,10,5,0.95), rgba(50,30,15,0.9));
  border: 2px solid var(--gold);
  border-radius: 20px;
  box-shadow: 0 0 25px rgba(212, 175, 55, 0.6);
  position: relative;
}

.ranking-panel::before {
  content: "";
  position: absolute;
  inset: 0;
  background: url('/img/parch.jpg') center/cover;
  opacity: 0.15;
  border-radius: 20px;
  z-index: 0;
}

.ranking-title {
  font-family: 'Cinzel', serif;
  color: var(--gold);
  text-shadow: 0 0 12px rgba(212,175,55,0.9), 0 0 24px rgba(255,215,0,0.7);
  position: relative;
  z-index: 1;
}

.ranking-sub {
  font-family: 'MedievalSharp', cursive;
  color: var(--cream);
  letter-spacing: 1.5px;
  position: relative;
  z-index: 1;
}

/* ---------- Ranking Table Header ---------- */
.table-gold th {
  color: var(--gold);
  font-family: 'Cinzel', serif;
  font-weight: 600;
  text-transform: none; /* keep it as # Player Level Money Prestige */
  font-size: 1.1rem;
  background: rgba(0, 0, 0, 0.7);
  border-bottom: 2px solid var(--gold);
}

/* ---------- Ranking Table Rows ---------- */
.table-dark td {
  font-family: 'Arial Narrow', Arial, sans-serif;
  font-size: 0.95rem;
  background-color: rgba(20, 20, 20, 0.85);
  color: var(--cream);
}

.table-dark tr:hover td {
  background-color: rgba(40, 20, 0, 0.9);
  color: var(--gold);
}

/* ---------- Highlight Top 3 Ranks ---------- */
.rank-1 td {
  background: linear-gradient(90deg, rgba(212,175,55,0.25), rgba(212,175,55,0.05));
  color: var(--gold);
  font-weight: bold;
  text-shadow: 0 0 6px rgba(212,175,55,0.8);
}

.rank-2 td {
  background: linear-gradient(90deg, rgba(192,192,192,0.25), rgba(192,192,192,0.05));
  color: #dcdcdc;
  font-weight: bold;
  text-shadow: 0 0 6px rgba(220,220,220,0.8);
}

.rank-3 td {
  background: linear-gradient(90deg, rgba(205,127,50,0.25), rgba(205,127,50,0.05));
  color: #cd7f32;
  font-weight: bold;
  text-shadow: 0 0 6px rgba(205,127,50,0.8);
}

