:root{
  --bg:#07091a;--panel:#0d1030;--panel-2:#111440;
  --text:#eef0ff;--muted:#8891c0;--line:rgba(160,140,255,.13);
  --gold:#e8c56a;--gold-dim:#b8963a;--gold-glow:rgba(232,197,106,.18);
  --arcane:#9f84ff;--teal:#4cd9f0;--brand:#9f84ff;--brand-2:#4cd9f0;
  --good:#43d996;--warn:#f5c842;--danger:#f47499;
  --shadow:0 24px 60px rgba(0,0,0,.5);
  --radius:20px;--max:1200px;
  --font-display:Georgia,'Times New Roman',serif;--font-body:system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;
}
*{box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{margin:0;font-family:var(--font-body);color:var(--text);background-color:var(--bg);
  background-image:
    radial-gradient(ellipse 80% 50% at 50% -10%,rgba(120,80,220,.28),transparent),
    radial-gradient(ellipse 50% 40% at 100% 20%,rgba(76,217,240,.1),transparent),
    radial-gradient(ellipse 60% 60% at 0% 70%,rgba(100,60,200,.08),transparent);
  line-height:1.6;overflow-x:hidden;}
a{color:inherit;text-decoration:none;}
img,iframe{max-width:100%;}
.container{width:min(var(--max),calc(100% - 36px));margin:0 auto;}
.skip-link{position:absolute;left:-999px;top:12px;padding:8px 12px;background:#fff;color:#111827;border-radius:10px;z-index:100;}
.skip-link:focus{left:12px;}

/* Stars */
.stars{position:fixed;inset:0;pointer-events:none;z-index:0;}
.star{position:absolute;width:2px;height:2px;border-radius:50%;background:#fff;opacity:0;animation:twinkle var(--dur,4s) var(--delay,0s) ease-in-out infinite;}
@keyframes twinkle{0%,100%{opacity:0;transform:scale(.6);}50%{opacity:var(--op,.5);transform:scale(1);}}

/* Magic bg */
.magic-bg{position:fixed;inset:0;pointer-events:none;z-index:0;overflow:hidden;}
.magic-bg::before,.magic-bg::after{content:'';position:absolute;border-radius:50%;filter:blur(120px);animation:float-orb 15s ease-in-out infinite;}
.magic-bg::before{width:600px;height:600px;top:-200px;left:-120px;background:radial-gradient(circle,rgba(100,60,220,.2),transparent 70%);}
.magic-bg::after{width:500px;height:500px;bottom:10%;right:-150px;background:radial-gradient(circle,rgba(60,180,220,.12),transparent 70%);animation-delay:-7s;}
@keyframes float-orb{0%,100%{transform:translate(0,0) scale(1);}33%{transform:translate(30px,-40px) scale(1.06);}66%{transform:translate(-20px,20px) scale(.95);}}

/* HEADER */
header{position:sticky;top:0;z-index:50;backdrop-filter:blur(22px) saturate(160%);background:rgba(7,9,26,.84);border-bottom:1px solid var(--line);}
.topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:13px 0;}
.brand{display:flex;align-items:center;gap:10px;font-family:var(--font-display);font-weight:700;font-size:17px;letter-spacing:.02em;color:var(--gold);}
.brand img{width:34px;height:34px;border-radius:10px;}
.search-wrap{flex:1;max-width:340px;position:relative;}
.search-wrap input{width:100%;padding:9px 14px 9px 38px;border-radius:50px;border:1px solid rgba(160,140,255,.2);background:rgba(255,255,255,.055);color:#fff;font-family:var(--font-body);font-size:13.5px;outline:none;transition:border-color .2s,background .2s;}
.search-wrap input::placeholder{color:var(--muted);}
.search-wrap input:focus{border-color:rgba(159,132,255,.5);background:rgba(255,255,255,.08);}
.search-wrap svg{position:absolute;left:12px;top:50%;transform:translateY(-50%);color:var(--muted);pointer-events:none;}
.search-results{position:absolute;top:calc(100% + 6px);left:0;right:0;background:var(--panel);border:1px solid var(--line);border-radius:16px;overflow:hidden;display:none;box-shadow:var(--shadow);z-index:100;}
.search-results.visible{display:block;}
.search-result-item{display:flex;align-items:center;gap:10px;padding:11px 14px;font-size:13px;cursor:pointer;border-bottom:1px solid rgba(255,255,255,.06);transition:background .15s;color:var(--text);}
.search-result-item:last-child{border-bottom:0;}
.search-result-item:hover{background:rgba(159,132,255,.1);}
.search-result-item .sri-icon{font-size:18px;}
.search-result-item strong{display:block;color:#fff;}
.search-result-item span{color:var(--muted);font-size:12px;}
nav{display:flex;align-items:center;gap:4px;flex-wrap:wrap;justify-content:flex-end;}
nav a{color:var(--muted);font-size:13.5px;font-weight:600;padding:7px 11px;border-radius:999px;transition:color .18s,background .18s;}
nav a:hover,nav a:focus{color:#fff;background:rgba(255,255,255,.08);outline:none;}
.mobile-quick{display:none;position:sticky;bottom:0;z-index:49;background:rgba(7,9,26,.94);border-top:1px solid var(--line);backdrop-filter:blur(14px);}
.mobile-quick .row{display:grid;grid-template-columns:repeat(4,1fr);gap:6px;padding:8px;}
.mobile-quick a{text-align:center;font-size:12px;font-weight:800;padding:9px 5px;border-radius:12px;background:rgba(255,255,255,.07);}

/* HERO */
.hero{position:relative;padding:88px 0 56px;z-index:1;}
.hero::before{content:'';position:absolute;inset:0;background:radial-gradient(ellipse 70% 80% at 50% 0%,rgba(100,60,220,.16),transparent 60%);pointer-events:none;}
.hero-grid{display:grid;grid-template-columns:1.1fr .9fr;gap:32px;align-items:center;}
.eyebrow{display:inline-flex;gap:8px;align-items:center;padding:6px 14px;border:1px solid rgba(232,197,106,.25);border-radius:999px;color:var(--gold);background:rgba(232,197,106,.08);font-size:12.5px;font-weight:700;font-family:var(--font-display);letter-spacing:.06em;text-transform:uppercase;}
.eyebrow .dot{width:7px;height:7px;border-radius:50%;background:var(--good);box-shadow:0 0 0 5px rgba(67,217,150,.15);animation:pulse-dot 2s ease-in-out infinite;}
@keyframes pulse-dot{0%,100%{box-shadow:0 0 0 5px rgba(67,217,150,.15);}50%{box-shadow:0 0 0 9px rgba(67,217,150,.06);}}
h1,h2,h3{line-height:1.1;margin:0 0 14px;}
h1{font-family:var(--font-display);font-size:clamp(36px,5.5vw,70px);font-weight:900;letter-spacing:.01em;margin-top:16px;background:linear-gradient(140deg,#fff 30%,var(--gold) 100%);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;}
h2{font-family:var(--font-display);font-size:clamp(22px,3.2vw,36px);font-weight:700;letter-spacing:.02em;color:#fff;}
h3{font-size:17px;font-weight:800;color:#fff;}
p{margin:0 0 14px;color:var(--muted);}
.lead{font-size:17.5px;color:#c8d2f0;max-width:620px;line-height:1.72;}
.hero-actions,.actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:24px;}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px;padding:10px 18px;border-radius:14px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.07);color:#fff;font-weight:800;font-size:14px;cursor:pointer;transition:transform .18s,background .18s,box-shadow .18s,border-color .18s;}
.btn:hover,.btn:focus{transform:translateY(-2px);background:rgba(255,255,255,.12);outline:none;}
.btn.primary{background:linear-gradient(135deg,#8b5cf6,var(--teal));color:#fff;border:0;box-shadow:0 8px 28px rgba(139,92,246,.28);}
.btn.primary:hover{box-shadow:0 12px 36px rgba(139,92,246,.4);}
.btn.gold{background:linear-gradient(135deg,var(--gold-dim),var(--gold));color:#1a0f00;border:0;font-weight:900;box-shadow:0 8px 24px var(--gold-glow);}
.btn.gold:hover{box-shadow:0 12px 32px rgba(232,197,106,.38);}
.btn.good{background:rgba(67,217,150,.12);border-color:rgba(67,217,150,.35);color:#a7f3d0;}
.btn.warn{background:rgba(245,200,66,.12);border-color:rgba(245,200,66,.32);color:#fde68a;}
.pill-row{display:flex;gap:8px;flex-wrap:wrap;margin-top:14px;}
.pill{color:#b0bce8;background:rgba(159,132,255,.1);border:1px solid rgba(159,132,255,.2);border-radius:999px;padding:5px 11px;font-size:12.5px;font-weight:700;transition:background .15s,border-color .15s;}
.pill:hover{background:rgba(159,132,255,.18);border-color:rgba(159,132,255,.38);}

/* HERO CARD */
.hero-card{background:linear-gradient(160deg,rgba(255,255,255,.07),rgba(255,255,255,.025));border:1px solid rgba(232,197,106,.16);border-radius:26px;box-shadow:0 24px 60px rgba(0,0,0,.5),inset 0 1px 0 rgba(255,255,255,.08);padding:24px;display:grid;gap:14px;position:relative;overflow:hidden;}
.hero-card::before{content:'';position:absolute;top:-80px;right:-80px;width:240px;height:240px;border-radius:50%;background:radial-gradient(circle,rgba(232,197,106,.1),transparent 70%);pointer-events:none;}
.status{display:grid;grid-template-columns:repeat(2,1fr);gap:10px;}
.stat{padding:14px;border-radius:16px;background:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.07);}
.stat b{display:block;font-size:26px;font-family:var(--font-display);color:var(--gold);letter-spacing:-.02em;}
.stat span{color:var(--muted);font-size:12.5px;}
.quick-list{display:grid;gap:9px;}
.quick-list a{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:12px 14px;border-radius:14px;background:rgba(0,0,0,.18);border:1px solid rgba(255,255,255,.07);color:#c8d2f0;transition:border-color .2s,background .2s;}
.quick-list a:hover{border-color:rgba(232,197,106,.4);background:rgba(232,197,106,.07);}
.quick-list a strong{color:var(--gold);font-size:13px;white-space:nowrap;}
.quick-list a span{font-size:13px;}

/* SECTIONS */
.section{padding:44px 0;position:relative;z-index:1;}
.section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:22px;}
.section-title p{max-width:680px;}
.section-divider{height:1px;background:linear-gradient(90deg,transparent,var(--line) 30%,var(--line) 70%,transparent);margin:0 0 44px;}

/* CODES SPOTLIGHT */
.codes-spotlight{background:linear-gradient(135deg,rgba(100,60,220,.1),rgba(60,180,220,.06));border:1px solid rgba(159,132,255,.18);border-radius:26px;padding:28px;position:relative;overflow:hidden;}
.codes-spotlight::before{content:'✦';position:absolute;top:-18px;right:22px;font-size:110px;color:rgba(232,197,106,.05);pointer-events:none;line-height:1;}
.code-badges{display:flex;gap:10px;flex-wrap:wrap;margin-bottom:18px;}
.code-badge{display:flex;align-items:center;gap:10px;padding:13px 16px;border-radius:16px;background:rgba(0,0,0,.22);border:1px solid rgba(232,197,106,.2);flex:1;min-width:160px;}
.code-badge code{font-family:'Courier New',monospace;font-weight:900;font-size:17px;color:var(--gold);letter-spacing:.06em;}
.code-badge .cb-reward{font-size:12.5px;color:var(--muted);flex:1;}
.copy{border:0;border-radius:10px;padding:7px 12px;background:rgba(232,197,106,.14);color:var(--gold);font-weight:900;font-size:12px;cursor:pointer;transition:background .15s,transform .1s;white-space:nowrap;}
.copy:hover{background:rgba(232,197,106,.25);}
.copy:active{transform:scale(.96);}
.redeem-path{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:14px;font-size:13px;font-weight:700;color:#c8d2f0;}
.rp-step{padding:5px 12px;border-radius:999px;background:rgba(159,132,255,.12);border:1px solid rgba(159,132,255,.22);}
.rp-arrow{color:var(--muted);font-size:12px;}

/* TABLE */
.table-wrap{overflow-x:auto;border-radius:18px;border:1px solid var(--line);background:rgba(0,0,0,.2);}
table{width:100%;border-collapse:collapse;min-width:600px;}
th,td{text-align:left;padding:14px 16px;border-bottom:1px solid rgba(255,255,255,.07);vertical-align:middle;}
th{color:#fff;background:rgba(255,255,255,.05);font-size:11.5px;text-transform:uppercase;letter-spacing:.06em;font-family:var(--font-display);}
td{color:#d0d8f5;}
tr:last-child td{border-bottom:0;}
tr:hover td{background:rgba(255,255,255,.02);}
code{color:var(--gold);background:rgba(232,197,106,.1);padding:4px 8px;border-radius:8px;font-weight:900;letter-spacing:.04em;font-family:'Courier New',monospace;}

/* GRID & CARDS */
.grid{display:grid;gap:16px;}
.grid.cols-2{grid-template-columns:repeat(2,minmax(0,1fr));}
.grid.cols-3{grid-template-columns:repeat(3,minmax(0,1fr));}
.grid.cols-4{grid-template-columns:repeat(4,minmax(0,1fr));}
.card{padding:20px;border-radius:var(--radius);background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);transition:border-color .22s,transform .22s,background .22s;}
.card:hover{border-color:rgba(159,132,255,.32);transform:translateY(-2px);background:rgba(255,255,255,.06);}
a.card:hover{border-color:rgba(232,197,106,.28);}
.card p:last-child{margin-bottom:0;}
.tag{display:inline-flex;padding:4px 10px;border-radius:999px;background:rgba(159,132,255,.15);color:#d4caff;font-weight:800;font-size:11px;margin-bottom:10px;letter-spacing:.04em;text-transform:uppercase;}
.tag.green{background:rgba(67,217,150,.12);color:#86efcc;}
.tag.cyan{background:rgba(76,217,240,.12);color:#a5f3fc;}
.tag.yellow{background:rgba(245,200,66,.12);color:#fde68a;}
.tag.red{background:rgba(244,116,153,.12);color:#fda4af;}

/* MECHANICS */
.mech-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px;}
.mech-card{padding:20px;border-radius:20px;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);position:relative;overflow:hidden;transition:border-color .22s,transform .22s;}
.mech-card:hover{border-color:rgba(232,197,106,.28);transform:translateY(-3px);}
.mech-icon{font-size:28px;margin-bottom:10px;display:block;}
.mech-label{font-size:10px;font-weight:900;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin-bottom:4px;font-family:var(--font-display);}
.mech-val{font-weight:900;color:var(--gold);font-size:15px;line-height:1.2;font-family:var(--font-display);}
.mech-sub{font-size:13px;color:var(--muted);margin-top:8px;line-height:1.55;}

/* CONTROLS */
.key-row{display:flex;gap:8px;flex-wrap:wrap;margin:14px 0;}
.key{display:inline-flex;align-items:center;gap:7px;padding:8px 13px;border-radius:12px;background:rgba(255,255,255,.06);border:1px solid rgba(255,255,255,.12);font-size:13px;font-weight:700;transition:border-color .15s,background .15s;}
.key:hover{border-color:rgba(232,197,106,.35);background:rgba(232,197,106,.07);}
kbd{display:inline-block;background:rgba(255,255,255,.12);border-radius:6px;padding:2px 7px;font-family:'Courier New',monospace;font-size:12px;font-weight:900;}

/* RACE MINI */
.race-mini{display:grid;grid-template-columns:repeat(5,1fr);gap:10px;}
.race-pill{padding:12px 10px;border-radius:16px;text-align:center;background:rgba(255,255,255,.04);border:1px solid rgba(255,255,255,.09);transition:transform .18s,border-color .18s;position:relative;}
.race-pill:hover{transform:translateY(-3px);}
.race-pill.s-tier{border-color:rgba(232,197,106,.38);background:rgba(232,197,106,.07);}
.race-pill.s-tier::before{content:'★';position:absolute;top:-6px;right:8px;color:var(--gold);font-size:13px;text-shadow:0 0 8px var(--gold);}
.rname{font-weight:900;color:#fff;font-size:13px;display:block;margin-bottom:4px;}
.rtier{font-size:10.5px;font-weight:800;font-family:var(--font-display);}

/* STEPS */
.steps{counter-reset:step;display:grid;gap:12px;}
.step{position:relative;padding:18px 18px 18px 62px;border:1px solid rgba(255,255,255,.09);border-radius:20px;background:rgba(255,255,255,.04);transition:border-color .22s,background .22s;}
.step:hover{border-color:rgba(159,132,255,.28);background:rgba(159,132,255,.04);}
.step::before{counter-increment:step;content:counter(step);position:absolute;left:18px;top:18px;width:30px;height:30px;display:grid;place-items:center;border-radius:50%;background:linear-gradient(135deg,var(--arcane),var(--teal));color:#fff;font-weight:900;font-family:var(--font-display);font-size:14px;}
.step strong{color:#fff;font-size:15px;display:block;margin-bottom:6px;}
.step p{margin:0;font-size:13.5px;}

/* VIDEO */
.video{aspect-ratio:16/9;width:100%;border:0;border-radius:18px;background:#020617;}
.mini-card{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 14px;border-radius:14px;background:rgba(0,0,0,.14);border:1px solid rgba(255,255,255,.08);color:#c0ccf0;transition:border-color .2s,background .2s;}
.mini-card:hover{border-color:rgba(159,132,255,.28);background:rgba(159,132,255,.06);}
.mini-card strong{color:var(--arcane);font-size:13px;white-space:nowrap;}
.mini-card span{font-size:13px;}
.notice{border-left:3px solid var(--warn);background:rgba(245,200,66,.08);padding:14px 16px;border-radius:14px;}
.notice strong{color:var(--warn);}

/* FAQ */
details{border:1px solid rgba(255,255,255,.09);border-radius:16px;background:rgba(255,255,255,.04);padding:16px 18px;transition:border-color .2s;}
details[open]{border-color:rgba(159,132,255,.22);}
details+details{margin-top:10px;}
summary{cursor:pointer;font-weight:800;color:#fff;font-size:15px;list-style:none;display:flex;align-items:center;gap:10px;}
summary::-webkit-details-marker{display:none;}
summary::before{content:'✦';color:var(--gold);font-size:11px;flex-shrink:0;transition:transform .2s;}
details[open] summary::before{transform:rotate(45deg);}
details p{margin-top:12px;}

/* FOOTER */
.footer{margin-top:40px;padding:40px 0 100px;border-top:1px solid var(--line);background:rgba(0,0,0,.16);position:relative;z-index:1;}
.footer-grid{display:grid;grid-template-columns:1.3fr repeat(3,1fr);gap:28px;}
.footer a{display:block;color:var(--muted);margin:8px 0;font-size:14px;transition:color .15s;}
.footer a:hover{color:var(--gold);}
.footer strong{color:var(--text);font-family:var(--font-display);font-size:12px;text-transform:uppercase;letter-spacing:.06em;}
.small{font-size:13px;color:var(--muted);}
.footer .brand{color:var(--gold);}

/* SCROLL REVEAL */
.reveal{opacity:0;transform:translateY(20px);transition:opacity .55s cubic-bezier(.4,0,.2,1),transform .55s cubic-bezier(.4,0,.2,1);}
.reveal.visible{opacity:1;transform:none;}
.reveal-delay-1{transition-delay:.08s;}
.reveal-delay-2{transition-delay:.16s;}
.reveal-delay-3{transition-delay:.24s;}
.reveal-delay-4{transition-delay:.32s;}

/* RESPONSIVE */
@media(max-width:1000px){.mech-grid{grid-template-columns:repeat(2,1fr);}.race-mini{grid-template-columns:repeat(3,1fr);}}
@media(max-width:900px){.search-wrap{display:none;}nav a:nth-child(n+5){display:none;}.hero-grid,.grid.cols-2,.grid.cols-3,.grid.cols-4,.footer-grid{grid-template-columns:1fr;}.section-title{display:block;}.hero{padding-top:50px;}.mobile-quick{display:block;}.status{grid-template-columns:1fr 1fr;}.codes-spotlight{padding:20px;}}
@media(max-width:640px){.mech-grid{grid-template-columns:1fr;}.race-mini{grid-template-columns:repeat(2,1fr);}.code-badge{flex:1 1 100%;} h1{font-size:36px;}.lead{font-size:16px;}.hero-actions .btn{flex:1 1 45%;}.container{width:calc(100% - 24px);}}

/* Shared redesign compatibility for non-home pages */
nav a.active{color:#fff;background:rgba(232,197,106,.12);border:1px solid rgba(232,197,106,.25);}
.panel{background:linear-gradient(160deg,rgba(255,255,255,.065),rgba(255,255,255,.03));border:1px solid rgba(232,197,106,.14);border-radius:var(--radius);box-shadow:var(--shadow);}
.panel:not(.hero-card){padding:20px;}
ul,ol{color:#d0d8f5;}
li{margin:7px 0;}
strong{color:#fff;}
.hero .container:not(.hero-grid){position:relative;z-index:1;}
.footer h3{font-family:var(--font-display);font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--text);margin:0 0 10px;}
.footer .brand{display:inline-flex;}

/* Form/finder widgets */
.search-box,.finder-toolbar input,.finder-toolbar select,input[type="search"],input[type="text"],select,textarea{
  width:100%;padding:11px 14px;border-radius:14px;border:1px solid rgba(160,140,255,.2);background:rgba(255,255,255,.055);color:var(--text);font-family:var(--font-body);outline:none;
}
.search-box:focus,.finder-toolbar input:focus,input[type="search"]:focus,input[type="text"]:focus,textarea:focus{border-color:rgba(232,197,106,.45);background:rgba(255,255,255,.08);}
.finder-toolbar{display:flex;gap:10px;flex-wrap:wrap;align-items:center;margin:16px 0;}
.finder-toolbar .search-box,.finder-toolbar input{flex:1 1 260px;}
.filter-btn{border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.06);color:#d0d8f5;border-radius:999px;padding:9px 13px;font-weight:900;cursor:pointer;transition:background .18s,border-color .18s,transform .18s;}
.filter-btn:hover,.filter-btn.active{background:rgba(232,197,106,.13);border-color:rgba(232,197,106,.38);color:var(--gold);transform:translateY(-1px);}

/* Compact utility layouts used across guide pages */
.callout,.danger-note{border-left:3px solid var(--gold);background:rgba(232,197,106,.08);padding:15px 16px;border-radius:14px;margin:14px 0;}
.callout.red,.danger-note,.danger{border-left-color:var(--danger);background:rgba(244,116,153,.08);}
.callout.green{border-left-color:var(--good);background:rgba(67,217,150,.08);}
.source-list,.checklist,.loot-list,.playlist,.contact-box{display:grid;gap:10px;margin-top:12px;}
.source-list a,.contact-link,.playlist-item{display:flex;justify-content:space-between;gap:12px;align-items:center;padding:13px 14px;border-radius:14px;background:rgba(0,0,0,.16);border:1px solid rgba(255,255,255,.08);transition:border-color .18s,background .18s;}
.source-list a:hover,.contact-link:hover,.playlist-item:hover{border-color:rgba(232,197,106,.35);background:rgba(232,197,106,.07);}
.contact-link span,.video-meta,.time-chip{font-size:12px;color:var(--muted);}
.time-chip{display:inline-flex;padding:4px 9px;border-radius:999px;background:rgba(159,132,255,.13);font-weight:800;}
.topic{color:var(--gold);font-weight:900;}

/* Progress, prices, ranks */
.meter,.mini-meter{height:9px;border-radius:999px;background:rgba(255,255,255,.08);overflow:hidden;border:1px solid rgba(255,255,255,.08);}
.meter span,.mini-meter span{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,var(--arcane),var(--teal));}
.price,.rank,.race-rarity{display:inline-flex;align-items:center;gap:6px;padding:5px 10px;border-radius:999px;background:rgba(232,197,106,.1);color:var(--gold);font-size:12px;font-weight:900;}
.rank-note{font-size:12.5px;color:var(--muted);}
.priority{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:900;text-transform:uppercase;background:rgba(159,132,255,.14);color:#d4caff;}
.priority.danger{background:rgba(244,116,153,.13);color:#fda4af;}

/* Controls page */
.control-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;}
.control-icon{font-size:26px;margin-bottom:8px;display:block;}
.kbd{display:inline-block;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.12);border-radius:7px;padding:2px 8px;font-family:'Courier New',monospace;font-size:12px;font-weight:900;color:#fff;}
.path{display:flex;align-items:stretch;gap:10px;flex-wrap:wrap;margin:14px 0;}
.path-card{flex:1 1 180px;padding:14px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);}
.arrow{align-self:center;color:var(--gold);font-weight:900;}
.combo{display:inline-flex;gap:6px;align-items:center;flex-wrap:wrap;}
.minute{font-family:var(--font-display);font-size:28px;color:var(--gold);font-weight:900;}

/* Videos */
.video-feature,.video-card{border-radius:22px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.09);padding:18px;}
.video-feature{display:grid;gap:14px;}
.video-card:hover{border-color:rgba(232,197,106,.3);}

/* Map page */
.map-board{position:relative;min-height:420px;border-radius:28px;border:1px solid rgba(232,197,106,.18);background:radial-gradient(circle at 28% 26%,rgba(67,217,150,.12),transparent 18%),radial-gradient(circle at 70% 60%,rgba(244,116,153,.12),transparent 20%),linear-gradient(160deg,rgba(255,255,255,.06),rgba(255,255,255,.025));box-shadow:var(--shadow);overflow:hidden;margin-top:18px;}
.map-river{position:absolute;left:-5%;right:-5%;top:48%;height:52px;transform:rotate(-7deg);background:linear-gradient(90deg,transparent,rgba(76,217,240,.22),transparent);filter:blur(.2px);}
.map-zone{position:absolute;width:170px;min-height:80px;padding:13px;border-radius:18px;border:1px solid rgba(255,255,255,.12);background:rgba(7,9,26,.74);backdrop-filter:blur(10px);}
.zone-spawn{left:8%;top:12%;}.zone-forest{left:36%;top:18%;}.zone-dwarf{left:62%;top:34%;}.zone-mutant{left:18%;bottom:15%;}.zone-boss{right:7%;bottom:12%;}.zone-shop{left:45%;bottom:8%;}
.marker{display:inline-grid;place-items:center;width:26px;height:26px;border-radius:50%;background:linear-gradient(135deg,var(--gold-dim),var(--gold));color:#1a0f00;font-weight:900;margin-right:6px;}
.legend{display:flex;gap:8px;flex-wrap:wrap;margin-top:10px;color:var(--muted);font-size:12px;}
.route{border-left:2px solid rgba(232,197,106,.4);padding-left:14px;margin:12px 0;}

/* Farming / monsters / bosses */
.route-track{display:grid;gap:12px;counter-reset:route;}
.route-card{position:relative;padding:16px 16px 16px 58px;border-radius:18px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);}
.route-card:before{counter-increment:route;content:counter(route);position:absolute;left:16px;top:16px;width:28px;height:28px;border-radius:50%;display:grid;place-items:center;background:linear-gradient(135deg,var(--arcane),var(--teal));color:#fff;font-weight:900;font-family:var(--font-display);}
.route-level,.loot,.drop{display:inline-flex;padding:4px 9px;border-radius:999px;font-size:11px;font-weight:900;background:rgba(76,217,240,.12);color:#a5f3fc;}
.drop{background:rgba(232,197,106,.1);color:var(--gold);}
.loot{background:rgba(67,217,150,.1);color:#86efcc;}

/* Race / tier helper pages */
.tier-badge,.tier-s,.tier-a,.tier-b,.tier-c,.tier-d{display:inline-flex;align-items:center;justify-content:center;min-width:36px;padding:4px 9px;border-radius:999px;font-weight:900;font-size:12px;}
.tier-s{background:rgba(232,197,106,.15);color:var(--gold);}.tier-a{background:rgba(67,217,150,.14);color:#86efcc;}.tier-b{background:rgba(76,217,240,.13);color:#a5f3fc;}.tier-c{background:rgba(159,132,255,.14);color:#d4caff;}.tier-d{background:rgba(244,116,153,.13);color:#fda4af;}
.race-list{display:grid;gap:10px;}
.race-row{display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:center;padding:14px;border-radius:16px;border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);}
.rarity-common{color:#d1d5db}.rarity-uncommon{color:#86efcc}.rarity-rare{color:#a5f3fc}.rarity-epic{color:#d4caff}.rarity-legendary{color:var(--gold)}
.verdict-keep,.verdict-maybe,.verdict-reroll{padding:14px;border-radius:16px;border:1px solid rgba(255,255,255,.09);}
.verdict-keep{background:rgba(67,217,150,.08);}.verdict-maybe{background:rgba(245,200,66,.08);}.verdict-reroll{background:rgba(244,116,153,.08);}

/* Legal pages */
.toc{position:sticky;top:86px;align-self:start;display:grid;gap:8px;}
.toc a{display:block;padding:10px 12px;border-radius:12px;background:rgba(255,255,255,.04);color:#c8d2f0;}
.toc a:hover{background:rgba(232,197,106,.08);color:var(--gold);}
.legal h2{margin-top:18px;font-size:24px;}
.legal h2:first-child{margin-top:0;}
.legal h3{margin-top:16px;}
.legal a{color:var(--gold);font-weight:800;}

@media(max-width:900px){.control-grid{grid-template-columns:1fr}.map-board{min-height:auto;padding:16px}.map-zone{position:relative;left:auto!important;right:auto!important;top:auto!important;bottom:auto!important;width:auto;margin:10px}.map-river{display:none}.race-row{grid-template-columns:1fr}.toc{position:relative;top:auto}.arrow{display:none}}
