/* Encoro IT Wiki — Shared Styles */
:root {
  --bg:#080b0e; --bg2:#0d1117; --bg3:#131920; --border:#1a2630;
  --text:#b8ccd4; --head:#e4f0f6; --dim:#3a5060;
  --green:#00e676; --cyan:#00bcd4; --yellow:#ffd740;
  --magenta:#e040fb; --red:#ff5252; --orange:#ff6b35;
  --purple:#9c27b0; --gold:#ffc107; --ice:#80deea;
  --mono:'Share Tech Mono',monospace;
  --sans:'Barlow',sans-serif;
  --cond:'Barlow Condensed',sans-serif;
}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:var(--sans);font-weight:300;line-height:1.7;min-height:100vh}
body::before{content:'';position:fixed;inset:0;pointer-events:none;z-index:9999;background:repeating-linear-gradient(0deg,transparent,transparent 2px,rgba(0,0,0,.06) 2px,rgba(0,0,0,.06) 4px)}
header{background:linear-gradient(135deg,#0a1a12 0%,#080b0e 50%,#0e0a18 100%);border-bottom:2px solid var(--green);padding:3rem 2rem 2.5rem;position:relative;overflow:hidden}
header::after{content:'';position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 15% 60%,rgba(0,230,118,.07) 0%,transparent 55%),radial-gradient(ellipse at 85% 20%,rgba(156,39,176,.05) 0%,transparent 50%)}
header.page-header{padding:1.8rem 2rem 1.5rem}
.header-inner{max-width:1120px;margin:0 auto;position:relative}
.logo-line{font-family:var(--mono);font-size:.72rem;color:var(--green);letter-spacing:.3em;text-transform:uppercase;opacity:.7;margin-bottom:.5rem}
h1{font-family:var(--cond);font-weight:900;font-size:clamp(2.8rem,6vw,5rem);color:var(--head);letter-spacing:.04em;line-height:.95;text-transform:uppercase;text-shadow:0 0 60px rgba(0,230,118,.12),0 2px 0 #000}
h1 span{color:var(--green)}
h1.page-title{font-size:clamp(1.6rem,4vw,2.6rem)}
.tagline{margin-top:.9rem;font-family:var(--mono);font-size:.88rem;color:var(--dim)}
.layout{display:flex;max-width:1120px;margin:0 auto;gap:2rem;padding:2rem}
aside{width:210px;flex-shrink:0;position:sticky;top:4.5rem;height:fit-content}
.toc-box{background:var(--bg2);border:1px solid var(--border);border-left:3px solid var(--cyan);padding:1.2rem}
.toc-title{font-family:var(--mono);font-size:.62rem;letter-spacing:.2em;text-transform:uppercase;color:var(--cyan);margin-bottom:1rem}
.toc-list{list-style:none}
.toc-list li{margin-bottom:.25rem}
.toc-list a{color:var(--dim);text-decoration:none;font-size:.8rem;font-weight:400;transition:color .12s;display:flex;align-items:center;gap:.4rem}
.toc-list a::before{content:'\203A';color:var(--border);transition:color .12s}
.toc-list a:hover,.toc-list a:hover::before{color:var(--cyan)}
.toc-sub{padding-left:1rem;margin-top:.15rem;list-style:none}
.toc-sub a{font-size:.72rem}
main{flex:1;min-width:0}
section{margin-bottom:3.5rem;--accent:var(--cyan);--accent-glow:rgba(0,188,212,.08)}
.bw{--accent:var(--yellow);--accent-glow:rgba(255,215,64,.06)}
.bs{--accent:var(--green);--accent-glow:rgba(0,230,118,.06)}
.bt{--accent:var(--purple);--accent-glow:rgba(156,39,176,.08)}
.bc{--accent:var(--red);--accent-glow:rgba(255,82,82,.06)}
.bg2c{--accent:var(--gold);--accent-glow:rgba(255,193,7,.08)}
.bo{--accent:var(--orange);--accent-glow:rgba(255,107,53,.06)}
.bm{--accent:var(--magenta);--accent-glow:rgba(224,64,251,.06)}
h2{font-family:var(--cond);font-size:1.65rem;font-weight:700;color:var(--head);text-transform:uppercase;letter-spacing:.06em;border-left:4px solid var(--accent);padding:.5rem 0 .5rem .9rem;background:linear-gradient(90deg,var(--accent-glow) 0%,transparent 60%);margin-bottom:1.5rem;display:flex;align-items:center;gap:.6rem}
h2 .sec-num{font-family:var(--mono);font-size:.7rem;color:var(--accent);background:rgba(0,0,0,.3);padding:.15rem .4rem;letter-spacing:.1em}
h3{font-family:var(--cond);font-size:1.1rem;font-weight:600;color:var(--accent);margin:1.5rem 0 .6rem;letter-spacing:.04em;text-transform:uppercase}
p{margin-bottom:.8rem;font-size:.93rem}
.weapon-entry{display:flex;gap:1.5rem;margin-bottom:2.5rem;border:1px solid var(--border);border-left:3px solid var(--accent);background:linear-gradient(135deg,var(--bg2) 0%,var(--bg) 100%);padding:1.2rem}
.weapon-entry.flip{flex-direction:row-reverse}
.weapon-gif-wrap{flex-shrink:0;width:200px;display:flex;flex-direction:column;align-items:center;gap:.5rem}
.weapon-gif-wrap img{width:200px;height:auto;display:block;border:1px solid var(--border);image-rendering:pixelated;background:#000}
.weapon-gif-label{font-family:var(--mono);font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);text-align:center}
.weapon-info{flex:1;min-width:0}
.weapon-name{font-family:var(--cond);font-size:1.2rem;font-weight:700;color:var(--accent);letter-spacing:.04em;margin-bottom:.6rem;display:flex;align-items:center;gap:.6rem}
.weapon-tag{font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;padding:.1rem .4rem;background:rgba(0,0,0,.4);border:1px solid var(--border);color:var(--dim);text-transform:uppercase}
.weapon-desc{font-size:.88rem;margin-bottom:.8rem;color:var(--text)}
.tier-table{width:100%;border-collapse:collapse;font-size:.8rem;margin-bottom:.6rem}
.tier-table th{font-family:var(--mono);font-size:.58rem;letter-spacing:.12em;text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--border);padding:.3rem .5rem;text-align:left}
.tier-table td{padding:.3rem .5rem;border-bottom:1px solid rgba(26,38,48,.5)}
.tier-table tr:last-child td{border-bottom:none}
.t1{color:#5a7a8a}.t2{color:#7ecfe0}.t3{color:var(--cyan)}.t4{color:#a0d870}.t5{color:var(--green)}.t6{color:var(--yellow)}.t7{color:var(--gold);text-shadow:0 0 8px rgba(255,193,7,.3)}.t8{color:var(--magenta);text-shadow:0 0 10px rgba(224,64,251,.3)}
.stat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:.7rem;margin:1rem 0}
.stat-card{background:var(--bg2);border:1px solid var(--border);border-top:2px solid var(--accent);padding:.8rem 1rem}
.stat-label{font-family:var(--mono);font-size:.62rem;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);margin-bottom:.2rem}
.stat-val{font-family:var(--cond);font-size:1.3rem;font-weight:700;color:var(--accent)}
.kb-table{width:100%;border-collapse:collapse;margin:1rem 0;font-size:.87rem}
.kb-table th{text-align:left;font-family:var(--mono);font-size:.6rem;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--border);padding:.4rem .8rem}
.kb-table td{padding:.45rem .8rem;border-bottom:1px solid rgba(26,38,48,.5)}
.kb-table tr:hover td{background:rgba(255,255,255,.015)}
kbd{display:inline-block;background:var(--bg3);border:1px solid var(--border);border-bottom-width:2px;padding:.1rem .45rem;font-family:var(--mono);font-size:.78rem;color:var(--yellow);border-radius:3px;white-space:nowrap}
.sym-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:.45rem;margin:.8rem 0}
.sym-row{display:flex;align-items:center;gap:.8rem;background:var(--bg2);border:1px solid var(--border);padding:.45rem .7rem;font-size:.85rem}
.sym{font-family:var(--mono);font-size:1.05rem;font-weight:bold;width:1.4rem;text-align:center;flex-shrink:0}
.sg{color:var(--green)}.sy{color:var(--yellow)}.sc{color:var(--cyan)}.sr{color:var(--red)}.sm{color:var(--magenta)}.sw{color:#e4f0f6}.sd{color:var(--dim)}.so{color:var(--orange)}
.gear-table{width:100%;border-collapse:collapse;margin:.5rem 0 1.5rem;font-size:.84rem}
.gear-table th{text-align:left;font-family:var(--mono);font-size:.58rem;letter-spacing:.15em;text-transform:uppercase;color:var(--dim);border-bottom:1px solid var(--border);padding:.3rem .6rem}
.gear-table td{padding:.32rem .6rem;border-bottom:1px solid rgba(26,38,48,.4)}
.gear-table tr:hover td{background:rgba(255,255,255,.015)}
.callout{border-left:3px solid var(--accent);background:var(--accent-glow);padding:.8rem 1rem;margin:1rem 0;font-size:.88rem}
.callout-head{font-weight:700;margin-bottom:.3rem;color:var(--accent);font-family:var(--cond);text-transform:uppercase;letter-spacing:.05em}
.callout.green{--accent:var(--green);border-color:var(--green);background:rgba(0,230,118,.04)}
.callout.red{--accent:var(--red);border-color:var(--red);background:rgba(255,82,82,.04)}
.callout.cyan{--accent:var(--cyan);border-color:var(--cyan);background:rgba(0,188,212,.04)}
.callout.yellow{--accent:var(--yellow);border-color:var(--yellow);background:rgba(255,215,64,.04)}
.callout.orange{--accent:var(--orange);border-color:var(--orange);background:rgba(255,107,53,.04)}
.callout.purple{--accent:var(--purple);border-color:var(--purple);background:rgba(156,39,176,.05)}
code{font-family:var(--mono);font-size:.85em;color:var(--cyan);background:rgba(0,188,212,.08);padding:.1em .35em}
.mono-block{background:var(--bg3);border:1px solid var(--border);border-left:3px solid var(--accent);padding:.8rem 1rem;font-family:var(--mono);font-size:.88rem;margin:.6rem 0 1rem;white-space:pre;overflow-x:auto}
.screenshot{margin:1.5rem 0;border:1px dashed var(--border);background:var(--bg2);padding:1.5rem;text-align:center}
.screenshot-caption{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;color:var(--dim);margin-top:.5rem}
.screenshot img{width:100%;height:auto;display:block}
.title-list{columns:2;column-gap:1.5rem;list-style:none;margin:1rem 0;font-size:.82rem}
.title-list li{display:flex;gap:.6rem;padding:.22rem 0;break-inside:avoid;align-items:baseline}
.title-lvl{font-family:var(--mono);color:var(--accent);font-size:.7rem;width:2.5rem;flex-shrink:0}
.cat-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(270px,1fr));gap:.8rem;margin:1rem 0}
.cat-card{background:var(--bg2);border:1px solid var(--border);border-top:2px solid var(--accent);padding:.8rem 1rem}
.cat-name{font-family:var(--cond);font-weight:600;color:var(--head);font-size:.92rem;margin-bottom:.25rem;text-transform:uppercase;letter-spacing:.03em}
.cat-count{font-family:var(--mono);font-size:.68rem;color:var(--accent)}
.cat-desc{font-size:.78rem;color:var(--dim);margin-top:.35rem}
.eff-row{display:flex;align-items:center;gap:.8rem;margin:.3rem 0;font-size:.84rem}
.eff-bar{height:8px;border-radius:2px;flex-shrink:0}
.rare{color:var(--magenta);text-shadow:0 0 10px rgba(224,64,251,.4)}
/* OS tab switcher */
.os-tabs{display:flex;gap:0;border-bottom:1px solid var(--border);margin-top:1.5rem}
.os-tab{font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;padding:.5rem 1rem;cursor:pointer;color:var(--dim);background:transparent;border:1px solid transparent;border-bottom:none;transition:color .12s,background .12s;user-select:none}
.os-tab.active{color:var(--cyan);background:var(--bg3);border-color:var(--border)}
.os-tab:hover:not(.active){color:var(--text)}
.os-panel{display:none;padding:1.2rem 0 0}
.os-panel.active{display:block}
/* Perf grid */
.perf-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:.8rem;margin:1rem 0}
.perf-card{background:rgba(0,188,212,.04);border:1px solid rgba(0,188,212,.12);padding:.9rem 1.1rem}
.perf-card-head{font-family:var(--cond);font-weight:700;color:var(--cyan);font-size:.88rem;text-transform:uppercase;margin-bottom:.4rem}
.perf-card p{font-size:.82rem;margin:0}
footer{border-top:1px solid var(--border);text-align:center;padding:2rem;font-family:var(--mono);font-size:.7rem;color:var(--dim);letter-spacing:.08em}
footer span{color:var(--green)}
/* Top Navigation Bar */
.top-nav{background:var(--bg2);border-bottom:2px solid var(--green);padding:0;position:sticky;top:0;z-index:100}
.nav-inner{max-width:1120px;margin:0 auto;display:flex;align-items:center;gap:0;padding:0 1rem}
.nav-logo{font-family:var(--cond);font-weight:900;font-size:1.1rem;color:var(--green);text-decoration:none;padding:.7rem 1rem .7rem 0;letter-spacing:.04em;text-transform:uppercase;white-space:nowrap}
.nav-links{display:flex;gap:0;flex-wrap:wrap}
.nav-links a{font-family:var(--mono);font-size:.72rem;color:var(--dim);text-decoration:none;padding:.7rem .7rem;letter-spacing:.08em;text-transform:uppercase;transition:color .12s,background .12s;border-bottom:2px solid transparent;margin-bottom:-2px}
.nav-links a:hover,.nav-links a.active{color:var(--cyan);background:rgba(0,188,212,.04);border-bottom-color:var(--cyan)}
/* Set card styling */
.set-card{background:var(--bg2);border:1px solid var(--border);border-left:3px solid var(--accent);padding:1rem 1.2rem;margin-bottom:1rem}
.set-name{font-family:var(--cond);font-weight:700;font-size:1.05rem;color:var(--head);text-transform:uppercase;letter-spacing:.04em;margin-bottom:.4rem}
.set-pieces{font-size:.85rem;color:var(--text);margin-bottom:.5rem}
.set-bonus{font-size:.83rem;margin:.2rem 0}
/* Relic card styling */
.relic-card{background:var(--bg2);border:1px solid var(--border);border-left:3px solid var(--accent);padding:1rem 1.2rem;margin-bottom:.8rem}
.relic-name{font-family:var(--cond);font-weight:700;font-size:1rem;color:var(--accent);text-transform:uppercase;margin-bottom:.3rem}
.relic-stat{font-size:.85rem;color:var(--text);margin-bottom:.2rem}
/* Changelog styling */
.changelog-date{font-family:var(--cond);font-weight:700;font-size:1.2rem;color:var(--green);text-transform:uppercase;letter-spacing:.05em;margin:2rem 0 .8rem;padding-bottom:.4rem;border-bottom:1px solid var(--border)}
.changelog-date:first-child{margin-top:0}
.changelog-list{list-style:none;margin:0 0 1.5rem}
.changelog-list li{padding:.35rem 0 .35rem 1.2rem;font-size:.88rem;position:relative;border-bottom:1px solid rgba(26,38,48,.3)}
.changelog-list li::before{content:'\25B8';position:absolute;left:0;color:var(--cyan)}
/* Synergy card */
.synergy-card{background:var(--bg2);border:1px solid var(--border);border-top:2px solid var(--accent);padding:.9rem 1.1rem;margin-bottom:.8rem}
.synergy-name{font-family:var(--cond);font-weight:700;font-size:.95rem;color:var(--accent);text-transform:uppercase;margin-bottom:.3rem}
@media(max-width:880px){
  .layout{flex-direction:column;padding:1rem}
  aside{width:100%;position:static}
  .title-list{columns:1}
  .weapon-entry,.weapon-entry.flip{flex-direction:column}
  .weapon-gif-wrap{width:100%}
  .weapon-gif-wrap img{width:100%;max-width:280px}
  .os-tabs{flex-wrap:wrap}
}
