/* Shared by the generated satellite pages: the 60 champion pages and the two
   legal ones. index.html keeps its own inline CSS so that it stays a single
   file you can open by double-clicking — but 62 pages cannot each carry a copy
   of it, so everything they need lives here once.

   The palette is the same as the main page's, kept in sync by hand. If a colour
   changes there, change it here too. */
:root{
  --bg:        #0a1428;
  --bg-2:      rgba(16,32,60,.80);
  --bg-3:      rgba(22,41,74,.86);
  --line:      #1e3a63;
  --gold:      #c8aa6e;
  --gold-hell: #f0e6d2;
  --text:      #a9bcd4;
  --text-weak: #6b8199;
  --fighter:   #e05a47;
  --mage:      #4a9de0;
  --tank:      #6ec07a;
  --support:   #b57ae0;
  --marksman:  #e0b34a;
  --assassin:  #e0577f;
  --radius: 12px;
}

*{ box-sizing:border-box; margin:0; padding:0; }

body{
  background:var(--bg);
  color:var(--text);
  font-family:"Segoe UI", system-ui, -apple-system, sans-serif;
  line-height:1.55;
  min-height:100vh;
}
/* Same blurred Rift behind the page as on the main view, pinned to the
   viewport. The gradient underneath only shows if the file is missing. */
body::before{
  content:""; position:fixed; inset:0; pointer-events:none; z-index:-2;
  background:
    url("rift.jpg") center/cover no-repeat,
    linear-gradient(148deg, #0c1308 0%, #1b1e0d 46%, #12170b 100%);
}
body::after{
  content:""; position:fixed; inset:0; pointer-events:none; z-index:-1;
  background:
    radial-gradient(120% 90% at 50% 0%, rgba(10,20,40,.08) 0%, rgba(10,20,40,.40) 75%),
    linear-gradient(180deg, rgba(10,20,40,.05) 0%, rgba(10,20,40,.38) 100%);
}

.wrap{ max-width:840px; margin:0 auto; padding:26px 20px 0; }

/* ---- the way back ---- */
.back{
  display:inline-block; margin-bottom:22px;
  color:var(--text-weak); font-size:12px; text-decoration:none;
  border-bottom:1px solid transparent;
}
.back:hover{ color:var(--gold); border-bottom-color:var(--gold); }

/* ---- champion head ---- */
.champ-head{ display:flex; gap:18px; align-items:center; margin-bottom:20px; }
.champ-head img, .champ-head .fallback{
  width:104px; height:104px; border-radius:12px;
  border:1px solid var(--gold); flex:none; object-fit:cover;
}
.champ-head .fallback{
  display:flex; align-items:center; justify-content:center;
  font-size:30px; font-weight:700; color:#0a1428;
}
.champ-head h1{ color:var(--gold-hell); font-size:30px; line-height:1.15; }
.champ-head .subtitle{ color:var(--gold); font-size:15px; font-style:italic; margin-top:2px; }
.champ-head .roles{ color:var(--text-weak); font-size:12px; margin-top:7px; }

blockquote{
  border-left:2px solid var(--gold); padding-left:14px; margin-bottom:24px;
  color:var(--text); font-style:italic; font-size:14px;
}

h2{
  color:var(--gold-hell); font-size:17px; margin-bottom:12px;
  letter-spacing:.02em;
}

/* ---- the build ---- */
.items{
  display:grid; grid-template-columns:repeat(6, 1fr); gap:10px; margin-bottom:18px;
}
.item{
  background:var(--bg-2); border:1px solid var(--line); border-radius:9px;
  padding:9px 7px; text-align:center; min-width:0;
}
.item img, .item .tile{
  width:44px; height:44px; border-radius:6px; margin:0 auto 6px; display:block;
}
.item .tile{
  background:var(--bg-3); border:1px solid var(--line);
  display:flex; align-items:center; justify-content:center;
  font-size:14px; font-weight:700; color:var(--gold);
}
.item span{ display:block; font-size:10.5px; line-height:1.3; color:var(--text); }

.why{
  background:var(--bg-2); border:1px solid var(--line); border-radius:var(--radius);
  padding:16px 18px; font-size:14px; line-height:1.75; margin-bottom:24px;
}

/* ---- legal pages ---- */
.legal-page h1{ color:var(--gold-hell); font-size:24px; margin-bottom:18px; }
.legal-page h2{ margin:22px 0 6px; font-size:14px; }
.legal-page p{ font-size:13px; line-height:1.7; margin-bottom:8px; }
.legal-page code{ font-family:ui-monospace, SFMono-Regular, Menlo, monospace; color:var(--gold); }

/* ---- neighbours ---- */
.siblings{ display:flex; justify-content:space-between; gap:14px; margin-bottom:30px; font-size:12px; }
.siblings a{ color:var(--text-weak); text-decoration:none; }
.siblings a:hover{ color:var(--gold); }

footer{
  text-align:center; color:var(--text-weak); font-size:12px; margin-top:44px;
  border-top:1px solid var(--line); padding:20px 0 30px;
}
footer .legal{ max-width:760px; margin:0 auto; line-height:1.6; }
.footer-links{ margin-top:14px; display:flex; gap:18px; justify-content:center; }
.footer-links a{ color:var(--text-weak); text-decoration:none; border-bottom:1px solid transparent; }
.footer-links a:hover{ color:var(--gold); border-bottom-color:var(--gold); }

@media (max-width:640px){
  .items{ grid-template-columns:repeat(3, 1fr); }
  .champ-head{ flex-direction:column; align-items:flex-start; }
}
