@import url('https://fonts.googleapis.com/css2?family=Syne:wght@400;500;600;700;800&family=Inter:wght@300;400;500;600;700&family=JetBrains+Mono:wght@400;500;600&display=swap');

/* ═══════════════════════════════════════════════════════════════════
   ORSI COMMAND CENTER — DESIGN SYSTEM V2
   Dark futuristic wildlife monitoring interface
   ═══════════════════════════════════════════════════════════════════ */

:root {
  /* ── Core Backgrounds ── */
  --bg-void:    #010810;
  --bg-deep:    #020B18;
  --bg-surface: #060D1A;
  --bg-raised:  #0A1628;
  --bg-panel:   #0D1E35;

  /* ── Glass System ── */
  --glass-base:  rgba(6,13,26,0.78);
  --glass-mid:   rgba(10,22,48,0.65);
  --glass-light: rgba(0,212,255,0.07);
  --glass-blur:  blur(22px) saturate(1.9);
  --glass-blur-heavy: blur(40px) saturate(2.2);

  /* ── Ice Blue (primary accent) ── */
  --ice:     #00D4FF;
  --ice-2:   #33DEFF;
  --ice-dim: rgba(0,212,255,0.14);
  --ice-glow: 0 0 24px rgba(0,212,255,0.38), 0 0 60px rgba(0,212,255,0.14);
  --ice-glow-sm: 0 0 12px rgba(0,212,255,0.4);

  /* ── Electric Blue (secondary) ── */
  --elec:     #4A9EFF;
  --elec-dim: rgba(74,158,255,0.14);

  /* ── Gold (warm accent) ── */
  --gold:     #C8A84B;
  --gold-2:   #F0CC6E;
  --gold-dim: rgba(200,168,75,0.14);
  --gold-glow: 0 0 20px rgba(200,168,75,0.4);

  /* ── Amber (alert accent) ── */
  --amber:     #FF8C42;
  --amber-dim: rgba(255,140,66,0.14);

  /* ── Status Colors ── */
  --status-good:     #00FF87;
  --status-good-dim: rgba(0,255,135,0.12);
  --danger:   #FF3366;
  --warn:     #FFD600;

  /* ── Typography Colors ── */
  --t-prime: #E4F3FF;
  --t-mid:   #8BAFC7;
  --t-dim:   #4A6880;
  --t-faint: #243444;

  /* ── Borders ── */
  --b-ice:  1px solid rgba(0,212,255,0.2);
  --b-sub:  1px solid rgba(255,255,255,0.06);
  --b-gold: 1px solid rgba(200,168,75,0.28);

  /* ── Typography ── */
  --f-display: 'Syne', 'Inter', sans-serif;
  --f-body:    'Inter', system-ui, sans-serif;
  --f-mono:    'JetBrains Mono', 'Courier New', monospace;

  /* ── Spacing ── */
  --sp-1: .25rem; --sp-2: .5rem;  --sp-3: .75rem; --sp-4: 1rem;
  --sp-5: 1.5rem; --sp-6: 2rem;   --sp-7: 3rem;   --sp-8: 4.5rem;
  --sp-9: 7rem;

  /* ── Radius ── */
  --r-s: 6px; --r-m: 12px; --r-l: 20px; --r-xl: 28px; --r-full: 999px;

  /* ── Transitions ── */
  --ease: cubic-bezier(0.22, 0.7, 0.2, 1);
  --ease-out: cubic-bezier(0.16, 1, 0.3, 1);
  --t-fast: .18s var(--ease);
  --t-med:  .38s var(--ease);
  --t-slow: .65s var(--ease-out);

  --header-h: 72px;
  --container: 1280px;
  color-scheme: dark;
}

/* ─── RESET ─────────────────────────────────────────── */
*,*::before,*::after { box-sizing: border-box; }
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion:reduce) {
  *,*::before,*::after { animation-duration:.001ms!important; transition-duration:.001ms!important; }
}
body {
  margin:0; overflow-x:hidden;
  background: var(--bg-void);
  color: var(--t-prime);
  font-family: var(--f-body);
  font-size: 16px; line-height: 1.55;
  -webkit-font-smoothing: antialiased;
}
img { max-width:100%; display:block; }
a { color:inherit; text-decoration:none; }
button { font:inherit; color:inherit; background:none; border:0; cursor:pointer; }
input,textarea,select { font:inherit; color:inherit; }
ul,ol { list-style:none; margin:0; padding:0; }
h1,h2,h3,h4,p,figure { margin:0; }
:focus-visible { outline:2px solid var(--ice); outline-offset:3px; border-radius:4px; }

/* ─── TYPOGRAPHY ─────────────────────────────────────── */
.display-xl {
  font-family: var(--f-display);
  font-weight: 800;
  font-size: clamp(3.2rem, 7vw, 7.5rem);
  line-height: .95;
  letter-spacing: -.02em;
  text-transform: uppercase;
}
.display-lg {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: clamp(2.2rem, 4.5vw, 4.8rem);
  line-height: 1.0;
  letter-spacing: -.015em;
}
.display-md {
  font-family: var(--f-display);
  font-weight: 700;
  font-size: clamp(1.6rem, 2.8vw, 2.8rem);
  line-height: 1.1;
  letter-spacing: -.01em;
}
h1,.h1 { font-family:var(--f-display); font-weight:800; font-size:clamp(2.4rem,5vw,5rem); line-height:.98; letter-spacing:-.02em; }
h2,.h2 { font-family:var(--f-display); font-weight:700; font-size:clamp(1.7rem,3vw,3rem); line-height:1.05; letter-spacing:-.015em; }
h3,.h3 { font-family:var(--f-display); font-weight:600; font-size:clamp(1.2rem,1.8vw,1.7rem); line-height:1.15; }
h4,.h4 { font-family:var(--f-body); font-weight:700; font-size:.8rem; text-transform:uppercase; letter-spacing:.12em; color:var(--t-mid); }
.lede { font-size:clamp(1rem,1.4vw,1.2rem); line-height:1.65; color:var(--t-mid); }
.mono { font-family:var(--f-mono); }
.text-ice   { color:var(--ice); }
.text-gold  { color:var(--gold-2); }
.text-dim   { color:var(--t-mid); }
.text-faint { color:var(--t-dim); }
.text-status-good  { color:var(--status-good); }

/* ── Eyebrow label ── */
.eyebrow {
  display: inline-flex; align-items:center; gap:.5em;
  font-family: var(--f-mono);
  font-size: .7rem; font-weight:500;
  letter-spacing: .2em; text-transform:uppercase;
  color: var(--ice);
}
.eyebrow::before { content:''; width:2em; height:1px; background:var(--ice); display:inline-block; opacity:.6; }

/* ── Geo stamp (coordinates) ── */
.geo-stamp {
  font-family: var(--f-mono); font-size:.7rem; letter-spacing:.05em;
  color: var(--ice); display:inline-flex; align-items:center; gap:.5em;
  opacity:.8;
}
.geo-stamp .dot {
  width:6px; height:6px; border-radius:50%;
  background:var(--status-good);
  box-shadow:0 0 0 3px rgba(0,255,135,.25);
  animation: pulse-status-good 2.2s ease-in-out infinite;
  flex:none;
}

/* ─── LAYOUT ─────────────────────────────────────────── */
.container { width:100%; max-width:var(--container); margin:0 auto; padding:0 var(--sp-6); }
@media(max-width:640px){ .container{ padding:0 var(--sp-4); } }
.section { padding: var(--sp-9) 0; position:relative; }
.section-tight { padding: var(--sp-7) 0; position:relative; }
.section-head { max-width:680px; margin-bottom:var(--sp-7); }
.grid-2  { display:grid; grid-template-columns:repeat(2,1fr); gap:var(--sp-6); }
.grid-3  { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--sp-6); }
.grid-4  { display:grid; grid-template-columns:repeat(4,1fr); gap:var(--sp-5); }
@media(max-width:980px){ .grid-3,.grid-4{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:640px){ .grid-2,.grid-3,.grid-4{ grid-template-columns:1fr; } }
.flex  { display:flex; align-items:center; }
.flex-between { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--sp-4); }
.flex-col { display:flex; flex-direction:column; }
.gap-3{gap:var(--sp-3)} .gap-4{gap:var(--sp-4)} .gap-5{gap:var(--sp-5)} .gap-6{gap:var(--sp-6)}
.mt-4{margin-top:var(--sp-4)} .mt-5{margin-top:var(--sp-5)} .mt-6{margin-top:var(--sp-6)} .mt-7{margin-top:var(--sp-7)}
.mb-4{margin-bottom:var(--sp-4)} .mb-6{margin-bottom:var(--sp-6)}

/* ─── GLASS SYSTEM ───────────────────────────────────── */
.glass {
  background: linear-gradient(135deg, rgba(0,212,255,.06) 0%, rgba(6,13,26,.82) 50%, rgba(74,158,255,.04) 100%);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: var(--b-ice);
  box-shadow: 0 0 0 1px rgba(0,212,255,.04), 0 16px 48px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.04);
}
.glass-gold {
  background: linear-gradient(135deg, rgba(200,168,75,.07) 0%, rgba(6,13,26,.82) 50%, rgba(200,168,75,.04) 100%);
  backdrop-filter: var(--glass-blur);
  -webkit-backdrop-filter: var(--glass-blur);
  border: var(--b-gold);
  box-shadow: 0 0 0 1px rgba(200,168,75,.05), 0 16px 48px rgba(0,0,0,.55), inset 0 1px 0 rgba(255,255,255,.04);
}
.glass-heavy {
  background: rgba(6,13,26,.9);
  backdrop-filter: var(--glass-blur-heavy);
  -webkit-backdrop-filter: var(--glass-blur-heavy);
  border: var(--b-ice);
  box-shadow: 0 0 0 1px rgba(0,212,255,.06), 0 24px 64px rgba(0,0,0,.7), inset 0 1px 0 rgba(255,255,255,.05);
}
/* HUD corner decorations */
.hud {
  position:relative;
}
.hud::before, .hud::after {
  content:''; position:absolute;
  width:14px; height:14px;
  border-color: var(--ice); border-style:solid;
  opacity:.7;
}
.hud::before { top:0; left:0; border-width:1px 0 0 1px; }
.hud::after  { bottom:0; right:0; border-width:0 1px 1px 0; }

/* Animated scan line inside glass panels */
.glass-scan {
  overflow:hidden;
}
.glass-scan::after {
  content:''; position:absolute; left:0; right:0; height:1px;
  background: linear-gradient(90deg, transparent 0%, rgba(0,212,255,.5) 50%, transparent 100%);
  animation: scan-line 4s ease-in-out infinite;
  pointer-events:none; z-index:10;
}

/* ─── BUTTONS ────────────────────────────────────────── */
.btn {
  display:inline-flex; align-items:center; justify-content:center; gap:.5em;
  padding:.85em 1.6em; border-radius:var(--r-full);
  font-weight:600; font-size:.88rem; letter-spacing:.04em; text-transform:uppercase;
  border:1px solid transparent;
  transition: transform var(--t-fast), box-shadow var(--t-fast), background var(--t-fast), border-color var(--t-fast);
  white-space:nowrap; position:relative; overflow:hidden;
}
.btn:active { transform:scale(.97); }
.btn-ice {
  background: linear-gradient(135deg, rgba(0,212,255,.15), rgba(0,212,255,.08));
  border-color: rgba(0,212,255,.4);
  color: var(--ice);
}
.btn-ice:hover {
  background: linear-gradient(135deg, rgba(0,212,255,.25), rgba(0,212,255,.15));
  box-shadow: var(--ice-glow);
}
.btn-solid {
  background: linear-gradient(135deg, var(--ice), var(--elec));
  border-color: transparent; color: var(--bg-void);
  font-weight:700;
}
.btn-solid:hover { box-shadow: var(--ice-glow); }
.btn-gold {
  background: linear-gradient(135deg, rgba(200,168,75,.15), rgba(200,168,75,.08));
  border-color: rgba(200,168,75,.4);
  color: var(--gold-2);
}
.btn-gold:hover { box-shadow: var(--gold-glow); }
.btn-ghost {
  background: transparent;
  border-color: rgba(255,255,255,.15);
  color: var(--t-prime);
}
.btn-ghost:hover { border-color: var(--ice); color:var(--ice); }
.btn-danger { background:rgba(255,51,102,.15); border-color:rgba(255,51,102,.4); color:var(--danger); }
.btn-sm { padding:.5em 1.1em; font-size:.76rem; }
.btn-icon { width:2.4em; height:2.4em; padding:0; border-radius:50%; }
.btn[disabled] { opacity:.35; pointer-events:none; }
.btn-block { width:100%; }

/* ─── BADGES / STATUS ────────────────────────────────── */
.badge {
  display:inline-flex; align-items:center; gap:.45em;
  font-family:var(--f-mono); font-size:.66rem; letter-spacing:.1em; text-transform:uppercase;
  padding:.35em .85em; border-radius:var(--r-full);
}
.badge::before { content:''; width:5px; height:5px; border-radius:50%; background:currentColor; }
.badge-active    { background:var(--status-good-dim); color:var(--status-good); border:1px solid rgba(0,255,135,.2); }
.badge-completed { background:var(--gold-dim); color:var(--gold-2); border:1px solid rgba(200,168,75,.2); }
.badge-archived  { background:rgba(255,255,255,.04); color:var(--t-mid); border:1px solid rgba(255,255,255,.1); }
.badge-moderation{ background:var(--amber-dim); color:var(--amber); border:1px solid rgba(255,140,66,.2); }
.badge-rejected  { background:rgba(255,51,102,.1); color:var(--danger); border:1px solid rgba(255,51,102,.2); }
.badge-status-good {
  background: rgba(0,255,135,.1);
  color: var(--status-good); border:1px solid rgba(0,255,135,.25);
  padding:.3em .8em;
}
.badge-status-good::before { animation: pulse-status-good 1.8s ease-in-out infinite; }

/* ─── STATUS INDICATOR ─────────────────────────────────── */
.status-dot {
  display:inline-block; width:8px; height:8px; border-radius:50%;
  background:var(--status-good);
  box-shadow: 0 0 0 0 rgba(0,255,135,.5);
  animation: pulse-status-good 2s ease-in-out infinite;
}
.scanning-badge {
  display:inline-flex; align-items:center; gap:.5em;
  font-family:var(--f-mono); font-size:.64rem; letter-spacing:.12em; text-transform:uppercase;
  color:var(--ice); padding:.3em .7em;
  border:1px solid rgba(0,212,255,.25); border-radius:var(--r-full);
  background: rgba(0,212,255,.06);
}
.scanning-badge span { animation: blink .9s step-end infinite; }

/* ─── NAVIGATION ─────────────────────────────────────── */
.site-header {
  position:fixed; top:0; left:0; right:0; z-index:200;
  height:var(--header-h);
  transition: background var(--t-med), backdrop-filter var(--t-med), border-color var(--t-med);
  border-bottom:1px solid transparent;
}
.site-header.scrolled {
  background: rgba(1,8,16,.88);
  backdrop-filter: blur(20px) saturate(1.8);
  -webkit-backdrop-filter: blur(20px) saturate(1.8);
  border-bottom: 1px solid rgba(0,212,255,.1);
  box-shadow: 0 4px 30px rgba(0,0,0,.5);
}
.site-header .container {
  height:100%; display:flex; align-items:center; justify-content:space-between; gap:var(--sp-5);
}
.brand {
  display:flex; align-items:center; gap:.6em; text-decoration:none;
}
.brand-mark { width:28px; height:28px; color:var(--ice); filter:drop-shadow(0 0 8px rgba(0,212,255,.5)); }
.brand-word {
  font-family:var(--f-display); font-size:1.05rem; font-weight:700; color:var(--t-prime);
  letter-spacing:.02em;
}
.brand-word small {
  display:block; font-family:var(--f-mono); font-size:.5rem; letter-spacing:.22em; text-transform:uppercase;
  color:var(--t-dim); font-weight:400; margin-top:1px;
}
.nav-links {
  display:flex; align-items:center; gap:var(--sp-5);
}
.nav-links a {
  font-size:.8rem; font-weight:600; text-transform:uppercase; letter-spacing:.09em;
  color:var(--t-dim); position:relative; padding:.3em 0;
  transition: color var(--t-fast);
}
.nav-links a::after {
  content:''; position:absolute; left:0; right:100%; bottom:-2px; height:1px;
  background:var(--ice); transition: right var(--t-med);
}
.nav-links a:hover, .nav-links a.active { color:var(--t-prime); }
.nav-links a:hover::after, .nav-links a.active::after { right:0; }
.nav-actions { display:flex; align-items:center; gap:var(--sp-3); }
.lang-switch { position:relative; }
.lang-btn {
  display:flex; align-items:center; gap:.4em;
  font-family:var(--f-mono); font-size:.7rem; font-weight:600; letter-spacing:.08em; text-transform:uppercase;
  padding:.5em .85em; border-radius:var(--r-full);
  background:rgba(0,212,255,.06); border:1px solid rgba(0,212,255,.2); color:var(--ice);
  transition:all var(--t-fast);
}
.lang-btn:hover { background:rgba(0,212,255,.12); box-shadow:var(--ice-glow-sm); }
.lang-menu {
  position:absolute; top:calc(100% + 8px); right:0;
  min-width:130px; padding:.4em;
  background:var(--bg-raised); border:var(--b-ice); border-radius:var(--r-m);
  box-shadow:0 20px 60px rgba(0,0,0,.7);
  opacity:0; visibility:hidden; transform:translateY(-6px);
  transition:all var(--t-fast); z-index:20;
}
.lang-switch.open .lang-menu { opacity:1; visibility:visible; transform:translateY(0); }
.lang-menu button {
  display:flex; width:100%; padding:.55em .7em; border-radius:var(--r-s);
  font-size:.8rem; font-weight:600; color:var(--t-dim); gap:.6em;
  transition:all var(--t-fast);
}
.lang-menu button:hover { background:rgba(0,212,255,.1); color:var(--ice); }
.lang-menu button.active { color:var(--ice); }
.burger {
  display:none; width:2.2em; height:2.2em; border-radius:50%;
  border:var(--b-ice); align-items:center; justify-content:center; color:var(--ice);
}
.mobile-menu {
  position:fixed; inset:0; background:rgba(1,8,16,.97);
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  z-index:190; display:flex; flex-direction:column; padding:var(--sp-6);
  transform:translateX(100%); transition:transform var(--t-med);
}
.mobile-menu.open { transform:translateX(0); }
.mobile-menu .nav-links { flex-direction:column; align-items:flex-start; gap:var(--sp-5); margin-top:var(--sp-7); }
.mobile-menu .nav-links a { font-size:1.8rem; text-transform:none; letter-spacing:-.01em; font-family:var(--f-display); font-weight:700; }
.mobile-close { align-self:flex-end; }
@media(max-width:900px){ .nav-links{ display:none; } .burger{ display:inline-flex; } }

/* bottom nav for mobile */
.bottom-nav { display:none; }
@media(max-width:640px){
  .bottom-nav {
    display:flex; position:fixed; bottom:0; left:0; right:0; z-index:180;
    background:rgba(1,8,16,.95); backdrop-filter:blur(20px);
    border-top:1px solid rgba(0,212,255,.12);
    padding:.5em var(--sp-3) calc(.5em + env(safe-area-inset-bottom));
    justify-content:space-between;
  }
  .bottom-nav a {
    flex:1; display:flex; flex-direction:column; align-items:center; gap:.22em;
    font-size:.55rem; font-weight:700; letter-spacing:.07em; text-transform:uppercase;
    color:var(--t-dim); padding:.4em 0; transition:color var(--t-fast);
  }
  .bottom-nav a.active, .bottom-nav a:hover { color:var(--ice); }
  .bottom-nav svg { width:18px; height:18px; }
  body { padding-bottom:62px; }
}

/* ─── HERO ───────────────────────────────────────────── */
.hero {
  position:relative; min-height:100vh; display:flex; align-items:flex-end;
  overflow:hidden; background:var(--bg-void);
}
#hero-canvas {
  position:absolute; inset:0; z-index:1; pointer-events:none;
}
.hero-bg {
  position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(ellipse at 20% 60%, rgba(0,30,80,.5) 0%, transparent 55%),
    radial-gradient(ellipse at 80% 30%, rgba(200,168,75,.06) 0%, transparent 45%),
    radial-gradient(ellipse at 50% 100%, rgba(0,100,180,.15) 0%, transparent 50%),
    linear-gradient(180deg, var(--bg-void) 0%, #030D20 50%, var(--bg-void) 100%);
}
.hero-bg img {
  width:100%; height:100%; object-fit:cover; opacity:.35;
  filter:saturate(0.7) brightness(0.5);
}
.hero-fog {
  position:absolute; inset:0; z-index:2; pointer-events:none;
  background:
    linear-gradient(to top, var(--bg-void) 0%, rgba(1,8,16,.7) 20%, transparent 50%),
    linear-gradient(to right, rgba(1,8,16,.4) 0%, transparent 35%);
}
.hero-grid-overlay {
  position:absolute; inset:0; z-index:2; pointer-events:none;
  background-image:
    linear-gradient(rgba(0,212,255,.025) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,212,255,.025) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse at center, black 30%, transparent 70%);
}
.hero-content {
  position:relative; z-index:10;
  width:100%; padding: var(--sp-8) 0 var(--sp-8);
}
.hero-hud-tl {
  position:absolute; top:calc(var(--header-h) + 1.5rem); left:calc((100vw - var(--container)) / 2 + var(--sp-6));
  z-index:10;
}
@media(max-width:1280px){ .hero-hud-tl{ left:var(--sp-6); } }
.hero-hud-br {
  position:absolute; bottom:2rem; right:calc((100vw - var(--container)) / 2 + var(--sp-6));
  z-index:10;
}
@media(max-width:1280px){ .hero-hud-br{ right:var(--sp-6); } }
@media(max-width:640px){ .hero-hud-tl,.hero-hud-br{ display:none; } }
.hud-widget {
  padding:var(--sp-4) var(--sp-5);
  border-radius:var(--r-m);
  background:rgba(6,13,26,.75);
  border:var(--b-ice);
  backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  box-shadow: 0 0 20px rgba(0,212,255,.1), 0 8px 24px rgba(0,0,0,.5);
  min-width:200px;
}
.hud-widget-label {
  font-family:var(--f-mono); font-size:.6rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--t-dim); margin-bottom:.3em; display:flex; align-items:center; gap:.5em;
}
.hud-widget-value {
  font-family:var(--f-mono); font-size:1.2rem; font-weight:600; color:var(--ice);
  text-shadow: var(--ice-glow-sm);
}
.hero-title-line { overflow:hidden; }
.hero-title-line span { display:block; transform:translateY(110%); will-change:transform; }
.hero-sub {
  max-width:48ch; color:var(--t-mid); font-size:clamp(.9rem,1.3vw,1.1rem); line-height:1.6;
  margin-top:var(--sp-5);
}
.hero-actions { display:flex; gap:var(--sp-4); margin-top:var(--sp-6); flex-wrap:wrap; }
.scroll-cue {
  position:absolute; bottom:var(--sp-5); left:50%; transform:translateX(-50%);
  display:flex; flex-direction:column; align-items:center; gap:.5em;
  font-family:var(--f-mono); font-size:.6rem; letter-spacing:.18em; text-transform:uppercase;
  color:var(--t-dim); animation:float-cue 2.5s ease-in-out infinite; z-index:10;
}
.scroll-cue svg { color:var(--ice); width:16px; height:16px; }

/* ─── COMMAND CENTER / STATS STRIP ───────────────────── */
.command-strip {
  background: linear-gradient(90deg, var(--bg-void), var(--bg-surface), var(--bg-void));
  border-top:var(--b-ice); border-bottom:var(--b-ice);
  padding:var(--sp-6) 0; overflow:hidden; position:relative;
}
.command-strip::before {
  content:''; position:absolute; inset:0;
  background:repeating-linear-gradient(90deg, transparent, transparent 80px, rgba(0,212,255,.02) 80px, rgba(0,212,255,.02) 81px);
}
.command-stats {
  display:flex; align-items:stretch; justify-content:space-between;
  gap:0; flex-wrap:wrap;
}
.cmd-stat {
  flex:1; min-width:160px; padding:var(--sp-4) var(--sp-6);
  display:flex; flex-direction:column; gap:.3em;
  border-right:1px solid rgba(0,212,255,.1); position:relative;
}
.cmd-stat:last-child { border-right:0; }
.cmd-stat-label {
  font-family:var(--f-mono); font-size:.6rem; letter-spacing:.2em; text-transform:uppercase;
  color:var(--t-dim);
}
.cmd-stat-value {
  font-family:var(--f-mono); font-size:clamp(2rem,3.5vw,2.8rem); font-weight:700;
  color:var(--ice); line-height:1;
  text-shadow: var(--ice-glow-sm);
}
.cmd-stat-unit { font-size:.65rem; font-weight:400; color:var(--t-dim); text-shadow:none; }

/* ─── PROJECT CARDS (Netflix style) ─────────────────── */
.project-card {
  position:relative; overflow:hidden; border-radius:var(--r-l);
  aspect-ratio:16/10; cursor:pointer;
  background:var(--bg-surface);
  box-shadow:0 8px 32px rgba(0,0,0,.6);
  transition:transform var(--t-slow), box-shadow var(--t-slow);
}
.project-card:hover { transform:scale(1.03) translateY(-4px); box-shadow:0 20px 60px rgba(0,0,0,.7), var(--ice-glow-sm); }
.project-card img {
  width:100%; height:100%; object-fit:cover;
  filter:brightness(.65) saturate(1.1);
  transition:transform .8s var(--ease-out), filter .8s var(--ease-out);
}
.project-card:hover img { transform:scale(1.08); filter:brightness(.8) saturate(1.3); }
.project-card-overlay {
  position:absolute; inset:0;
  background:linear-gradient(to top, rgba(1,8,16,.98) 0%, rgba(1,8,16,.5) 45%, transparent 70%);
  transition:opacity var(--t-med);
}
.project-card-content {
  position:absolute; bottom:0; left:0; right:0; padding:var(--sp-5);
}
.project-card-status { position:absolute; top:var(--sp-3); left:var(--sp-3); }
.project-card-geo { position:absolute; top:var(--sp-3); right:var(--sp-3); }
.project-card-title {
  font-family:var(--f-display); font-weight:700; font-size:clamp(1rem,1.5vw,1.3rem);
  line-height:1.15; color:var(--t-prime); margin-top:.4em;
}
.project-card-meta {
  font-family:var(--f-mono); font-size:.66rem; letter-spacing:.08em; text-transform:uppercase;
  color:var(--ice); opacity:.8;
}
.project-card-extra {
  overflow:hidden; max-height:0;
  transition:max-height var(--t-med), opacity var(--t-med), margin var(--t-med);
  opacity:0; margin-top:0;
}
.project-card:hover .project-card-extra { max-height:80px; opacity:1; margin-top:.5em; }
.project-card-excerpt {
  font-size:.8rem; color:var(--t-mid); line-height:1.5; display:-webkit-box;
  -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden;
}
.project-card-foot {
  display:flex; align-items:center; justify-content:space-between;
  margin-top:.8em; padding-top:.8em; border-top:1px solid rgba(0,212,255,.12);
}
.project-card-observations { font-family:var(--f-mono); font-size:.72rem; color:var(--ice); }

/* projects row (horizontal scroll on mobile) */
.projects-row { display:grid; grid-template-columns:repeat(3,1fr); gap:var(--sp-5); }
@media(max-width:980px){ .projects-row{ grid-template-columns:repeat(2,1fr); } }
@media(max-width:640px){ .projects-row{ grid-template-columns:1fr; } }

/* ─── REGION CARDS ───────────────────────────────────── */
.region-card {
  position:relative; overflow:hidden; border-radius:var(--r-l);
  background:var(--bg-raised); border:var(--b-sub); padding:var(--sp-6);
  transition:border-color var(--t-med), box-shadow var(--t-med), transform var(--t-med);
  cursor:pointer;
}
.region-card:hover {
  border-color:rgba(0,212,255,.3); transform:translateY(-4px);
  box-shadow:0 16px 48px rgba(0,0,0,.5), 0 0 0 1px rgba(0,212,255,.1);
}
.region-card-bg {
  position:absolute; inset:0; opacity:.12;
  background:radial-gradient(ellipse at 80% 20%, var(--ice), transparent 60%);
  pointer-events:none; transition:opacity var(--t-med);
}
.region-card:hover .region-card-bg { opacity:.2; }
.region-card-name {
  font-family:var(--f-display); font-size:1.5rem; font-weight:700;
  color:var(--t-prime); position:relative;
}
.region-card-stats { display:flex; gap:var(--sp-6); margin-top:var(--sp-5); }
.region-stat b {
  display:block; font-family:var(--f-mono); font-size:1.8rem; font-weight:600;
  color:var(--ice); line-height:1; text-shadow:var(--ice-glow-sm);
}
.region-stat span {
  font-family:var(--f-mono); font-size:.58rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--t-dim); margin-top:.2em; display:block;
}

/* ─── NEWS CARDS ─────────────────────────────────────── */
.news-card {
  background:var(--bg-raised); border:var(--b-sub); border-radius:var(--r-l);
  overflow:hidden; display:flex; flex-direction:column;
  transition:border-color var(--t-med), transform var(--t-med), box-shadow var(--t-med);
  cursor:pointer;
}
.news-card:hover { border-color:rgba(0,212,255,.25); transform:translateY(-4px); box-shadow:0 12px 36px rgba(0,0,0,.5); }
.news-card-media { aspect-ratio:16/9; overflow:hidden; }
.news-card-media img { width:100%; height:100%; object-fit:cover; transition:transform .8s var(--ease-out), filter .8s; filter:brightness(.75) saturate(1.1); }
.news-card:hover .news-card-media img { transform:scale(1.06); filter:brightness(.9) saturate(1.2); }
.news-card-body { padding:var(--sp-5); flex:1; display:flex; flex-direction:column; gap:.5em; }
.news-card-date { font-family:var(--f-mono); font-size:.65rem; letter-spacing:.08em; color:var(--ice); }
.news-card-title { font-family:var(--f-display); font-size:1.1rem; font-weight:600; line-height:1.2; }
.news-card-excerpt { font-size:.85rem; color:var(--t-mid); line-height:1.5; flex:1; }

/* ─── GALLERY ────────────────────────────────────────── */
.masonry-grid { columns:4; gap:var(--sp-3); }
.masonry-item {
  break-inside:avoid; margin-bottom:var(--sp-3); border-radius:var(--r-m); overflow:hidden;
  cursor:zoom-in; position:relative;
}
.masonry-item img { width:100%; display:block; transition:transform .6s var(--ease-out), filter .6s; filter:brightness(.75) saturate(1.1); }
.masonry-item:hover img { transform:scale(1.05); filter:brightness(.95) saturate(1.3); }
.masonry-item::after {
  content:''; position:absolute; inset:0;
  background:linear-gradient(to top, rgba(1,8,16,.8) 0%, transparent 40%);
  opacity:0; transition:opacity var(--t-fast);
}
.masonry-item:hover::after { opacity:1; }
.masonry-item .cap {
  position:absolute; bottom:var(--sp-3); left:var(--sp-3); right:var(--sp-3);
  font-size:.72rem; color:var(--t-prime); z-index:2;
  opacity:0; transform:translateY(6px); transition:all var(--t-fast);
}
.masonry-item:hover .cap { opacity:1; transform:translateY(0); }
@media(max-width:1100px){ .masonry-grid{ columns:3; } }
@media(max-width:768px) { .masonry-grid{ columns:2; } }
@media(max-width:480px) { .masonry-grid{ columns:2; gap:var(--sp-2); } }

/* ─── MAP / EXPLORER ─────────────────────────────────── */
#map-explorer, #map-region, #map-project, #map-picker, #map-admin {
  background:var(--bg-raised); border-radius:var(--r-l); border:var(--b-ice);
  box-shadow: 0 0 0 1px rgba(0,212,255,.05), 0 8px 32px rgba(0,0,0,.5);
}
.leaflet-tile { filter: brightness(.7) saturate(.8) hue-rotate(10deg); }
.leaflet-popup-content-wrapper {
  background:rgba(10,22,48,.9); color:var(--t-prime); border:var(--b-ice);
  border-radius:var(--r-m); backdrop-filter:blur(12px);
}
.leaflet-popup-tip { background:rgba(10,22,48,.9); }
.leaflet-popup-content { font-family:var(--f-body); }
.map-popup h4 { font-size:.92rem; font-weight:700; margin-bottom:.3em; }
.map-popup a { color:var(--ice); font-size:.78rem; font-weight:600; }
.leaflet-control-zoom a { background:var(--bg-raised)!important; color:var(--t-prime)!important; border-color:rgba(0,212,255,.15)!important; }
.leaflet-control-attribution { background:rgba(1,8,16,.7)!important; color:var(--t-dim)!important; font-size:.6rem!important; }

/* ─── FILTER BAR ─────────────────────────────────────── */
.filter-bar {
  display:flex; flex-wrap:wrap; gap:var(--sp-3); align-items:center;
  padding:var(--sp-4) var(--sp-5);
  background:rgba(6,13,26,.85); border:var(--b-ice); border-radius:var(--r-m);
  backdrop-filter:blur(16px); -webkit-backdrop-filter:blur(16px);
  box-shadow:0 8px 24px rgba(0,0,0,.4);
}
.chip-group { display:flex; flex-wrap:wrap; gap:var(--sp-2); }
.chip {
  padding:.45em .9em; border-radius:var(--r-full); font-size:.75rem; font-weight:600;
  letter-spacing:.06em; text-transform:uppercase;
  border:1px solid rgba(0,212,255,.2); color:var(--t-dim);
  transition:all var(--t-fast); cursor:pointer;
}
.chip:hover { border-color:var(--ice); color:var(--ice); background:rgba(0,212,255,.08); }
.chip.active { background:rgba(0,212,255,.15); border-color:var(--ice); color:var(--ice); }
.view-toggle {
  display:flex; gap:2px; background:rgba(255,255,255,.04); border-radius:var(--r-full); padding:3px;
}
.view-toggle button {
  padding:.45em .85em; border-radius:var(--r-full); font-size:.72rem; font-weight:700;
  text-transform:uppercase; letter-spacing:.06em; color:var(--t-dim);
  transition:all var(--t-fast);
}
.view-toggle button.active { background:rgba(0,212,255,.2); color:var(--ice); }

/* ─── FORMS ──────────────────────────────────────────── */
.field { display:flex; flex-direction:column; gap:var(--sp-2); margin-bottom:var(--sp-5); }
.field label {
  font-family:var(--f-mono); font-size:.65rem; letter-spacing:.14em; text-transform:uppercase;
  color:var(--t-mid);
}
.input, .textarea, .select {
  background:rgba(255,255,255,.04); border:1px solid rgba(255,255,255,.12);
  border-radius:var(--r-s); padding:.9em 1.1em; color:var(--t-prime);
  transition:border-color var(--t-fast), background var(--t-fast), box-shadow var(--t-fast);
  width:100%;
}
.input:focus, .textarea:focus, .select:focus {
  border-color:var(--ice); background:rgba(0,212,255,.04); outline:none;
  box-shadow:0 0 0 3px rgba(0,212,255,.1);
}
.textarea { resize:vertical; min-height:120px; }
.field-row { display:grid; grid-template-columns:1fr 1fr; gap:var(--sp-5); }
@media(max-width:640px){ .field-row{ grid-template-columns:1fr; } }
.dropzone {
  border:1.5px dashed rgba(0,212,255,.25); border-radius:var(--r-m);
  padding:var(--sp-7); text-align:center; cursor:pointer;
  transition:all var(--t-fast);
  background:rgba(0,212,255,.03);
}
.dropzone:hover,.dropzone.drag { border-color:var(--ice); background:rgba(0,212,255,.07); }
.dropzone svg { width:28px; height:28px; color:var(--ice); margin:0 auto var(--sp-3); }
.thumb-row { display:flex; flex-wrap:wrap; gap:var(--sp-3); margin-top:var(--sp-4); }
.thumb { position:relative; width:84px; height:84px; border-radius:var(--r-s); overflow:hidden; }
.thumb img { width:100%; height:100%; object-fit:cover; }
.thumb button {
  position:absolute; top:3px; right:3px; width:18px; height:18px;
  border-radius:50%; background:rgba(1,8,16,.8); font-size:10px;
  display:flex; align-items:center; justify-content:center; color:var(--danger);
}
.has-error { border-color:var(--danger)!important; }

/* ─── MODAL / LIGHTBOX ───────────────────────────────── */
.overlay {
  position:fixed; inset:0; background:rgba(1,8,16,.92); backdrop-filter:blur(10px);
  z-index:500; display:flex; align-items:center; justify-content:center;
  opacity:0; visibility:hidden; transition:opacity var(--t-med); padding:var(--sp-5);
}
.overlay.open { opacity:1; visibility:visible; }
.modal {
  background:var(--bg-raised); border:var(--b-ice); border-radius:var(--r-xl);
  max-width:580px; width:100%; max-height:88vh; overflow-y:auto; padding:var(--sp-7);
  box-shadow: 0 30px 80px rgba(0,0,0,.7), var(--ice-glow);
  transform:scale(.96) translateY(20px); transition:transform var(--t-med);
}
.overlay.open .modal { transform:scale(1) translateY(0); }
.lightbox-img {
  max-width:90vw; max-height:85vh; object-fit:contain; border-radius:var(--r-m);
  box-shadow:0 30px 80px rgba(0,0,0,.8);
}
.lightbox-nav {
  position:absolute; top:50%; transform:translateY(-50%);
  width:2.8em; height:2.8em; border-radius:50%;
  background:rgba(6,13,26,.8); border:var(--b-ice);
  display:flex; align-items:center; justify-content:center; font-size:1.2rem; color:var(--ice);
  transition:all var(--t-fast);
}
.lightbox-nav:hover { background:rgba(0,212,255,.15); box-shadow:var(--ice-glow-sm); }
.lightbox-nav.prev { left:var(--sp-5); } .lightbox-nav.next { right:var(--sp-5); }

/* ─── TOASTS ─────────────────────────────────────────── */
.toast-stack { position:fixed; bottom:var(--sp-5); right:var(--sp-5); z-index:600; display:flex; flex-direction:column; gap:var(--sp-3); }
.toast {
  background:var(--bg-raised); border:var(--b-ice); border-left:3px solid var(--ice);
  border-radius:var(--r-m); padding:var(--sp-4) var(--sp-5);
  box-shadow:0 8px 32px rgba(0,0,0,.6), var(--ice-glow-sm);
  font-size:.84rem; max-width:320px; animation:toast-in .3s var(--ease);
}
.toast.error { border-left-color:var(--danger); }
@media(max-width:640px){ .toast-stack{ left:var(--sp-4); right:var(--sp-4); bottom:72px; } .toast{ max-width:none; } }

/* ─── TIMELINE ───────────────────────────────────────── */
.v-timeline {
  position:relative; padding-left:var(--sp-6);
  border-left:1px solid rgba(0,212,255,.2); display:flex; flex-direction:column; gap:var(--sp-6);
}
.v-timeline::before {
  content:''; position:absolute; left:-1px; top:0; width:1px; height:0;
  background:linear-gradient(to bottom, var(--ice), transparent);
  transition:height 1.5s var(--ease-out);
}
.v-timeline.animated::before { height:100%; }
.v-tl-item { position:relative; }
.v-tl-item::before {
  content:''; position:absolute; left:calc(-1 * var(--sp-6) - 5px); top:4px;
  width:10px; height:10px; border-radius:50%;
  background:var(--ice); box-shadow:0 0 0 4px var(--bg-void), 0 0 0 5px rgba(0,212,255,.4);
}
.v-tl-date { font-family:var(--f-mono); font-size:.7rem; color:var(--ice); letter-spacing:.08em; }
.v-tl-title { font-family:var(--f-display); font-size:1rem; font-weight:600; margin-top:var(--sp-2); color:var(--t-prime); }
.v-tl-desc { font-size:.86rem; color:var(--t-mid); margin-top:var(--sp-2); line-height:1.5; }

/* ─── FOOTER ─────────────────────────────────────────── */
.site-footer {
  background:var(--bg-void);
  border-top:1px solid rgba(0,212,255,.1);
  padding:var(--sp-8) 0 var(--sp-6);
}
.footer-grid { display:grid; grid-template-columns:1.5fr 1fr 1fr 1fr; gap:var(--sp-7); margin-bottom:var(--sp-7); }
@media(max-width:900px){ .footer-grid{ grid-template-columns:1fr 1fr; } }
@media(max-width:560px){ .footer-grid{ grid-template-columns:1fr; } }
.footer-col h4 { color:var(--t-dim); margin-bottom:var(--sp-4); }
.footer-col ul { display:flex; flex-direction:column; gap:var(--sp-3); }
.footer-col a { font-size:.85rem; color:var(--t-dim); transition:color var(--t-fast); }
.footer-col a:hover { color:var(--ice); }
.footer-bottom {
  display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:var(--sp-3);
  padding-top:var(--sp-6); border-top:1px solid rgba(255,255,255,.06);
  font-family:var(--f-mono); font-size:.65rem; color:var(--t-dim); letter-spacing:.06em; text-transform:uppercase;
}

/* ─── PAGE HEADERS ───────────────────────────────────── */
.page-head {
  padding:calc(var(--header-h) + var(--sp-8)) 0 var(--sp-7);
  background: linear-gradient(to bottom, var(--bg-void), var(--bg-surface));
  position:relative; overflow:hidden;
}
.page-head::before {
  content:''; position:absolute; inset:0;
  background-image:
    linear-gradient(rgba(0,212,255,.02) 1px, transparent 1px),
    linear-gradient(90deg, rgba(0,212,255,.02) 1px, transparent 1px);
  background-size:60px 60px;
}
.page-head .eyebrow { margin-bottom:var(--sp-4); }
.crumbs {
  font-family:var(--f-mono); font-size:.65rem; color:var(--t-dim); letter-spacing:.06em; text-transform:uppercase;
  display:flex; gap:.5em; align-items:center; flex-wrap:wrap; margin-bottom:var(--sp-4);
}
.crumbs a:hover { color:var(--ice); }
.crumbs .sep { opacity:.4; }

/* ─── SPINNER / SKELETON ─────────────────────────────── */
.spinner {
  width:22px; height:22px; border-radius:50%;
  border:2px solid rgba(0,212,255,.15); border-top-color:var(--ice);
  animation:spin .7s linear infinite;
}
.skeleton {
  background:linear-gradient(100deg, rgba(255,255,255,.03) 30%, rgba(255,255,255,.06) 50%, rgba(255,255,255,.03) 70%);
  background-size:200% 100%; animation:shimmer 1.6s infinite; border-radius:var(--r-m);
}
.loading-full {
  display:flex; flex-direction:column; align-items:center; justify-content:center;
  min-height:40vh; gap:var(--sp-4);
}
.loading-full p { font-family:var(--f-mono); font-size:.7rem; letter-spacing:.15em; text-transform:uppercase; color:var(--t-dim); }
.empty-state {
  text-align:center; padding:var(--sp-9) var(--sp-5); color:var(--t-dim);
}
.empty-state svg { width:40px; height:40px; margin:0 auto var(--sp-4); color:var(--ice); opacity:.4; }

/* ─── ADMIN (glass update) ───────────────────────────── */
.admin-body { background:var(--bg-void); min-height:100vh; }
.admin-login {
  min-height:100vh; display:flex; align-items:center; justify-content:center; padding:var(--sp-5);
  background: radial-gradient(ellipse at 30% 50%, rgba(0,30,80,.4), transparent 60%),
    radial-gradient(ellipse at 80% 30%, rgba(200,168,75,.05), transparent 50%),
    var(--bg-void);
}
.admin-login-card {
  width:100%; max-width:400px;
  background:rgba(6,13,26,.85); border:var(--b-ice); border-radius:var(--r-xl);
  padding:var(--sp-8) var(--sp-7); box-shadow:0 30px 80px rgba(0,0,0,.7), var(--ice-glow);
  backdrop-filter:blur(20px); -webkit-backdrop-filter:blur(20px);
  position:relative; z-index:1;
}
.admin-shell { display:flex; min-height:100vh; }
.admin-sidebar {
  width:252px; flex:none; background:var(--bg-surface);
  border-right:1px solid rgba(0,212,255,.1);
  display:flex; flex-direction:column;
  position:fixed; top:0; bottom:0; left:0; z-index:100;
  transition:transform var(--t-med);
}
.admin-sidebar .brand { padding:var(--sp-5) var(--sp-5) var(--sp-4); border-bottom:1px solid rgba(0,212,255,.1); }
.admin-nav { flex:1; overflow-y:auto; padding:var(--sp-4); display:flex; flex-direction:column; gap:2px; }
.admin-nav a {
  display:flex; align-items:center; gap:.75em; padding:.75em .9em;
  border-radius:var(--r-s); font-size:.82rem; font-weight:600; color:var(--t-dim);
  transition:all var(--t-fast); letter-spacing:.02em;
}
.admin-nav a svg { width:16px; height:16px; flex:none; }
.admin-nav a:hover { background:rgba(0,212,255,.08); color:var(--t-prime); }
.admin-nav a.active { background:rgba(0,212,255,.12); color:var(--ice); border-left:2px solid var(--ice); margin-left:-1px; }
.admin-nav .badge-n { margin-left:auto; background:rgba(255,51,102,.8); color:#fff; font-family:var(--f-mono); font-size:.58rem; padding:.15em .5em; border-radius:var(--r-full); }
.admin-sidebar-foot { padding:var(--sp-4) var(--sp-5); border-top:1px solid rgba(0,212,255,.1); }
.admin-main { flex:1; margin-left:252px; min-width:0; }
.admin-topbar {
  height:62px; display:flex; align-items:center; justify-content:space-between; padding:0 var(--sp-6);
  border-bottom:1px solid rgba(0,212,255,.1);
  background:rgba(6,13,26,.9); backdrop-filter:blur(12px); -webkit-backdrop-filter:blur(12px);
  position:sticky; top:0; z-index:50;
}
.admin-content { padding:var(--sp-6); max-width:1300px; }
.kpi-grid { display:grid; grid-template-columns:repeat(6,1fr); gap:var(--sp-4); }
@media(max-width:1100px){ .kpi-grid{ grid-template-columns:repeat(3,1fr); } }
@media(max-width:640px) { .kpi-grid{ grid-template-columns:repeat(2,1fr); } }
.kpi-card {
  padding:var(--sp-5); background:var(--bg-raised); border:var(--b-sub); border-radius:var(--r-m);
  transition:border-color var(--t-fast);
}
.kpi-card:hover { border-color:rgba(0,212,255,.25); }
.kpi-card .num { font-family:var(--f-mono); font-size:2rem; color:var(--ice); font-weight:600; text-shadow:var(--ice-glow-sm); }
.kpi-card .lbl { font-family:var(--f-mono); font-size:.58rem; letter-spacing:.12em; text-transform:uppercase; color:var(--t-dim); margin-top:.3em; }
.kpi-card.alert .num { color:var(--danger); text-shadow:0 0 12px rgba(255,51,102,.4); }
.panel { padding:var(--sp-5); background:var(--bg-raised); border:var(--b-sub); border-radius:var(--r-m); }
.panel-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:var(--sp-4); }
.panel-head h3 { font-family:var(--f-mono); font-size:.72rem; letter-spacing:.14em; text-transform:uppercase; color:var(--t-mid); }
.activity-list { display:flex; flex-direction:column; gap:var(--sp-3); }
.activity-row {
  display:flex; gap:var(--sp-3); align-items:flex-start;
  padding-bottom:var(--sp-3); border-bottom:1px solid rgba(255,255,255,.05);
}
.activity-row:last-child{ border-bottom:0; padding-bottom:0; }
.activity-row .dot { width:7px; height:7px; border-radius:50%; background:var(--ice); margin-top:5px; flex:none; box-shadow:var(--ice-glow-sm); }
.activity-row .msg { font-size:.82rem; }
.activity-row .when { font-family:var(--f-mono); font-size:.66rem; color:var(--t-dim); margin-top:2px; }
.table-wrap { overflow-x:auto; border-radius:var(--r-m); border:var(--b-sub); }
table.data-table { width:100%; border-collapse:collapse; font-size:.82rem; min-width:600px; }
table.data-table th {
  text-align:left; font-family:var(--f-mono); font-size:.6rem; letter-spacing:.1em;
  text-transform:uppercase; color:var(--t-dim); padding:var(--sp-3) var(--sp-4);
  background:rgba(255,255,255,.03); white-space:nowrap;
}
table.data-table td { padding:var(--sp-3) var(--sp-4); border-top:1px solid rgba(255,255,255,.05); vertical-align:middle; }
table.data-table tr:hover td { background:rgba(0,212,255,.03); }
table.data-table .cell-title { font-weight:600; }
table.data-table .row-actions { display:flex; gap:var(--sp-2); justify-content:flex-end; }
.thumb-sm { width:38px; height:38px; border-radius:var(--r-s); object-fit:cover; flex:none; }
.toolbar { display:flex; align-items:center; justify-content:space-between; gap:var(--sp-3); margin-bottom:var(--sp-5); flex-wrap:wrap; }
.toolbar-left,.toolbar-right { display:flex; align-items:center; gap:var(--sp-3); flex-wrap:wrap; }
.lang-tabs { display:flex; gap:2px; background:rgba(255,255,255,.04); border-radius:var(--r-s); padding:3px; width:fit-content; margin-bottom:var(--sp-4); }
.lang-tabs button { padding:.45em 1em; border-radius:var(--r-s); font-family:var(--f-mono); font-size:.68rem; letter-spacing:.1em; text-transform:uppercase; color:var(--t-dim); }
.lang-tabs button.active { background:rgba(0,212,255,.2); color:var(--ice); }
.lang-pane { display:none; }
.lang-pane.active { display:block; }
.form-card { background:var(--bg-raised); border:var(--b-sub); border-radius:var(--r-m); padding:var(--sp-6); }
.form-section-title { font-family:var(--f-mono); font-size:.62rem; letter-spacing:.18em; text-transform:uppercase; color:var(--ice); margin:var(--sp-6) 0 var(--sp-4); }
.repeatable-row { display:flex; gap:var(--sp-3); align-items:flex-start; margin-bottom:var(--sp-3); background:rgba(255,255,255,.02); padding:var(--sp-3); border-radius:var(--r-s); }
.repeatable-row>* { flex:1; }
.repeatable-row .btn-icon { flex:none; }
.map-edit-hint { display:flex; align-items:center; gap:.6em; font-family:var(--f-mono); font-size:.72rem; color:var(--t-dim); background:rgba(0,212,255,.06); border:1px dashed rgba(0,212,255,.25); padding:var(--sp-3) var(--sp-4); border-radius:var(--r-s); margin-bottom:var(--sp-4); }
.chart-box { background:var(--bg-raised); border:var(--b-sub); border-radius:var(--r-m); padding:var(--sp-5); }
.chart-box canvas { max-height:260px; }
.notif-pop {
  position:absolute; top:calc(100% + 10px); right:0; width:340px; max-height:420px; overflow-y:auto;
  background:var(--bg-raised); border:var(--b-ice); border-radius:var(--r-m);
  box-shadow:0 24px 64px rgba(0,0,0,.7), var(--ice-glow-sm); padding:var(--sp-3);
  opacity:0; visibility:hidden; transform:translateY(-6px); transition:all var(--t-fast); z-index:60;
}
.notif-pop.open { opacity:1; visibility:visible; transform:translateY(0); }
.notif-bell { position:relative; }
.notif-dot { position:absolute; top:4px; right:4px; width:8px; height:8px; border-radius:50%; background:var(--danger); border:2px solid var(--bg-void); }
.admin-burger { display:none; }
@media(max-width:980px){
  .admin-sidebar{ transform:translateX(-100%); }
  .admin-sidebar.open{ transform:translateX(0); box-shadow:0 0 60px rgba(0,0,0,.7); }
  .admin-main{ margin-left:0; }
  .admin-burger{ display:inline-flex; }
  .admin-content{ padding:var(--sp-4); }
}

/* ─── KEYFRAME ANIMATIONS ────────────────────────────── */
@keyframes pulse-status-good {
  0%  { box-shadow:0 0 0 0 rgba(0,255,135,.6); }
  70% { box-shadow:0 0 0 8px rgba(0,255,135,0); }
  100%{ box-shadow:0 0 0 0 rgba(0,255,135,0); }
}
@keyframes scan-line {
  0%   { top:-2px; opacity:0; }
  15%  { opacity:1; }
  85%  { opacity:1; }
  100% { top:100%; opacity:0; }
}
@keyframes float-cue {
  0%,100% { transform:translate(-50%,0); }
  50%     { transform:translate(-50%,8px); }
}
@keyframes spin { to { transform:rotate(360deg); } }
@keyframes shimmer { to { background-position:-200% 0; } }
@keyframes toast-in { from{ opacity:0; transform:translateX(20px); } to{ opacity:1; transform:translateX(0); } }
@keyframes blink { 0%,100%{ opacity:1; } 50%{ opacity:0; } }
@keyframes glow-pulse {
  0%,100% { text-shadow: 0 0 10px rgba(0,212,255,.3); }
  50%     { text-shadow: 0 0 30px rgba(0,212,255,.7), 0 0 60px rgba(0,212,255,.3); }
}
@keyframes rotate-ring {
  from { transform:rotate(0deg); }
  to   { transform:rotate(360deg); }
}
@keyframes hero-title-reveal {
  from { transform:translateY(110%); opacity:0; }
  to   { transform:translateY(0); opacity:1; }
}
@keyframes fade-in-up {
  from { opacity:0; transform:translateY(30px); }
  to   { opacity:1; transform:translateY(0); }
}
@keyframes hud-in {
  from { opacity:0; transform:translateX(-20px); }
  to   { opacity:1; transform:translateX(0); }
}

/* ─── UTILITIES ──────────────────────────────────────── */
.text-center { text-align:center; }
.divider { height:1px; background:rgba(0,212,255,.1); border:0; margin:var(--sp-6) 0; }
.reveal {
  opacity:0; transform:translateY(32px);
  transition:opacity .8s var(--ease-out), transform .8s var(--ease-out);
}
.reveal.visible { opacity:1; transform:translateY(0); }
.reveal-left  { opacity:0; transform:translateX(-40px); transition:opacity .7s var(--ease-out), transform .7s var(--ease-out); }
.reveal-right { opacity:0; transform:translateX(40px);  transition:opacity .7s var(--ease-out), transform .7s var(--ease-out); }
.reveal-left.visible, .reveal-right.visible { opacity:1; transform:translateX(0); }
.reveal-delay-1 { transition-delay:.06s; }
.reveal-delay-2 { transition-delay:.12s; }
.reveal-delay-3 { transition-delay:.18s; }
.reveal-delay-4 { transition-delay:.24s; }
.glow-text { animation:glow-pulse 3s ease-in-out infinite; }

/* ─── SECTION BACKGROUNDS ────────────────────────────── */
.section-dark { background:var(--bg-void); }
.section-surface { background:var(--bg-surface); }
.section-raised { background:var(--bg-raised); }
.section-grid::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background-image:linear-gradient(rgba(0,212,255,.015) 1px, transparent 1px), linear-gradient(90deg, rgba(0,212,255,.015) 1px, transparent 1px);
  background-size:80px 80px;
  mask-image:radial-gradient(ellipse at center, black 40%, transparent 80%);
}

/* ─── RESPONSIVE ─────────────────────────────────────── */
@media(max-width:640px){
  .section { padding:var(--sp-7) 0; }
  .command-stats { justify-content:flex-start; }
  .cmd-stat { min-width:140px; padding:var(--sp-4); }
  .hud-widget { display:none; }
  .hero-sub { font-size:.9rem; }
  .hero-actions .btn { flex:1; min-width:0; justify-content:center; }
  .masonry-grid { gap:var(--sp-2); }
}

/* ══════════════════════════════════════════════════════════
   V2 UPGRADES — Globe, Mission Control, Atmospheric Depth
   ══════════════════════════════════════════════════════════ */

/* ─── Boot overlay ──────────────────────────────────────── */
/* ─── Header signal indicator ───────────────────────────── */
.header-signal { display:flex; align-items:center; gap:.4em; padding:.3em .75em; border-radius:var(--r-full); border:1px solid rgba(0,255,135,.2); background:rgba(0,255,135,.06); }
@media(max-width:640px){ .header-signal{ display:none; } }

/* ─── Hero: v2 split screen ─────────────────────────────── */
.hero {
  position:relative; min-height:100svh; overflow:hidden; background:var(--bg-void);
  display:flex; align-items:stretch;
}
.hero-bg {
  position:absolute; inset:0; z-index:0;
  background:
    radial-gradient(ellipse at 15% 60%, rgba(0,40,100,.45) 0%, transparent 50%),
    radial-gradient(ellipse at 85% 30%, rgba(200,168,75,.06) 0%, transparent 45%),
    radial-gradient(ellipse at 50% 100%, rgba(0,80,180,.12) 0%, transparent 45%),
    radial-gradient(ellipse at 50% 0%, rgba(0,20,60,.3) 0%, transparent 60%),
    linear-gradient(180deg, #010812 0%, #020C1A 100%);
}
.hero-vignette {
  position:absolute; inset:0; z-index:2; pointer-events:none;
  background: radial-gradient(ellipse at 50% 50%, transparent 40%, rgba(1,8,16,.7) 100%);
}
.globe-canvas {
  position:absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  width: min(560px, 52%);
  height: min(560px, 90%);
  z-index: 4;
  cursor: grab;
}
@media(max-width:900px){
  .globe-canvas { width:min(300px,80%); height:min(300px,50vh); right:50%; transform:translate(50%,-50%); top:35%; }
}
.hero-split-content {
  position:relative; z-index:10;
  display:grid; grid-template-columns:1fr 1fr;
  align-items:center; min-height:100svh;
  padding-top:var(--header-h); padding-bottom:var(--sp-7);
}
.hero-left { display:flex; flex-direction:column; justify-content:center; }
.hero-right { pointer-events:none; }
@media(max-width:900px){
  .hero-split-content{ grid-template-columns:1fr; align-items:flex-end; padding-bottom:var(--sp-6); }
  .hero-left{ margin-top:min(320px,52vh); }
  .hero-right{ display:none; }
}
.hero-eyebrow { margin-bottom:var(--sp-4); }
.hero-h1 {
  font-family:var(--f-display); font-weight:800; line-height:.95;
  font-size:clamp(3rem, 6.5vw, 7rem); letter-spacing:-.025em;
  color:var(--t-prime); text-shadow:0 2px 40px rgba(0,0,0,.8);
}
.hero-kpi-row { display:flex; align-items:center; gap:var(--sp-5); margin-top:var(--sp-6); }
.hero-kpi { display:flex; flex-direction:column; gap:.25em; }
.hero-kpi-val { font-family:var(--f-mono); font-size:1.9rem; font-weight:700; color:var(--ice); line-height:1; text-shadow:var(--ice-glow-sm); }
.hero-kpi-label { font-family:var(--f-mono); font-size:.55rem; letter-spacing:.15em; text-transform:uppercase; color:var(--t-dim); }
.hero-kpi-divider { width:1px; height:2.5rem; background:rgba(0,212,255,.2); flex:none; }
.hero-sub { max-width:44ch; color:var(--t-mid); font-size:1rem; line-height:1.6; margin-top:var(--sp-5); }
.hero-actions { display:flex; gap:var(--sp-4); margin-top:var(--sp-6); flex-wrap:wrap; }
.hud-widget-sub { font-family:var(--f-mono); font-size:.56rem; letter-spacing:.12em; text-transform:uppercase; color:var(--t-dim); margin-top:.2em; }

/* Globe HUD labels (corner coords) */
.globe-hud-labels { position:absolute; top:0; right:0; width:52%; height:100%; z-index:8; pointer-events:none; }
.globe-hud-item { position:absolute; }
@media(max-width:900px){ .globe-hud-labels{ display:none; } }

/* ─── Telemetry strip enhanced ─────────────────────────── */
.command-strip { position:relative; overflow:hidden; }
.telemetry-line {
  height:1px;
  background:linear-gradient(90deg, transparent 0%, rgba(0,212,255,.4) 30%, var(--ice) 50%, rgba(0,212,255,.4) 70%, transparent 100%);
  animation:telemetry-sweep 4s ease-in-out infinite;
}
@keyframes telemetry-sweep {
  0%   { background-position: -100% 0; }
  100% { background-position: 200% 0; }
}
.cmd-stat-value { font-size:clamp(1.8rem,3vw,3.2rem); }

/* ─── Ops layout (projects + activity feed) ────────────────── */
.ops-layout { display:grid; grid-template-columns:1fr 320px; gap:var(--sp-7); align-items:start; }
@media(max-width:1100px){ .ops-layout{ grid-template-columns:1fr; } }
.ops-sidebar { position:sticky; top:calc(var(--header-h) + 1rem); }
@media(max-width:1100px){ .ops-sidebar{ position:static; } }

/* ─── Activity feed panel ───────────────────────────────────── */
.activity-panel { border-radius:var(--r-xl); padding:var(--sp-5); overflow:hidden; }
.activity-panel-head { display:flex; align-items:center; justify-content:space-between; margin-bottom:var(--sp-4); padding-bottom:var(--sp-4); border-bottom:1px solid rgba(0,212,255,.12); }
.activity-feed { display:flex; flex-direction:column; gap:0; max-height:520px; overflow:hidden; }
.activity-feed-item {
  padding:var(--sp-3) var(--sp-3);
  border-bottom:1px solid rgba(255,255,255,.04);
  display:flex; flex-direction:column; gap:.2em;
  animation:feed-slide-in .4s var(--ease-out);
  cursor:default;
}
.activity-feed-item:last-child { border-bottom:0; }
.activity-feed-item:hover { background:rgba(0,212,255,.04); }
.feed-type {
  font-family:var(--f-mono); font-size:.55rem; letter-spacing:.12em; text-transform:uppercase;
  padding:.15em .5em; border-radius:var(--r-full); border:1px solid; display:inline-flex; align-items:center; gap:.3em; width:fit-content;
}
.feed-type.obs   { color:var(--status-good);  border-color:rgba(0,255,135,.25); background:rgba(0,255,135,.06); }
.feed-type.proj  { color:var(--ice);   border-color:rgba(0,212,255,.25); background:rgba(0,212,255,.06); }
.feed-type.alert { color:var(--amber); border-color:rgba(255,140,66,.25); background:rgba(255,140,66,.06); }
.feed-msg  { font-size:.82rem; color:var(--t-prime); font-weight:500; line-height:1.3; }
.feed-meta { font-family:var(--f-mono); font-size:.6rem; color:var(--t-dim); letter-spacing:.04em; }
.feed-dot  { width:5px; height:5px; border-radius:50%; background:currentColor; flex:none; }
@keyframes feed-slide-in {
  from { opacity:0; transform:translateY(-8px); }
  to   { opacity:1; transform:translateY(0); }
}

/* ─── Timeline layout ───────────────────────────────────── */
.timeline-layout { display:grid; grid-template-columns:1fr 1.4fr; gap:5rem; align-items:start; }
@media(max-width:900px){ .timeline-layout{ grid-template-columns:1fr; gap:var(--sp-7); } }

/* ─── Section atmospheric depth ────────────────────────── */
.section-surface::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background:
    radial-gradient(ellipse at 10% 50%, rgba(0,212,255,.025) 0%, transparent 45%),
    radial-gradient(ellipse at 90% 80%, rgba(200,168,75,.02) 0%, transparent 40%);
}
.section-dark::before {
  content:''; position:absolute; inset:0; pointer-events:none;
  background: radial-gradient(ellipse at 80% 20%, rgba(0,212,255,.02) 0%, transparent 50%);
}

/* ─── Enhanced project card (version 2) ────────────────── */
.project-card::after {
  content:''; position:absolute; top:0; left:0; right:0; height:2px;
  background:linear-gradient(90deg, transparent, var(--ice), transparent);
  opacity:0; transition:opacity var(--t-med);
}
.project-card:hover::after { opacity:.5; }
/* Category color strip on left edge */
.project-card .cat-strip {
  position:absolute; left:0; top:0; bottom:0; width:2px;
  background:var(--ice); opacity:0.6;
}

/* ─── Region card enhanced ─────────────────────────────── */
.region-card { background:linear-gradient(135deg, rgba(0,212,255,.04), var(--bg-raised)); }
.region-card::after {
  content:''; position:absolute; bottom:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, var(--ice), transparent);
  opacity:.3;
}

/* ─── Map mission control overlays ─────────────────────── */
.map-mission-wrap { position:relative; border-radius:var(--r-l); overflow:hidden; }
.map-hud-overlay {
  position:absolute; inset:0; z-index:500; pointer-events:none;
  border:1px solid rgba(0,212,255,.18); border-radius:inherit;
}
/* HUD corners */
.map-hud-overlay::before { content:''; position:absolute; top:0; left:0; width:20px; height:20px; border-top:2px solid var(--ice); border-left:2px solid var(--ice); }
.map-hud-overlay::after  { content:''; position:absolute; bottom:0; right:0; width:20px; height:20px; border-bottom:2px solid var(--ice); border-right:2px solid var(--ice); }
.map-hud-tl { position:absolute; top:var(--sp-3); left:var(--sp-4); font-family:var(--f-mono); font-size:.6rem; letter-spacing:.08em; color:var(--ice); background:rgba(1,8,16,.7); padding:.25em .6em; border-radius:var(--r-s); border:1px solid rgba(0,212,255,.2); }
.map-hud-tr { position:absolute; top:var(--sp-3); right:var(--sp-4); }
.map-hud-bl { position:absolute; bottom:var(--sp-3); left:var(--sp-4); font-family:var(--f-mono); font-size:.58rem; color:var(--t-dim); background:rgba(1,8,16,.7); padding:.25em .6em; border-radius:var(--r-s); }
/* Animated radar sweep */
.map-radar {
  position:absolute; top:50%; left:50%; transform:translate(-50%,-50%);
  width:300px; height:300px; border-radius:50%;
  border:1px solid rgba(0,212,255,.06);
  pointer-events:none; z-index:499;
}
.map-radar::after {
  content:''; position:absolute; inset:0;
  background: conic-gradient(from 0deg, rgba(0,212,255,.12) 0deg, transparent 60deg, transparent 360deg);
  border-radius:50%; animation:radar-spin 6s linear infinite;
}
@keyframes radar-spin { to { transform:rotate(360deg); } }

/* ─── Explorer sidebar enhanced ────────────────────────── */
.explorer-sidebar { border-right:1px solid rgba(0,212,255,.1); }
.sidebar-header { background:linear-gradient(to bottom, rgba(0,212,255,.04), transparent); }

/* ─── Admin command center glass upgrade ────────────────── */
.kpi-card {
  background:linear-gradient(135deg, rgba(0,212,255,.04), var(--bg-raised));
  position:relative; overflow:hidden;
}
.kpi-card::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, var(--ice), transparent); opacity:.3;
}
.kpi-card.alert::before { background:linear-gradient(90deg, transparent, var(--danger), transparent); opacity:.4; }
.admin-sidebar .brand { background:linear-gradient(to bottom, rgba(0,212,255,.06), transparent); }
.admin-nav a.active { box-shadow: inset 3px 0 0 var(--ice); }
.chart-box { background:linear-gradient(135deg, rgba(0,212,255,.02), var(--bg-raised)); }
.panel { border-left:2px solid rgba(0,212,255,.08); }

/* ─── Footer atmosphere ─────────────────────────────────── */
.site-footer {
  background:linear-gradient(to top, var(--bg-void), rgba(1,8,16,.98));
  position:relative; overflow:hidden;
}
.site-footer::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, var(--ice), transparent); opacity:.2;
}

/* ─── Glassmorphism upgrade for all .glass panels ──────── */
.glass {
  background: linear-gradient(135deg, rgba(0,212,255,.07) 0%, rgba(4,10,24,.82) 40%, rgba(74,158,255,.04) 100%);
  backdrop-filter: blur(24px) saturate(2);
  -webkit-backdrop-filter: blur(24px) saturate(2);
}
/* Top highlight edge on glass */
.glass::before {
  content:''; position:absolute; top:0; left:0; right:0; height:1px;
  background:linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent);
  pointer-events:none; border-radius:inherit;
}

/* ─── Coming soon card upgrade ──────────────────────────── */
.coming-card {
  background:linear-gradient(135deg, rgba(0,212,255,.04), var(--bg-raised));
  border:var(--b-ice); border-radius:var(--r-l); padding:var(--sp-6);
  position:relative; overflow:hidden; cursor:default;
  transition:border-color var(--t-med), transform var(--t-med), box-shadow var(--t-med);
}
.coming-card::before { content:''; position:absolute; top:0; left:0; right:0; height:1px; background:linear-gradient(90deg,transparent,var(--ice),transparent); opacity:.25; }
.coming-card:hover { border-color:rgba(0,212,255,.35); transform:translateY(-4px); box-shadow:0 16px 40px rgba(0,0,0,.5),0 0 0 1px rgba(0,212,255,.08); }
.coming-card-icon { width:32px; height:32px; color:var(--ice); margin-bottom:var(--sp-4); filter:drop-shadow(0 0 6px rgba(0,212,255,.4)); }

/* ── Cookie Banner ──────────────────────────────────────── */
.cookie-banner {
  position: fixed; bottom: 20px; left: 50%; transform: translateX(-50%);
  z-index: 9999; width: calc(100% - 40px); max-width: 680px;
  background: rgba(8, 14, 26, 0.95);
  backdrop-filter: blur(24px) saturate(1.6);
  border: 1px solid rgba(100, 188, 248, 0.45);
  border-radius: 16px;
  box-shadow: 0 0 0 1px rgba(100,188,248,.12), 0 0 40px rgba(40,150,220,.2), 0 16px 60px rgba(0,0,0,.7);
  padding: 1.4rem 1.8rem;
  display: flex; align-items: flex-start; gap: 1.5rem; flex-wrap: wrap;
  animation: slide-up .4s cubic-bezier(0.34,1.56,0.64,1);
}
.cookie-banner::before {
  content: ''; position: absolute; top: 0; left: 18px; right: 18px; height: 1px;
  background: linear-gradient(90deg, transparent, rgba(140,210,255,.5), transparent);
}
@keyframes slide-up { from{transform:translateX(-50%) translateY(100px);opacity:0} to{transform:translateX(-50%) translateY(0);opacity:1} }
.cookie-text { flex: 1; min-width: 200px; }
.cookie-text h4 { font-family: var(--f-mono); font-size: .68rem; letter-spacing: .1em; text-transform: uppercase; color: #34C8E8; margin-bottom: .4rem; }
.cookie-text p { font-size: .8rem; color: rgba(200,220,240,.7); line-height: 1.55; }
.cookie-text a { color: #3DE08A; }
.cookie-actions { display: flex; gap: .6rem; align-items: center; flex-wrap: wrap; }
.cookie-btn-accept { padding: .55em 1.3em; background: linear-gradient(135deg, #3DE08A, #28C070); color: #061210; border-radius: 8px; font-family: var(--f-mono); font-size: .68rem; font-weight: 700; letter-spacing: .06em; text-transform: uppercase; cursor: pointer; border: none; transition: all .2s; }
.cookie-btn-accept:hover { box-shadow: 0 0 20px rgba(61,224,138,.4); transform: translateY(-1px); }
.cookie-btn-decline { padding: .55em 1.1em; background: transparent; color: rgba(200,220,240,.5); border: 1px solid rgba(100,188,248,.25); border-radius: 8px; font-family: var(--f-mono); font-size: .68rem; letter-spacing: .06em; cursor: pointer; transition: all .2s; }
.cookie-btn-decline:hover { border-color: rgba(100,188,248,.5); color: rgba(200,220,240,.8); }
@media(max-width:480px){ .cookie-banner{ bottom:75px; padding:1rem 1.2rem; } }

/* ── Site Footer ─────────────────────────────────────────── */
.site-footer {
  background: rgba(4, 8, 16, 0.98);
  border-top: 1px solid rgba(64,128,172,.18);
  padding: 3.5rem 0 0;
  margin-top: 2rem;
  position: relative;
  z-index: 5;
}
.footer-grid {
  display: grid;
  grid-template-columns: 1.4fr 1fr 1fr 1.3fr;
  gap: 3rem;
  padding-bottom: 2.5rem;
  border-bottom: 1px solid rgba(64,128,172,.1);
}
@media(max-width:1024px) { .footer-grid { grid-template-columns: 1fr 1fr; gap: 2rem; } }
@media(max-width:600px) { .footer-grid { grid-template-columns: 1fr; gap: 1.5rem; } }
.footer-col-title {
  font-family: var(--f-mono);
  font-size: .62rem; letter-spacing: .12em; text-transform: uppercase;
  color: var(--cc-text-3); margin-bottom: .9rem;
}
.footer-links { list-style: none; display: flex; flex-direction: column; gap: .42em; }
.footer-links a {
  font-size: .82rem; color: var(--cc-text-2); transition: color .18s;
  text-decoration: none;
}
.footer-links a:hover { color: var(--cc-green); }
.footer-contact li { font-size: .82rem; color: var(--cc-text-2); }
.footer-social {
  width: 36px; height: 36px; border-radius: 9px;
  background: rgba(64,128,172,.12); border: 1px solid rgba(64,128,172,.22);
  display: flex; align-items: center; justify-content: center;
  color: var(--cc-text-2); transition: all .2s; text-decoration: none;
}
.footer-social:hover {
  background: rgba(61,224,138,.12); border-color: rgba(61,224,138,.3);
  color: var(--cc-green);
}
.footer-bottom {
  display: flex; align-items: center; justify-content: space-between;
  flex-wrap: wrap; gap: .8rem; padding: 1.2rem 0;
  font-size: .72rem; color: var(--cc-text-3); font-family: var(--f-mono);
  letter-spacing: .04em;
}
.footer-legal-links { display: flex; gap: 1.4rem; flex-wrap: wrap; }
.footer-legal-links a { color: var(--cc-text-3); text-decoration: none; transition: color .18s; font-size: .7rem; }
.footer-legal-links a:hover { color: var(--cc-green); }
@media(max-width:600px) { .footer-bottom { flex-direction: column; align-items: flex-start; } .footer-legal-links { gap: .8rem; } }


/* --- ByteGhost polish patch --- */
.brand { display:flex; align-items:center; gap:.9rem; }
.brand-mark { border-radius:14px; filter: drop-shadow(0 0 12px rgba(200,168,75,.28)); }
.brand-word { display:flex; flex-direction:column; font-family:var(--f-display); font-weight:800; font-size:1rem; line-height:1.02; letter-spacing:.01em; }
.brand-word small { display:block; margin-top:.28rem; font-family:var(--f-mono); font-size:.56rem; letter-spacing:.14em; text-transform:uppercase; }
.cc-panel, .pcard, .contact-info-card, .telebar, .exp-filters, .exp-system-status, .contact-form-wrap {
  transform-style: preserve-3d;
  transition: transform .28s var(--ease), box-shadow .28s var(--ease), border-color .28s var(--ease);
}
.cc-panel:hover, .pcard:hover, .contact-info-card:hover, .telebar:hover, .exp-filters:hover, .contact-form-wrap:hover {
  transform: translateY(-2px) rotateX(.8deg);
  box-shadow: 0 24px 60px rgba(0,0,0,.24), 0 0 0 1px rgba(140,210,255,.08), 0 0 26px rgba(52,200,232,.09);
}
@media(max-width:760px){
  .brand-mark{width:42px!important;height:42px!important}
  .brand-word{font-size:.88rem}
  .brand-word small{font-size:.5rem}
  .site-header .container{gap:.75rem}
  .nav-actions{gap:.45rem}
}


/* ===== PREMIUM PATCH V5 ===== */

.brand{gap:.85rem;}
.brand-mark{width:46px;height:46px;border-radius:14px;object-fit:contain;filter:drop-shadow(0 0 18px rgba(200,168,75,.28)) drop-shadow(0 0 30px rgba(0,212,255,.18));}
.brand-word{font-size:1.12rem;line-height:1;}
.brand-word small{font-size:.56rem;letter-spacing:.18em;color:rgba(180,205,223,.72);max-width:26ch;}
.site-header.scrolled{background:rgba(2,10,18,.88);box-shadow:0 10px 34px rgba(0,0,0,.45);}
.nav-actions .btn-gold{box-shadow:0 0 0 1px rgba(200,168,75,.06),0 10px 24px rgba(200,168,75,.08);}
.mobile-menu{background:linear-gradient(180deg,rgba(2,8,16,.97),rgba(2,8,16,.94));}
.bottom-nav{box-shadow:0 -8px 24px rgba(0,0,0,.28);}
@media(max-width:900px){.brand-mark{width:40px;height:40px}.brand-word{font-size:.98rem}.brand-word small{font-size:.48rem;max-width:20ch}}


/* ===== FINAL COMMAND-CENTER PATCH V6 ===== */
:root{--logo-big:clamp(112px,18vw,210px);--safe-bottom:calc(70px + env(safe-area-inset-bottom,0px));}
*{box-sizing:border-box} html,body{max-width:100%;overflow-x:hidden} img,svg,canvas,video{max-width:100%}.container{width:min(1180px,calc(100% - 32px));margin-inline:auto}.brand{min-width:0}.brand-word{min-width:0}.brand-mark{border-radius:50%;background:rgba(255,255,245,.94);padding:2px;box-shadow:0 0 0 1px rgba(240,160,48,.4),0 0 28px rgba(240,160,48,.22)!important}
.hero-logo-lockup{display:grid!important;grid-template-columns:auto 1fr;align-items:center;gap:1rem;width:min(100%,620px);padding:1rem 1.1rem;border:1px solid rgba(240,160,48,.28);border-radius:24px;background:linear-gradient(135deg,rgba(255,255,255,.10),rgba(240,160,48,.08) 45%,rgba(20,40,30,.20));backdrop-filter:blur(22px);box-shadow:0 22px 70px rgba(0,0,0,.34),0 0 70px rgba(240,160,48,.12);position:relative;overflow:hidden}.hero-logo-lockup:before{content:'';position:absolute;inset:-1px;background:radial-gradient(circle at 15% 10%,rgba(240,160,48,.22),transparent 34%),radial-gradient(circle at 85% 80%,rgba(61,224,138,.16),transparent 35%);pointer-events:none}.hero-logo-ring{width:var(--logo-big)!important;height:var(--logo-big)!important;min-width:var(--logo-big);border-radius:50%;display:grid;place-items:center;background:radial-gradient(circle,#fff 0 56%,rgba(255,255,245,.92) 57% 100%);border:2px solid rgba(240,160,48,.48);box-shadow:inset 0 0 20px rgba(0,0,0,.12),0 0 55px rgba(240,160,48,.32),0 24px 50px rgba(0,0,0,.30)}.hero-logo-main{width:94%!important;height:94%!important;object-fit:contain;border-radius:50%;display:block}.hero-logo-copy{position:relative;z-index:1}.hero-logo-copy strong{font-size:clamp(1.25rem,3vw,2.4rem);letter-spacing:.08em;color:var(--cc-text);text-shadow:0 0 28px rgba(240,160,48,.25)}.hero-logo-copy small{display:block;max-width:34ch;line-height:1.45;color:var(--cc-text-2)}.hero-logo-overline{font-family:var(--f-mono);font-size:.68rem;letter-spacing:.18em;text-transform:uppercase;color:var(--cc-amber)}
.home-hero{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(360px,.95fr);gap:clamp(1rem,3vw,2.2rem);align-items:stretch}.home-hero-left,.home-hero-right{min-width:0}.home-hero-actions,.nav-actions,.social-row,.home-map-layers{display:flex;flex-wrap:wrap;gap:.7rem;align-items:center}.home-hero-actions .btn{white-space:normal}.home-hero-bear{position:relative;margin-top:1rem;border-radius:28px;overflow:hidden;border:1px solid rgba(240,160,48,.25);box-shadow:0 25px 90px rgba(0,0,0,.35)}.home-hero-bear:after{content:'';position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.45));pointer-events:none}.home-hero-bear img{width:100%;height:clamp(180px,24vw,330px);object-fit:cover;display:block;filter:saturate(1.1) contrast(1.08) brightness(.86)}.cc-panel,.pcard,.stat-tile,.doc-card,.res-card,.bear-card,.contact-info-card,.masonry-item{transition:transform .18s ease,border-color .22s ease,box-shadow .22s ease}.cc-panel:hover,.pcard:hover,.stat-tile:hover,.doc-card:hover,.res-card:hover,.bear-card:hover{border-color:rgba(240,160,48,.35)!important;box-shadow:0 24px 70px rgba(0,0,0,.32),0 0 50px rgba(240,160,48,.08)}
#home-map,#map-explorer,#map-region,#map-project,#map-propose,#obs-map,#modal-mini-map,#map-admin{width:100%;min-height:320px;border-radius:18px;overflow:hidden;background:#07111f}.leaflet-container{font-family:var(--f-body);border-radius:inherit}.home-map-layers{position:absolute;z-index:500;left:12px;right:12px;bottom:12px;justify-content:center;pointer-events:auto}.map-layer-btn,[data-layer]{min-height:34px;border-radius:999px!important;white-space:nowrap;background:rgba(5,12,22,.74)!important;border:1px solid rgba(140,210,255,.22)!important;color:var(--cc-text)!important;backdrop-filter:blur(12px);box-shadow:0 8px 24px rgba(0,0,0,.25)}.map-layer-btn.active,[data-layer].active{border-color:rgba(61,224,138,.7)!important;background:rgba(61,224,138,.16)!important;color:#dfffee!important}.map-popup{max-width:240px}.mini-stats,.stat-tiles,.feature-grid,.project-grid,.gallery-grid,.doc-grid,.research-grid,#featured-grid,#grid-container,#bear-grid{display:grid;gap:clamp(.8rem,2vw,1.25rem);align-items:stretch}.pcard,.doc-card,.res-card,.bear-card{min-width:0;overflow:hidden}.pcard-title,.feed-title,.alert-title,.bear-name,.bear-id{overflow-wrap:anywhere}.input,select,textarea,button,.btn{max-width:100%}.bottom-nav{padding-bottom:max(.45rem,env(safe-area-inset-bottom,0px));z-index:850}.bottom-nav a{min-width:0;text-align:center;gap:.22rem}.bottom-nav svg{flex:none}.admin-shell{min-width:0}.admin-content{min-width:0}.admin-table-wrap,.table-wrap{overflow:auto;-webkit-overflow-scrolling:touch}.admin-sidebar .brand img{width:54px!important;height:54px!important;border-radius:50%;background:white;padding:2px}.admin-sidebar .brand{align-items:center}.admin-nav a{white-space:normal}.form-grid,.contact-grid{min-width:0}.field{min-width:0}.filter-check .lbl{line-height:1.35}
body:before{content:'';position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 12% 18%,rgba(240,160,48,.10),transparent 24%),radial-gradient(circle at 82% 22%,rgba(61,224,138,.08),transparent 26%),radial-gradient(circle at 50% 100%,rgba(52,200,232,.08),transparent 32%)}
@media(max-width:980px){.home-hero{grid-template-columns:1fr}.home-hero-right{min-height:auto}.hero-logo-lockup{grid-template-columns:1fr;text-align:center;justify-items:center}.hero-logo-ring{--logo-big:clamp(128px,46vw,190px)}.home-map-layers{position:relative;left:auto;right:auto;bottom:auto;margin-top:.75rem}.site-header .container{gap:.75rem}.brand-word{font-size:.78rem}.brand-word small{font-size:.58rem}.nav-actions{margin-left:auto}.contact-grid{grid-template-columns:1fr!important}.admin-shell{display:block}.admin-sidebar{position:fixed;z-index:950;transform:translateX(-105%);transition:.25s}.admin-sidebar.open{transform:translateX(0)}.admin-main{margin-left:0!important}.admin-topbar{position:sticky;top:0;z-index:800}.exp-layout,.region-body{grid-template-columns:1fr!important}.exp-sidebar{max-width:min(360px,88vw)}}
@media(max-width:640px){body{padding-bottom:var(--safe-bottom)}.container{width:min(100% - 22px,1180px)}.home-hero-title{font-size:clamp(2rem,12vw,3.4rem)!important}.hero-logo-lockup{padding:.85rem;border-radius:20px}.hero-logo-ring{--logo-big:clamp(120px,54vw,176px)}.home-metrics,.mini-stats,.stat-tiles{grid-template-columns:1fr!important}.home-hero-actions .btn{width:100%;justify-content:center}.cc-head{gap:.55rem;flex-wrap:wrap}.cc-head-right{margin-left:0}.home-map-foot{font-size:.68rem}.pcard-media img{min-height:180px}.bottom-nav{display:grid!important;grid-template-columns:repeat(5,1fr)}.bottom-nav a{font-size:.58rem;padding:.4rem .2rem}.bottom-nav svg{width:18px!important;height:18px!important}.site-header .brand-mark{height:44px!important;width:44px!important}.site-header .brand-word{max-width:150px}.mobile-menu{max-width:100vw}.display-lg{font-size:clamp(2rem,11vw,3.2rem)!important}.section-tight{padding-inline:0}#home-map,#map-explorer,#map-region,#map-project,#map-propose,#obs-map,#modal-mini-map,#map-admin{min-height:300px}.filter-grid,.form-grid{grid-template-columns:1fr!important}.contact-form-wrap{padding:1.15rem!important}.admin-content{padding:1rem!important}.admin-topbar-tools{flex-wrap:wrap;justify-content:flex-end}.news-card,.res-card,.doc-card,.bear-card{border-radius:16px}} 


/* ===== V7 DESKTOP + REAL MAP COMMAND CENTER FIX ===== */
:root{--v7-gold:#c8a84b;--v7-cyan:#34c8e8;--v7-green:#3de08a;--v7-panel:rgba(7,15,27,.74)}
body{background:radial-gradient(circle at 12% 0%,rgba(200,168,75,.10),transparent 32%),radial-gradient(circle at 88% 8%,rgba(52,200,232,.08),transparent 30%),#050b13!important;}
.env-backdrop{filter:saturate(1.08) contrast(1.08) brightness(.52)!important;transform:scale(1.03)}
.home-main>.container{width:min(1320px,calc(100% - 44px));}
.home-hero{margin-top:1.1rem!important;align-items:stretch!important;}
.home-hero-left{position:relative!important;justify-content:flex-start!important;gap:1rem!important;min-height:610px!important;padding:clamp(1.4rem,2.3vw,2.2rem)!important;}
.home-hero-left:after{content:'';position:absolute;right:-12%;bottom:-20%;width:58%;height:54%;background:radial-gradient(ellipse at center,rgba(200,168,75,.16),transparent 68%);pointer-events:none;}
.hero-logo-lockup{width:min(100%,650px)!important;max-width:650px!important;display:grid!important;grid-template-columns:auto minmax(0,1fr)!important;align-items:center!important;justify-items:start!important;}
.hero-logo-ring{--logo-big:132px;width:var(--logo-big)!important;height:var(--logo-big)!important;min-width:var(--logo-big)!important;}
.hero-logo-main{width:96%!important;height:96%!important;object-fit:contain!important;border-radius:50%;}
.hero-logo-copy strong{font-size:clamp(1.35rem,2.4vw,2.05rem)!important;line-height:1!important;word-break:normal!important;}
.hero-logo-copy small{max-width:42ch!important;}
.home-hero-title{max-width:760px!important;width:100%!important;font-size:clamp(2.45rem,3.55vw,3.75rem)!important;line-height:.92!important;letter-spacing:.01em!important;text-wrap:balance!important;word-break:normal!important;overflow-wrap:normal!important;margin:.2rem 0 0!important;}
.home-hero-title span{white-space:normal!important;}
.home-hero-sub{max-width:64ch!important;font-size:1.05rem!important;}
.home-hero-actions{gap:.75rem!important;margin-top:.85rem!important;}
.home-metrics{display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.75rem!important;width:min(100%,680px)!important;margin-top:.85rem!important;}
.home-metric{min-width:0!important;padding:.85rem!important;border-radius:18px!important;background:linear-gradient(180deg,rgba(255,255,255,.065),rgba(255,255,255,.025))!important;border:1px solid rgba(200,168,75,.18)!important;}
.home-hero-bear{position:absolute!important;right:1.1rem!important;bottom:1.1rem!important;width:min(42%,390px)!important;max-width:390px!important;margin:0!important;z-index:0!important;opacity:.74!important;}
.home-hero-bear img{height:260px!important;object-fit:cover!important;}
.home-hero-left>*:not(.home-hero-bear){position:relative;z-index:2;}
.home-hero-right .cc-panel{display:flex!important;flex-direction:column!important;height:100%!important;min-height:610px!important;background:linear-gradient(180deg,rgba(7,15,27,.82),rgba(6,18,31,.60))!important;}
.home-hero-right .cc-panel>div[style*="position:relative"]{display:flex!important;flex-direction:column!important;flex:1!important;min-height:0!important;}
.mini-stats{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:.55rem!important;padding:.85rem!important;}
.mini-stat{min-width:0!important;border-radius:16px!important;padding:.85rem!important;background:rgba(255,255,255,.045)!important;border:1px solid rgba(140,210,255,.10)!important;}
#home-map{height:auto!important;min-height:390px!important;flex:1!important;border-radius:0!important;}
.home-map-layers{position:absolute!important;left:14px!important;right:14px!important;bottom:14px!important;top:auto!important;display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:.55rem!important;}
.home-map-layers .map-layer-btn{min-width:92px!important;padding:.62rem .78rem!important;font-size:.68rem!important;letter-spacing:.05em!important;}
.home-map-dot{width:18px;height:18px;border-radius:50%;background:var(--dot);box-shadow:0 0 0 6px color-mix(in srgb,var(--dot),transparent 72%),0 0 22px var(--dot);border:2px solid rgba(255,255,255,.76);}
.map-pin-real{border-radius:50%;display:grid;place-items:center;color:var(--pin);background:color-mix(in srgb,var(--pin),transparent 86%);border:1.6px solid var(--pin);box-shadow:0 0 0 7px color-mix(in srgb,var(--pin),transparent 86%),0 0 28px color-mix(in srgb,var(--pin),transparent 35%);backdrop-filter:blur(6px);}
.map-pin-real svg{width:48%;height:48%;}
.map-cluster-real{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;font:800 .9rem var(--f-mono);color:var(--pin);background:color-mix(in srgb,var(--pin),transparent 88%);border:1.8px solid var(--pin);box-shadow:0 0 30px color-mix(in srgb,var(--pin),transparent 45%);}
.map-popup-kicker{font:700 .58rem var(--f-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--cc-green);margin-bottom:.35rem}.map-popup h4{margin:.1rem 0 .35rem;color:var(--cc-text);font-size:.95rem}.map-popup p{margin:0 0 .55rem;color:var(--cc-text-2);font-size:.72rem}.map-popup-meta{display:flex;flex-wrap:wrap;gap:.35rem;margin:.45rem 0}.map-popup-meta span{font:600 .55rem var(--f-mono);color:var(--cc-text-2);border:1px solid rgba(255,255,255,.08);border-radius:999px;padding:.24rem .45rem;background:rgba(255,255,255,.04)}
.stat-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important;margin-top:1.1rem!important;}
.stat-tile{min-height:170px!important;display:flex!important;flex-direction:column!important;justify-content:space-between!important;}
.home-ops{grid-template-columns:minmax(0,1.35fr) minmax(260px,.8fr) minmax(260px,.8fr)!important;gap:1rem!important;align-items:stretch!important;}
.featured-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
.pcard-media{min-height:190px!important;background:#07111f!important;}.pcard-media img{width:100%!important;height:100%!important;min-height:190px!important;object-fit:cover!important;filter:saturate(1.08) contrast(1.04) brightness(.78)!important;}.pcard:hover .pcard-media img{filter:saturate(1.2) contrast(1.08) brightness(.95)!important;transform:scale(1.045)!important;}
.home-intelligence{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:1rem!important;align-items:stretch!important;}.home-bottom-row{grid-template-columns:minmax(0,1.55fr) minmax(280px,.8fr)!important;gap:1rem!important;}
.exp-shell{height:100dvh!important;}.exp-sidebar{width:250px!important;}.exp-mapzone{min-height:0!important}.exp-layers{right:18px!important;top:18px!important}.exp-filters{left:18px!important;top:18px!important;width:252px!important}.exp-dashboard{grid-template-columns:repeat(5,minmax(0,1fr))!important}.exp-sighting{top:74px!important;right:18px!important}.exp-topbar{min-height:64px!important}.exp-brand img{width:58px!important;height:58px!important;border-radius:50%;background:white;padding:3px;}
.leaflet-popup-content-wrapper{background:rgba(7,15,27,.94)!important;color:var(--cc-text)!important;border:1px solid rgba(140,210,255,.22)!important;border-radius:16px!important;backdrop-filter:blur(18px)!important;}.leaflet-popup-tip{background:rgba(7,15,27,.94)!important}.leaflet-control-zoom a{background:rgba(7,15,27,.84)!important;color:#dfffee!important;border-color:rgba(140,210,255,.22)!important;}
@media(min-width:981px){.home-hero{grid-template-columns:minmax(0,1.18fr) minmax(430px,.82fr)!important}.site-header .container{width:min(1320px,calc(100% - 44px))}.home-main{padding-top:var(--header-h)}}
@media(max-width:1180px){.home-hero{grid-template-columns:1fr!important}.home-hero-left,.home-hero-right .cc-panel{min-height:auto!important}.home-hero-bear{position:relative!important;right:auto!important;bottom:auto!important;width:100%!important;max-width:none!important;margin-top:1rem!important}.home-hero-bear img{height:260px!important}.home-ops,.home-intelligence,.home-bottom-row{grid-template-columns:1fr!important}.stat-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.exp-dashboard{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.home-main>.container{width:min(100% - 22px,1320px)}.home-hero-left{padding:1rem!important;border-radius:22px!important}.hero-logo-lockup{grid-template-columns:1fr!important;text-align:center!important;justify-items:center!important}.hero-logo-ring{--logo-big:clamp(118px,48vw,168px)!important}.hero-logo-copy{align-items:center!important}.hero-logo-copy strong{font-size:1.25rem!important}.home-hero-title{font-size:clamp(2.05rem,10.5vw,3.15rem)!important;line-height:.95!important;text-align:center!important}.home-hero-sub{text-align:center!important}.home-hero-actions{display:grid!important;grid-template-columns:1fr!important}.home-metrics,.mini-stats,.stat-tiles,.featured-grid{grid-template-columns:1fr!important}.home-hero-bear img{height:210px!important}#home-map{min-height:330px!important}.home-map-layers{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;padding:.75rem!important;background:rgba(7,15,27,.68)!important}.home-map-layers .map-layer-btn{flex:1 1 42%!important;min-width:0!important}.exp-topbar{flex-wrap:wrap;height:auto!important}.exp-search{order:3;flex-basis:100%;max-width:none!important}.exp-filters{position:absolute!important;width:min(92vw,320px)!important;max-height:62vh!important}.exp-layers{top:auto!important;bottom:16px!important;right:16px!important;left:16px!important;flex-direction:row!important;flex-wrap:wrap!important;justify-content:center!important}.exp-layers .map-layer-btn{flex:1 1 42%!important}.exp-dashboard{grid-template-columns:1fr!important}.exp-telemetry{display:none!important}.exp-sighting{display:none!important}}


/* ===== V9 CLEAN STABILITY PATCH - no overlap, no chaos ===== */
:root{--header-h:76px;--v9-panel:rgba(6,15,27,.78);--v9-border:rgba(140,210,255,.22);--v9-gold:#d9b95d;--v9-cyan:#37d4f4;--v9-green:#44e69a}
html,body{width:100%;max-width:100%;overflow-x:hidden!important;scroll-padding-top:calc(var(--header-h) + 18px)}
body{background:#050b13!important;color:var(--cc-text)}
body::after{content:"";position:fixed;inset:0;pointer-events:none;z-index:-1;background:radial-gradient(circle at 8% 8%,rgba(217,185,93,.12),transparent 32%),radial-gradient(circle at 92% 12%,rgba(55,212,244,.10),transparent 30%),linear-gradient(180deg,rgba(2,8,14,.15),#050b13 72%)}
.site-header{height:var(--header-h)!important;background:linear-gradient(180deg,rgba(4,12,22,.96),rgba(4,12,22,.82))!important;border-bottom:1px solid rgba(140,210,255,.18)!important;backdrop-filter:blur(18px) saturate(1.35)!important;box-shadow:0 12px 32px rgba(0,0,0,.28)!important}
.site-header .container{width:min(1360px,calc(100% - 36px))!important;gap:1rem!important;min-width:0!important}
.site-header nav{min-width:0;flex:1 1 auto;display:flex;justify-content:flex-end;overflow:visible!important}
.site-header .nav-links{gap:clamp(.55rem,1.2vw,1.15rem)!important;flex-wrap:nowrap!important;white-space:nowrap!important}
.site-header .nav-links a{font-size:clamp(.66rem,.74vw,.78rem)!important;line-height:1!important;padding:.55rem .1rem!important;text-shadow:0 0 18px rgba(55,212,244,.12)}
.brand{flex:0 1 286px!important;min-width:210px!important;max-width:326px!important;overflow:hidden!important}.brand-mark{flex:none!important;width:54px!important;height:54px!important;border-radius:50%!important;background:white!important;padding:3px!important;object-fit:contain!important}.brand-word{font-size:clamp(.82rem,1.05vw,1.08rem)!important;line-height:.96!important;min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}.brand-word small{font-size:.48rem!important;letter-spacing:.10em!important;max-width:24ch!important;white-space:normal!important}.nav-actions{flex:0 0 auto!important;gap:.55rem!important}.lang-btn{padding:.5rem .72rem!important}.btn-sm{padding:.5rem .8rem!important}
main,.home-main{position:relative;z-index:2}.section-tight{padding-top:calc(var(--header-h) + 2rem)!important;margin-top:0!important}.home-main{padding-top:calc(var(--header-h) + 20px)!important}.display-lg,.display-md{max-width:100%!important;line-height:.96!important;text-wrap:balance!important;word-break:normal!important;overflow-wrap:normal!important}.body-lg,.body-md{max-width:70ch!important}.container{width:min(1320px,calc(100% - 40px))!important;max-width:1320px!important;min-width:0!important}
.home-hero{display:grid!important;grid-template-columns:minmax(0,1.02fr) minmax(430px,.98fr)!important;gap:1.25rem!important;align-items:stretch!important;min-height:auto!important}.home-hero-left{min-height:0!important;overflow:hidden!important;border-radius:28px!important;background:linear-gradient(135deg,rgba(8,22,36,.78),rgba(6,16,28,.50))!important;border:1px solid var(--v9-border)!important;padding:clamp(1.25rem,2vw,2rem)!important}.home-hero-left::after{display:none!important}.hero-logo-lockup{width:min(100%,620px)!important;max-width:620px!important;grid-template-columns:auto minmax(0,1fr)!important;padding:.85rem 1rem!important;border-radius:22px!important}.hero-logo-ring{--logo-big:112px!important;width:112px!important;height:112px!important;min-width:112px!important}.hero-logo-copy strong{font-size:clamp(1.22rem,2vw,1.78rem)!important;letter-spacing:.06em!important}.hero-logo-copy small{font-size:.72rem!important;line-height:1.35!important}.home-hero-title{font-size:clamp(2.15rem,3.3vw,3.35rem)!important;max-width:780px!important;margin:.55rem 0 0!important;line-height:.93!important}.home-hero-sub{font-size:clamp(.94rem,1vw,1.05rem)!important;max-width:62ch!important;margin-top:.85rem!important}.home-hero-actions{position:relative!important;z-index:5!important;margin-top:1rem!important;gap:.75rem!important;align-items:center!important}.home-hero-actions .btn{min-height:44px!important;white-space:nowrap!important}.home-metrics{position:relative!important;z-index:5!important;display:grid!important;grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:.75rem!important;width:100%!important;max-width:680px!important}.home-hero-bear{position:relative!important;right:auto!important;bottom:auto!important;width:100%!important;max-width:none!important;margin-top:1rem!important;z-index:1!important;opacity:1!important;border-radius:22px!important;overflow:hidden!important;pointer-events:none!important}.home-hero-bear img{height:clamp(170px,18vw,245px)!important;width:100%!important;object-fit:cover!important;object-position:center!important;filter:saturate(1.08) contrast(1.06) brightness(.82)!important}.home-hero-right .cc-panel{min-height:0!important;height:auto!important;display:flex!important;flex-direction:column!important}.home-hero-right .cc-panel>div[style*="position:relative"]{min-height:0!important;display:flex!important;flex-direction:column!important}#home-map{height:clamp(390px,42vw,560px)!important;min-height:390px!important;border-radius:0!important}.home-map-layers{position:absolute!important;left:12px!important;right:12px!important;bottom:12px!important;top:auto!important;display:flex!important;flex-wrap:wrap!important;justify-content:center!important;gap:.5rem!important;z-index:650!important}.home-map-layers .map-layer-btn{min-width:88px!important;flex:0 1 auto!important;padding:.56rem .7rem!important;font-size:.64rem!important}.mini-stats{grid-template-columns:repeat(2,minmax(0,1fr))!important}.stat-tiles{grid-template-columns:repeat(4,minmax(0,1fr))!important}.home-ops,.home-intelligence,.home-bottom-row{align-items:stretch!important}.pcard,.cc-panel,.contact-info-card,.contact-form-wrap,.obs-card,.obs-form-wrap,.bear-card,.doc-card,.res-card{background:linear-gradient(145deg,rgba(8,22,36,.74),rgba(5,14,26,.54))!important;border:1px solid rgba(140,210,255,.18)!important;box-shadow:0 18px 55px rgba(0,0,0,.24),inset 0 1px 0 rgba(255,255,255,.04)!important;backdrop-filter:blur(18px) saturate(1.18)!important}.pcard:hover,.cc-panel:hover,.contact-info-card:hover,.bear-card:hover,.doc-card:hover,.res-card:hover{transform:translateY(-2px)!important;border-color:rgba(217,185,93,.36)!important;box-shadow:0 22px 65px rgba(0,0,0,.32),0 0 32px rgba(217,185,93,.08)!important}.contact-grid,.obs-grid{display:grid!important;grid-template-columns:minmax(0,.95fr) minmax(420px,1.05fr)!important;gap:1.5rem!important;align-items:start!important}.contact-info,.obs-list{min-width:0!important}.contact-form-wrap,.obs-form-wrap{min-width:0!important}.field,.input,textarea,select{min-width:0!important;max-width:100%!important}.social-row,.home-hero-actions,.nav-actions{flex-wrap:wrap!important}.bottom-nav{z-index:880!important}.bottom-nav a{min-width:0!important;overflow:hidden!important;text-overflow:ellipsis!important}
.admin-login{min-height:100dvh!important;padding:calc(var(--header-h) + 2rem) 1rem 2rem!important;display:flex!important;align-items:center!important;justify-content:center!important}.admin-login-card{width:min(440px,100%)!important}.form-error{min-height:1.2rem}.admin-login-foot{margin-top:1rem;text-align:center;color:var(--cc-text-3);font:600 .62rem var(--f-mono);letter-spacing:.08em;text-transform:uppercase}.admin-shell{min-height:100dvh!important}.admin-content{min-width:0!important}.admin-topbar-tools{display:flex;align-items:center;gap:.6rem!important;flex-wrap:wrap!important}
@media(max-width:1180px){.site-header nav{display:none!important}.burger{display:inline-flex!important}.brand{flex-basis:auto!important;min-width:0!important}.home-hero{grid-template-columns:1fr!important}.home-hero-right{order:0!important}.home-hero-left,.home-hero-right .cc-panel{min-height:0!important}.stat-tiles{grid-template-columns:repeat(2,minmax(0,1fr))!important}.home-ops,.home-intelligence,.home-bottom-row,.contact-grid,.obs-grid{grid-template-columns:1fr!important}.exp-dashboard{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:760px){:root{--header-h:68px}.container{width:min(100% - 22px,1320px)!important}.site-header .container{width:min(100% - 18px,1320px)!important}.brand-mark{width:46px!important;height:46px!important}.brand-word{font-size:.82rem!important;max-width:150px!important}.brand-word small{display:none!important}.nav-actions .btn-gold{display:none!important}.lang-btn{padding:.45rem .62rem!important}.home-main{padding-top:calc(var(--header-h) + 12px)!important}.section-tight{padding-top:calc(var(--header-h) + 1.3rem)!important}.hero-logo-lockup{grid-template-columns:1fr!important;text-align:center!important;justify-items:center!important}.hero-logo-ring{--logo-big:132px!important;width:132px!important;height:132px!important}.home-hero-title{text-align:center!important;font-size:clamp(2rem,10vw,3rem)!important}.home-hero-sub{text-align:center!important}.home-hero-actions{display:grid!important;grid-template-columns:1fr!important}.home-hero-actions .btn{width:100%!important;justify-content:center!important;white-space:normal!important}.home-metrics,.mini-stats,.stat-tiles{grid-template-columns:1fr!important}.home-hero-bear img{height:190px!important}#home-map{height:360px!important;min-height:360px!important}.home-map-layers{position:relative!important;left:auto!important;right:auto!important;bottom:auto!important;padding:.75rem!important;background:rgba(6,15,27,.70)!important}.home-map-layers .map-layer-btn{flex:1 1 42%!important;min-width:0!important}.display-lg,.display-md{font-size:clamp(2.05rem,10vw,3.1rem)!important}.form-row{grid-template-columns:1fr!important}.admin-content{padding:1rem!important}.bottom-nav{display:grid!important;grid-template-columns:repeat(5,1fr)!important}.bottom-nav a{font-size:.56rem!important;padding:.42rem .18rem!important}}

/* ===== V11 PREMIUM ACTIVE ATMOSPHERE — subtil, nu haos ===== */
body::after{content:'';position:fixed;inset:0;pointer-events:none;z-index:0;background:radial-gradient(circle at 18% 18%,rgba(61,224,138,.105),transparent 28%),radial-gradient(circle at 82% 12%,rgba(57,190,255,.10),transparent 30%),radial-gradient(circle at 50% 92%,rgba(201,154,75,.10),transparent 35%);mix-blend-mode:screen;animation:orsiAurora 14s ease-in-out infinite alternate} @keyframes orsiAurora{0%{opacity:.38;transform:translate3d(-.6%,0,0) scale(1)}100%{opacity:.72;transform:translate3d(.6%,-.4%,0) scale(1.025)}}
main,.site-header,.bottom-nav,.mobile-menu,.admin-shell,.exp-shell{position:relative;z-index:1}.cc-panel,.panel,.form-card,.contact-info-card,.contact-form-wrap,.pcard,.bear-card,.doc-card,.res-card,.gallery-tile,.obs-form-wrap{box-shadow:0 24px 80px rgba(0,0,0,.36),inset 0 1px 0 rgba(255,255,255,.045)!important;border-color:rgba(132,220,255,.18)!important}.cc-panel::after,.panel::after,.form-card::after,.contact-form-wrap::after{content:'';position:absolute;inset:0;border-radius:inherit;pointer-events:none;background:linear-gradient(115deg,transparent 0 35%,rgba(255,255,255,.045) 45%,transparent 58%);opacity:.42}.btn,.map-layer-btn,.cc-navitem,.admin-nav a{transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease!important}.btn:hover,.map-layer-btn:hover,.cc-navitem:hover,.admin-nav a:hover{transform:translateY(-1px);box-shadow:0 10px 28px rgba(42,210,210,.13)}.btn-solid,.btn-primary{background:linear-gradient(135deg,#42eba7,#26d3fb)!important;color:#03111b!important;border-color:rgba(110,255,225,.55)!important}.btn-danger{background:linear-gradient(135deg,rgba(255,102,86,.22),rgba(255,102,86,.12))!important;color:#ffaaa1!important;border-color:rgba(255,102,86,.42)!important}.display-lg,.home-hero-title,.exp-pagehead-title{letter-spacing:-.055em;text-shadow:0 0 34px rgba(61,224,138,.12)}.env-fog::after{content:'';position:fixed;inset:auto -10% 0 -10%;height:30vh;pointer-events:none;background:linear-gradient(180deg,transparent,rgba(5,12,22,.58));z-index:0}@media(prefers-reduced-motion:reduce){body::after{animation:none}.btn:hover,.map-layer-btn:hover,.cc-navitem:hover,.admin-nav a:hover{transform:none}}
.cc-panel,.panel,.form-card,.contact-info-card,.contact-form-wrap,.pcard,.bear-card,.doc-card,.res-card,.gallery-tile,.obs-form-wrap{position:relative;overflow:hidden}
.cc-panel>*,.panel>*,.form-card>*,.contact-form-wrap>*,.obs-form-wrap>*{position:relative;z-index:1}

/* ═══════════════════════════════════════════════════════════════════
   RICERCA GLOBALE — global search overlay (search.js)
   ═══════════════════════════════════════════════════════════════════ */
.gsearch-trigger{display:inline-flex;align-items:center;gap:.5rem;padding:.5rem .8rem;border-radius:12px;
  border:1px solid var(--cc-border,rgba(64,128,172,.32));background:rgba(12,24,40,.55);color:var(--cc-text-2,#88A8C0);
  font-family:var(--f-mono,monospace);font-size:.66rem;letter-spacing:.06em;cursor:pointer;
  transition:border-color .2s,color .2s,background .2s;backdrop-filter:blur(10px)}
.gsearch-trigger:hover{border-color:var(--cc-amber,#F0A030);color:var(--cc-text,#D8EAF4);background:rgba(240,160,48,.08)}
.gsearch-trigger svg{flex:none}
.gsearch-trigger kbd{font-family:var(--f-mono,monospace);font-size:.6rem;padding:.05em .4em;border-radius:5px;
  border:1px solid var(--cc-border,rgba(64,128,172,.32));background:rgba(0,0,0,.25);color:var(--cc-text-3,#507090)}
.gsearch-trigger-float{position:fixed;bottom:84px;right:16px;z-index:940;box-shadow:0 12px 30px rgba(0,0,0,.4)}
@media(max-width:760px){.gsearch-trigger-lbl,.gsearch-trigger kbd{display:none}.gsearch-trigger{padding:.55rem;border-radius:50%}}

.gsearch-overlay{position:fixed;inset:0;z-index:1200;display:none;align-items:flex-start;justify-content:center;
  padding:max(7vh,56px) 16px 16px;background:rgba(3,9,17,.72);backdrop-filter:blur(8px);
  -webkit-backdrop-filter:blur(8px);opacity:0;transition:opacity .18s}
.gsearch-overlay.open{display:flex;opacity:1;animation:gsearch-fade .18s ease}
@keyframes gsearch-fade{from{opacity:0}to{opacity:1}}
.gsearch-box{width:min(760px,100%);max-height:84vh;display:flex;flex-direction:column;
  background:linear-gradient(180deg,rgba(11,24,40,.97),rgba(8,17,30,.97));border:1px solid var(--cc-border-lit,rgba(100,188,248,.45));
  border-radius:20px;box-shadow:0 40px 120px rgba(0,0,0,.6),0 0 60px rgba(52,200,232,.07);overflow:hidden;
  animation:gsearch-pop .2s cubic-bezier(.2,.9,.3,1.2)}
@keyframes gsearch-pop{from{transform:translateY(-14px) scale(.98);opacity:.4}to{transform:none;opacity:1}}
.gsearch-bar{display:flex;align-items:center;gap:.7rem;padding:1rem 1.1rem;border-bottom:1px solid var(--cc-border-dim,rgba(40,80,110,.3))}
.gsearch-bar>svg{color:var(--cc-amber,#F0A030);flex:none}
.gsearch-input{flex:1;background:none;border:0;outline:none;color:var(--cc-text,#D8EAF4);font-size:1.05rem;font-family:inherit}
.gsearch-input::placeholder{color:var(--cc-text-3,#507090)}
.gsearch-close{background:none;border:0;color:var(--cc-text-3,#507090);font-size:1.1rem;cursor:pointer;padding:.2rem .4rem;border-radius:8px}
.gsearch-close:hover{color:var(--cc-text,#D8EAF4);background:rgba(255,255,255,.06)}
.gsearch-meta{padding:.6rem 1.1rem;font-family:var(--f-mono,monospace);font-size:.7rem;letter-spacing:.04em;
  color:var(--cc-text-2,#88A8C0);border-bottom:1px solid var(--cc-border-dim,rgba(40,80,110,.22));min-height:1.2em}
.gsearch-meta:empty{display:none}
.gsearch-meta strong{color:var(--cc-amber-2,#FFB84D)}
.gsearch-results{overflow-y:auto;padding:.5rem .6rem 1rem;-webkit-overflow-scrolling:touch}
.gsearch-group{margin:.6rem .4rem}
.gsearch-group-head{display:flex;align-items:center;gap:.5rem;padding:.4rem .6rem;color:var(--cc-cyan,#34C8E8);
  font-family:var(--f-mono,monospace);font-size:.62rem;letter-spacing:.12em;text-transform:uppercase}
.gsearch-group-head svg{color:var(--cc-cyan,#34C8E8)}
.gsearch-count{margin-left:auto;color:var(--cc-text-3,#507090);background:rgba(52,200,232,.1);
  border-radius:999px;padding:.1em .6em;font-size:.6rem}
.gsearch-item{display:flex;align-items:center;gap:.75rem;padding:.6rem .7rem;border-radius:12px;text-decoration:none;
  color:var(--cc-text,#D8EAF4);transition:background .14s,transform .14s}
.gsearch-item:hover{background:rgba(240,160,48,.09);transform:translateX(2px)}
.gsearch-item-ic{flex:none;width:32px;height:32px;display:grid;place-items:center;border-radius:9px;
  background:rgba(52,200,232,.1);border:1px solid var(--cc-border-dim,rgba(40,80,110,.3));color:var(--cc-cyan,#34C8E8)}
.gsearch-item-body{min-width:0;display:flex;flex-direction:column;gap:.1rem}
.gsearch-item-title{font-size:.92rem;font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gsearch-item-sub{font-size:.72rem;color:var(--cc-text-2,#88A8C0);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.gsearch-loading{display:flex;justify-content:center;padding:2.4rem}
.gsearch-spin{width:26px;height:26px;border-radius:50%;border:3px solid rgba(140,168,192,.2);
  border-top-color:var(--cc-amber,#F0A030);animation:gsearch-spin .7s linear infinite}
@keyframes gsearch-spin{to{transform:rotate(360deg)}}
.gsearch-empty{text-align:center;padding:2.6rem 1.5rem;color:var(--cc-text-2,#88A8C0)}
.gsearch-empty-ic{display:inline-grid;place-items:center;width:54px;height:54px;border-radius:50%;
  background:rgba(80,112,144,.12);color:var(--cc-text-3,#507090);margin-bottom:.8rem}
.gsearch-empty p{margin:0 0 .3rem;font-size:1rem;color:var(--cc-text,#D8EAF4)}
.gsearch-empty small{font-size:.78rem;color:var(--cc-text-3,#507090)}
.gsearch-error p{color:var(--cc-amber-2,#FFB84D)}
@media(max-width:640px){.gsearch-overlay{padding:0}.gsearch-box{max-height:100vh;height:100%;border-radius:0;border:0}
  .gsearch-input{font-size:1rem}.gsearch-results{flex:1}}

/* ══════════════════════════════════════════════════════════
   V13 GLOBAL FIXES
   ══════════════════════════════════════════════════════════ */

/* General overflow-x prevention */
html,body{overflow-x:hidden!important;max-width:100vw}
.container{min-width:0}

/* Mobile nav improvements */
@media(max-width:760px){
  .mobile-menu{padding:1.5rem 1.2rem;gap:.5rem}
  .mobile-menu .nav-links{display:flex!important;flex-direction:column;gap:.25rem}
  .mobile-menu .nav-links a{padding:.75rem 1rem;border-radius:12px;font-size:.95rem;
    background:rgba(12,24,40,.6);border:1px solid rgba(64,128,172,.15)}
  .mobile-menu .nav-links a:hover{background:rgba(240,160,48,.1);border-color:rgba(240,160,48,.3)}
  /* Bottom nav bigger touch targets */
  .bottom-nav a{padding:.5rem .2rem}
  .bottom-nav svg{width:20px!important;height:20px!important}
  .bottom-nav span{font-size:.6rem!important}
}

/* News / documents / research pages - ensure not empty */
.news-card,.doc-card,.res-card{min-height:120px}

/* Better modal scroll on mobile */
.modal{-webkit-overflow-scrolling:touch}

/* Form improvements - prevent zoom on mobile input focus */
@media(max-width:760px){
  input[type="text"],input[type="email"],input[type="number"],
  input[type="password"],textarea,select{font-size:16px!important}
}

/* Explorer page mobile */
@media(max-width:760px){
  .exp-shell{height:auto!important;min-height:100dvh}
  .exp-layout{display:flex!important;flex-direction:column!important}
  .exp-mapzone{height:60vmin!important;min-height:280px!important}
  .exp-sidebar{width:100%!important;max-width:none!important;max-height:52vh!important;overflow-y:auto}
  .exp-topbar{height:auto!important;padding:.75rem!important;flex-wrap:wrap}
  .exp-brand{flex:0 0 auto}
  .exp-search{flex:1 1 100%;order:3;margin-top:.5rem}
}

/* Contact page mobile */
@media(max-width:760px){
  .contact-grid{grid-template-columns:1fr!important}
}

/* Observer page mobile */
@media(max-width:760px){
  .obs-grid{grid-template-columns:1fr!important}
  #obs-map{height:320px!important}
  .obs-list{max-height:none!important}
}

/* Prevent cards overlapping on mobile */
@media(max-width:640px){
  .cc-panel,.pcard,.stat-tile,.doc-card,.res-card,.bear-card{
    min-width:0!important;overflow:hidden!important
  }
}

/* Search trigger in nav - ensure visible */
.gsearch-trigger{white-space:nowrap}
@media(max-width:980px){
  .gsearch-trigger .gsearch-trigger-lbl{display:none}
  .gsearch-trigger kbd{display:none}
  .gsearch-trigger{padding:.5rem .6rem;border-radius:10px}
}
