/* ===========================================================
   VIRGO VIXEN · LAST WAR OPERATIONS — shared site styles
   Used by all section pages. Homepage is self-contained.
   =========================================================== */
@import url('https://fonts.googleapis.com/css2?family=Orbitron:wght@400;600;700;900&family=Exo+2:wght@300;400;600;700&family=Share+Tech+Mono&family=Noto+Sans+KR:wght@400;500;700;900&display=swap');

:root{
  --vv-black:#0A0C10; --vv-deep:#12151c; --vv-panel:#161a23; --vv-line:#1f2530;
  --vv-cyan:#29B6F6; --vv-neon:#00E5FF; --vv-gold:#EF9F27; --vv-white:#F0F4F8;
  --vv-mute:#8a96a8; --vv-red:#E53935;
  --font-display:'Orbitron',sans-serif; --font-body:'Exo 2',sans-serif;
  --font-mono:'Share Tech Mono',monospace; --font-kr:'Noto Sans KR',sans-serif;
  --max-width:1140px; --radius:4px;
  --notch:polygon(0 0,calc(100% - 16px) 0,100% 16px,100% 100%,0 100%);
  --elev-1:0 2px 8px rgba(0,0,0,.28); --elev-2:0 6px 20px rgba(0,0,0,.38); --elev-3:0 14px 40px rgba(0,0,0,.48);
  --hl:inset 0 1px 0 rgba(255,255,255,.05);
}
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0;}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%;}
body{background:var(--vv-black);color:var(--vv-white);font-family:var(--font-body);font-size:16px;line-height:1.7;min-height:100vh;overflow-x:hidden;
  background-image:radial-gradient(circle at 10% 1%,rgba(41,182,246,.09) 0%,transparent 34%),radial-gradient(circle at 94% 99%,rgba(0,229,255,.045) 0%,transparent 42%),repeating-linear-gradient(0deg,rgba(255,255,255,.012) 0 1px,transparent 1px 3px);background-attachment:fixed;}
img{max-width:100%;height:auto;display:block;}
a{color:var(--vv-cyan);text-decoration:none;transition:color .2s;}
a:hover,a:focus{color:var(--vv-neon);}
a:focus-visible{outline:2px solid var(--vv-cyan);outline-offset:3px;border-radius:2px;}
.skip-link{position:absolute;top:-100px;left:0;background:var(--vv-cyan);color:var(--vv-black);padding:.5rem 1rem;z-index:9999;font-family:var(--font-display);font-weight:700;}
.skip-link:focus{top:0;}

/* HEADER / NAV (identical to homepage) */
.site-header{position:sticky;top:0;z-index:100;background:rgba(10,12,16,.94);backdrop-filter:blur(10px);border-bottom:1px solid var(--vv-line);}
.site-nav{max-width:var(--max-width);margin:0 auto;padding:.7rem 1.25rem;display:flex;align-items:center;justify-content:space-between;gap:1rem;}
.site-brand{display:flex;align-items:center;gap:.6rem;font-family:var(--font-display);font-weight:900;font-size:.95rem;letter-spacing:.1em;color:var(--vv-white);text-transform:uppercase;flex-shrink:0;}
.site-brand .vv-logo{width:34px;height:34px;flex-shrink:0;position:relative;z-index:5;}
.site-brand-text{display:flex;flex-direction:column;line-height:1.1;}
.site-brand-text small{font-family:var(--font-mono);font-weight:400;font-size:.6rem;color:var(--vv-cyan);letter-spacing:.15em;}
.nav-links{display:flex;gap:1.45rem;list-style:none;align-items:center;}
.has-sub{position:relative;display:flex;align-items:center;gap:.25rem;}
.navtop{font-family:var(--font-display);font-weight:600;font-size:.74rem;letter-spacing:.1em;color:var(--vv-mute);text-transform:uppercase;position:relative;white-space:nowrap;}
.navtop:hover,.navtop.active,.has-sub:hover .navtop,.has-sub:focus-within .navtop{color:var(--vv-cyan);}
.navtop::after{content:'';position:absolute;left:0;right:100%;bottom:-6px;height:2px;background:var(--vv-cyan);transition:right .25s;}
.navtop.active::after{right:0;}
.has-sub:hover .navtop::after,.has-sub:focus-within .navtop::after{right:0;}
.sub-toggle{display:none;background:none;border:none;color:var(--vv-mute);cursor:pointer;font-size:.7rem;padding:.2rem;line-height:1;}
.lang-li{margin-left:.6rem;font-family:var(--font-mono);font-size:.66rem;color:var(--vv-mute);letter-spacing:.12em;}
.submenu{display:none;position:absolute;top:calc(100% + 8px);left:-.6rem;min-width:230px;background:var(--vv-deep);border:1px solid var(--vv-line);border-top:2px solid var(--vv-cyan);padding:.4rem 0;z-index:200;box-shadow:var(--elev-3);list-style:none;}
.submenu.sub-right{left:auto;right:-.6rem;}
.submenu li{width:100%;}
.submenu a{display:block;padding:.5rem .95rem;font-family:var(--font-mono);font-size:.74rem;letter-spacing:.03em;color:var(--vv-mute);text-transform:none;white-space:nowrap;border-left:2px solid transparent;}
.submenu a:hover,.submenu a:focus,.submenu a.active{color:var(--vv-cyan);background:rgba(41,182,246,.07);border-left-color:var(--vv-cyan);}
.submenu .sub-head{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.16em;color:var(--vv-gold);padding:.3rem .95rem .45rem;border-bottom:1px solid var(--vv-line);margin-bottom:.3rem;text-transform:uppercase;}
@media(min-width:901px){.has-sub:hover>.submenu,.has-sub:focus-within>.submenu{display:block;}}
.mobile-menu-btn{display:none;background:none;border:1px solid var(--vv-line);color:var(--vv-cyan);padding:.4rem .7rem;cursor:pointer;border-radius:var(--radius);font-family:var(--font-mono);}
@media(max-width:900px){
  .nav-links{display:none;position:absolute;top:100%;left:0;right:0;flex-direction:column;gap:0;padding:.5rem 0;background:var(--vv-deep);border-bottom:1px solid var(--vv-line);max-height:80vh;overflow-y:auto;}
  .nav-links.open{display:flex;}
  .has-sub{flex-wrap:wrap;width:100%;justify-content:space-between;padding:0 1.25rem;}
  .navtop{display:block;padding:.7rem 0;flex:1;}.navtop::after{display:none;}
  .sub-toggle{display:inline-block;font-size:.9rem;padding:.7rem .4rem;}
  .submenu{position:static;display:none;box-shadow:none;border:none;min-width:0;width:100%;padding:0 0 .4rem;background:transparent;}
  .submenu.open{display:block;}.submenu.sub-right{right:auto;left:auto;}
  .submenu a{padding:.45rem 1.6rem;}.submenu .sub-head{display:none;}
  .lang-li{margin:.4rem 1.25rem;}.mobile-menu-btn{display:block;}.site-brand-text small{display:none;}
}

/* PAGE HERO */
main{max-width:var(--max-width);margin:0 auto;padding:0 1.25rem 4rem;}
.crumb{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.12em;color:var(--vv-mute);padding:1.5rem 0 .5rem;}
.crumb a{color:var(--vv-mute);}.crumb a:hover{color:var(--vv-cyan);}
.page-hero{display:grid;grid-template-columns:1fr auto;gap:2rem;align-items:center;padding:1rem 0 2rem;border-bottom:1px solid var(--vv-line);margin-bottom:2.5rem;}
.page-hero .eyebrow{font-family:var(--font-mono);font-size:.78rem;color:var(--vv-cyan);letter-spacing:.2em;margin-bottom:.9rem;}
.page-hero h1{font-family:var(--font-display);font-weight:900;font-size:clamp(2rem,4.6vw,3.2rem);line-height:1.05;margin-bottom:1rem;}
.page-hero .lead{font-size:clamp(1.02rem,2vw,1.18rem);color:var(--vv-mute);max-width:620px;}
.page-hero .hero-art{width:200px;justify-self:center;filter:drop-shadow(0 12px 28px rgba(0,0,0,.5));}
@media(max-width:760px){.page-hero{grid-template-columns:1fr;}.page-hero .hero-art{display:none;}}

/* IN-PAGE NAV */
.pillnav{position:sticky;top:58px;z-index:50;background:rgba(10,12,16,.92);backdrop-filter:blur(8px);border:1px solid var(--vv-line);border-radius:var(--radius);padding:.6rem .8rem;margin-bottom:2.5rem;display:flex;gap:.5rem;flex-wrap:wrap;}
.pillnav a{font-family:var(--font-mono);font-size:.7rem;letter-spacing:.08em;color:var(--vv-mute);padding:.3rem .6rem;border:1px solid transparent;border-radius:3px;}
.pillnav a:hover{color:var(--vv-cyan);border-color:var(--vv-line);}

/* CONTENT */
.content section{scroll-margin-top:120px;margin-bottom:3rem;}
.content h2{font-family:var(--font-display);font-weight:700;font-size:1.55rem;letter-spacing:.02em;margin-bottom:.4rem;display:flex;align-items:baseline;gap:.7rem;}
.content h2 .ix{font-family:var(--font-mono);font-size:.8rem;color:var(--vv-cyan);font-weight:400;}
.content h3{font-family:var(--font-display);font-weight:600;font-size:1.12rem;color:var(--vv-white);margin:1.6rem 0 .6rem;}
.content .sub{font-family:var(--font-mono);font-size:.72rem;color:var(--vv-mute);letter-spacing:.12em;margin-bottom:1.1rem;}
.content p{margin-bottom:1rem;color:#cfd8e3;}
.content p.lead{color:var(--vv-white);font-size:1.08rem;}
.content ul,.content ol{margin:0 0 1.1rem 1.2rem;color:#cfd8e3;}
.content li{margin-bottom:.45rem;}
.content strong{color:var(--vv-white);}
.content a{border-bottom:1px solid rgba(41,182,246,.35);}

/* INTEL CALLOUT */
.intel{background:var(--vv-panel);border:1px solid var(--vv-line);border-left:3px solid var(--vv-cyan);padding:1.1rem 1.3rem;margin:1.3rem 0;box-shadow:var(--hl),var(--elev-1);clip-path:var(--notch);}
.intel .tag{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.18em;color:var(--vv-cyan);text-transform:uppercase;margin-bottom:.4rem;}
.intel p:last-child{margin-bottom:0;}
.flag{border-left-color:var(--vv-gold);}
.flag .tag{color:var(--vv-gold);}

/* DATA TABLE */
.data{width:100%;border-collapse:collapse;margin:1.2rem 0;font-size:.92rem;}
.data th,.data td{text-align:left;padding:.6rem .8rem;border-bottom:1px solid var(--vv-line);}
.data th{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;color:var(--vv-cyan);text-transform:uppercase;}
.data td{color:#cfd8e3;}
.data tr:hover td{background:rgba(41,182,246,.04);}

/* STEPS */
.steps{list-style:none;margin:1.2rem 0;counter-reset:s;}
.steps li{counter-increment:s;position:relative;padding:.2rem 0 1rem 2.4rem;margin:0;}
.steps li::before{content:counter(s,decimal-leading-zero);position:absolute;left:0;top:0;font-family:var(--font-display);font-weight:700;font-size:.9rem;color:var(--vv-gold);}

/* FOOTER */
.site-footer{margin-top:4rem;padding:2.5rem 1.25rem;border-top:1px solid var(--vv-line);background:var(--vv-deep);text-align:center;}
.site-footer .footer-content{max-width:var(--max-width);margin:0 auto;}
.site-footer .footer-tagline{font-family:var(--font-display);font-weight:600;font-size:.95rem;letter-spacing:.12em;color:var(--vv-white);text-transform:uppercase;margin-bottom:.75rem;}
.site-footer .footer-links{margin:1rem 0;display:flex;gap:1.4rem;justify-content:center;flex-wrap:wrap;}
.site-footer .footer-links a{font-family:var(--font-mono);font-size:.74rem;letter-spacing:.1em;color:var(--vv-mute);}
.site-footer .footer-links a:hover{color:var(--vv-cyan);}
.site-footer .signature-block{font-family:var(--font-mono);font-size:.78rem;color:var(--vv-mute);letter-spacing:.08em;margin-top:.75rem;}
.site-footer .signature-block strong{color:var(--vv-cyan);font-weight:400;}
.lang-toggle{display:flex;gap:.25rem;background:var(--vv-deep);padding:.2rem;border:1px solid var(--vv-line);border-radius:var(--radius);}
.lang-toggle button{background:none;border:none;cursor:pointer;padding:.35rem .55rem;font-family:var(--font-mono);font-size:.72rem;color:var(--vv-mute);border-radius:3px;}
.lang-toggle button[aria-pressed="true"]{background:var(--vv-cyan);color:var(--vv-black);font-weight:700;}
.reveal{opacity:0;transform:translateY(16px);transition:opacity .6s ease,transform .6s cubic-bezier(.22,1,.36,1);}
.reveal.in{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){.reveal{opacity:1;transform:none;transition:none;}*{transition:none!important;}}

/* ===========================================================
   V12 ADDITIONS — War Room restructure
   Status labels · hub grid · cross-links · page meta
   =========================================================== */

/* STATUS-LABEL BADGES — used sparingly, never on every line */
.badge{display:inline-block;font-family:var(--font-mono);font-size:.57rem;letter-spacing:.13em;text-transform:uppercase;
  padding:.16rem .5rem;border:1px solid;border-radius:2px;vertical-align:middle;margin-left:.45rem;line-height:1.35;white-space:nowrap;}
.badge-rule{color:var(--vv-neon);border-color:rgba(0,229,255,.5);background:rgba(0,229,255,.07);}        /* GAME RULE */
.badge-season{color:var(--vv-cyan);border-color:rgba(41,182,246,.55);background:rgba(41,182,246,.08);}   /* CURRENT SEASON STRUCTURE */
.badge-adv{color:#79f2b0;border-color:rgba(121,242,176,.45);background:rgba(121,242,176,.06);}           /* STRATEGIC ADVANTAGE */
.badge-practice{color:var(--vv-gold);border-color:rgba(239,159,39,.55);background:rgba(239,159,39,.08);} /* COMMANDER'S PRACTICE */
.badge-server{color:#c2a8ff;border-color:rgba(194,168,255,.45);background:rgba(194,168,255,.07);}        /* SERVER EXAMPLE */
.badge-patch{color:var(--vv-red);border-color:rgba(229,57,53,.55);background:rgba(229,57,53,.09);}       /* PATCH-SENSITIVE */
.badge-verify{color:var(--vv-mute);border-color:var(--vv-line);background:rgba(138,150,168,.07);}        /* VERIFY IN-GAME */

/* PAGE META — maintenance date + label legend */
.page-meta{margin:0 0 1.8rem;border:1px solid var(--vv-line);border-left:3px solid var(--vv-gold);
  background:var(--vv-deep);padding:.85rem 1.1rem;clip-path:var(--notch);}
.page-meta .pm-date{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.08em;color:var(--vv-white);}
.page-meta .pm-date b{color:var(--vv-gold);font-weight:400;}
.page-meta .pm-note{font-size:.82rem;color:var(--vv-mute);margin:.35rem 0 0;}
.legend{display:flex;flex-wrap:wrap;gap:.4rem;margin:.7rem 0 0;}
.legend .badge{margin-left:0;}

/* HUB GRID — War Room landing */
.hub-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(266px,1fr));gap:1rem;margin:1.6rem 0 2.2rem;}
.hub-card{position:relative;display:block;background:var(--vv-panel);border:1px solid var(--vv-line);border-left:3px solid var(--vv-cyan);
  padding:1.15rem 1.25rem 1.25rem;clip-path:var(--notch);box-shadow:var(--hl),var(--elev-1);
  transition:transform .2s ease,border-left-color .2s ease,box-shadow .2s ease;}
.hub-card:hover,.hub-card:focus-visible{transform:translateY(-3px);border-left-color:var(--vv-neon);box-shadow:var(--hl),var(--elev-2);outline:none;}
.hub-card .hc-ix{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.1em;color:var(--vv-cyan);}
.hub-card h3{font-family:var(--font-display);font-weight:700;font-size:1.04rem;color:var(--vv-white);margin:.32rem 0 .45rem;letter-spacing:.01em;}
.hub-card p{font-size:.85rem;line-height:1.55;color:var(--vv-mute);margin:0;}
.hub-card .hc-go{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.1em;color:var(--vv-cyan);margin-top:.7rem;display:inline-block;}

/* SEE-ALSO CROSS-LINKS */
.seealso{margin:2.2rem 0 0;padding:1.1rem 1.25rem;background:var(--vv-deep);border:1px solid var(--vv-line);border-top:2px solid var(--vv-cyan);border-radius:var(--radius);}
.seealso .tag{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.16em;color:var(--vv-cyan);text-transform:uppercase;margin-bottom:.55rem;}
.seealso ul{list-style:none;margin:0;display:flex;flex-wrap:wrap;gap:.45rem .9rem;}
.seealso li{margin:0;}
.seealso a{font-family:var(--font-mono);font-size:.76rem;letter-spacing:.03em;border-bottom:1px solid rgba(41,182,246,.35);}

/* Two-column callout layout (Best/Worst buys) */
.two-col{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin:1rem 0;}
.two-col .intel{margin:0;}
.two-col ul{margin:.4rem 0 0;padding-left:1.1rem;}
.two-col li{margin:.45rem 0;font-size:.9rem;line-height:1.5;}
@media (max-width:680px){.two-col{grid-template-columns:1fr;}}

/* ===========================================================
   V12 EVENTS HUB — evidence labels · filters · cards · vixen intel · spend tabs
   =========================================================== */

/* Evidence-label badges (the doc's 5-label system, one visual system) */
.badge-confirmed{color:var(--vv-neon);border-color:rgba(0,229,255,.5);background:rgba(0,229,255,.07);}   /* CONFIRMED MECHANIC */
.badge-corrob{color:#79f2b0;border-color:rgba(121,242,176,.45);background:rgba(121,242,176,.06);}        /* CORROBORATED STRATEGY */
.badge-intel{color:#c2a8ff;border-color:rgba(194,168,255,.45);background:rgba(194,168,255,.07);}         /* COMMUNITY-TESTED INTEL */
.badge-update{color:var(--vv-red);border-color:rgba(229,57,53,.55);background:rgba(229,57,53,.09);}      /* UPDATE-SENSITIVE */
.badge-protocol{color:var(--vv-gold);border-color:rgba(239,159,39,.55);background:rgba(239,159,39,.08);} /* LEADERSHIP PROTOCOL */

/* VIXEN INTEL branded callout */
.vixen-intel{position:relative;margin:1.6rem 0;padding:1.1rem 1.25rem 1.2rem;background:linear-gradient(180deg,rgba(41,182,246,.06),rgba(10,12,16,.4));
  border:1px solid var(--vv-line);border-left:3px solid var(--vv-gold);clip-path:var(--notch);}
.vixen-intel .vi-head{display:flex;align-items:center;gap:.6rem;margin-bottom:.5rem;flex-wrap:wrap;}
.vixen-intel .vi-tag{font-family:var(--font-mono);font-size:.68rem;letter-spacing:.22em;color:var(--vv-gold);text-transform:uppercase;font-weight:700;}
.vixen-intel p{margin:0;font-size:.94rem;line-height:1.6;color:var(--vv-white);}

/* Spend-path tabs (consistent wording on every event) */
.spend-paths{margin:1.2rem 0;border:1px solid var(--vv-line);border-radius:var(--radius);overflow:hidden;}
.spend-paths .sp-row{display:grid;grid-template-columns:170px 1fr;gap:0;border-top:1px solid var(--vv-line);}
.spend-paths .sp-row:first-child{border-top:none;}
.spend-paths .sp-k{padding:.7rem .9rem;background:var(--vv-deep);font-family:var(--font-mono);font-size:.74rem;letter-spacing:.04em;color:var(--vv-cyan);border-right:1px solid var(--vv-line);}
.spend-paths .sp-k small{display:block;color:var(--vv-mute);letter-spacing:.02em;margin-top:.15rem;}
.spend-paths .sp-v{padding:.7rem .95rem;font-size:.9rem;line-height:1.55;}
@media (max-width:600px){.spend-paths .sp-row{grid-template-columns:1fr;}.spend-paths .sp-k{border-right:none;border-bottom:1px solid var(--vv-line);}}

/* EVENTS HUB — filters */
.ev-filters{margin:1.4rem 0 1.2rem;padding:1.1rem 1.2rem;background:var(--vv-deep);border:1px solid var(--vv-line);clip-path:var(--notch);}
.ev-fgroup{margin:.55rem 0;display:flex;flex-wrap:wrap;align-items:baseline;gap:.4rem;}
.ev-fgroup .ev-flabel{font-family:var(--font-mono);font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--vv-mute);width:88px;flex:none;}
.ev-fbtn{font-family:var(--font-mono);font-size:.72rem;letter-spacing:.03em;color:var(--vv-mute);background:transparent;border:1px solid var(--vv-line);
  border-radius:2px;padding:.26rem .6rem;cursor:pointer;transition:all .15s;}
.ev-fbtn:hover{color:var(--vv-white);border-color:var(--vv-cyan);}
.ev-fbtn.on{color:var(--vv-black);background:var(--vv-cyan);border-color:var(--vv-cyan);font-weight:700;}
.ev-bar{display:flex;align-items:center;justify-content:space-between;gap:1rem;margin-top:.8rem;padding-top:.7rem;border-top:1px solid var(--vv-line);flex-wrap:wrap;}
.ev-count{font-family:var(--font-mono);font-size:.76rem;color:var(--vv-cyan);}
.ev-clear{font-family:var(--font-mono);font-size:.72rem;color:var(--vv-mute);background:none;border:none;cursor:pointer;text-decoration:underline;}
.ev-clear:hover{color:var(--vv-white);}

/* EVENTS HUB — cards */
.ev-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:1rem;margin:1.2rem 0 2rem;}
.ev-card{display:flex;flex-direction:column;background:var(--vv-panel);border:1px solid var(--vv-line);border-left:3px solid var(--vv-cyan);
  padding:1rem 1.1rem 1.1rem;clip-path:var(--notch);text-decoration:none;transition:transform .18s,border-left-color .18s;}
.ev-card:hover{transform:translateY(-3px);border-left-color:var(--vv-neon);}
.ev-card[data-coll="s1"]{border-left-color:var(--vv-gold);}
.ev-card[data-coll="celebration"]{border-left-color:#c2a8ff;}
.ev-card[data-coll="s2"]{border-left-color:#79f2b0;}
.ev-card[data-coll="later"]{border-left-color:var(--vv-mute);}
.ev-card .ev-coll{font-family:var(--font-mono);font-size:.62rem;letter-spacing:.16em;text-transform:uppercase;color:var(--vv-mute);}
.ev-card h3{font-family:var(--font-display);font-weight:700;font-size:1rem;color:var(--vv-white);margin:.3rem 0 .4rem;line-height:1.25;}
.ev-card p{font-size:.83rem;line-height:1.5;color:var(--vv-mute);margin:0 0 .7rem;flex:1;}
.ev-card .ev-tags{display:flex;flex-wrap:wrap;gap:.3rem;}
.ev-card .ev-t{font-family:var(--font-mono);font-size:.6rem;letter-spacing:.06em;color:var(--vv-cyan);border:1px solid rgba(41,182,246,.25);border-radius:2px;padding:.1rem .4rem;}
.ev-card .ev-go{font-family:var(--font-mono);font-size:.64rem;letter-spacing:.1em;color:var(--vv-cyan);margin-top:.7rem;}
.ev-card.ev-warroom .ev-go{color:var(--vv-gold);}
.ev-hidden{display:none !important;}
.ev-empty{font-family:var(--font-mono);color:var(--vv-mute);padding:2rem 0;text-align:center;}
