/* ====================================================================
   LAMANG INTELLIGENCE NETWORK - Global Stylesheet
   ==================================================================== */

/* ── CUSTOM PROPERTIES ─────────────────────────────────────── */
:root {
  --jd:#1a2612;--jm:#2d4220;--jg:#4a6741;--jb:#6b9c5e;--jp:#8db87e;
  --ed:#2e1c0c;--eb:#5c3d1e;--em:#7a5230;--et:#a07040;--es:#c4a066;
  --uk:#0e0e0e;--ud:#1c1c1c;--uc:#2a2a2a;--um:#3e3e3e;--ug:#5a5a5a;--ul:#8a8a8a;--up:#b8b8b8;--uw:#e2e2e2;
  --mono:'Share Tech Mono',monospace;--disp:'Oswald',sans-serif;--body:'Barlow Condensed',sans-serif;
}

/* ── RESET ─────────────────────────────────────────────────── */
*,*::before,*::after{box-sizing:border-box;margin:0;padding:0}
html{scroll-behavior:smooth}
body{background:var(--uk);color:var(--up);font-family:var(--body);font-size:16px;line-height:1.5;overflow-x:hidden;min-height:100vh}
body::before{content:'';position:fixed;inset:0;background:repeating-linear-gradient(0deg,transparent,transparent 3px,rgba(0,0,0,.025) 3px,rgba(0,0,0,.025) 4px);pointer-events:none;z-index:9999}

/* ── SITE HEADER (both class names used across files) ──────── */
.lin-header,.site-header{background:var(--jd);border-bottom:2px solid var(--jg);position:sticky;top:0;z-index:100}
.lin-header-inner,.site-header-inner,.site-header-icon{max-width:1280px;margin:0 auto;padding:0 32px;display:flex;align-items:center;justify-content:space-between;height:64px}
.logo{display:flex;align-items:center;gap:14px;text-decoration:none}
.logo img{width:36px;height:36px;flex-shrink:0}
.logo-wordmark,.logo-mark{font-family:var(--disp);font-size:16px;font-weight:700;letter-spacing:.08em;color:var(--jb);text-transform:uppercase;line-height:1;white-space:nowrap}
.logo-tagline,.logo-site-name{font-family:var(--mono);font-size:9px;color:var(--ul);letter-spacing:.2em;text-transform:uppercase;white-space:nowrap}
.header-nav{display:flex;align-items:center;gap:2px;flex-wrap:nowrap}
.nav-link{font-family:var(--body);font-size:12px;font-weight:500;letter-spacing:.04em;text-transform:uppercase;color:var(--ul);text-decoration:none;padding:5px 10px;border:1px solid transparent;transition:all .18s;white-space:nowrap}
.nav-link:hover{color:var(--jb);border-color:var(--jm);background:rgba(74,103,65,.12)}
.nav-link.active{color:var(--jp);border-color:var(--jg);background:rgba(74,103,65,.2)}

/* ── SITE FOOTER ───────────────────────────────────────────── */
.lin-footer{background:var(--jd);border-top:1px solid var(--jm);padding:20px 24px;display:flex;align-items:center;justify-content:space-between}
.footer-brand{font-family:var(--disp);font-size:14px;font-weight:500;letter-spacing:.12em;text-transform:uppercase;color:var(--jg)}
.footer-note{font-family:var(--mono);font-size:9px;color:var(--ug);letter-spacing:.08em;margin-top:2px}
.footer-link-list{display:flex;gap:18px}
.footer-link{font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ul);text-decoration:none;transition:color .14s}
.footer-link:hover{color:var(--jb)}

/* ── HAMBURGER BUTTON ──────────────────────────────────────── */
.hamburger-btn{display:none;flex-direction:column;justify-content:center;gap:5px;
  width:40px;height:40px;background:transparent;border:1px solid var(--um);
  cursor:pointer;padding:9px;flex-shrink:0;transition:border-color .15s}
.hamburger-btn:hover{border-color:var(--jg)}
.hamburger-btn span{display:block;height:2px;background:var(--up);
  transition:transform .22s,opacity .22s,background .15s}
.hamburger-btn.open span:nth-child(1){transform:translateY(7px) rotate(45deg)}
.hamburger-btn.open span:nth-child(2){opacity:0;transform:scaleX(0)}
.hamburger-btn.open span:nth-child(3){transform:translateY(-7px) rotate(-45deg)}

/* ── MOBILE NAV ────────────────────────────────────────────── */
.mobile-nav{display:none;flex-direction:column;background:var(--jd);
  border-top:1px solid var(--jm);border-bottom:2px solid var(--jg)}
.mobile-nav.open{display:flex}
.mobile-nav a{font-family:var(--body);font-size:13px;font-weight:500;
  letter-spacing:.06em;text-transform:uppercase;color:var(--ul);
  text-decoration:none;padding:14px 20px;border-bottom:1px solid var(--jm);
  transition:color .15s,background .15s}
.mobile-nav a:last-child{border-bottom:none}
.mobile-nav a:hover{color:var(--jp);background:rgba(74,103,65,.12)}
.mobile-nav a.active{color:var(--jp);background:rgba(74,103,65,.18);
  border-left:3px solid var(--jg);padding-left:17px}


/* ====== PAGE: INDEX ====== */
body.page-index /* HEADER */
.lin-header {
background:var(--jd);border-bottom:2px solid var(--jg);position:sticky;top:0;z-index:100
}
body.page-index /* HERO */
.hero {
background:var(--jd);border-bottom:1px solid var(--jm);padding:88px 32px 76px;position:relative;overflow:hidden
}
body.page-index .hero::before {
content:'';position:absolute;inset:0;background:radial-gradient(ellipse 60% 70% at 80% 50%,rgba(45,66,32,.35) 0%,transparent 70%),radial-gradient(ellipse 40% 50% at 10% 60%,rgba(46,28,12,.3) 0%,transparent 60%);pointer-events:none
}
body.page-index .hero::after {
content:'';position:absolute;inset:0;background-image:linear-gradient(rgba(74,103,65,.04) 1px,transparent 1px),linear-gradient(90deg,rgba(74,103,65,.04) 1px,transparent 1px);background-size:40px 40px;pointer-events:none
}
body.page-index .page-hero-inner {
max-width:1280px;margin:0 auto;position:relative;z-index:1;display:grid;grid-template-columns:1fr 400px;gap:60px;align-items:center
}
body.page-index .hero-eyebrow {
font-family:var(--mono);font-size:10px;letter-spacing:.3em;text-transform:uppercase;color:var(--jg);margin-bottom:18px;display:flex;align-items:center;gap:12px
}
body.page-index .hero-eyebrow::before {
content:'';display:block;width:32px;height:1px;background:var(--jg)
}
body.page-index .hero-title {
font-family:var(--disp);font-size:80px;font-weight:700;letter-spacing:.03em;text-transform:uppercase;color:var(--uw);line-height:.9;margin-bottom:6px
}
body.page-index .hero-title span {
color:var(--jb);display:block
}
body.page-index .hero-subtitle {
font-family:var(--disp);font-size:18px;font-weight:300;letter-spacing:.2em;text-transform:uppercase;color:var(--es);margin-bottom:26px
}
body.page-index .hero-body {
font-family:var(--body);font-size:17px;color:var(--ul);line-height:1.65;max-width:500px;margin-bottom:34px
}
body.page-index .hero-cta-row {
display:flex;gap:14px;flex-wrap:wrap
}
body.page-index .cta-primary {
font-family:var(--body);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;background:var(--jb);color:var(--jd);border:none;padding:13px 28px;text-decoration:none;display:inline-block;transition:background .18s
}
body.page-index .cta-primary:hover {
background:var(--jp)
}
body.page-index .cta-outline {
font-family:var(--body);font-size:13px;font-weight:600;letter-spacing:.16em;text-transform:uppercase;background:none;color:var(--up);border:1px solid var(--um);padding:12px 24px;text-decoration:none;display:inline-block;transition:all .18s
}
body.page-index .cta-outline:hover {
border-color:var(--ul);color:var(--uw)
}
body.page-index /* HERO SIDE CARDS */
.hero-sidebar-cards {
display:flex;flex-direction:column;gap:10px
}
body.page-index .feature-link-card {
background:rgba(14,14,14,.6);border:1px solid var(--um);border-left:3px solid var(--jg);padding:15px 18px;display:flex;align-items:center;gap:14px;text-decoration:none;transition:all .18s
}
body.page-index .feature-link-card:hover {
border-color:var(--jg);background:rgba(26,38,18,.5)
}
body.page-index .feature-link-card.earth {
border-left-color:var(--et)
}
body.page-index .feature-link-card.earth:hover {
border-color:var(--et)
}
body.page-index .feature-link-card.grey {
border-left-color:var(--ul)
}
body.page-index .feature-link-card.grey:hover {
border-color:var(--ul)
}
body.page-index .feature-link-card svg {
width:30px;height:30px;flex-shrink:0;opacity:.85
}
body.page-index .flc-text {
flex:1
}
body.page-index .flc-name {
font-family:var(--disp);font-size:14px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--uw);line-height:1;margin-bottom:2px
}
body.page-index .flc-desc {
font-family:var(--mono);font-size:10px;color:var(--ug);letter-spacing:.06em
}
body.page-index .flc-arrow {
font-family:var(--mono);font-size:13px;color:var(--um);transition:color .18s
}
body.page-index .feature-link-card:hover .flc-arrow {
color:var(--jb)
}
body.page-index /* MAIN */
.content-wrapper {
max-width:1280px;margin:0 auto;padding:60px 32px
}
body.page-index .sec-heading {
display:flex;align-items:center;gap:16px;margin-bottom:28px
}
body.page-index .sec-eyebrow {
font-family:var(--disp);font-size:13px;font-weight:500;letter-spacing:.24em;text-transform:uppercase;color:var(--ul);white-space:nowrap
}
body.page-index .sec-rule {
flex:1;height:1px;background:var(--um)
}
body.page-index /* UPDATE STRIP */
.news-strip {
background:var(--ed);border:1px solid var(--eb);padding:18px 26px;margin-bottom:56px;display:flex;align-items:flex-start;gap:22px
}
body.page-index .news-strip-tag {
font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--es);background:rgba(92,61,30,.5);border:1px solid var(--eb);padding:4px 12px;white-space:nowrap;margin-top:2px;flex-shrink:0
}
body.page-index .news-strip-title {
font-family:var(--disp);font-size:15px;font-weight:500;letter-spacing:.08em;text-transform:uppercase;color:var(--es);margin-bottom:3px
}
body.page-index .news-strip-desc {
font-family:var(--body);font-size:13px;color:var(--ug)
}
body.page-index .news-strip-date {
font-family:var(--mono);font-size:10px;color:var(--ug);letter-spacing:.1em;white-space:nowrap;margin-top:2px
}
body.page-index /* FEATURE CARDS */
.feature-card-grid {
display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-bottom:60px
}
body.page-index .feature-card {
background:var(--ud);border:1px solid var(--um);text-decoration:none;display:flex;flex-direction:column;transition:border-color .2s;position:relative;overflow:hidden
}
body.page-index .feature-card::after {
content:'';position:absolute;bottom:0;left:0;right:0;height:2px;transform:scaleX(0);transform-origin:left;transition:transform .25s
}
body.page-index .feature-card.g::after {
background:var(--jb)
}
body.page-index .feature-card.e::after {
background:var(--et)
}
body.page-index .feature-card.gr::after {
background:var(--ul)
}
body.page-index .feature-card:hover {
border-color:var(--jg)
}
body.page-index .feature-card.e:hover {
border-color:var(--et)
}
body.page-index .feature-card.gr:hover {
border-color:var(--ul)
}
body.page-index .feature-card:hover::after {
transform:scaleX(1)
}
body.page-index .feature-card-top {
padding:26px 22px 18px;flex:1
}
body.page-index .feature-card-badge {
font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;padding:3px 10px;margin-bottom:14px;display:inline-block
}
body.page-index .feature-card-badge.g {
background:rgba(45,66,32,.5);border:1px solid var(--jm);color:var(--jp)
}
body.page-index .feature-card-badge.e {
background:rgba(46,28,12,.5);border:1px solid var(--eb);color:var(--es)
}
body.page-index .feature-card-badge.gr {
background:rgba(42,42,42,.8);border:1px solid var(--um);color:var(--ul)
}
body.page-index .feature-card-icon {
width:44px;height:44px;margin-bottom:16px;opacity:.9
}
body.page-index .feature-card-title {
font-family:var(--disp);font-size:22px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--uw);margin-bottom:8px;line-height:1
}
body.page-index .feature-card-desc {
font-family:var(--body);font-size:14px;color:var(--ug);line-height:1.55
}
body.page-index .feature-card-foot {
border-top:1px solid var(--um);padding:13px 22px;display:flex;align-items:center;justify-content:space-between
}
body.page-index .feature-card-label {
font-family:var(--mono);font-size:10px;letter-spacing:.12em;text-transform:uppercase
}
body.page-index .feature-card.g .feature-card-label {
color:var(--jg)
}
body.page-index .feature-card.e .feature-card-label {
color:var(--et)
}
body.page-index .feature-card.gr .feature-card-label {
color:var(--ul)
}
body.page-index .feature-card-arrow {
font-family:var(--mono);font-size:13px;color:var(--um);transition:color .18s
}
body.page-index .feature-card:hover .feature-card-arrow {
color:var(--jp)
}
body.page-index /* ABOUT */
.about-grid {
display:grid;grid-template-columns:1fr 340px;gap:48px;margin-bottom:60px;align-items:start
}
body.page-index .about-heading {
font-family:var(--disp);font-size:34px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--uw);margin-bottom:16px;line-height:1
}
body.page-index .about-heading span {
color:var(--jb)
}
body.page-index .about-body {
font-family:var(--body);font-size:15px;color:var(--ul);line-height:1.7;margin-bottom:14px
}
body.page-index .about-body a {
color:var(--es);text-decoration:none;border-bottom:1px solid var(--eb);transition:border-color .15s
}
body.page-index .about-body a:hover {
border-color:var(--et)
}
body.page-index .about-body strong {
color:var(--up);font-weight:500
}
body.page-index /* QUICK LINKS */
.quick-link-list {
display:flex;flex-direction:column;gap:1px
}
body.page-index .quick-link-header {
font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ug);padding:10px 16px;background:var(--uc);border:1px solid var(--um);border-bottom:none
}
body.page-index .quick-link-item {
background:var(--ud);border:1px solid var(--um);border-top:none;padding:11px 16px;display:flex;align-items:center;justify-content:space-between;text-decoration:none;transition:background .15s
}
body.page-index .quick-link-item:hover {
background:rgba(26,38,18,.5)
}
body.page-index .quick-link-name {
font-family:var(--body);font-size:14px;font-weight:500;color:var(--up)
}
body.page-index .quick-link-tag {
font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px
}
body.page-index .quick-link-tag.live {
background:rgba(42,107,58,.25);border:1px solid #2a6b3a;color:#5fcb78
}
body.page-index .quick-link-tag.ext {
background:rgba(62,62,62,.4);border:1px solid var(--um);color:var(--ul)
}
body.page-index .quick-link-tag.resource-card {
background:rgba(45,66,32,.3);border:1px solid var(--jm);color:var(--jp)
}
body.page-index /* FOOTER */
.lin-footer {
background:var(--jd);border-top:1px solid var(--jm);padding:40px 32px
}
body.page-index .footer-inner {
max-width:1280px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr 1fr;gap:40px
}
body.page-index .footer-col-heading {
font-family:var(--mono);font-size:10px;letter-spacing:.2em;text-transform:uppercase;color:var(--ug);margin-bottom:12px
}
body.page-index .footer-disclaimer {
font-family:var(--mono);font-size:10px;color:var(--ug);line-height:1.6
}
body.page-index .footer-bottom-bar {
max-width:1280px;margin:24px auto 0;padding-top:18px;border-top:1px solid var(--um);display:flex;align-items:center;justify-content:space-between;font-family:var(--mono);font-size:10px;color:var(--ug)
}
@media(max-width:1100px) {
body.page-index .page-hero-inner {
grid-template-columns:1fr
}
body.page-index .hero-sidebar-cards {
display:grid;grid-template-columns:1fr 1fr
}
body.page-index .hero-title {
font-size:58px
}
body.page-index .about-grid {
grid-template-columns:1fr
}
body.page-index .footer-inner {
grid-template-columns:1fr 1fr
}
}
body.page-index /* ── HAMBURGER / MOBILE NAV ─────────────────────────────────────── */
.hamburger-btn {
display:none;flex-direction:column;justify-content:center;gap:5px;
  width:40px;height:40px;background:transparent;border:1px solid var(--um);
  cursor:pointer;padding:9px;flex-shrink:0;transition:border-color .15s
}
@media(max-width:800px) {
body.page-index .feature-card-grid {
grid-template-columns:1fr
}
body.page-index .hero-sidebar-cards {
grid-template-columns:1fr
}
body.page-index .header-nav {
display:none
}
body.page-index .hamburger-btn {
display:flex
}
body.page-index .hero-title {
font-size:44px
}
body.page-index .footer-inner {
grid-template-columns:1fr
}
body.page-index .footer-bottom-bar {
flex-direction:column;gap:8px;text-align:center
}
body.page-index .hero {
padding:56px 20px 46px
}
body.page-index .content-wrapper {
padding:40px 20px
}
}
body.page-index .resource-grid {
display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:16px;margin-bottom:40px
}
body.page-index .resource-card {
display:flex;flex-direction:column;gap:8px;padding:22px 20px;background:var(--gs);border:1px solid var(--jm);text-decoration:none;transition:border-color .18s,background .18s
}
body.page-index .resource-card:hover {
border-color:var(--jg);background:rgba(26,38,18,.7)
}
body.page-index .resource-card svg {
width:34px;height:34px;flex-shrink:0
}
body.page-index .resource-name {
font-family:var(--disp);font-size:15px;font-weight:600;letter-spacing:.06em;text-transform:uppercase;color:var(--uw);margin-top:4px
}
body.page-index .resource-desc {
font-family:var(--body);font-size:12px;color:var(--ug);line-height:1.55;flex:1
}
body.page-index .resource-cta {
font-family:var(--mono);font-size:11px;color:var(--jg);letter-spacing:.08em;margin-top:8px
}

/* ====== PAGE: TRACKER ====== */
body.page-tracker /* HEADER */
.lin-header {
background:var(--jd);border-bottom:2px solid var(--jg);position:sticky;top:0;z-index:100
}
body.page-tracker .header-status-badge {
font-family:var(--mono);font-size:10px;background:var(--jm);color:var(--jp);border:1px solid var(--jg);padding:4px 10px;letter-spacing:.15em;text-transform:uppercase
}
body.page-tracker /* TICKER */
.ticker {
background:var(--ed);border-bottom:1px solid var(--eb);padding:6px 0;overflow:hidden;white-space:nowrap
}
body.page-tracker .ticker-track {
display:inline-flex;animation:linTickCountdown 50s linear infinite
}
body.page-tracker .ticker-item {
font-family:var(--mono);font-size:11px;color:var(--es);letter-spacing:.1em;padding:0 30px
}
body.page-tracker .ticker-sep {
color:var(--eb);padding:0 6px
}
@keyframes linTickCountdown{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
body.page-tracker /* MAIN */
.content-wrapper {
max-width:1200px;margin:0 auto;padding:36px 24px
}
body.page-tracker /* HERO GRID */
.tracker-layout {
display:grid;grid-template-columns:1fr 370px;gap:24px;margin-bottom:36px;align-items:start
}
body.page-tracker /* TRACKER CARD */
.intel-card {
background:var(--ud);border:1px solid var(--jg);position:relative;overflow:hidden
}
body.page-tracker .intel-card::before {
content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--jm),var(--jb),var(--jm))
}
body.page-tracker .card-header {
background:var(--jd);border-bottom:1px solid var(--jm);padding:13px 20px;display:flex;align-items:center;justify-content:space-between
}
body.page-tracker .card-heading {
font-family:var(--disp);font-size:12px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--jb)
}
body.page-tracker .card-body {
padding:26px 22px
}
body.page-tracker .target-eyebrow {
font-family:var(--mono);font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--ug);margin-bottom:4px
}
body.page-tracker .target-callsign {
font-family:var(--disp);font-size:56px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--uw);line-height:.92
}
body.page-tracker .location-panel {
margin-top:22px;padding:15px 18px;background:rgba(26,38,18,.7);border-left:3px solid var(--jg)
}
body.page-tracker .location-eyebrow {
font-family:var(--mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ug);margin-bottom:5px
}
body.page-tracker .location-name {
font-family:var(--disp);font-size:26px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--es)
}
body.page-tracker .location-detail {
font-family:var(--mono);font-size:11px;color:var(--ug);margin-top:3px;letter-spacing:.07em
}
body.page-tracker .intel-video {
width:100%;max-height:200px;object-fit:cover;display:block;margin:12px 0 16px;border:1px solid var(--jm);opacity:.82
}
body.page-tracker .location-preview {
margin-top:14px;overflow:hidden;border:1px solid var(--jm);background:var(--jd)
}
body.page-tracker .location-preview img {
width:100%;height:175px;object-fit:cover;object-position:center;display:block;opacity:.88
}
body.page-tracker .location-preview-label {
font-family:var(--mono);font-size:8px;letter-spacing:.18em;text-transform:uppercase;color:var(--jg);padding:5px 10px;border-top:1px solid var(--jm)
}
body.page-tracker .grid-refs {
margin-top:14px;display:grid;grid-template-columns:1fr;gap:10px
}
body.page-tracker .grid-ref {
background:var(--uc);border:1px solid var(--um);padding:9px 13px
}
body.page-tracker .grid-ref-label {
font-family:var(--mono);font-size:9px;letter-spacing:.18em;text-transform:uppercase;color:var(--ug);margin-bottom:3px
}
body.page-tracker .grid-ref-value {
font-family:var(--mono);font-size:15px;color:var(--jp)
}
body.page-tracker .update-row {
margin-top:18px;padding-top:15px;border-top:1px solid var(--um);display:flex;align-items:center;justify-content:space-between
}
body.page-tracker .update-meta {
font-family:var(--mono);font-size:11px;color:var(--ug);letter-spacing:.07em
}
body.page-tracker .update-meta strong {
color:var(--et);font-weight:400
}
body.page-tracker .action-row {
display:flex;gap:8px
}
body.page-tracker .btn-solid {
font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--jd);background:var(--jb);border:none;padding:8px 16px;cursor:pointer;text-decoration:none;display:inline-block;transition:background .15s
}
body.page-tracker .btn-solid:hover {
background:var(--jp)
}
body.page-tracker .btn-ghost {
font-family:var(--body);font-size:12px;font-weight:600;letter-spacing:.13em;text-transform:uppercase;color:var(--ul);background:transparent;border:1px solid var(--um);padding:7px 13px;cursor:pointer;text-decoration:none;display:inline-block;transition:all .15s
}
body.page-tracker .btn-ghost:hover {
color:var(--uw);border-color:var(--ul)
}
body.page-tracker /* TIMER CARD */
.countdown-card {
background:var(--ud);border:1px solid var(--eb);position:relative;overflow:hidden
}
body.page-tracker .countdown-card::before {
content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--ed),var(--et),var(--ed))
}
body.page-tracker .countdown-body {
padding:24px 22px;text-align:center
}
body.page-tracker .countdown-label {
font-family:var(--mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ug);margin-bottom:14px
}
body.page-tracker .countdown-display {
display:flex;justify-content:center;gap:3px;margin-bottom:14px
}
body.page-tracker .countdown-unit {
display:flex;flex-direction:column;align-items:center
}
body.page-tracker .countdown-digit {
font-family:var(--mono);font-size:40px;color:var(--uw);line-height:1;min-width:56px;text-align:center
}
body.page-tracker .countdown-divider {
font-family:var(--mono);font-size:34px;color:var(--um);line-height:1;padding:2px 1px 0;align-self:flex-start
}
body.page-tracker .countdown-unit-name {
font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--ug);margin-top:3px
}
body.page-tracker .next-reset-note {
font-family:var(--mono);font-size:11px;color:var(--ug);letter-spacing:.07em
}
body.page-tracker .next-reset-note strong {
color:var(--et);font-weight:400
}
body.page-tracker .card-rule {
border:none;border-top:1px solid var(--um);margin:18px 0
}
body.page-tracker .rotation-history {
padding:0 22px 22px;display:flex;flex-direction:column;gap:6px
}
body.page-tracker .rotation-entry {
display:flex;justify-content:space-between;align-items:center;font-family:var(--mono);font-size:12px;padding:7px 11px;background:var(--uc);border-left:2px solid var(--um)
}
body.page-tracker .rotation-entry.cur {
border-left-color:var(--jg);background:rgba(45,66,32,.25)
}
body.page-tracker .rotation-week {
color:var(--ul);letter-spacing:.07em
}
body.page-tracker .rotation-location {
color:var(--up)
}
body.page-tracker .rotation-badge {
font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--jp);background:rgba(45,66,32,.5);border:1px solid var(--jm);padding:2px 7px
}
body.page-tracker /* TOOLS */
.resource-grid {
display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-bottom:36px
}
body.page-tracker .resource-card {
background:var(--ud);border:1px solid var(--um);padding:18px;text-decoration:none;display:block;transition:all .18s;position:relative;overflow:hidden
}
body.page-tracker .resource-card::after {
content:'';position:absolute;bottom:0;left:0;right:0;height:2px;background:var(--jm);transform:scaleX(0);transform-origin:left;transition:transform .22s
}
body.page-tracker .resource-card:hover {
border-color:var(--jg);background:rgba(26,38,18,.55)
}
body.page-tracker .resource-card:hover::after {
transform:scaleX(1)
}
body.page-tracker .resource-card svg {
width:32px;height:32px;margin-bottom:12px;opacity:.8
}
body.page-tracker .resource-name {
font-family:var(--disp);font-size:14px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--uw);margin-bottom:5px
}
body.page-tracker .resource-desc {
font-family:var(--body);font-size:13px;color:var(--ug);line-height:1.4
}
body.page-tracker .resource-cta {
margin-top:10px;font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--jg)
}
body.page-tracker /* FOOTER */
.lin-footer {
background:var(--jd);border-top:1px solid var(--jm);padding:28px 24px;margin-top:10px
}
body.page-tracker .footer-inner {
max-width:1200px;margin:0 auto;display:flex;align-items:center;justify-content:space-between
}
body.page-tracker /* TWO-LOCATION DISPLAY */
.cop-grid {
margin-top:22px;display:grid;grid-template-columns:1fr 1fr;gap:12px
}
body.page-tracker .cop-panel {
background:rgba(26,38,18,.7);border-left:3px solid var(--jg);padding:13px 15px;text-decoration:none;display:block;transition:border-color .18s,background .18s
}
body.page-tracker .cop-panel:hover {
border-left-color:var(--jb);background:rgba(26,38,18,.95)
}
body.page-tracker .cop-eyebrow {
font-family:var(--mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--ug);margin-bottom:5px
}
body.page-tracker .cop-location-name {
font-family:var(--disp);font-size:20px;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--es);line-height:1.1;margin-bottom:5px
}
body.page-tracker .cop-grid-ref {
font-family:var(--mono);font-size:11px;color:var(--ug);letter-spacing:.07em
}
body.page-tracker .cop-image-wrap {
margin-top:10px;overflow:hidden;border:1px solid var(--jm)
}
body.page-tracker .cop-image-wrap img {
width:100%;height:110px;object-fit:cover;object-position:center;display:block;opacity:.85
}
body.page-tracker .cop-tacmap-link {
margin-top:8px;font-family:var(--mono);font-size:9px;letter-spacing:.14em;text-transform:uppercase;color:var(--jg);opacity:.6;transition:opacity .18s
}
body.page-tracker .cop-panel:hover .cop-tacmap-link {
opacity:1
}
body.page-tracker /* ── HAMBURGER / MOBILE NAV ─────────────────────────────────────── */
.hamburger-btn {
display:none;flex-direction:column;justify-content:center;gap:5px;
  width:40px;height:40px;background:transparent;border:1px solid var(--um);
  cursor:pointer;padding:9px;flex-shrink:0;transition:border-color .15s
}
@media(max-width:900px) {
body.page-tracker .tracker-layout {
grid-template-columns:1fr
}
body.page-tracker .resource-grid {
grid-template-columns:1fr 1fr
}
body.page-tracker .blueprint-grid {
grid-template-columns:1fr 1fr
}
body.page-tracker .header-nav {
display:none
}
body.page-tracker .hamburger-btn {
display:flex
}
body.page-tracker .target-callsign {
font-size:40px
}
}
@media(max-width:600px) {
body.page-tracker .resource-grid {
grid-template-columns:1fr
}
body.page-tracker .blueprint-grid {
grid-template-columns:1fr
}
body.page-tracker .footer-inner {
flex-direction:column;gap:16px
}
body.page-tracker .cop-grid {
grid-template-columns:1fr
}
}

/* ====== PAGE: BOSSES ====== */
body.page-bosses /* ── HEADER ── */
.site-header {
background:var(--jd);border-bottom:2px solid var(--jg);position:sticky;top:0;z-index:100
}
body.page-bosses /* ── HERO ── */
.hero {
background:var(--jd);border-bottom:1px solid var(--jm);padding:44px 32px 36px
}
body.page-bosses .hero-inner {
max-width:1140px;margin:0 auto
}
body.page-bosses .hero-eye {
display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--jb);margin-bottom:12px
}
body.page-bosses .hero-eye::before {
content:'';display:block;width:24px;height:1px;background:var(--jb)
}
body.page-bosses .hero-h1 {
font-family:var(--disp);font-size:clamp(36px,5vw,58px);font-weight:700;line-height:.95;letter-spacing:.04em;text-transform:uppercase;color:var(--uw);margin-bottom:10px
}
body.page-bosses .hero-h1 em {
color:var(--jb);font-style:normal
}
body.page-bosses .hero-sub {
font-family:var(--mono);font-size:10px;letter-spacing:.16em;text-transform:uppercase;color:var(--ug)
}
body.page-bosses /* ── BODY ── */
.page-body {
max-width:1140px;margin:0 auto;padding:36px 32px 56px
}
body.page-bosses .section-label {
display:flex;align-items:center;gap:12px;font-family:var(--mono);font-size:9px;letter-spacing:.22em;text-transform:uppercase;color:var(--jb);margin-bottom:16px
}
body.page-bosses .section-label::after {
content:'';flex:1;height:1px;background:var(--um)
}
body.page-bosses /* ── BOSS CARD GRID ── */
.boss-grid {
display:grid;grid-template-columns:repeat(4,1fr);gap:2px;background:var(--um);border:1px solid var(--um);margin-bottom:2px
}
body.page-bosses .boss-card {
background:var(--ud);padding:16px 16px 14px;cursor:pointer;position:relative;transition:background .14s,box-shadow .14s;display:flex;flex-direction:column;min-height:148px;overflow:hidden
}
body.page-bosses .boss-card::before {
content:'';position:absolute;top:0;left:0;right:0;height:3px
}
body.page-bosses .boss-card-fl::before {
background:linear-gradient(90deg,var(--et),var(--es))
}
body.page-bosses .boss-card-laf::before {
background:linear-gradient(90deg,var(--jg),var(--jb))
}
body.page-bosses .boss-card-st::before {
background:linear-gradient(90deg,var(--um),var(--ug))
}
body.page-bosses .boss-card:hover {
background:var(--uc)
}
body.page-bosses .boss-card:hover .bc-name {
color:#fff
}
body.page-bosses .boss-card:hover .bc-view {
opacity:1
}
body.page-bosses .boss-card.card-hidden {
display:none
}
body.page-bosses .bc-subject {
font-family:var(--mono);font-size:8px;letter-spacing:.2em;color:var(--ug);margin-bottom:10px;text-transform:uppercase
}
body.page-bosses .bc-name {
font-family:var(--disp);font-size:19px;font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--uw);line-height:1;margin-bottom:5px;transition:color .14s
}
body.page-bosses .bc-callsign {
font-family:var(--mono);font-size:9px;letter-spacing:.12em;text-transform:uppercase;color:var(--jb);flex:1;padding-bottom:12px
}
body.page-bosses .bc-footer {
display:flex;flex-wrap:wrap;gap:4px;align-items:center;margin-top:auto
}
body.page-bosses .bc-pill {
font-family:var(--mono);font-size:8px;letter-spacing:.07em;text-transform:uppercase;padding:2px 7px;border:1px solid var(--um);color:var(--ug);white-space:nowrap
}
body.page-bosses .bc-pill-fl {
border-color:var(--et);color:var(--es)
}
body.page-bosses .bc-pill-laf {
border-color:var(--jm);color:var(--jp)
}
body.page-bosses .bc-pill-st {
border-color:var(--ug);color:var(--up)
}
body.page-bosses .bc-view {
position:absolute;top:12px;right:12px;font-family:var(--mono);font-size:8px;letter-spacing:.14em;text-transform:uppercase;color:var(--jb);opacity:0;transition:opacity .14s
}
body.page-bosses /* ── BOSS DETAIL MODAL ── */
.boss-modal-overlay {
display:none;position:fixed;inset:0;background:rgba(0,0,0,.82);z-index:600;align-items:flex-start;justify-content:center;padding:32px 20px 40px;overflow-y:auto
}
body.page-bosses .boss-modal-overlay.open {
display:flex
}
body.page-bosses .boss-modal {
background:var(--ud);border:1px solid var(--um);width:100%;max-width:860px;position:relative;animation:bm-slide-in .2s ease
}
@keyframes bm-slide-in{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
body.page-bosses .bm-top-bar {
height:3px;width:100%
}
body.page-bosses .bm-top-bar-fl {
background:linear-gradient(90deg,var(--eb),var(--es),var(--et))
}
body.page-bosses .bm-top-bar-laf {
background:linear-gradient(90deg,var(--jd),var(--jb),var(--jp))
}
body.page-bosses .bm-top-bar-st {
background:linear-gradient(90deg,var(--um),var(--ul))
}
body.page-bosses .bm-close {
position:absolute;top:14px;right:16px;background:none;border:none;color:var(--ug);font-size:22px;cursor:pointer;transition:color .14s;line-height:1;z-index:1
}
body.page-bosses .bm-close:hover {
color:var(--up)
}
body.page-bosses .bm-head {
padding:22px 28px 0
}
body.page-bosses .bm-eyebrow {
font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--ug);margin-bottom:6px
}
body.page-bosses .bm-name {
font-family:var(--disp);font-size:clamp(28px,5vw,44px);font-weight:700;text-transform:uppercase;letter-spacing:.04em;color:var(--uw);line-height:.95;margin-bottom:6px
}
body.page-bosses .bm-callsign {
font-family:var(--mono);font-size:11px;letter-spacing:.16em;text-transform:uppercase;color:var(--jb);margin-bottom:20px
}
body.page-bosses .bm-body {
padding:18px 28px 28px
}
body.page-bosses .bm-portrait {
width:200px;height:200px;border:1px solid var(--jm);margin-bottom:24px;overflow:hidden;background:var(--uk)
}
body.page-bosses .bm-portrait img {
width:100%;height:100%;object-fit:cover;display:block
}
body.page-bosses .bm-stats {
display:grid;grid-template-columns:1fr 1fr;gap:0 40px
}
body.page-bosses .bm-stat {
display:flex;justify-content:space-between;align-items:baseline;font-family:var(--mono);font-size:10px;padding:7px 0;border-bottom:1px solid rgba(62,62,62,.5)
}
body.page-bosses .bm-stat-lbl {
color:var(--ug);text-transform:uppercase;letter-spacing:.1em
}
body.page-bosses .bm-stat-val {
color:var(--ul);text-align:right
}
body.page-bosses .bm-stat-val.hi {
color:var(--jp)
}
body.page-bosses /* shared badge/loot/loc styles used inside modal */
.type-badge {
font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;padding:2px 8px;border:1px solid var(--um);color:var(--ul)
}
body.page-bosses .type-faction {
border-color:var(--et);color:var(--es)
}
body.page-bosses .type-laf {
border-color:var(--jm);color:var(--jp)
}
body.page-bosses .type-starter {
border-color:var(--ug);color:var(--up)
}
body.page-bosses .diff {
display:flex;align-items:center;gap:5px
}
body.page-bosses .diff-pip {
width:8px;height:8px;border-radius:1px
}
body.page-bosses .diff-easy .diff-pip {
background:var(--jb)
}
body.page-bosses .diff-mid  .diff-pip {
background:var(--et)
}
body.page-bosses .diff-hard .diff-pip {
background:#c43030
}
body.page-bosses .loot-tag {
background:rgba(45,66,32,.3);border:1px solid var(--jm);color:var(--jp);font-family:var(--mono);font-size:9px;letter-spacing:.08em;padding:2px 8px;display:inline-block
}
body.page-bosses .loc-list {
display:flex;flex-wrap:wrap;gap:4px;justify-content:flex-end
}
body.page-bosses .loc-pill {
background:var(--uc);border:1px solid var(--um);color:var(--up);font-family:var(--mono);font-size:9px;letter-spacing:.06em;padding:2px 7px
}
body.page-bosses .loc-pill.loc-link {
color:var(--jb);border-color:var(--jm);text-decoration:none;cursor:pointer;transition:background .15s,color .15s
}
body.page-bosses .loc-pill.loc-link:hover {
background:var(--jm);color:var(--jp)
}
body.page-bosses .report-loc-btn {
display:inline-flex;align-items:center;gap:6px;margin-top:10px;font-family:var(--mono);font-size:9px;letter-spacing:.1em;text-transform:uppercase;color:var(--jg);background:transparent;border:1px solid var(--jm);padding:4px 10px;cursor:pointer;transition:color .15s,border-color .15s
}
body.page-bosses .report-loc-btn:hover {
color:var(--jp);border-color:var(--jg)
}
body.page-bosses /* ── LOCATION REPORT MODAL ── */
.modal-overlay {
display:none;position:fixed;inset:0;background:rgba(0,0,0,.7);z-index:700;align-items:center;justify-content:center
}
body.page-bosses .modal-overlay.open {
display:flex
}
body.page-bosses .modal {
background:var(--jd);border:1px solid var(--jm);border-top:2px solid var(--jg);width:100%;max-width:480px;padding:28px 28px 24px;position:relative
}
body.page-bosses .modal-title {
font-family:var(--disp);font-size:16px;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:var(--jp);margin-bottom:4px
}
body.page-bosses .modal-sub {
font-family:var(--mono);font-size:10px;color:var(--ug);margin-bottom:20px;letter-spacing:.06em
}
body.page-bosses .modal-close {
position:absolute;top:14px;right:16px;background:none;border:none;color:var(--ug);font-size:18px;cursor:pointer;transition:color .15s
}
body.page-bosses .modal-close:hover {
color:var(--up)
}
body.page-bosses .modal label {
display:block;font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--ug);margin-bottom:5px
}
body.page-bosses .modal input[type=text], body.page-bosses .modal input[type=number], body.page-bosses .modal textarea {
width:100%;background:var(--uk);border:1px solid var(--um);color:var(--up);font-family:var(--mono);font-size:12px;padding:8px 10px;margin-bottom:14px;outline:none;transition:border-color .15s
}
body.page-bosses .modal input[type=text]:focus, body.page-bosses .modal input[type=number]:focus, body.page-bosses .modal textarea:focus {
border-color:var(--jg)
}
body.page-bosses .modal textarea {
resize:vertical;min-height:60px
}
body.page-bosses .modal-row {
display:grid;grid-template-columns:1fr 1fr;gap:12px
}
body.page-bosses .modal-captcha {
background:var(--uk);border:1px solid var(--um);padding:10px 12px;margin-bottom:14px;display:flex;align-items:center;gap:10px;font-family:var(--mono);font-size:12px
}
body.page-bosses .modal-captcha span {
color:var(--jp);font-weight:600
}
body.page-bosses .modal-captcha input {
flex:1;min-width:0;background:transparent;border:none;border-bottom:1px solid var(--um);color:var(--up);font-family:var(--mono);font-size:13px;padding:2px 4px;outline:none
}
body.page-bosses .modal-submit {
width:100%;background:var(--jg);border:none;color:#fff;font-family:var(--disp);font-size:13px;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:10px;cursor:pointer;transition:background .15s;margin-top:4px
}
body.page-bosses .modal-submit:hover {
background:var(--jb)
}
body.page-bosses .modal-msg {
font-family:var(--mono);font-size:11px;margin-top:10px;display:none;padding:8px 10px
}
body.page-bosses .modal-msg.ok {
display:block;background:rgba(74,103,65,.15);border:1px solid var(--jm);color:var(--jp)
}
body.page-bosses .modal-msg.err {
display:block;background:rgba(90,30,30,.2);border:1px solid #5a1e1e;color:#e07070
}
body.page-bosses /* ── FOOTER ── */
.lin-footer {
background:var(--jd);border-top:1px solid var(--jm);padding:20px 24px;display:flex;align-items:center;justify-content:space-between
}
body.page-bosses /* ── HAMBURGER / MOBILE NAV ── */
.hamburger-btn {
display:none;flex-direction:column;justify-content:center;gap:5px;width:40px;height:40px;background:transparent;border:1px solid var(--um);cursor:pointer;padding:9px;flex-shrink:0;transition:border-color .15s
}
body.page-bosses /* ── RESPONSIVE ── */
@media(max-width:960px) {
.boss-grid{grid-template-columns:repeat(3,1fr)}
}
@media(max-width:700px) {
body.page-bosses .header-nav {
display:none
}
body.page-bosses .hamburger-btn {
display:flex
}
body.page-bosses .hero {
padding:28px 20px
}
body.page-bosses .page-body {
padding:24px 16px 40px
}
body.page-bosses .boss-grid {
grid-template-columns:repeat(2,1fr)
}
body.page-bosses .bm-stats {
grid-template-columns:1fr
}
body.page-bosses .boss-modal-overlay {
padding:16px 12px 24px
}
}
@media(max-width:400px) {
body.page-bosses .boss-grid {
grid-template-columns:1fr
}
}

/* ====== PAGE: AMMO ====== */
body.page-ammo /* HEADER */
.lin-header {
background:var(--jd);border-bottom:2px solid var(--jg);position:sticky;top:0;z-index:100
}
body.page-ammo /* PAGE WRAPPER */
.ammo-wrapper {
max-width:var(--max);margin:0 auto;padding:0 16px
}
body.page-ammo /* CONTROL BAR */
.ammo-filter-bar {
background:var(--ud);border-bottom:2px solid var(--jg);position:sticky;top:64px;z-index:50
}
body.page-ammo .filter-bar-content {
max-width:var(--max);margin:0 auto;padding:12px 16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap
}
body.page-ammo .caliber-picker {
background:var(--uc);border:1px solid var(--um);color:var(--uw);
  font-family:var(--mono);font-size:12px;letter-spacing:.04em;
  padding:8px 32px 8px 12px;outline:none;cursor:pointer;
  transition:border-color .15s;appearance:none;-webkit-appearance:none;
  background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%235a5a5a'/%3E%3C/svg%3E");
  background-repeat:no-repeat;background-position:right 10px center;
  min-width:190px
}
body.page-ammo .caliber-picker:focus {
border-color:var(--jg)
}
body.page-ammo .caliber-picker option {
background:var(--uc)
}
body.page-ammo .ammo-search-wrap {
flex:1;display:flex;align-items:center;gap:8px;background:var(--uc);border:1px solid var(--um);padding:0 10px;min-width:200px;transition:border-color .15s
}
body.page-ammo .ammo-search-wrap:focus-within {
border-color:var(--jg)
}
body.page-ammo .search-icon {
color:var(--ug);flex-shrink:0
}
body.page-ammo .search-input {
flex:1;background:transparent;border:none;outline:none;color:var(--uw);font-family:var(--mono);font-size:13px;padding:8px 0;letter-spacing:.04em
}
body.page-ammo .search-input::placeholder {
color:var(--ug)
}
body.page-ammo .search-clear-btn {
font-family:var(--mono);font-size:10px;color:var(--ug);cursor:pointer;padding:2px 7px;border:1px solid var(--um);background:transparent;transition:all .14s;display:none;white-space:nowrap;flex-shrink:0
}
body.page-ammo .search-clear-btn:hover {
color:var(--up);border-color:var(--ug)
}
body.page-ammo .search-tally {
font-family:var(--mono);font-size:10px;color:var(--ug);white-space:nowrap;flex-shrink:0
}
body.page-ammo /* MAIN */
.ammo-content {
padding:24px 0 0
}
body.page-ammo /* CALIBER SECTION */
.caliber-group {
max-width:var(--max);margin:0 auto 24px;border:1px solid var(--um)
}
body.page-ammo .caliber-group.hidden {
display:none
}
body.page-ammo .caliber-group-header {
background:var(--uc);border-bottom:1px solid var(--um);padding:12px 18px;display:flex;align-items:center;justify-content:space-between
}
body.page-ammo .caliber-group-name {
font-family:var(--disp);font-size:20px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--uw)
}
body.page-ammo .caliber-header-actions {
display:flex;align-items:center;gap:14px
}
body.page-ammo .caliber-round-count {
font-family:var(--mono);font-size:10px;color:var(--ug);letter-spacing:.1em
}
body.page-ammo .caliber-wiki-link {
font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;color:var(--et);text-decoration:none;border-bottom:1px solid var(--eb);transition:color .14s
}
body.page-ammo .caliber-wiki-link:hover {
color:var(--es)
}
body.page-ammo /* TABLE */
.ammo-table-wrap {
overflow-x:auto
}
body.page-ammo .ammo-data-table {
width:100%;border-collapse:collapse;table-layout:fixed
}
body.page-ammo /* SORTABLE HEADERS */
.ammo-data-table th {
font-family:var(--mono);font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;
  color:var(--up);padding:10px 12px;background:var(--ud);
  border-bottom:2px solid var(--um);
  white-space:nowrap;user-select:none
}
body.page-ammo .ammo-data-table th.col-sortable {
cursor:pointer;transition:color .12s,background .12s
}
body.page-ammo .ammo-data-table th.col-sortable:hover {
color:var(--uw);background:rgba(255,255,255,.04)
}
body.page-ammo .ammo-data-table th.col-sort-active {
color:var(--jb) !important;border-bottom-color:var(--jg) !important
}
body.page-ammo .sort-indicator {
font-size:11px;margin-left:4px;opacity:.7;display:inline-block;min-width:10px
}
body.page-ammo .ammo-data-table td {
padding:8px 12px;border-bottom:1px solid rgba(62,62,62,.3);vertical-align:middle
}
body.page-ammo .ammo-data-table tr:last-child td {
border-bottom:none
}
body.page-ammo .ammo-data-table tr:hover td {
background:rgba(255,255,255,.025)
}
body.page-ammo .ammo-data-table tr.row-hidden {
display:none
}
body.page-ammo .th-right, body.page-ammo .td-right {
text-align:right
}
body.page-ammo .th-center, body.page-ammo .td-center {
text-align:center
}
body.page-ammo /* IMAGE CELL */
.col-image {
width:50px;padding:4px 8px 4px 12px
}
body.page-ammo .round-image {
width:38px;height:38px;object-fit:contain;background:var(--uc);border:1px solid var(--um)
}
body.page-ammo .round-image-placeholder {
width:38px;height:38px;background:var(--uc);border:1px solid var(--um);display:flex;align-items:center;justify-content:center;color:var(--um)
}
body.page-ammo /* NAME CELL */
.col-name a {
font-family:var(--body);font-size:15px;font-weight:500;color:var(--uw);text-decoration:none;border-bottom:1px dotted var(--um);transition:all .14s
}
body.page-ammo .col-name a:hover {
color:var(--es);border-color:var(--et)
}
body.page-ammo .col-name span {
font-family:var(--body);font-size:15px;font-weight:500;color:var(--uw)
}
body.page-ammo /* STAT CELLS */
.col-stat {
font-family:var(--mono);font-size:13px;color:var(--up);white-space:nowrap
}
body.page-ammo .col-stat.dim {
color:var(--ug)
}
body.page-ammo /* PRICE CELL */
.price-cell {
display:flex;justify-content:flex-end;align-items:center;gap:4px
}
body.page-ammo .price-amount {
font-family:var(--mono);font-size:13px;color:var(--es)
}
body.page-ammo .price-amount.no-price {
color:var(--ug)
}
body.page-ammo /* TRADER CELL */
.vendor-cell {
font-family:var(--mono);font-size:12px;color:var(--up);white-space:nowrap
}
body.page-ammo .vendor-cell .vendor-name {
color:var(--et)
}
body.page-ammo .vendor-cell .vendor-level {
color:var(--ug);font-size:11px
}
body.page-ammo .vendor-cell.vendor-loot-only {
color:var(--ug);font-style:italic
}
body.page-ammo /* GOOD AGAINST BADGE */
.armor-class-badge {
display:inline-block;font-family:var(--mono);font-size:11px;letter-spacing:.06em;text-transform:uppercase;padding:3px 8px;min-width:52px;text-align:center;white-space:nowrap
}
body.page-ammo .ac-none {
background:rgba(58,58,58,.4);  border:1px solid var(--um);   color:var(--ug)
}
body.page-ammo .ac-armor-i {
background:rgba(80,80,80,.3);  border:1px solid #606060;     color:#909090
}
body.page-ammo .ac-iia {
background:rgba(80,80,60,.3);  border:1px solid #706040;     color:#a09060
}
body.page-ammo .ac-iia-plus {
background:rgba(90,70,40,.3);  border:1px solid #806040;     color:#b08850
}
body.page-ammo .ac-iiia {
background:rgba(120,100,0,.3); border:1px solid #c4a000;     color:#e0c030
}
body.page-ammo .ac-iiia-plus {
background:rgba(140,90,0,.3);  border:1px solid #d47800;     color:#e09030
}
body.page-ammo .ac-iii {
background:rgba(150,70,10,.3); border:1px solid #d46820;     color:#e08040
}
body.page-ammo .ac-iii-plus {
background:rgba(160,50,20,.3); border:1px solid #d04030;     color:#e06050
}
body.page-ammo .ac-iii-plusplus {
background:rgba(0,120,100,.25);border:1px solid #20c0b0;     color:#40d8c8
}
body.page-ammo /* EMPTY / STATES */
.caliber-no-results {
padding:28px;font-family:var(--mono);font-size:11px;color:var(--ug);letter-spacing:.08em;text-align:center
}
body.page-ammo .ammo-empty-state {
display:flex;flex-direction:column;align-items:center;justify-content:center;padding:80px 40px;text-align:center
}
body.page-ammo .empty-heading {
font-family:var(--disp);font-size:22px;letter-spacing:.1em;text-transform:uppercase;color:var(--ug);margin-bottom:10px
}
body.page-ammo .empty-detail {
font-family:var(--mono);font-size:11px;color:var(--ug);line-height:1.7
}
body.page-ammo .empty-detail a {
color:var(--et);text-decoration:none
}
body.page-ammo .global-no-results {
max-width:var(--max);margin:32px auto;padding:28px;font-family:var(--mono);font-size:11px;color:var(--ug);letter-spacing:.08em;text-align:center;border:1px solid var(--um)
}
body.page-ammo /* FOOTER */
.lin-footer {
background:var(--jd);border-top:1px solid var(--jm);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;margin-top:32px
}
body.page-ammo /* MOBILE CARD GRID */
.mobile-card-list {
display:none
}
body.page-ammo /* ── HAMBURGER / MOBILE NAV ─────────────────────────────────────── */
.hamburger-btn {
display:none;flex-direction:column;justify-content:center;gap:5px;
  width:40px;height:40px;background:transparent;border:1px solid var(--um);
  cursor:pointer;padding:9px;flex-shrink:0;transition:border-color .15s
}
@media(max-width:640px) {
body.page-ammo .header-nav {
display:none
}
body.page-ammo .hamburger-btn {
display:flex
}
body.page-ammo .caliber-picker {
min-width:130px
}
body.page-ammo .ammo-table-wrap {
display:none
}
body.page-ammo .mobile-card-list {
display:flex;flex-direction:column;gap:8px;padding:8px 10px
}
}
body.page-ammo /* card anatomy */
.round-mobile-card {
background:var(--uc);border:1px solid var(--um);padding:10px 12px;display:flex;flex-direction:column;gap:8px
}
body.page-ammo .round-mobile-card.row-hidden {
display:none
}
body.page-ammo /* title bar across the top */
.round-card-title {
font-family:var(--body);font-size:15px;font-weight:600;color:var(--uw);line-height:1.2;border-bottom:1px solid var(--um);padding-bottom:7px
}
body.page-ammo .round-card-title a {
color:var(--uw);text-decoration:none;border-bottom:1px dotted var(--um)
}
body.page-ammo /* body: image left, body.page-ammo stats right */
.round-card-body {
display:flex;align-items:flex-start;gap:12px
}
body.page-ammo .round-card-image {
width:72px;height:72px;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:var(--ud);border:1px solid var(--um)
}
body.page-ammo .round-card-image img {
width:72px;height:72px;object-fit:contain
}
body.page-ammo /* stacked stats */
.round-card-stats {
flex:1;display:grid;grid-template-columns:1fr 1fr;gap:8px 12px
}
body.page-ammo .round-stat {
display:flex;flex-direction:column;gap:2px
}
body.page-ammo .stat-key {
font-family:var(--mono);font-size:10px;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--jb)
}
body.page-ammo .stat-val {
font-family:var(--mono);font-size:13px;color:var(--up)
}
body.page-ammo .stat-val.dim {
color:var(--ug)
}
body.page-ammo .stat-val.green {
color:var(--es)
}
body.page-ammo /* footer: trader + badge */
.round-card-foot {
display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--um);padding-top:7px
}
body.page-ammo .round-armor-class {
display:flex;flex-direction:column;align-items:flex-end;gap:3px
}
body.page-ammo .round-vendor {
font-family:var(--mono);font-size:11px;color:var(--up)
}
body.page-ammo .round-vendor .vendor-name {
color:var(--et)
}
body.page-ammo .round-vendor .vendor-level {
color:var(--ug);font-size:10px
}
body.page-ammo .round-vendor.vendor-loot-only {
color:var(--ug);font-style:italic;font-size:11px
}

/* ====== PAGE: BLUEPRINTS ====== */
body.page-blueprints /* HEADER */
.lin-header {
background:var(--jd);border-bottom:2px solid var(--jg);position:sticky;top:0;z-index:100
}
body.page-blueprints /* HERO */
.hero {
background:var(--jd);border-bottom:1px solid var(--jm);padding:32px 24px 28px
}
body.page-blueprints .page-hero-inner {
max-width:1200px;margin:0 auto
}
body.page-blueprints .hero-eyebrow {
font-family:var(--mono);font-size:9px;letter-spacing:.28em;text-transform:uppercase;color:var(--jg);margin-bottom:8px
}
body.page-blueprints .page-heading {
font-family:var(--disp);font-size:42px;font-weight:700;letter-spacing:.07em;text-transform:uppercase;color:var(--uw);line-height:1;margin-bottom:6px
}
body.page-blueprints .page-heading em {
font-style:normal;color:var(--jb)
}
body.page-blueprints .page-subheading {
font-family:var(--mono);font-size:11px;color:var(--ug);letter-spacing:.1em
}
body.page-blueprints /* MAIN */
.content-wrapper {
max-width:1200px;margin:0 auto;padding:32px 24px
}
body.page-blueprints /* FILTER BAR */
.bp-controls {
display:flex;align-items:center;gap:12px;margin-bottom:28px;flex-wrap:wrap
}
body.page-blueprints .collection-progress {
display:flex;align-items:center;gap:10px
}
body.page-blueprints .progress-track {
width:160px;height:6px;background:var(--uc);border:1px solid var(--um);overflow:hidden
}
body.page-blueprints .progress-indicator {
height:100%;background:var(--jb);transition:width .4s ease
}
body.page-blueprints .progress-readout {
font-family:var(--mono);font-size:11px;color:var(--ug);letter-spacing:.08em;white-space:nowrap
}
body.page-blueprints .progress-readout strong {
color:var(--et);font-weight:400
}
body.page-blueprints .controls-spacer {
flex:1
}
body.page-blueprints .view-filter-group {
display:flex;gap:6px
}
body.page-blueprints .view-filter-btn {
font-family:var(--mono);font-size:10px;letter-spacing:.1em;text-transform:uppercase;padding:5px 12px;border:1px solid var(--um);background:transparent;color:var(--ug);cursor:pointer;transition:all .14s
}
body.page-blueprints .view-filter-btn:hover {
color:var(--up);border-color:var(--ul)
}
body.page-blueprints .view-filter-btn.active {
color:var(--jp);border-color:var(--jg);background:rgba(74,103,65,.15)
}
body.page-blueprints .ammo-search-wrap {
display:flex;align-items:center;gap:6px;background:var(--uc);border:1px solid var(--um);padding:0 10px;transition:border-color .15s
}
body.page-blueprints .ammo-search-wrap:focus-within {
border-color:var(--jg)
}
body.page-blueprints .search-input {
background:transparent;border:none;outline:none;color:var(--uw);font-family:var(--mono);font-size:11px;padding:6px 0;letter-spacing:.04em;width:180px
}
body.page-blueprints .search-input::placeholder {
color:var(--ug)
}
body.page-blueprints /* BLUEPRINT GRID */
.blueprint-grid {
display:grid;grid-template-columns:repeat(auto-fill,minmax(320px,1fr));gap:14px
}
body.page-blueprints .blueprint-card {
background:var(--ud);border:1px solid var(--um);display:flex;gap:0;transition:border-color .18s;position:relative
}
body.page-blueprints .blueprint-card.fnd {
border-color:var(--jm);background:rgba(26,38,18,.5)
}
body.page-blueprints .blueprint-card.hidden {
display:none
}
body.page-blueprints /* IMAGE COLUMN */
.bp-image-column {
width:72px;flex-shrink:0;background:var(--uc);border-right:1px solid var(--um);display:flex;align-items:stretch;justify-content:center;cursor:pointer;overflow:hidden;position:relative;transition:opacity .15s
}
body.page-blueprints .bp-image-column:hover {
opacity:.85
}
body.page-blueprints .bp-image-column img {
width:72px;height:100%;object-fit:cover;object-position:center;display:block
}
body.page-blueprints .bp-image-placeholder {
width:72px;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:6px;padding:16px 8px;min-height:110px
}
body.page-blueprints .placeholder-icon {
color:var(--um)
}
body.page-blueprints .placeholder-label {
font-family:var(--mono);font-size:8px;color:var(--ug);letter-spacing:.1em;text-align:center;text-transform:uppercase;line-height:1.3
}
body.page-blueprints .zoom-hint {
position:absolute;bottom:4px;right:4px;background:rgba(0,0,0,.55);border:1px solid rgba(255,255,255,.1);padding:2px 5px;font-family:var(--mono);font-size:8px;color:var(--ul);pointer-events:none;opacity:0;transition:opacity .14s
}
body.page-blueprints .bp-image-column:hover .zoom-hint {
opacity:1
}
body.page-blueprints /* CONTENT COLUMN */
.blueprint-details {
flex:1;padding:13px 14px;min-width:0;display:flex;flex-direction:column
}
body.page-blueprints .bp-weapon-title {
font-family:var(--disp);font-size:17px;font-weight:500;letter-spacing:.07em;text-transform:uppercase;color:var(--uw);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
body.page-blueprints .bp-camo-tag {
font-family:var(--mono);font-size:10px;letter-spacing:.09em;color:var(--ug);text-transform:uppercase;margin-bottom:5px
}
body.page-blueprints .bp-spawn-location {
font-family:var(--mono);font-size:10px;color:var(--et);margin-bottom:8px;display:flex;align-items:center;gap:2px;flex-wrap:nowrap
}
body.page-blueprints .bp-spawn-location::before {
content:'>';color:var(--jg)
}
body.page-blueprints .bp-meta-bar {
display:flex;justify-content:space-between;align-items:center;padding-top:8px;border-top:1px solid var(--um);gap:6px;flex-wrap:wrap;margin-top:auto
}
body.page-blueprints .bp-weapon-class {
font-family:var(--mono);font-size:9px;color:var(--ug);flex:1;min-width:0;white-space:nowrap;overflow:hidden;text-overflow:ellipsis
}
body.page-blueprints .bp-action-row {
display:flex;gap:5px;align-items:center;flex-shrink:0
}
body.page-blueprints .collection-toggle {
font-family:var(--mono);font-size:9px;letter-spacing:.09em;text-transform:uppercase;padding:3px 9px;cursor:pointer;border:1px solid;transition:all .14s;background:none;user-select:none;white-space:nowrap
}
body.page-blueprints .collection-toggle.nf {
border-color:var(--sr);color:#e05555;background:rgba(139,32,32,.12)
}
body.page-blueprints .collection-toggle.nf:hover {
background:rgba(139,32,32,.28)
}
body.page-blueprints .collection-toggle.f {
border-color:#2a6b3a;color:#5fcb78;background:rgba(42,107,58,.18)
}
body.page-blueprints .collection-toggle.f:hover {
background:rgba(42,107,58,.34)
}
body.page-blueprints .locate-on-map-btn {
font-family:var(--mono);font-size:9px;letter-spacing:.09em;text-transform:uppercase;padding:3px 9px;cursor:pointer;border:1px solid var(--um);color:var(--ul);background:none;text-decoration:none;display:inline-block;transition:all .14s;white-space:nowrap
}
body.page-blueprints .locate-on-map-btn:hover {
border-color:var(--et);color:var(--es)
}
body.page-blueprints .locate-on-map-btn.dis {
opacity:.3;pointer-events:none
}
body.page-blueprints /* EMPTY STATE */
.bp-empty-state {
padding:60px 24px;text-align:center
}
body.page-blueprints .bp-empty-heading {
font-family:var(--disp);font-size:22px;letter-spacing:.1em;text-transform:uppercase;color:var(--ug);margin-bottom:8px
}
body.page-blueprints .bp-empty-detail {
font-family:var(--mono);font-size:11px;color:var(--ug)
}
body.page-blueprints /* LIGHTBOX */
.lightbox-overlay {
position:fixed;inset:0;background:rgba(0,0,0,.88);z-index:1000;display:flex;align-items:center;justify-content:center;opacity:0;pointer-events:none;transition:opacity .18s
}
body.page-blueprints .lightbox-overlay.open {
opacity:1;pointer-events:all
}
body.page-blueprints .lightbox-frame {
position:relative;max-width:90vw;max-height:90vh;display:flex;align-items:center;justify-content:center
}
body.page-blueprints .lightbox-frame img {
max-width:90vw;max-height:88vh;object-fit:contain;display:block;border:1px solid var(--um);box-shadow:0 8px 40px rgba(0,0,0,.7)
}
body.page-blueprints .lightbox-dismiss {
position:fixed;top:20px;right:24px;font-family:var(--mono);font-size:22px;color:var(--ul);cursor:pointer;background:none;border:none;line-height:1;padding:6px;transition:color .14s;z-index:1001
}
body.page-blueprints .lightbox-dismiss:hover {
color:var(--uw)
}
body.page-blueprints .lightbox-label {
position:absolute;bottom:-26px;left:0;right:0;text-align:center;font-family:var(--mono);font-size:10px;color:var(--ug);letter-spacing:.1em
}
body.page-blueprints /* FOOTER */
.lin-footer {
background:var(--jd);border-top:1px solid var(--jm);padding:20px 24px;display:flex;align-items:center;justify-content:space-between;margin-top:48px
}
body.page-blueprints .footer-inner {
max-width:1200px;margin:0 auto;width:100%;display:flex;align-items:center;justify-content:space-between
}
body.page-blueprints /* ── HAMBURGER / MOBILE NAV ─────────────────────────────────────── */
.hamburger-btn {
display:none;flex-direction:column;justify-content:center;gap:5px;
  width:40px;height:40px;background:transparent;border:1px solid var(--um);
  cursor:pointer;padding:9px;flex-shrink:0;transition:border-color .15s
}
@media(max-width:700px) {
body.page-blueprints .header-nav {
display:none
}
body.page-blueprints .hamburger-btn {
display:flex
}
body.page-blueprints .blueprint-grid {
grid-template-columns:1fr
}
body.page-blueprints .bp-controls {
gap:8px
}
body.page-blueprints .search-input {
width:120px
}
}

/* ====== PAGE: ADMIN ====== */
body.page-admin /* HEADER */
.site-header {
background:var(--ed);border-bottom:2px solid var(--eb)
}
body.page-admin .admin-role-badge {
font-family:var(--mono);font-size:10px;background:var(--danger);color:#ffaaaa;border:1px solid var(--danger-b);padding:4px 12px;letter-spacing:.15em;text-transform:uppercase
}
body.page-admin /* GATE */
.auth-gate-wrap {
display:flex;align-items:center;justify-content:center;min-height:calc(100vh - 64px);padding:40px 24px
}
body.page-admin .auth-gate-card {
background:var(--ud);border:1px solid var(--eb);padding:48px 40px;width:100%;max-width:440px;position:relative;overflow:hidden
}
body.page-admin .auth-gate-card::before {
content:'';position:absolute;top:0;left:0;right:0;height:3px;background:linear-gradient(90deg,var(--ed),var(--et),var(--ed))
}
body.page-admin .gate-eyebrow {
font-family:var(--mono);font-size:10px;letter-spacing:.25em;text-transform:uppercase;color:var(--ug);margin-bottom:10px
}
body.page-admin .gate-heading {
font-family:var(--disp);font-size:32px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--uw);margin-bottom:8px
}
body.page-admin .gate-description {
font-family:var(--body);font-size:13px;color:var(--ug);margin-bottom:28px
}
body.page-admin .gate-field-label {
font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ul);display:block;margin-bottom:8px
}
body.page-admin .gate-field-input {
width:100%;background:var(--uc);border:1px solid var(--um);color:var(--uw);font-family:var(--mono);font-size:16px;padding:12px 16px;outline:none;margin-bottom:14px;transition:border-color .15s
}
body.page-admin .gate-field-input:focus {
border-color:var(--et)
}
body.page-admin .captcha-block {
background:rgba(26,38,18,.4);border:1px solid var(--jm);padding:14px 16px;margin-bottom:14px
}
body.page-admin .captcha-block-label {
font-family:var(--mono);font-size:9px;letter-spacing:.2em;text-transform:uppercase;color:var(--jg);margin-bottom:8px
}
body.page-admin .captcha-question {
font-family:var(--mono);font-size:20px;color:var(--jp);letter-spacing:.08em;margin-bottom:10px
}
body.page-admin .gate-submit-btn {
width:100%;background:var(--eb);border:1px solid var(--et);color:var(--es);font-family:var(--body);font-size:14px;font-weight:600;letter-spacing:.14em;text-transform:uppercase;padding:13px;cursor:pointer;transition:background .15s
}
body.page-admin .gate-submit-btn:hover {
background:var(--em)
}
body.page-admin .gate-error-msg {
font-family:var(--mono);font-size:11px;color:#e05555;letter-spacing:.1em;margin-bottom:14px;display:none
}
body.page-admin /* ADMIN WRAP */
.admin-content-wrap {
max-width:1200px;margin:0 auto;padding:32px 24px
}
body.page-admin /* TABS */
.admin-tab-nav {
display:flex;border-bottom:2px solid var(--um);margin-bottom:32px
}
body.page-admin .admin-tab-btn {
font-family:var(--disp);font-size:13px;font-weight:500;letter-spacing:.16em;text-transform:uppercase;color:var(--ug);background:none;border:none;border-bottom:2px solid transparent;padding:10px 22px;cursor:pointer;margin-bottom:-2px;transition:all .18s
}
body.page-admin .admin-tab-btn:hover {
color:var(--up)
}
body.page-admin .admin-tab-btn.active {
color:var(--es);border-bottom-color:var(--et)
}
body.page-admin .admin-tab-panel {
display:none
}
body.page-admin .admin-tab-panel.active {
display:block
}
body.page-admin /* SECTION HEADER */
.admin-section-header {
display:flex;align-items:center;justify-content:space-between;margin-bottom:16px;padding-bottom:10px;border-bottom:1px solid var(--um)
}
body.page-admin .admin-section-title {
font-family:var(--disp);font-size:14px;font-weight:500;letter-spacing:.18em;text-transform:uppercase;color:var(--ul)
}
body.page-admin .admin-section-desc {
font-family:var(--mono);font-size:11px;color:var(--ug);margin-top:2px
}
body.page-admin /* BUTTONS */
.action-btn {
display:inline-flex;align-items:center;gap:6px;cursor:pointer;font-family:var(--body);font-weight:600;letter-spacing:.1em;text-transform:uppercase;border:1px solid;padding:7px 16px;font-size:12px;transition:all .15s;text-decoration:none;white-space:nowrap
}
body.page-admin .action-btn-primary {
background:var(--jg);border-color:var(--jb);color:var(--jd)
}
body.page-admin .action-btn-primary:hover {
background:var(--jb)
}
body.page-admin .action-btn-secondary {
background:none;border-color:var(--um);color:var(--ul)
}
body.page-admin .action-btn-secondary:hover {
border-color:var(--ul);color:var(--uw)
}
body.page-admin .action-btn-danger {
background:none;border-color:var(--danger);color:#e05555
}
body.page-admin .action-btn-danger:hover {
background:rgba(139,32,32,.2)
}
body.page-admin .action-btn-warn {
background:none;border-color:var(--warn-b);color:var(--es)
}
body.page-admin .action-btn-warn:hover {
background:rgba(122,90,0,.2)
}
body.page-admin .action-btn-sm {
padding:4px 10px;font-size:11px
}
body.page-admin /* TABLE */
.admin-table {
width:100%;border-collapse:collapse
}
body.page-admin .admin-table th {
font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ug);text-align:left;padding:8px 12px;border-bottom:1px solid var(--um);background:var(--uc)
}
body.page-admin .admin-table td {
font-family:var(--body);font-size:14px;color:var(--up);padding:10px 12px;border-bottom:1px solid rgba(62,62,62,.5);vertical-align:middle
}
body.page-admin .admin-table tr:hover td {
background:rgba(42,42,42,.5)
}
body.page-admin .admin-table .mono-text {
font-family:var(--mono);font-size:12px
}
body.page-admin .admin-table .row-actions {
display:flex;gap:6px;justify-content:flex-end
}
body.page-admin /* FORMS */
.admin-select, body.page-admin .admin-input {
background:var(--uc);border:1px solid var(--um);color:var(--uw);font-family:var(--mono);font-size:12px;padding:7px 10px;outline:none;transition:border-color .15s
}
body.page-admin .admin-select {
cursor:pointer
}
body.page-admin .admin-select:focus, body.page-admin .admin-input:focus {
border-color:var(--et)
}
body.page-admin .admin-select option {
background:var(--uc)
}
body.page-admin .admin-input {
width:100%
}
body.page-admin .admin-textarea {
background:var(--uc);border:1px solid var(--um);color:var(--uw);font-family:var(--body);font-size:14px;padding:10px;outline:none;resize:vertical;width:100%;transition:border-color .15s
}
body.page-admin .admin-textarea:focus {
border-color:var(--et)
}
body.page-admin .form-row {
margin-bottom:16px
}
body.page-admin .form-label {
font-family:var(--mono);font-size:10px;letter-spacing:.15em;text-transform:uppercase;color:var(--ul);display:block;margin-bottom:7px
}
body.page-admin .form-hint {
font-family:var(--mono);font-size:10px;color:var(--ug);margin-top:5px
}
body.page-admin .form-row-2col {
display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-bottom:16px
}
body.page-admin .form-row-3col {
display:grid;grid-template-columns:1fr 1fr 1fr;gap:12px;margin-bottom:16px
}
body.page-admin /* LOC SELECT ROW */
.loc-row {
display:flex;gap:8px;align-items:center
}
body.page-admin /* POSSIBLE LOC LIST */
.possible-location-list {
display:flex;flex-direction:column;gap:6px;margin-bottom:12px
}
body.page-admin .possible-location-item {
background:var(--uc);border:1px solid var(--um);padding:10px 12px;display:flex;flex-direction:column;gap:8px
}
body.page-admin .location-item-header {
display:flex;align-items:center;justify-content:space-between
}
body.page-admin .location-item-name {
font-family:var(--mono);font-size:13px;color:var(--jp)
}
body.page-admin .location-item-fields {
display:grid;grid-template-columns:1fr 1fr;gap:6px
}
body.page-admin .location-item-input {
background:rgba(14,14,14,.8);border:1px solid var(--um);color:var(--uw);font-family:var(--mono);font-size:11px;padding:5px 8px;outline:none;width:100%
}
body.page-admin .location-item-input:focus {
border-color:var(--et)
}
body.page-admin /* BANNER */
.banner-item-list {
display:flex;flex-direction:column;gap:6px;margin-bottom:16px
}
body.page-admin .banner-item {
display:flex;align-items:center;justify-content:space-between;gap:12px;background:var(--uc);border:1px solid var(--um);padding:10px 14px
}
body.page-admin .banner-item-text {
font-family:var(--mono);font-size:12px;color:var(--up);flex:1
}
body.page-admin .banner-item-actions {
display:flex;gap:4px
}
body.page-admin .reorder-btn {
background:none;border:1px solid var(--um);color:var(--ug);width:26px;height:26px;cursor:pointer;font-size:12px;transition:all .15s;display:flex;align-items:center;justify-content:center
}
body.page-admin .reorder-btn:hover {
border-color:var(--ul);color:var(--uw)
}
body.page-admin .add-banner-row {
display:flex;gap:10px;align-items:flex-start
}
body.page-admin .add-banner-row .admin-input {
flex:1
}
body.page-admin /* AMMO TAB */
.active-caliber-bar {
background:rgba(26,38,18,.35);border:1px solid var(--jm);padding:12px 16px;margin-bottom:16px;display:flex;align-items:center;justify-content:space-between;gap:12px
}
body.page-admin .active-caliber-name {
font-family:var(--disp);font-size:16px;font-weight:500;letter-spacing:.1em;text-transform:uppercase;color:var(--jp)
}
body.page-admin .active-caliber-meta {
font-family:var(--mono);font-size:10px;color:var(--ug)
}
body.page-admin .back-nav-btn {
font-family:var(--mono);font-size:11px;letter-spacing:.1em;text-transform:uppercase;color:var(--et);background:none;border:none;cursor:pointer;padding:0;transition:color .15s;display:flex;align-items:center;gap:6px;margin-bottom:10px
}
body.page-admin .back-nav-btn:hover {
color:var(--es)
}
body.page-admin /* SETTINGS */
.settings-card {
background:var(--ud);border:1px solid var(--um);padding:24px;max-width:480px;margin-bottom:24px
}
body.page-admin .settings-card-title {
font-family:var(--mono);font-size:11px;letter-spacing:.15em;text-transform:uppercase;color:var(--et);margin-bottom:18px;border-bottom:1px solid var(--um);padding-bottom:10px
}
body.page-admin /* MODAL */
dialog {
background:var(--ud);border:1px solid var(--um);color:var(--up);padding:0;max-width:560px;width:94vw;position:fixed
}
body.page-admin dialog::backdrop {
background:rgba(0,0,0,.75)
}
body.page-admin .dialog-header {
background:var(--uc);border-bottom:1px solid var(--um);padding:16px 20px;display:flex;align-items:center;justify-content:space-between
}
body.page-admin .dialog-title {
font-family:var(--disp);font-size:15px;font-weight:500;letter-spacing:.14em;text-transform:uppercase;color:var(--uw)
}
body.page-admin .dialog-close {
background:none;border:none;color:var(--ug);font-size:20px;cursor:pointer;padding:0 4px;transition:color .15s;line-height:1
}
body.page-admin .dialog-close:hover {
color:var(--uw)
}
body.page-admin .dialog-body {
padding:24px 20px;max-height:70vh;overflow-y:auto
}
body.page-admin .dialog-footer {
padding:16px 20px;border-top:1px solid var(--um);display:flex;justify-content:flex-end;gap:10px
}
body.page-admin /* TOAST */
.notification-toast {
position:fixed;bottom:24px;right:24px;z-index:1000;background:var(--jd);border:1px solid var(--jg);color:var(--jp);font-family:var(--mono);font-size:12px;letter-spacing:.1em;padding:12px 20px;opacity:0;transform:translateY(10px);transition:all .25s ease;pointer-events:none
}
body.page-admin .notification-toast.show {
opacity:1;transform:translateY(0)
}
body.page-admin /* EMPTY STATE */
.admin-empty-state {
font-family:var(--mono);font-size:12px;color:var(--ug);padding:24px;border:1px dashed var(--um);text-align:center
}
@media(max-width:700px) {
body.page-admin .form-row-2col, body.page-admin .form-row-3col {
grid-template-columns:1fr
}
body.page-admin .admin-tab-btn {
padding:10px 12px;font-size:11px
}
body.page-admin .location-item-fields {
grid-template-columns:1fr
}
}