/* ═══════════════════════════════════════════════════════
   Broken UFO - Compiled Core CSS v4.0.1
   Auto-generated by build.sh — DO NOT EDIT DIRECTLY
   ═══════════════════════════════════════════════════════ */

/* ── tokens.css ── */
:root {
  /* Surfaces */
  --bufo-space: #050508;
  --bufo-surface-1: #0a0e14;
  --bufo-surface-2: #111820;
  --bufo-surface-3: #182028;

  /* Signal green (primary brand color) */
  --bufo-green: #22c55e;
  --bufo-green-rgb: 34, 197, 94;
  --bufo-green-dim: rgba(34, 197, 94, 0.12);
  --bufo-green-soft: rgba(34, 197, 94, 0.35);
  --bufo-green-glow: rgba(34, 197, 94, 0.40);
  --bufo-green-bright: #4ade80;

  /* Bright green (hero effects, glows) */
  --bufo-neon: #00ff88;
  --bufo-neon-glow: rgba(0, 255, 136, 0.3);

  /* Accent colors */
  --bufo-cyan: #22d3ee;
  --bufo-cyan-dim: rgba(34, 211, 238, 0.35);
  --bufo-amber: #fbbf24;
  --bufo-amber-rgb: 251, 191, 36;
  --bufo-amber-dim: rgba(245, 158, 11, 0.30);
  --bufo-magenta: #ff3a8c;
  --bufo-magenta-rgb: 255, 58, 140;
  --bufo-magenta-dim: rgba(255, 58, 140, 0.10);
  --bufo-red: #ef4444;
  --bufo-purple: #a855f7;

  /* Text hierarchy */
  --bufo-text: rgba(245, 247, 255, 0.96);
  --bufo-text-2: rgba(245, 247, 255, 0.80);
  --bufo-text-3: rgba(245, 247, 255, 0.60);
  --bufo-text-4: rgba(245, 247, 255, 0.55);
  --bufo-text-5: rgba(245, 247, 255, 0.25);
  --bufo-text-dim: rgba(255, 255, 255, 0.68);

  /* Borders & glass */
  --bufo-line: rgba(255, 255, 255, 0.06);
  --bufo-line-2: rgba(255, 255, 255, 0.10);
  --bufo-line-3: rgba(255, 255, 255, 0.14);
  --bufo-line-green: rgba(34, 197, 94, 0.15);
  --bufo-line-green-2: rgba(34, 197, 94, 0.22);
  --bufo-line-green-3: rgba(34, 197, 94, 0.30);
  --bufo-glass: rgba(255, 255, 255, 0.05);
  --bufo-panel: rgba(0, 0, 0, 0.28);
  --bufo-panel-2: rgba(0, 0, 0, 0.38);

  /* Nav-specific */
  --bufo-nav-bg: rgba(5, 7, 9, 0.86);
  --bufo-nav-bg-2: rgba(3, 5, 7, 0.92);
  --bufo-nav-text: rgba(255, 255, 255, 0.88);
  --bufo-nav-text-dim: rgba(255, 255, 255, 0.72);
  --bufo-nav-border: var(--bufo-line-2);
  --bufo-nav-border-2: var(--bufo-line-green-2);
  --bufo-nav-solid: var(--bufo-nav-bg);
  --bufo-nav-solid-2: var(--bufo-nav-bg-2);

  /* Shadows */
  --bufo-shadow: 0 10px 30px rgba(0, 0, 0, 0.35);
  --bufo-shadow-glow: 0 0 20px rgba(34, 197, 94, 0.15);

  /* Radii */
  --bufo-radius: 16px;
  --bufo-radius-md: 12px;
  --bufo-radius-sm: 8px;
  --bufo-radius-xs: 6px;

  /* Spacing */
  --bufo-s-1: 4px;
  --bufo-s-2: 8px;
  --bufo-s-3: 12px;
  --bufo-s-4: 16px;
  --bufo-s-5: 24px;
  --bufo-s-6: 32px;

  /* Typography — 3 fonts: Outfit (body/headers), JetBrains Mono (code), Zen Dots (logo) */
  --bufo-font: 'Outfit', system-ui, -apple-system, sans-serif;
  --bufo-mono: 'JetBrains Mono', 'Fira Code', 'SF Mono', Consolas, monospace;
  --bufo-display: 'Zen Dots', 'Outfit', system-ui, sans-serif;

  /* Transitions */
  --bufo-ease: 250ms ease;
  --bufo-ease-fast: 150ms ease;
  --bufo-ease-slow: 400ms ease;

  /* ── Legacy aliases (mapped to canonical tokens for backward compat) ── */

  /* Old base.css tokens */
  --deep-space: var(--bufo-space);
  --dark-matter: #0a0c10;
  --void: #0d1015;
  --nebula: #12151c;
  --bufo-ink: #0a0c0f;
  --bufo-ink-2: #0b0f14;
  --ufo-black: #0a0a0f;
  --ufo-darker: #0d0d14;
  --ufo-dark: #12121a;
  --ufo-medium: #1a1a25;
  --ufo-light: #252535;
  --ufo-purple: #9966ff;

  --ufo-green: var(--bufo-neon);
  --ufo-green-bright: var(--bufo-green-bright);
  --ufo-green-dim: #00cc6a;
  --ufo-green-glow: var(--bufo-neon-glow);
  --ufo-cyan: #00d4ff;
  --ufo-cyan-glow: rgba(0, 212, 255, 0.3);
  --ufo-amber: #ffaa00;
  --ufo-amber-glow: rgba(255, 170, 0, 0.2);
  --ufo-red: #ff3366;
  --ufo-red-glow: rgba(255, 51, 102, 0.3);

  --warning-red: var(--bufo-red);
  --warning-amber: #f59e0b;

  --text-primary: #e8e8f0;
  --text-secondary: #a0a0b5;
  --text-muted: #606080;
  --text-dim: #4b5563;

  --glass-light: var(--bufo-glass);
  --glass-border: var(--bufo-line-2);
  --glass-border-hover: var(--bufo-line-green-3);
  --shadow-glow-green: var(--bufo-shadow-glow);

  --font-mono: var(--bufo-mono);
  --font-display: var(--bufo-display);
  --font-body: var(--bufo-font);
  --bufo-sans: var(--bufo-font);

  --transition-base: var(--bufo-ease);
  --transition-fast: var(--bufo-ease-fast);
  --transition-slow: var(--bufo-ease-slow);

  /* Old --hb-* aliases */
  --hb-green: var(--bufo-green);
  --hb-green-rgb: var(--bufo-green-rgb);
  --hb-green-dim: var(--bufo-green-dim);
  --hb-green-glow: var(--bufo-green-glow);
  --hb-green-bright: var(--bufo-green-bright);
  --hb-magenta: var(--bufo-magenta);
  --hb-magenta-rgb: var(--bufo-magenta-rgb);
  --hb-amber: var(--bufo-amber);
  --hb-amber-rgb: var(--bufo-amber-rgb);
  --hb-surface-1: var(--bufo-surface-1);
  --hb-surface-2: var(--bufo-surface-2);
  --hb-border: var(--bufo-line);
  --hb-border-green: var(--bufo-line-green);
  --hb-text-100: var(--bufo-text);
  --hb-text-80: var(--bufo-text-2);
  --hb-text-60: var(--bufo-text-3);
  --hb-text-40: var(--bufo-text-4);
  --hb-text-25: var(--bufo-text-5);
  --hb-mono: var(--bufo-mono);
  --hb-sans: var(--bufo-font);
  --hb-radius: var(--bufo-radius);
  --hb-radius-md: var(--bufo-radius-md);
  --hb-radius-sm: var(--bufo-radius-sm);
  --hb-radius-xs: var(--bufo-radius-xs);

  /* Old --bcc-* aliases */
  --bcc-green: var(--bufo-green);
  --bcc-green-rgb: var(--bufo-green-rgb);
  --bcc-green-dim: var(--bufo-green-dim);
  --bcc-green-glow: var(--bufo-green-glow);
  --bcc-green-bright: var(--bufo-green-bright);
  --bcc-magenta: var(--bufo-magenta);
  --bcc-magenta-rgb: var(--bufo-magenta-rgb);
  --bcc-magenta-dim: var(--bufo-magenta-dim);
  --bcc-amber: var(--bufo-amber);
  --bcc-amber-rgb: var(--bufo-amber-rgb);
  --bcc-cyan: var(--bufo-cyan);
  --bcc-surface-0: var(--bufo-space);
  --bcc-surface-1: var(--bufo-surface-1);
  --bcc-surface-2: var(--bufo-surface-2);
  --bcc-surface-3: var(--bufo-surface-3);
  --bcc-border: var(--bufo-line);
  --bcc-border-green: rgba(34, 197, 94, 0.18);
  --bcc-text-100: var(--bufo-text);
  --bcc-text-80: var(--bufo-text-2);
  --bcc-text-60: var(--bufo-text-3);
  --bcc-text-40: var(--bufo-text-4);
  --bcc-text-25: var(--bufo-text-5);
  --bcc-mono: var(--bufo-mono);
  --bcc-sans: var(--bufo-font);
  --bcc-radius: var(--bufo-radius);
  --bcc-radius-md: var(--bufo-radius-md);
  --bcc-radius-sm: var(--bufo-radius-sm);

  /* Old --bi-* aliases */
  --bi-green: var(--bufo-green);
  --bi-green-rgb: var(--bufo-green-rgb);
  --bi-green-dim: var(--bufo-green-dim);
  --bi-green-glow: var(--bufo-green-glow);
  --bi-green-bright: var(--bufo-green-bright);
  --bi-magenta: var(--bufo-magenta);
  --bi-magenta-rgb: var(--bufo-magenta-rgb);
  --bi-amber: var(--bufo-amber);
  --bi-amber-rgb: var(--bufo-amber-rgb);
  --bi-surface-0: var(--bufo-space);
  --bi-surface-1: var(--bufo-surface-1);
  --bi-surface-2: var(--bufo-surface-2);
  --bi-surface-3: var(--bufo-surface-3);
  --bi-border: var(--bufo-line);
  --bi-border-green: var(--bufo-line-green);
  --bi-text-100: var(--bufo-text);
  --bi-text-80: var(--bufo-text-2);
  --bi-text-60: var(--bufo-text-3);
  --bi-text-40: var(--bufo-text-4);
  --bi-text-25: var(--bufo-text-5);
  --bi-mono: var(--bufo-mono);
  --bi-sans: var(--bufo-font);
  --bi-radius: var(--bufo-radius);
  --bi-radius-md: var(--bufo-radius-md);
  --bi-radius-sm: var(--bufo-radius-sm);
  --bi-radius-xs: var(--bufo-radius-xs);

  /* Old --ba-* aliases */
  --ba-green: var(--bufo-green);
  --ba-green-rgb: var(--bufo-green-rgb);
  --ba-green-dim: var(--bufo-green-dim);
  --ba-green-glow: var(--bufo-green-glow);
  --ba-green-bright: var(--bufo-green-bright);
  --ba-magenta: var(--bufo-magenta);
  --ba-magenta-rgb: var(--bufo-magenta-rgb);
  --ba-amber: var(--bufo-amber);
  --ba-amber-rgb: var(--bufo-amber-rgb);
  --ba-cyan: var(--bufo-cyan);
  --ba-cyan-rgb: 34, 211, 238;
  --ba-surface-0: var(--bufo-space);
  --ba-surface-1: var(--bufo-surface-1);
  --ba-surface-2: var(--bufo-surface-2);
  --ba-surface-3: var(--bufo-surface-3);
  --ba-border: var(--bufo-line);
  --ba-border-green: var(--bufo-line-green);
  --ba-text-100: var(--bufo-text);
  --ba-text-80: var(--bufo-text-2);
  --ba-text-60: var(--bufo-text-3);
  --ba-text-40: var(--bufo-text-4);
  --ba-text-25: var(--bufo-text-5);
  --ba-mono: var(--bufo-mono);
  --ba-sans: var(--bufo-font);
  --ba-radius: var(--bufo-radius);
  --ba-radius-md: var(--bufo-radius-md);
  --ba-radius-sm: var(--bufo-radius-sm);
  --ba-radius-xs: var(--bufo-radius-xs);
}

/* ── base.css ── */
/* Body + global resets — tokens live in tokens.css */

html,
body {
  background: var(--bufo-space);
  color: var(--text-primary);
  font-family: var(--bufo-font);
}

body {
  overflow-x: hidden;
  text-rendering: optimizeLegibility;
  -webkit-font-smoothing: antialiased;
}

/* Noise texture overlay */
body::before {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.04;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='300' height='300'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='300' height='300' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");
  contain: strict;
}

/* Scanline overlay */
body::after {
  content: "";
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  opacity: 0.03;
  background: repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(255, 255, 255, 0.03) 2px, rgba(255, 255, 255, 0.03) 4px);
  contain: strict;
}

#page {
  position: relative;
  z-index: 1;
}

::selection {
  background: rgba(34, 197, 94, 0.25);
  color: var(--text-primary);
}

:focus-visible {
  outline: 2px solid var(--bufo-neon);
  outline-offset: 2px;
}

[data-magnetic] {
  transform: translate3d(0, 0, 0);
  will-change: transform;
}

[data-magnetic]::before {
  content: "";
  position: absolute;
  inset: 0;
  border-radius: inherit;
  background: radial-gradient(500px circle at var(--mouse-x, 50%) var(--mouse-y, 50%), rgba(34, 197, 94, 0.12), transparent 40%);
  opacity: 0;
  transition: opacity var(--bufo-ease);
  pointer-events: none;
}

[data-magnetic]:hover::before {
  opacity: 1;
}

@media (prefers-reduced-motion: reduce) {
  *,
  *::before,
  *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Focus resets for custom inputs */
.console-search__wrapper:focus-within { border-color: var(--glass-border-hover); }

.console-search__input:focus,
.hero-search__input:focus,
.newsletter-form__input:focus,
.cta-form input:focus,
.comment-form-textarea-wrapper textarea:focus { outline: none; }

.newsletter-form__input:focus,
.cta-form input:focus { border-color: var(--bufo-neon); }

.comment-form-input-wrapper input:focus {
  outline: none;
  border-color: var(--bufo-neon);
  background: rgba(0, 0, 0, 0.4);
}

.comment-form-input-wrapper input:focus + svg,
.comment-form-input-wrapper:focus-within svg { color: var(--bufo-neon); }

.comment-form-textarea-wrapper textarea:focus {
  border-color: var(--bufo-neon);
  background: rgba(0, 0, 0, 0.4);
}

.hero-search__wrapper:focus-within {
  border-color: var(--bufo-neon);
  box-shadow: 0 0 20px var(--bufo-neon-glow);
}

ul.wp-block-list.bufo-list--classified::selection,
ol.wp-block-list.bufo-list--classified::selection {
  background: rgba(34, 197, 94, 0.25);
}

.bufo-nav__link:focus-visible {
  outline: none;
  border-color: rgba(34, 197, 94, 0.55);
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.22), 0 0 0 1px rgba(34, 197, 94, 0.18) inset;
}

.classified-header-badge:focus {
  outline: none;
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.25);
}

#bufo-loginform input[type="text"]:focus,
#bufo-loginform input[type="password"]:focus {
  border-color: rgba(239, 68, 68, 0.35);
  box-shadow: 0 0 0 2px rgba(239, 68, 68, 0.18);
}

.agent-menu.is-auth #bufo-loginform input[type="text"]:focus,
.agent-menu.is-auth #bufo-loginform input[type="password"]:focus {
  border-color: rgba(34, 197, 94, 0.30);
  box-shadow: 0 0 0 2px rgba(34, 197, 94, 0.16);
}

/* ── animations.css ── */
@keyframes scan-right {
  0% {
    transform: translateX(-100%)
  }

  100% {
    transform: translateX(300%)
  }
}

@keyframes scan-left {
  0% {
    transform: translateX(300%)
  }

  100% {
    transform: translateX(-100%)
  }
}

@keyframes scan-down {
  0% {
    transform: translateY(-40%)
  }

  100% {
    transform: translateY(140%)
  }
}

@keyframes scan-up {
  0% {
    transform: translateY(140%)
  }

  100% {
    transform: translateY(-40%)
  }
}

@keyframes pulse-glow {

  0%,
  100% {
    transform: scale(1);
    box-shadow: 0 0 8px var(--ufo-green)
  }

  50% {
    transform: scale(1.2);
    box-shadow: 0 0 16px var(--ufo-green)
  }
}

@keyframes badge-pulse {

  0%,
  100% {
    box-shadow: none
  }

  50% {
    box-shadow: 0 0 20px -5px rgba(239, 68, 68, 0.4)
  }
}

@keyframes badge-pulse-green {

  0%,
  100% {
    box-shadow: none
  }

  50% {
    box-shadow: 0 0 20px -5px rgba(34, 197, 94, 0.4)
  }
}

@keyframes blink {

  0%,
  100% {
    opacity: 1
  }

  50% {
    opacity: 0.3
  }
}

@keyframes ping {

  75%,
  100% {
    transform: scale(2.5);
    opacity: 0
  }
}

@keyframes glitch-skew {

  0%,
  100% {
    transform: skew(0deg)
  }

  25% {
    transform: skew(-2deg)
  }

  75% {
    transform: skew(2deg)
  }
}

@keyframes radar-rotate {
  from {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(360deg)
  }
}

@keyframes scan-v {

  0%,
  100% {
    transform: translateY(-10%);
    opacity: 0
  }

  10% {
    opacity: 1
  }

  90% {
    opacity: 1
  }

  100% {
    transform: translateY(110%);
    opacity: 0
  }
}

@keyframes scan-h {

  0%,
  100% {
    transform: translateX(-10%);
    opacity: 0
  }

  10% {
    opacity: 1
  }

  90% {
    opacity: 1
  }

  100% {
    transform: translateX(110%);
    opacity: 0
  }
}

@keyframes stamp-flicker {

  0%,
  94%,
  100% {
    opacity: 1
  }

  95% {
    opacity: 0.7
  }

  97% {
    opacity: 0.8
  }
}

@keyframes cursor-blink {

  0%,
  100% {
    opacity: 1
  }

  50% {
    opacity: 0
  }
}

@keyframes footer-glow {

  0%,
  100% {
    opacity: 0.5
  }

  50% {
    opacity: 1
  }
}

@keyframes logo-flicker {

  0%,
  94%,
  100% {
    opacity: 1
  }

  95% {
    opacity: 0.8
  }

  97% {
    opacity: 0.85
  }
}

@keyframes bu-scan-pulse {
  0% {
    transform: scale(0.5);
    opacity: 0
  }

  20% {
    opacity: 0.6
  }

  60% {
    opacity: 0.2
  }

  100% {
    transform: scale(1.2);
    opacity: 0
  }
}

@keyframes hero-scan {

  0%,
  100% {
    transform: translateY(-30%);
    opacity: 0
  }

  50% {
    transform: translateY(30%);
    opacity: 1
  }
}

@keyframes hero-scan-move {

  0%,
  100% {
    transform: translateY(-40%);
    opacity: 0
  }

  50% {
    transform: translateY(40%);
    opacity: 1
  }
}

@keyframes flare-pulse {

  0%,
  100% {
    opacity: 0.3;
    transform: scale(1)
  }

  50% {
    opacity: 0.6;
    transform: scale(1.2)
  }
}

@keyframes bounce-down {

  0%,
  100% {
    transform: translateY(0)
  }

  50% {
    transform: translateY(8px)
  }
}

@keyframes rotate-glow {
  from {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(360deg)
  }
}

@keyframes page-scan {

  0%,
  100% {
    transform: translateY(-30%);
    opacity: 0
  }

  50% {
    transform: translateY(30%);
    opacity: 1
  }
}

@keyframes comment-pulse {
  0% {
    transform: scale(1);
    opacity: 0.5
  }

  100% {
    transform: scale(1.3);
    opacity: 0
  }
}

@keyframes archive-scan {

  0%,
  100% {
    transform: translateY(-20%);
    opacity: 0
  }

  50% {
    transform: translateY(20%);
    opacity: 1
  }
}

@keyframes stats-pulse {
  0% {
    transform: scale(1);
    opacity: 0.5
  }

  100% {
    transform: scale(1.3);
    opacity: 0
  }
}

@keyframes stars-drift {
  from {
    transform: translate3d(0, 0, 0)
  }

  to {
    transform: translate3d(-350px, -200px, 0)
  }
}

@keyframes index-scan {

  0%,
  100% {
    transform: translateY(-45%);
    opacity: 0
  }

  10% {
    opacity: 1
  }

  90% {
    opacity: 1
  }

  100% {
    transform: translateY(45%);
    opacity: 0
  }
}

@keyframes flare-float-1 {

  0%,
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 0.6
  }

  50% {
    transform: translate(30px, 20px) scale(1.1);
    opacity: 0.8
  }
}

@keyframes flare-float-2 {

  0%,
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 0.5
  }

  50% {
    transform: translate(-20px, -30px) scale(1.15);
    opacity: 0.7
  }
}

@keyframes orb-pulse {

  0%,
  100% {
    transform: scale(1);
    opacity: 0.8
  }

  50% {
    transform: scale(1.2);
    opacity: 1
  }
}

@keyframes orb-ring-rotate {
  from {
    transform: rotate(0deg)
  }

  to {
    transform: rotate(360deg)
  }
}

@keyframes status-pulse {

  0%,
  100% {
    opacity: 1;
    transform: scale(1)
  }

  50% {
    opacity: 0.6;
    transform: scale(0.9)
  }
}

@keyframes scroll-bounce {

  0%,
  100% {
    transform: translateY(0)
  }

  50% {
    transform: translateY(8px)
  }
}

@keyframes featured-pulse {
  0% {
    transform: scale(1);
    opacity: 0.5
  }

  100% {
    transform: scale(1.1);
    opacity: 0
  }
}

@keyframes featured-scan {

  0%,
  100% {
    transform: translateY(-40%);
    opacity: 0
  }

  50% {
    transform: translateY(40%);
    opacity: 1
  }
}

@keyframes dot-ping {
  0% {
    transform: scale(1);
    opacity: 0.7
  }

  100% {
    transform: scale(2);
    opacity: 0
  }
}

@keyframes twinkle {

  0%,
  100% {
    opacity: 0.4
  }

  50% {
    opacity: 0.7
  }
}

@keyframes globalScan {
  0% {
    transform: translateY(0)
  }

  100% {
    transform: translateY(100vh)
  }
}

@keyframes flareFloat {

  0%,
  100% {
    transform: translate(0, 0) scale(1);
    opacity: 0.1
  }

  33% {
    transform: translate(30px, -20px) scale(1.1);
    opacity: 0.2
  }

  66% {
    transform: translate(-20px, 30px) scale(0.9);
    opacity: 0.15
  }
}

@keyframes pulse {

  0%,
  100% {
    opacity: 1;
    transform: scale(1)
  }

  50% {
    opacity: 0.5;
    transform: scale(0.8)
  }
}

@keyframes ufoHover {

  0%,
  100% {
    transform: translateY(0)
  }

  50% {
    transform: translateY(-8px)
  }
}

@keyframes lightBlink {

  0%,
  100% {
    opacity: 1
  }

  50% {
    opacity: 0.3
  }
}

@keyframes beamPulse {

  0%,
  100% {
    opacity: 0.15
  }

  50% {
    opacity: 0.3
  }
}

@keyframes glitchLine {

  0%,
  90%,
  100% {
    opacity: 0
  }

  92%,
  98% {
    opacity: 0.5;
    transform: translateX(3px)
  }
}

@keyframes cursorBlink {

  0%,
  100% {
    opacity: 1
  }

  50% {
    opacity: 0
  }
}

@keyframes redact {

  0%,
  100% {
    opacity: 1
  }

  50% {
    opacity: 0.5
  }
}

@keyframes float {

  0%,
  100% {
    transform: translateY(0)
  }

  50% {
    transform: translateY(-10px)
  }
}

@keyframes arrowBounce {

  0%,
  100% {
    transform: translateY(0)
  }

  50% {
    transform: translateY(5px)
  }
}

@keyframes scanLine {
  0% {
    transform: translateY(0)
  }

  100% {
    transform: translateY(300px)
  }
}

@keyframes bufoPulse {
  0% {
    transform: scale(.86);
    opacity: .5
  }

  60% {
    transform: scale(1.15);
    opacity: .18
  }

  100% {
    transform: scale(1.18);
    opacity: 0
  }
}

@keyframes bufoNoise {
  0% {
    transform: translateX(-10%) scaleX(0.38);
    opacity: .7
  }

  50% {
    transform: translateX(20%) scaleX(0.68);
    opacity: .95
  }

  100% {
    transform: translateX(-8%) scaleX(0.44);
    opacity: .8
  }
}

@keyframes bufoTicker {
  0% {
    transform: translateX(0)
  }

  100% {
    transform: translateX(-100%)
  }
}

@keyframes block-cursor {
  0% { opacity: 1; }
  50% { opacity: .08; }
  100% { opacity: 1; }
}

@keyframes block-cursor-fast {
  0% { opacity: 1; }
  50% { opacity: .18; }
  100% { opacity: 1; }
}

@keyframes spinner-bounce {
  0%   { transform: translateY(0); opacity: 1; }
  50%  { transform: translateY(-6px); opacity: .35; }
  100% { transform: translateY(0); opacity: 1; }
}

@keyframes bufo-ping{
  0%{ transform: scale(1); opacity: 0.95; }
  55%{ transform: scale(1.15); opacity: 0.65; }
  100%{ transform: scale(1); opacity: 0.95; }
}

/* ── header.css ── */
.header-glass {
  background: linear-gradient(180deg, rgba(8, 12, 18, 0.32), rgba(10, 15, 22, 0.45));
  backdrop-filter: blur(20px) saturate(180%);
  -webkit-backdrop-filter: blur(20px) saturate(180%);
}

.header-grid {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(0deg, rgba(0, 255, 65, 0.10), rgba(0, 255, 65, 0.10)), url(data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.8' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='.18'/%3E%3C/svg%3E);
  background-size: auto, 180px 180px;
  pointer-events: none;
  opacity: 0.35;
  background-repeat: repeat;
  background-blend-mode: overlay;
}

.header-scanline,
.header-scanline-bottom {
  position: relative;
  overflow: hidden;
}

.header-scanline::before {
  content: '';
  position: absolute;
  inset: 0;
  width: 50%;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.7), transparent);
  animation: scan-right 2.5s linear infinite;
}

.header-scanline-bottom::before {
  content: '';
  position: absolute;
  inset: 0;
  width: 50%;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.7), transparent);
  animation: scan-left 2.5s linear infinite;
}

.header-perimeter {
  position: absolute;
  inset: 0;
  pointer-events: none;
  overflow: hidden;
}

.header-perimeter::before,
.header-perimeter::after {
  content: '';
  position: absolute;
  width: 2px;
  height: 40%;
  background: linear-gradient(180deg, transparent, rgba(34, 197, 94, 0.6), transparent);
}

.header-perimeter::before {
  left: 0;
  animation: scan-down 2.5s linear infinite;
}

.header-perimeter::after {
  right: 0;
  animation: scan-up 2.5s linear infinite;
}

.top-info-bar {
  background: rgba(0, 0, 0, 0.5);
  border-bottom: 1px solid rgba(34, 197, 94, 0.1);
}

.coords-display {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1px;
  color: rgba(34, 197, 94, 0.6);
}

.access-level {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 12px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.25);
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 10px;
  color: var(--ufo-green);
  cursor: pointer;
  user-select: none;
  transition: background 0.2s, border-color 0.2s;
  appearance: none;
  -webkit-appearance: none;
}

.access-level:hover {
  background: rgba(34, 197, 94, 0.18);
  border-color: rgba(34, 197, 94, 0.4);
}

.access-level::before {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  box-shadow: 0 0 8px var(--ufo-green);
  animation: pulse-glow 2s ease-in-out infinite;
  transition: background 0.2s, box-shadow 0.2s;
}

/* Tier 1 - amber dot */
.perf-tier-1 .access-level::before {
  background: var(--bufo-amber, #fbbf24);
  box-shadow: 0 0 8px rgba(251, 191, 36, 0.6);
}
.perf-tier-1 .access-level {
  border-color: rgba(251, 191, 36, 0.25);
  color: var(--bufo-amber, #fbbf24);
}

/* Tier 2 - orange dot */
.perf-tier-2 .access-level::before {
  background: #f97316;
  box-shadow: 0 0 8px rgba(249, 115, 22, 0.6);
  animation: none;
}
.perf-tier-2 .access-level {
  border-color: rgba(249, 115, 22, 0.25);
  color: #f97316;
}

/* Tier 3 - red dot, no animation */
.perf-tier-3 .access-level::before {
  background: var(--bufo-red, #ef4444);
  box-shadow: 0 0 8px rgba(239, 68, 68, 0.5);
  animation: none;
}
.perf-tier-3 .access-level {
  border-color: rgba(239, 68, 68, 0.25);
  color: var(--bufo-red, #ef4444);
}

.classified-header-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  border: 1px solid rgba(239, 68, 68, 0.4);
  background: rgba(239, 68, 68, 0.1);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-weight: 800;
  font-size: 10px;
  letter-spacing: 1.5px;
  color: var(--warning-red);
  text-transform: uppercase;
  animation: badge-pulse 3s ease-in-out infinite;
  appearance: none;
  -webkit-appearance: none;
  cursor: pointer;
  user-select: none;
}

.classified-header-badge::before {
  content: '';
  width: 6px;
  height: 6px;
  background: var(--warning-red);
  border-radius: 50%;
  animation: blink 1.5s ease-in-out infinite;
}

.logo-container {
  position: relative;
  transition: transform var(--transition-base);
}

.logo-container:hover {
  transform: scale(1.1);
}

.nav-link-pro {
  position: relative;
  padding: 8px 14px;
  border-radius: 8px;
  font-size: 14px;
  color: var(--text-secondary);
  transition: color var(--transition-base);
}

.nav-link-pro::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 8px;
  background: rgba(34, 197, 94, 0.1);
  opacity: 0;
  transform: scale(0.9);
  transition: all var(--transition-base);
}

.nav-link-pro:hover {
  color: var(--ufo-green);
}

.nav-link-pro:hover::before {
  opacity: 1;
  transform: scale(1);
}

.cta-button {
  position: relative;
  overflow: hidden;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.15), rgba(34, 197, 94, 0.05));
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 10px;
  transition: all var(--transition-base);
}

.cta-button::before {
  content: '';
  position: absolute;
  top: 0;
  left: -100%;
  width: 100%;
  height: 100%;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.2), transparent);
  transition: left 0.6s ease;
}

.cta-button:hover {
  border-color: rgba(34, 197, 94, 0.5);
  box-shadow: var(--shadow-glow-green);
  transform: translateY(-2px);
}

.cta-button:hover::before {
  left: 100%;
}

.signal-dot {
  position: relative;
}

.signal-dot::after {
  content: '';
  position: absolute;
  inset: -4px;
  border-radius: 50%;
  background: rgba(34, 197, 94, 0.4);
  animation: ping 2s cubic-bezier(0, 0, 0.2, 1) infinite;
}

.glitch-text:hover {
  animation: glitch-skew 0.4s ease infinite;
}

.mobile-drawer {
  background: linear-gradient(180deg, rgba(8, 12, 18, 0.98), rgba(5, 8, 12, 0.99));
}

.mobile-nav-item {
  position: relative;
  overflow: hidden;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  transition: all var(--transition-base);
}

.mobile-nav-item:hover {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.3);
}

.mobile-nav-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: var(--ufo-green);
  transform: scaleY(0);
  transition: transform var(--transition-base);
}

.mobile-nav-item:hover::before {
  transform: scaleY(1);
}

span.logo-container {
  color: var(--ufo-green);
  filter: drop-shadow(0 0 20px var(--ufo-green-glow));
  animation: ufoHover 4s ease-in-out infinite;
	max-width:39px;
}

.agent-menu.is-auth .classified-header-badge {
  border-color: rgba(34, 197, 94, 0.35);
  background: rgba(34, 197, 94, 0.10);
  color: rgba(34, 197, 94, 0.95);
  animation: badge-pulse-green 3s ease-in-out infinite;
}

.agent-menu.is-auth .classified-header-badge::before {
  background: rgba(34, 197, 94, 0.95);
}

.agent-menu.is-open .classified-header-badge {
  background: rgba(239, 68, 68, 0.16);
  border-color: rgba(239, 68, 68, 0.6);
}

.agent-menu.is-open.is-auth .classified-header-badge {
  background: rgba(34, 197, 94, 0.14);
  border-color: rgba(34, 197, 94, 0.45);
}
.index-hero__stars{
  position:absolute;
  inset:0;
  pointer-events:none;
  overflow:hidden;

  /* Estrellas tileables */
  background-image: url("/wp-content/themes/broken-ufo/assets/img/stars.svg");
  background-repeat: repeat;

  /* Anti-tile: evita 1024 exacto */
  background-size: 1460px 1460px;

  /* Menos bright */
  opacity: .65;
  mix-blend-mode: screen;

  will-change: transform;
  transform: translate3d(0,0,0);

  /* Más rápido */
  animation: bufo-pan-mid 80s linear infinite;
}

/* Nebulosa: NO tile, NO repeat, lejos de bordes */
.index-hero__stars::before{
  content:"";
  position:absolute;
  inset:0;
  pointer-events:none;

  /* Nebulosa con varias manchas centradas, sin tocar esquinas */
  background:
    radial-gradient(520px 420px at 28% 26%, rgba(34,197,94,.18), transparent 70%),
    radial-gradient(620px 520px at 72% 70%, rgba(255,255,255,.10), transparent 72%),
    radial-gradient(520px 420px at 70% 28%, rgba(0,255,160,.12), transparent 72%),
    radial-gradient(520px 420px at 30% 78%, rgba(255,90,160,.08), transparent 74%);

  background-repeat: no-repeat;
  background-size: 100% 100%;

  /* Visibilidad controlada y cinematográfica */
  opacity: .32;
  filter: blur(1.9px) saturate(1.18);
  mix-blend-mode: screen;

  will-change: transform;
  transform: translate3d(0,0,0);

  /* Más rápido pero sutil */
  animation: bufo-pan-far 120s linear infinite;
}

/* Polvo cercano: se mueve más rápido para profundidad */
.index-hero__stars::after{
  content:"";
  position:absolute;
  inset:-22%;
  pointer-events:none;

  background-image: url("/wp-content/themes/broken-ufo/assets/img/stars.svg");
  background-repeat: repeat;

  /* Foreground un poco más pequeño */
  background-size: 980px 980px;

  opacity: .30;
  filter: blur(0.85px) contrast(1.03);
  mix-blend-mode: screen;

  will-change: transform;
  transform: translate3d(0,0,0);

  /* Más rápido */
  animation: bufo-pan-near 75s linear infinite;
}

/* Animaciones: más velocidad */
@keyframes bufo-pan-far{
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(-220px,-150px,0); }
}
@keyframes bufo-pan-mid{
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(-420px,-280px,0); }
}
@keyframes bufo-pan-near{
  from { transform: translate3d(0,0,0); }
  to   { transform: translate3d(-620px,-420px,0); }
}

/* Menos brillo y ahorro en móvil */
@media (max-width: 768px){
  .index-hero__stars{ opacity:.32; animation-duration: 140s; }
  .index-hero__stars::before{ opacity:.26; filter: blur(2.2px) saturate(1.12); }
  .index-hero__stars::after{ display:none; }
}

/* Accesibilidad y batería */
@media (prefers-reduced-motion: reduce){
  .index-hero__stars,
  .index-hero__stars::before,
  .index-hero__stars::after{
    animation:none !important;
    transform:none !important;
  }
}

/* ── bufo-nav.css ── */
/* ================================================================
   BUFO-NAV.CSS - Mega Menu + Agent Menu
   Broken UFO Theme - OSINT Command Center Aesthetic
   ================================================================ */

/* ── MEGA MENU OVERLAY ──────────────────────────────────────────── */

.bufo-mega-overlay {
  position: fixed;
  inset: 0;
  z-index: 49;
  background: rgba(2, 3, 6, 0.60);
  backdrop-filter: blur(8px) saturate(120%);
  -webkit-backdrop-filter: blur(8px) saturate(120%);
  opacity: 0;
  pointer-events: none;
  transition: opacity 0.3s ease;
}

/* Visible (fades in) but NOT clickable during hover-open.
   This prevents the overlay from stealing mouse events in the
   gap between trigger and panel, which was causing the open/close loop. */
.bufo-mega-overlay.is-active {
  opacity: 1;
  pointer-events: none;       /* stays non-interactive by default */
}

/* Only becomes clickable/interactive when the menu was opened via CLICK
   (the JS adds .is-locked alongside .is-active). */
.bufo-mega-overlay.is-active.is-locked {
  pointer-events: auto;
}

@media (prefers-reduced-motion: reduce) {
  .bufo-mega-overlay {
    backdrop-filter: none;
    -webkit-backdrop-filter: none;
  }
}


/* ── NAV BAR LINKS ──────────────────────────────────────────────── */

.bufo-nav {
  position: relative;
}

.bufo-nav__link {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: .55rem;
  padding: .65rem .85rem;
  border-radius: 12px;
  color: var(--bufo-nav-text);
  text-decoration: none;
  border: 1px solid rgba(255, 255, 255, .08);
  background: linear-gradient(180deg, var(--bufo-nav-solid), var(--bufo-nav-solid-2));
  backdrop-filter: none;
  -webkit-backdrop-filter: none;
  transition: transform .18s ease, border-color .18s ease, background .18s ease, color .18s ease, box-shadow .18s ease;
  overflow: hidden;
  border-color: var(--bufo-nav-border);
  box-shadow: 0 0 0 1px rgba(255, 255, 255, .05) inset, 0 10px 28px rgba(0, 0, 0, .55);
}

.bufo-nav__link:hover {
  color: rgba(255, 255, 255, .92);
  border-color: rgba(34, 197, 94, .35);
  background: linear-gradient(180deg, rgba(8, 11, 14, .92), rgba(4, 7, 9, .96));
  box-shadow: 0 0 0 1px rgba(34, 197, 94, .10) inset, 0 14px 36px rgba(0, 0, 0, .65);
  transform: translateY(-1px);
}

.bufo-nav__link--button { cursor: pointer; }

.bufo-nav__icon {
  width: 18px;
  height: 18px;
  display: inline-flex;
  color: rgba(34, 197, 94, .95);
  filter: drop-shadow(0 0 14px rgba(34, 197, 94, .18));
}

.bufo-nav__icon svg { width: 18px; height: 18px; }

.bufo-nav__text {
  font-size: 13px;
  letter-spacing: .06em;
  text-transform: uppercase;
  font-weight: 700;
  color: var(--bufo-nav-text);
}

.bufo-nav__chev {
  width: 16px;
  height: 16px;
  opacity: .8;
  transition: transform .22s ease;
}

.bufo-nav__chev svg { width: 16px; height: 16px; }

.bufo-nav__dropdown.is-open .bufo-nav__chev {
  transform: rotate(180deg);
}

.bufo-nav__glow {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: radial-gradient(260px 90px at 18% 0%, rgba(34, 197, 94, .14), transparent 60%),
              radial-gradient(320px 110px at 82% 100%, rgba(34, 197, 94, .10), transparent 62%);
  opacity: 0;
  transition: opacity .2s ease;
}

.bufo-nav__link:hover .bufo-nav__glow { opacity: 1; }


/* ── DROPDOWN CONTAINER ─────────────────────────────────────────── */

.bufo-nav__dropdown {
  position: relative;
}

/*
 * CRITICAL: Invisible bridge element.
 * This ::before pseudo-element fills the gap between the trigger button
 * and the panel so that the mouse never "leaves" the root container
 * while traveling from trigger to panel. This fixes the open/close flicker.
 */
.bufo-nav__dropdown::before {
  content: '';
  display: none;
  position: absolute;
  top: 100%;
  left: -20px;
  right: -20px;
  height: 18px;       /* must be >= the gap (top: calc(100% + 12px)) */
  z-index: 79;
}

.bufo-nav__dropdown.is-open::before {
  display: block;
}


/* ── MEGA PANEL ─────────────────────────────────────────────────── */

.bufo-mega {
  position: absolute;
  top: calc(100% + 12px);
  left: 50%;
  transform: translateX(-50%) translateY(10px);
  min-width: 920px;
  z-index: 80;
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease, transform .22s ease;
}

.bufo-nav__dropdown.is-open .bufo-mega {
  opacity: 1;
  transform: translateX(-50%) translateY(0);
  pointer-events: auto;
}


/* ── CARET CONNECTOR ────────────────────────────────────────────── */

.bufo-mega__caret {
  display: block;
  position: absolute;
  bottom: -12px;
  left: 50%;
  z-index: 81;
  opacity: 0;
  pointer-events: none;
  transition: opacity .22s ease;
}

/* Outer triangle (green border) */
.bufo-mega__caret::before {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0; height: 0;
  border-left: 11px solid transparent;
  border-right: 11px solid transparent;
  border-bottom: 11px solid rgba(34, 197, 94, 0.35);
}

/* Inner triangle (panel background fill) */
.bufo-mega__caret::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 50%;
  transform: translateX(-50%);
  width: 0; height: 0;
  border-left: 9px solid transparent;
  border-right: 9px solid transparent;
  border-bottom: 9px solid rgba(5, 8, 10, 0.97);
}

.bufo-nav__dropdown.is-open .bufo-mega__caret { opacity: 1; }


/* ── MEGA FRAME (the panel itself) ──────────────────────────────── */

.bufo-mega__frame {
  position: relative;
  border-radius: 16px;
  overflow: hidden;

  /* Multi-layer classified-dossier background */
  border: 1px solid rgba(34, 197, 94, 0.30);
  background:
    /* Top-left green agency glow */
    radial-gradient(900px 400px at 5% 0%, rgba(34, 197, 94, 0.14), transparent 55%),
    /* Right-side cold light */
    radial-gradient(700px 400px at 98% 30%, rgba(56, 189, 248, 0.06), transparent 55%),
    /* Subtle horizontal scanlines */
    repeating-linear-gradient(
      0deg,
      transparent 0px,
      transparent 3px,
      rgba(255, 255, 255, 0.015) 3px,
      rgba(255, 255, 255, 0.015) 4px
    ),
    /* Base gradient */
    linear-gradient(180deg, rgba(5, 8, 10, 0.97), rgba(2, 4, 6, 0.99));

  box-shadow:
    /* Inner green rim light */
    0 0 0 1px rgba(34, 197, 94, 0.08) inset,
    /* Inner top highlight */
    inset 0 1px 0 rgba(255, 255, 255, 0.06),
    /* Deep shadow */
    0 40px 100px -10px rgba(0, 0, 0, 0.80),
    /* Green glow bleed */
    0 0 60px -20px rgba(34, 197, 94, 0.12);
}

/* Noise texture overlay */
.bufo-mega__frame::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  opacity: 0.06;
  mix-blend-mode: overlay;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='200' height='200'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.85' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='200' height='200' filter='url(%23n)' opacity='0.4'/%3E%3C/svg%3E");
  z-index: 1;
}


/* ── HUD CORNER BRACKETS ────────────────────────────────────────── */

.bufo-mega__corn {
  position: absolute;
  width: 16px;
  height: 16px;
  border-color: rgba(34, 197, 94, 0.40);
  z-index: 3;
  pointer-events: none;
}

.bufo-mega__corn--tl { top: 8px;    left: 8px;    border-left: 2px solid; border-top: 2px solid; }
.bufo-mega__corn--tr { top: 8px;    right: 8px;   border-right: 2px solid; border-top: 2px solid; }
.bufo-mega__corn--bl { bottom: 8px; left: 8px;    border-left: 2px solid; border-bottom: 2px solid; }
.bufo-mega__corn--br { bottom: 8px; right: 8px;   border-right: 2px solid; border-bottom: 2px solid; }


/* ── HEADER BAR ─────────────────────────────────────────────────── */

.bufo-mega__top {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 18px;
  border-bottom: 1px solid rgba(34, 197, 94, 0.12);
  background:
    linear-gradient(180deg, rgba(34, 197, 94, 0.06), transparent 70%);
}

.bufo-mega__topLeft {
  display: flex;
  align-items: center;
  gap: 14px;
  flex: 1;
  min-width: 0;
}

.bufo-mega__title {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--bufo-mono);
  font-weight: 900;
  letter-spacing: .10em;
  text-transform: uppercase;
  font-size: 11px;
  color: rgba(34, 197, 94, 0.95);
}

.bufo-mega__dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(34, 197, 94, 1);
  box-shadow:
    0 0 0 3px rgba(34, 197, 94, 0.15),
    0 0 12px rgba(34, 197, 94, 0.50);
  animation: bufo-ping 2s ease-in-out infinite;
}

@keyframes bufo-ping {
  0%, 100% { box-shadow: 0 0 0 3px rgba(34,197,94,.15), 0 0 12px rgba(34,197,94,.50); }
  50%      { box-shadow: 0 0 0 5px rgba(34,197,94,.08), 0 0 20px rgba(34,197,94,.35); }
}

.bufo-mega__meta {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--bufo-mono);
}

.bufo-mega__pill {
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, .08);
  background: rgba(255, 255, 255, .03);
  font-size: 10px;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, .55);
}

.bufo-mega__pill--ok {
  border-color: rgba(34, 197, 94, .25);
  color: rgba(34, 197, 94, .90);
  background: rgba(34, 197, 94, .08);
}


/* ── CLOSE BUTTON ───────────────────────────────────────────────── */

.bufo-mega__close {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 30px;
  height: 30px;
  border-radius: 8px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(255, 255, 255, 0.45);
  cursor: pointer;
  flex-shrink: 0;
  transition: all 0.18s ease;
  appearance: none;
  -webkit-appearance: none;
}

.bufo-mega__close svg { width: 14px; height: 14px; }

.bufo-mega__close:hover {
  border-color: rgba(239, 68, 68, 0.45);
  background: rgba(239, 68, 68, 0.12);
  color: rgba(239, 68, 68, 0.95);
  box-shadow: 0 0 16px rgba(239, 68, 68, 0.10);
}

.bufo-mega__close:focus-visible {
  outline: 2px solid var(--bufo-neon);
  outline-offset: 2px;
}


/* ── SEARCH / FILTER ────────────────────────────────────────────── */

.bufo-mega__search {
  position: relative;
  z-index: 2;
  padding: 10px 18px 4px;
}

.bufo-mega__searchWrap {
  position: relative;
  display: flex;
  align-items: center;
}

.bufo-mega__searchIcon {
  position: absolute;
  left: 12px;
  width: 15px;
  height: 15px;
  color: rgba(34, 197, 94, 0.50);
  pointer-events: none;
}

.bufo-mega__searchInput {
  width: 100%;
  padding: 9px 56px 9px 36px;
  border-radius: 8px;
  border: 1px solid rgba(34, 197, 94, 0.12);
  background: rgba(0, 0, 0, 0.50);
  font-family: var(--bufo-mono);
  font-size: 11px;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.90);
  outline: none;
  transition: border-color 0.18s ease, background 0.18s ease, box-shadow 0.18s ease;
}

.bufo-mega__searchInput::placeholder {
  color: rgba(255, 255, 255, 0.28);
  font-family: var(--bufo-mono);
  text-transform: uppercase;
  letter-spacing: 0.08em;
}

.bufo-mega__searchInput:focus {
  border-color: rgba(34, 197, 94, 0.40);
  background: rgba(0, 0, 0, 0.65);
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.06), inset 0 0 20px rgba(34, 197, 94, 0.04);
}

.bufo-mega__searchHint {
  position: absolute;
  right: 10px;
  padding: 2px 6px;
  border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
  font-family: var(--bufo-mono);
  font-size: 9px;
  letter-spacing: 0.08em;
  color: rgba(255, 255, 255, 0.25);
  pointer-events: none;
}


/* ── SCROLLABLE BODY ────────────────────────────────────────────── */

.bufo-mega__body {
  position: relative;
  z-index: 2;
  max-height: min(440px, calc(100vh - 260px));
  overflow-y: auto;
  overflow-x: hidden;
  scrollbar-width: thin;
  scrollbar-color: rgba(34, 197, 94, 0.20) transparent;
}

.bufo-mega__body::-webkit-scrollbar { width: 4px; }
.bufo-mega__body::-webkit-scrollbar-track { background: transparent; }
.bufo-mega__body::-webkit-scrollbar-thumb { background: rgba(34, 197, 94, 0.20); border-radius: 4px; }

.bufo-mega__fadeTop,
.bufo-mega__fadeBot {
  position: sticky;
  z-index: 5;
  height: 20px;
  pointer-events: none;
}

.bufo-mega__fadeTop {
  top: 0;
  background: linear-gradient(180deg, rgba(5, 8, 10, 0.90), transparent);
}

.bufo-mega__fadeBot {
  bottom: 0;
  background: linear-gradient(0deg, rgba(5, 8, 10, 0.90), transparent);
}


/* ── CARD GRID ──────────────────────────────────────────────────── */

.bufo-mega__grid {
  display: grid;
  gap: 12px;
  padding: 14px;
}

.bufo-mega__grid--cards {
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
  padding: 6px 18px 14px;
}

/* Columns removed - flat grid, CSS handles responsiveness */
.bufo-mega__col { display: contents; }


/* ── SECTOR CARDS ───────────────────────────────────────────────── */

.bufo-mega__card {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  min-height: 142px;
  border-radius: 12px;
  overflow: hidden;
  padding: 14px;
  color: rgba(255, 255, 255, .94);
  text-decoration: none;

  /* Background image + gradient overlay */
  background:
    linear-gradient(180deg, rgba(0,0,0,0.10) 0%, rgba(0,0,0,0.75) 100%),
    var(--bufoCardBg);
  background-size: cover;
  background-position: center;

  border: 1px solid rgba(34, 197, 94, 0.15);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.05),
    0 12px 32px rgba(0, 0, 0, 0.40);

  transform: translateZ(0);
  transition: transform .28s ease, border-color .28s ease, box-shadow .28s ease;
}

/* Overlay: darkening layer + subtle vignette */
.bufo-mega__cardOverlay {
  position: absolute;
  inset: 0;
  background:
    radial-gradient(600px 200px at 15% 20%, rgba(34, 197, 94, 0.14), transparent 55%),
    radial-gradient(400px 200px at 85% 20%, rgba(56, 189, 248, 0.06), transparent 50%),
    linear-gradient(180deg, rgba(5, 8, 10, 0.40), rgba(5, 8, 10, 0.80));
  pointer-events: none;
}

/* Scan line sweep on hover */
.bufo-mega__cardScan {
  position: absolute;
  inset: -40% 0 auto 0;
  height: 120%;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.10), transparent);
  transform: translateX(-70%);
  opacity: 0;
  pointer-events: none;
  transition: none;
}

.bufo-mega__card:hover .bufo-mega__cardScan {
  opacity: 1;
  transform: translateX(70%);
  transition: transform 0.8s ease, opacity 0.2s ease;
}

/* Top bar: pill + count */
.bufo-mega__cardTop {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
}

.bufo-mega__cardPill {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--bufo-mono);
  font-size: 9px;
  font-weight: 700;
  letter-spacing: .16em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .70);
  padding: 4px 8px;
  border-radius: 4px;
  background: rgba(0, 0, 0, .55);
  border: 1px solid rgba(255, 255, 255, .06);
  backdrop-filter: blur(4px);
}

.bufo-mega__cardPip {
  width: 6px;
  height: 6px;
  border-radius: 99px;
  background: rgba(34, 197, 94, 1);
  box-shadow: 0 0 8px rgba(34, 197, 94, 0.80);
}

.bufo-mega__cardCount {
  font-family: var(--bufo-mono);
  font-size: 11px;
  font-weight: 700;
  color: rgba(34, 197, 94, .95);
  padding: 4px 9px;
  border-radius: 4px;
  background: rgba(0, 0, 0, .55);
  border: 1px solid rgba(34, 197, 94, .20);
  backdrop-filter: blur(4px);
}

/* Body: title + meta */
.bufo-mega__cardBody {
  position: relative;
  z-index: 2;
  margin-top: auto;
  padding-top: 10px;
}

.bufo-mega__cardName {
  display: block;
  font-family: var(--bufo-font);
  font-weight: 750;
  font-size: 15px;
  line-height: 1.2;
  text-shadow: 0 2px 12px rgba(0, 0, 0, 0.70);
}

.bufo-mega__cardMeta {
  display: block;
  margin-top: 4px;
  font-family: var(--bufo-mono);
  font-size: 10px;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.48);
  text-transform: uppercase;
}

/* CTA line */
.bufo-mega__cardCta {
  position: relative;
  z-index: 2;
  margin-top: 8px;
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--bufo-mono);
  font-size: 10px;
  font-weight: 600;
  letter-spacing: 0.06em;
  color: rgba(34, 197, 94, 0.85);
  transition: color 0.18s ease;
}

.bufo-mega__cardArrow {
  width: 14px;
  height: 14px;
  opacity: .85;
  transition: transform 0.22s ease;
}

/* ── Card hover state ── */
.bufo-mega__card:hover {
  transform: translateY(-3px) scale(1.01);
  border-color: rgba(34, 197, 94, 0.50);
  box-shadow:
    inset 0 1px 0 rgba(255, 255, 255, 0.08),
    0 20px 50px rgba(0, 0, 0, 0.55),
    0 0 0 1px rgba(34, 197, 94, 0.12),
    0 0 30px -8px rgba(34, 197, 94, 0.15);
}

.bufo-mega__card:hover .bufo-mega__cardCta {
  color: rgba(34, 197, 94, 1);
}

.bufo-mega__card:hover .bufo-mega__cardArrow {
  transform: translateX(3px);
}

/* Focus-visible */
.bufo-mega__card:focus-visible {
  outline: 2px solid var(--bufo-neon);
  outline-offset: 2px;
  transform: translateY(-3px);
  border-color: rgba(34, 197, 94, 0.50);
}


/* ── NO RESULTS ─────────────────────────────────────────────────── */

.bufo-mega__noResults {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 10px;
  padding: 36px 16px;
  font-family: var(--bufo-mono);
  font-size: 11px;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, 0.30);
}

.bufo-mega__noResultsIcon {
  width: 32px;
  height: 32px;
  color: rgba(255, 255, 255, 0.18);
}

.bufo-mega__noResultsIcon svg { width: 32px; height: 32px; }

.bufo-mega__empty {
  display: block;
  padding: 24px;
  text-align: center;
  font-family: var(--bufo-mono);
  font-size: 11px;
  color: rgba(255, 255, 255, 0.30);
  letter-spacing: 0.08em;
  text-transform: uppercase;
}


/* ── FOOTER ─────────────────────────────────────────────────────── */

.bufo-mega__bottom {
  position: relative;
  z-index: 2;
  display: flex;
  flex-direction: column;
  gap: 0;
  padding: 14px 18px;
  border-top: 1px solid rgba(34, 197, 94, 0.10);
  background: linear-gradient(0deg, rgba(34, 197, 94, 0.03), transparent 60%);
}

.bufo-mega__bottomActions {
  display: flex;
  gap: 10px;
}

.bufo-mega__action {
  flex: 1 1 0;
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 11px 14px;
  border-radius: 10px;
  text-decoration: none;
  font-family: var(--bufo-mono);
  font-weight: 700;
  font-size: 11px;
  letter-spacing: .04em;
  text-transform: uppercase;
  color: rgba(255, 255, 255, .92);
  border: 1px solid rgba(34, 197, 94, .28);
  background: rgba(34, 197, 94, .10);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease, border-color .18s ease;
}

.bufo-mega__action:hover {
  transform: translateY(-1px);
  border-color: rgba(34, 197, 94, .50);
  background: rgba(34, 197, 94, .16);
  box-shadow:
    0 0 0 1px rgba(34, 197, 94, .08) inset,
    0 12px 28px rgba(0, 0, 0, .40),
    0 0 20px -6px rgba(34, 197, 94, .12);
}

.bufo-mega__action:focus-visible {
  outline: 2px solid var(--bufo-neon);
  outline-offset: 2px;
}

.bufo-mega__action--soft {
  border-color: rgba(255, 255, 255, .10);
  background: rgba(255, 255, 255, .03);
  color: rgba(255, 255, 255, .75);
}

.bufo-mega__action--soft:hover {
  border-color: rgba(34, 197, 94, .28);
  background: rgba(255, 255, 255, .06);
  color: rgba(255, 255, 255, .90);
}

.bufo-mega__actionIcon {
  width: 16px;
  height: 16px;
  color: rgba(34, 197, 94, .85);
}

.bufo-mega__actionIcon svg { width: 16px; height: 16px; }

.bufo-mega__bottomEnd {
  display: flex;
  align-items: center;
  justify-content: flex-end;
  padding-top: 10px;
  margin-top: 10px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
}

.bufo-mega__endLabel {
  font-family: var(--bufo-mono);
  font-size: 9px;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.18);
}


/* ── SCAN DECORATION ────────────────────────────────────────────── */

.bufo-mega__scan {
  position: absolute;
  inset: 0;
  pointer-events: none;
  background: linear-gradient(to bottom, rgba(34, 197, 94, 0.04), transparent 18%);
  opacity: .4;
  mix-blend-mode: screen;
  z-index: 0;
}


/* ── RESPONSIVE ─────────────────────────────────────────────────── */

@media (max-width: 1024px) {
  .bufo-mega { display: none; }

  .bufo-mega__grid--cards {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (max-width: 640px) {
  .bufo-mega__grid--cards {
    grid-template-columns: 1fr;
  }

  .bufo-mega__card {
    min-height: 120px;
  }

  .bufo-mega__bottomActions {
    flex-direction: column;
  }
}

/* Duplicate header selectors cleanup (override chain) */
.bufo-mega__top,
.bufo-mega__bottom {
  border-color: rgba(34, 197, 94, .12);
}


/* ── MEGA LAYOUT (two-column: cards + sidebar) ─────────────────── */

.bufo-mega__layout {
  display: grid;
  grid-template-columns: 1fr 260px;
  gap: 0;
  position: relative;
  z-index: 2;
}

@media (max-width: 1024px) {
  .bufo-mega__layout { grid-template-columns: 1fr; }
  .bufo-mega__sidebar { display: none; }
}

.bufo-mega__sidebar {
  border-left: 1px solid rgba(34, 197, 94, 0.10);
  padding: 14px 16px;
  display: flex;
  flex-direction: column;
  gap: 16px;
  max-height: min(440px, calc(100vh - 260px));
  overflow-y: auto;
  scrollbar-width: thin;
  scrollbar-color: rgba(34, 197, 94, 0.15) transparent;
}

.bufo-mega__sideSection {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.bufo-mega__sideLabel {
  font-family: var(--bufo-mono);
  font-size: 9px;
  font-weight: 800;
  letter-spacing: 0.16em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.60);
  padding: 0 0 6px;
  margin-bottom: 2px;
  border-bottom: 1px solid rgba(34, 197, 94, 0.08);
}

.bufo-mega__sideType {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 7px 6px;
  border-radius: 6px;
  text-decoration: none;
  font-family: var(--bufo-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.65);
  transition: background 0.16s ease, color 0.16s ease;
}

.bufo-mega__sideType:hover {
  background: rgba(34, 197, 94, 0.08);
  color: rgba(34, 197, 94, 0.95);
}

.bufo-mega__sideType svg {
  width: 15px; height: 15px; flex-shrink: 0;
  color: rgba(34, 197, 94, 0.50);
}

.bufo-mega__sideType:hover svg { color: rgba(34, 197, 94, 0.90); }

/* ── Sidebar thumbnails ── */
.bufo-mega__sideLink {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 7px 4px;
  border-radius: 6px;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.80);
  transition: background 0.16s ease, color 0.16s ease;
}
.bufo-mega__sideLink:hover {
  background: rgba(34, 197, 94, 0.06);
  color: rgba(255, 255, 255, 0.95);
}

.bufo-mega__sideThumb {
  width: 32px;
  height: 32px;
  flex-shrink: 0;
  border-radius: 5px;
  overflow: hidden;
  border: 1px solid rgba(34, 197, 94, 0.08);
  background: rgba(34, 197, 94, 0.03);
  display: flex;
  align-items: center;
  justify-content: center;
  color: rgba(34, 197, 94, 0.5);
  transition: border-color 0.2s ease;
}
.bufo-mega__sideLink:hover .bufo-mega__sideThumb {
  border-color: rgba(34, 197, 94, 0.25);
}
.bufo-mega__sideThumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.bufo-mega__sideInfo {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  gap: 1px;
}

.bufo-mega__sideName {
  font-size: 12px;
  font-weight: 600;
  line-height: 1.3;
  overflow: hidden;
  text-overflow: ellipsis;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
}
.bufo-mega__sideLink:hover .bufo-mega__sideName {
  color: rgba(34, 197, 94, 0.95);
}

.bufo-mega__sideDate {
  font-family: var(--bufo-mono);
  font-size: 9px;
  letter-spacing: 0.06em;
  color: rgba(255, 255, 255, 0.30);
}

/* ── Side type counters ── */
.bufo-mega__sideCount {
  margin-left: auto;
  font-family: var(--bufo-mono);
  font-size: 10px;
  font-weight: 700;
  color: rgba(34, 197, 94, 0.6);
  background: rgba(34, 197, 94, 0.06);
  border: 1px solid rgba(34, 197, 94, 0.1);
  padding: 1px 7px;
  border-radius: 4px;
  min-width: 22px;
  text-align: center;
}
.bufo-mega__sideType:hover .bufo-mega__sideCount {
  color: rgba(34, 197, 94, 0.9);
  border-color: rgba(34, 197, 94, 0.25);
  background: rgba(34, 197, 94, 0.1);
}

/* ── Secondary action (Enviar Pista) ── */
.bufo-mega__action--secondary {
  border-color: rgba(255, 255, 255, 0.10);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(255, 255, 255, 0.75);
}
.bufo-mega__action--secondary:hover {
  border-color: rgba(251, 191, 36, 0.35);
  background: rgba(251, 191, 36, 0.08);
  color: rgba(251, 191, 36, 0.95);
  box-shadow: 0 0 20px -6px rgba(251, 191, 36, 0.12);
}
.bufo-mega__action--secondary:hover .bufo-mega__actionIcon svg {
  color: rgba(251, 191, 36, 0.85);
}


/* ================================================================
   MINI DROPDOWNS (COMMS & OPS)
   ================================================================ */

.bufo-nav__dropdown--mini { position: relative; }

.bufo-nav__dropdown--mini::before {
  content: '';
  display: none;
  position: absolute;
  top: 100%;
  left: -20px;
  right: -20px;
  height: 14px;
  z-index: 79;
}

.bufo-nav__dropdown--mini.is-open::before { display: block; }
.bufo-nav__dropdown--mini.is-open .bufo-nav__chev { transform: rotate(180deg); }

.bufo-mini {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  min-width: 300px;
  z-index: 80;
  opacity: 0;
  transform: translateY(8px);
  pointer-events: none;
  transition: opacity 0.20s ease, transform 0.20s ease;
}

.bufo-nav__dropdown--mini.is-open .bufo-mini {
  opacity: 1;
  transform: translateY(0);
  pointer-events: auto;
}

.bufo-mini__frame {
  border-radius: 14px;
  overflow: hidden;
  border: 1px solid rgba(34, 197, 94, 0.22);
  background:
    radial-gradient(600px 300px at 10% 0%, rgba(34, 197, 94, 0.10), transparent 55%),
    repeating-linear-gradient(0deg, transparent 0px, transparent 3px, rgba(255,255,255,0.012) 3px, rgba(255,255,255,0.012) 4px),
    linear-gradient(180deg, rgba(5, 8, 10, 0.97), rgba(2, 4, 6, 0.99));
  box-shadow:
    0 0 0 1px rgba(34, 197, 94, 0.06) inset,
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 30px 80px -10px rgba(0, 0, 0, 0.75),
    0 0 40px -16px rgba(34, 197, 94, 0.10);
}

.bufo-mini--ops .bufo-mini__frame {
  border-color: rgba(245, 158, 11, 0.22);
  background:
    radial-gradient(600px 300px at 10% 0%, rgba(245, 158, 11, 0.08), transparent 55%),
    repeating-linear-gradient(0deg, transparent 0px, transparent 3px, rgba(255,255,255,0.012) 3px, rgba(255,255,255,0.012) 4px),
    linear-gradient(180deg, rgba(5, 8, 10, 0.97), rgba(2, 4, 6, 0.99));
  box-shadow:
    0 0 0 1px rgba(245, 158, 11, 0.06) inset,
    inset 0 1px 0 rgba(255, 255, 255, 0.04),
    0 30px 80px -10px rgba(0, 0, 0, 0.75),
    0 0 40px -16px rgba(245, 158, 11, 0.08);
}

.bufo-mini__header {
  display: flex; align-items: center; gap: 8px;
  padding: 12px 16px;
  border-bottom: 1px solid rgba(34, 197, 94, 0.10);
  background: linear-gradient(180deg, rgba(34, 197, 94, 0.05), transparent 80%);
}

.bufo-mini__header--ops {
  border-bottom-color: rgba(245, 158, 11, 0.10);
  background: linear-gradient(180deg, rgba(245, 158, 11, 0.04), transparent 80%);
}

.bufo-mini__dot {
  width: 6px; height: 6px; border-radius: 99px;
  background: rgba(34, 197, 94, 1);
  box-shadow: 0 0 8px rgba(34, 197, 94, 0.60);
  animation: bufo-ping 2s ease-in-out infinite;
}

.bufo-mini__dot--amber {
  background: rgba(245, 158, 11, 1);
  box-shadow: 0 0 8px rgba(245, 158, 11, 0.60);
}

.bufo-mini__title {
  font-family: var(--bufo-mono);
  font-size: 10px; font-weight: 800;
  letter-spacing: 0.12em; text-transform: uppercase;
  color: rgba(34, 197, 94, 0.85); flex: 1;
}

.bufo-mini__header--ops .bufo-mini__title { color: rgba(245, 158, 11, 0.85); }

.bufo-mini__badge {
  font-family: var(--bufo-mono);
  font-size: 9px; font-weight: 700; letter-spacing: 0.10em;
  padding: 2px 8px; border-radius: 99px;
  border: 1px solid rgba(34, 197, 94, 0.20);
  color: rgba(34, 197, 94, 0.80);
  background: rgba(34, 197, 94, 0.06);
}

.bufo-mini__badge--amber {
  border-color: rgba(245, 158, 11, 0.20);
  color: rgba(245, 158, 11, 0.80);
  background: rgba(245, 158, 11, 0.06);
}

.bufo-mini__item {
  display: flex; align-items: center; gap: 12px;
  padding: 10px 16px;
  text-decoration: none;
  color: rgba(255, 255, 255, 0.80);
  transition: background 0.16s ease, color 0.16s ease;
}

.bufo-mini__item:hover {
  background: rgba(34, 197, 94, 0.06);
  color: rgba(255, 255, 255, 0.95);
}

.bufo-mini__item--primary {
  background: rgba(34, 197, 94, 0.04);
  border-left: 3px solid rgba(34, 197, 94, 0.40);
}

.bufo-mini__item--primary:hover {
  background: rgba(34, 197, 94, 0.10);
  border-left-color: rgba(34, 197, 94, 0.80);
}

.bufo-mini--ops .bufo-mini__item--primary {
  background: rgba(245, 158, 11, 0.04);
  border-left-color: rgba(245, 158, 11, 0.40);
}

.bufo-mini--ops .bufo-mini__item--primary:hover {
  background: rgba(245, 158, 11, 0.10);
  border-left-color: rgba(245, 158, 11, 0.80);
}

.bufo-mini__item--danger:hover { background: rgba(239, 68, 68, 0.06); }
.bufo-mini__item--danger .bufo-mini__itemIcon { color: rgba(239, 68, 68, 0.60); }
.bufo-mini__item--danger:hover .bufo-mini__itemIcon { color: rgba(239, 68, 68, 0.90); }

.bufo-mini__itemIcon {
  width: 18px; height: 18px; flex-shrink: 0;
  color: rgba(34, 197, 94, 0.55);
  transition: color 0.16s ease;
}

.bufo-mini__itemIcon svg { width: 18px; height: 18px; }
.bufo-mini__item:hover .bufo-mini__itemIcon { color: rgba(34, 197, 94, 0.90); }
.bufo-mini--ops .bufo-mini__itemIcon { color: rgba(245, 158, 11, 0.45); }
.bufo-mini--ops .bufo-mini__item:hover .bufo-mini__itemIcon { color: rgba(245, 158, 11, 0.90); }

.bufo-mini__itemText {
  display: flex; flex-direction: column; gap: 2px;
  flex: 1; min-width: 0;
}

.bufo-mini__itemName {
  font-family: var(--bufo-mono);
  font-size: 11px; font-weight: 700;
  letter-spacing: 0.06em; text-transform: uppercase;
}

.bufo-mini__itemSub {
  font-size: 11px; color: rgba(255, 255, 255, 0.38); line-height: 1.3;
}

.bufo-mini__itemTag {
  font-family: var(--bufo-mono);
  font-size: 8px; font-weight: 700; letter-spacing: 0.12em;
  padding: 2px 6px; border-radius: 4px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.35);
  background: rgba(255, 255, 255, 0.03);
  flex-shrink: 0;
}

.bufo-mini__itemTag--live {
  border-color: rgba(34, 197, 94, 0.25);
  color: rgba(34, 197, 94, 0.85);
  background: rgba(34, 197, 94, 0.08);
}

.bufo-mini__itemTag--ext {
  border-color: rgba(56, 189, 248, 0.20);
  color: rgba(56, 189, 248, 0.70);
  background: rgba(56, 189, 248, 0.06);
}

.bufo-mini__itemTag--red {
  border-color: rgba(239, 68, 68, 0.20);
  color: rgba(239, 68, 68, 0.70);
  background: rgba(239, 68, 68, 0.06);
}

.bufo-mini__divider {
  height: 1px; margin: 4px 16px;
  background: rgba(255, 255, 255, 0.05);
}

.bufo-mini__footer {
  padding: 8px 16px;
  border-top: 1px solid rgba(255, 255, 255, 0.04);
  text-align: right;
}

.bufo-mini__footerLabel {
  font-family: var(--bufo-mono);
  font-size: 9px; letter-spacing: 0.14em;
  color: rgba(34, 197, 94, 0.16);
}

.bufo-mini--ops .bufo-mini__footerLabel { color: rgba(245, 158, 11, 0.16); }
.bufo-mini__item:focus-visible { outline: 2px solid var(--bufo-neon); outline-offset: -2px; }

/* OPS button highlight */
.bufo-nav__link--ops { border-color: rgba(245, 158, 11, 0.20); }
.bufo-nav__link--ops .bufo-nav__icon {
  color: rgba(245, 158, 11, 0.90);
  filter: drop-shadow(0 0 12px rgba(245, 158, 11, 0.18));
}

.bufo-nav__link--ops:hover {
  border-color: rgba(245, 158, 11, 0.40);
  box-shadow: 0 0 0 1px rgba(245, 158, 11, 0.10) inset, 0 14px 36px rgba(0,0,0,.65);
}


/* ================================================================
   RIBBON (unchanged from original)
   ================================================================ */

.bufo-ribbon {
  position: relative;
  margin-top: 26px;
  padding: 18px 0 22px;
  border-top: 1px solid rgba(34, 197, 94, .20);
  border-bottom: 1px solid rgba(34, 197, 94, .14);
  background: radial-gradient(1200px 280px at 20% 10%, rgba(34, 197, 94, .10), transparent 60%), radial-gradient(900px 220px at 85% 40%, rgba(56, 189, 248, .08), transparent 55%), linear-gradient(180deg, rgba(10, 12, 15, .62), rgba(10, 12, 15, .82));
  backdrop-filter: blur(10px);
  overflow: hidden;
}

.bufo-ribbon__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 1.4fr .9fr;
  gap: 16px;
  align-items: stretch;
}

@media (max-width:1024px) {
  .bufo-ribbon__inner { grid-template-columns: 1fr; }
}

.bufo-ribbon__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.bufo-ribbon__live {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--bufo-mono);
  letter-spacing: .14em;
  font-size: 12px;
  color: rgba(209, 250, 229, .9);
  text-transform: uppercase;
}

.bufo-ribbon__meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.bufo-ribbon__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

@media (max-width:640px) {
  .bufo-ribbon__grid { grid-template-columns: 1fr; }
}

.bufo-ribbon__right {
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
}

.bufo-ribbon__scan {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(180deg, rgba(255, 255, 255, .02) 0px, rgba(255, 255, 255, .02) 1px, transparent 3px, transparent 7px);
  opacity: .35;
  pointer-events: none;
}
.bufo-ribbon {
  position: relative;
  margin-top: 26px;
  padding: 18px 0 22px;
  border-top: 1px solid rgba(34, 197, 94, .20);
  border-bottom: 1px solid rgba(34, 197, 94, .14);
  background: radial-gradient(1200px 280px at 20% 10%, rgba(34, 197, 94, .10), transparent 60%), radial-gradient(900px 220px at 85% 40%, rgba(56, 189, 248, .08), transparent 55%), linear-gradient(180deg, rgba(10, 12, 15, .62), rgba(10, 12, 15, .82));
  backdrop-filter: blur(10px);
  overflow: hidden;
}

.bufo-ribbon__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 0 20px;
  display: grid;
  grid-template-columns: 1.4fr .9fr;
  gap: 16px;
  align-items: stretch;
}

@media (max-width:1024px) {
  .bufo-ribbon__inner {
    grid-template-columns: 1fr
  }
}

.bufo-ribbon__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 12px;
}

.bufo-ribbon__live {
  display: flex;
  align-items: center;
  gap: 10px;
  font-family: var(--bufo-mono);
  letter-spacing: .14em;
  font-size: 12px;
  color: rgba(209, 250, 229, .9);
  text-transform: uppercase;
}

.bufo-ribbon__meta {
  display: flex;
  gap: 8px;
  flex-wrap: wrap;
  justify-content: flex-end;
}

.bufo-ribbon__grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

@media (max-width:640px) {
  .bufo-ribbon__grid {
    grid-template-columns: 1fr
  }
}

.bufo-ribbon__right {
  display: flex;
  flex-direction: column;
  gap: 10px;
  justify-content: center;
}

.bufo-ribbon__scan {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(180deg, rgba(255, 255, 255, .02) 0px, rgba(255, 255, 255, .02) 1px, transparent 3px, transparent 7px);
  opacity: .35;
  pointer-events: none;
}

.agent-menu {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.agent-avatar {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 1px solid rgba(239, 68, 68, 0.45);
  box-shadow: 0 0 0 2px rgba(10, 12, 15, 0.65);
  flex: 0 0 auto;
}

.agent-avatar--ghost {
  width: 22px;
  height: 22px;
  border-radius: 999px;
  border: 1px dashed rgba(239, 68, 68, 0.55);
  background:
    radial-gradient(circle at 50% 40%, rgba(239, 68, 68, 0.35) 0 20%, transparent 21%),
    radial-gradient(circle at 40% 38%, rgba(10, 12, 15, 0.9) 0 2px, transparent 3px),
    radial-gradient(circle at 60% 38%, rgba(10, 12, 15, 0.9) 0 2px, transparent 3px),
    radial-gradient(circle at 50% 65%, rgba(10, 12, 15, 0.9) 0 3px, transparent 4px);
  opacity: 0.92;
}

.agent-label {
  max-width: 260px;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-menu[data-is-logged-in="0"] .agent-label::after {
  content: ' · ID: NULL';
  opacity: 0.75;
}

.agent-caret {
  opacity: 0.85;
  transition: transform 160ms ease, opacity 160ms ease;
}

.agent-menu.is-open .agent-caret {
  transform: rotate(180deg);
  opacity: 1;
}

.agent-dropdown {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  width: min(399px, calc(100vw - 28px));
  z-index: 9999;
  border-radius: 12px;
  border: 1px solid rgba(239, 68, 68, 0.35);
  background: rgba(10, 12, 15, 0.92);
  backdrop-filter: blur(10px);
  box-shadow:
    0 18px 45px rgba(0,0,0,0.58),
    0 0 0 1px rgba(239, 68, 68, 0.10) inset;
  overflow: hidden;
}

.agent-menu.is-auth .agent-dropdown {
  border-color: rgba(34, 197, 94, 0.28);
  box-shadow:
    0 18px 45px rgba(0,0,0,0.58),
    0 0 0 1px rgba(34, 197, 94, 0.10) inset;
}

.agent-dropdown::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(1200px 600px at 20% 0%, rgba(239, 68, 68, 0.12), transparent 60%),
    radial-gradient(900px 500px at 100% 20%, rgba(255,255,255,0.06), transparent 60%),
    repeating-linear-gradient(
      0deg,
      rgba(255,255,255,0.03) 0px,
      rgba(255,255,255,0.03) 1px,
      transparent 2px,
      transparent 6px
    );
  opacity: 0.75;
  mix-blend-mode: overlay;
}

.agent-dropdown::after {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    repeating-linear-gradient(
      90deg,
      rgba(0,0,0,0.0) 0px,
      rgba(0,0,0,0.0) 22px,
      rgba(0,0,0,0.10) 23px,
      rgba(0,0,0,0.0) 24px
    );
  opacity: 0.35;
}

.agent-dossierbar {
  position: relative;
  padding: 12px 14px;
  background:
    linear-gradient(180deg, rgba(0,0,0,0.35), rgba(0,0,0,0.0)),
    radial-gradient(800px 120px at 20% 0%, rgba(239, 68, 68, 0.18), transparent 55%);
  border-bottom: 1px solid rgba(239, 68, 68, 0.14);
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
}

.agent-menu.is-auth .agent-dossierbar {
  background:
    linear-gradient(180deg, rgba(0,0,0,0.35), rgba(0,0,0,0.0)),
    radial-gradient(800px 120px at 20% 0%, rgba(34, 197, 94, 0.16), transparent 55%);
  border-bottom-color: rgba(34, 197, 94, 0.12);
}

.agent-dossierbar__left {
  display: flex;
  flex-direction: column;
  gap: 6px;
  min-width: 0;
}

.agent-dossierbar__right {
  display: flex;
  flex-direction: column;
  gap: 6px;
  align-items: flex-end;
}

.agent-filetag {
  display: inline-flex;
  align-items: baseline;
  gap: 8px;
  font-family: var(--font-mono);
  letter-spacing: 2px;
  text-transform: uppercase;
  user-select: none;
}

.agent-filetag__kicker {
  font-weight: 900;
  font-size: 10px;
  color: rgba(255,255,255,0.70);
}

.agent-filetag__title {
  font-weight: 950;
  font-size: 12px;
  color: rgba(239, 68, 68, 0.95);
}

.agent-menu.is-auth .agent-filetag__title {
  color: rgba(34, 197, 94, 0.95);
}

.agent-signal {
  display: flex;
  align-items: center;
  gap: 8px;
  min-width: 0;
}

.agent-signal__dot {
  width: 7px;
  height: 7px;
  border-radius: 999px;
  background: rgba(239, 68, 68, 0.95);
  box-shadow: 0 0 0 2px rgba(10, 12, 15, 0.85);
  animation: bufo-ping 1.6s ease-in-out infinite;
}

.agent-menu.is-auth .agent-signal__dot {
  background: rgba(34, 197, 94, 0.95);
}

.agent-signal__text {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.7px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.78);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.agent-clearance,
.agent-sid {
  display: inline-flex;
  gap: 8px;
  align-items: baseline;
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 1.6px;
}

.agent-clearance__label,
.agent-sid__label {
  font-size: 10px;
  color: rgba(255,255,255,0.60);
}

.agent-clearance__value {
  font-size: 11px;
  font-weight: 900;
  color: rgba(239, 68, 68, 0.95);
}

.agent-sid__value {
  font-size: 10px;
  font-weight: 900;
  color: rgba(255,255,255,0.75);
}

.agent-menu.is-auth .agent-clearance__value {
  color: rgba(34, 197, 94, 0.95);
}

.agent-clock {
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.55);
}

@media (max-width: 420px){
  .agent-clock{ display: none; }
}

.agent-watermark {
  position: absolute;
  top: 62px;
  right: -40px;
  transform: rotate(18deg);
  font-family: var(--font-mono);
  font-weight: 950;
  font-size: 22px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: rgba(239, 68, 68, 0.16);
  pointer-events: none;
  user-select: none;
}

.agent-menu.is-auth .agent-watermark {
  color: rgba(34, 197, 94, 0.12);
}

.agent-corner {
  position: absolute;
  width: 12px;
  height: 12px;
  pointer-events: none;
  opacity: 0.55;
}

.agent-corner--tl {
  top: 8px;
  left: 8px;
  border-top: 2px solid rgba(255,255,255,0.22);
  border-left: 2px solid rgba(255,255,255,0.22);
}

.agent-corner--tr {
  top: 8px;
  right: 8px;
  border-top: 2px solid rgba(255,255,255,0.22);
  border-right: 2px solid rgba(255,255,255,0.22);
}

.agent-corner--bl {
  bottom: 8px;
  left: 8px;
  border-bottom: 2px solid rgba(255,255,255,0.18);
  border-left: 2px solid rgba(255,255,255,0.18);
}

.agent-corner--br {
  bottom: 8px;
  right: 8px;
  border-bottom: 2px solid rgba(255,255,255,0.18);
  border-right: 2px solid rgba(255,255,255,0.18);
}

.agent-stamp {
  position: absolute;
  left: 14px;
  top: 78px;
  width: 190px;
  transform: rotate(-14deg) scale(0.98);
  opacity: 0;
  pointer-events: none;
  user-select: none;
  z-index: 2;
  transition: opacity 180ms ease, transform 220ms ease;
}

.agent-menu.is-open .agent-stamp {
  opacity: 1;
  transform: rotate(-14deg) scale(1);
}

.agent-stamp__inner {
  border: 2px solid rgba(239, 68, 68, 0.55);
  border-radius: 10px;
  padding: 10px 10px;
  background: rgba(239, 68, 68, 0.06);
  box-shadow:
    0 10px 25px rgba(0,0,0,0.30),
    0 0 0 1px rgba(239, 68, 68, 0.18) inset;
}

.agent-menu.is-auth .agent-stamp__inner {
  border-color: rgba(34, 197, 94, 0.45);
  background: rgba(34, 197, 94, 0.06);
  box-shadow:
    0 10px 25px rgba(0,0,0,0.30),
    0 0 0 1px rgba(34, 197, 94, 0.16) inset;
}

.agent-stamp__top {
  font-family: var(--font-mono);
  font-weight: 950;
  font-size: 14px;
  letter-spacing: 2.4px;
  text-transform: uppercase;
  color: rgba(239, 68, 68, 0.92);
}

.agent-menu.is-auth .agent-stamp__top {
  color: rgba(34, 197, 94, 0.92);
}

.agent-stamp__mid {
  margin-top: 2px;
  font-family: var(--font-mono);
  font-weight: 950;
  font-size: 12px;
  letter-spacing: 4px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.60);
}

.agent-stamp__bot {
  margin-top: 6px;
  font-family: var(--font-mono);
  font-weight: 900;
  font-size: 9px;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.52);
}

.agent-dropdown__section {
  position: relative;
  padding: 14px;
  border-top: 1px solid rgba(239, 68, 68, 0.12);
  z-index: 3;
}

.agent-menu.is-auth .agent-dropdown__section {
  border-top-color: rgba(34, 197, 94, 0.10);
}

.agent-dropdown__section--top {
  border-top: none;
  background:
    linear-gradient(180deg, rgba(239, 68, 68, 0.10), transparent 70%),
    radial-gradient(900px 180px at 20% 0%, rgba(239, 68, 68, 0.12), transparent 60%);
}

.agent-menu.is-auth .agent-dropdown__section--top {
  background:
    linear-gradient(180deg, rgba(34, 197, 94, 0.09), transparent 70%),
    radial-gradient(900px 180px at 20% 0%, rgba(34, 197, 94, 0.10), transparent 60%);
}

.agent-dropdown__title {
  font-family: var(--font-mono);
  font-weight: 900;
  font-size: 12px;
  letter-spacing: 2px;
  text-transform: uppercase;
  color: rgba(239, 68, 68, 0.95);
}

.agent-menu.is-auth .agent-dropdown__title {
  color: rgba(34, 197, 94, 0.95);
}

.agent-dropdown__meta {
  margin-top: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: rgba(255, 255, 255, 0.68);
}

.agent-profile {
  display: flex;
  align-items: center;
  gap: 10px;
}

.agent-profile__avatar {
  width: 44px;
  height: 44px;
  border-radius: 999px;
  border: 1px solid rgba(34, 197, 94, 0.30);
  box-shadow: 0 0 0 2px rgba(10, 12, 15, 0.75);
}

.agent-profile__name {
  font-family: var(--font-mono);
  font-size: 12px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.92);
}

.agent-profile__level {
  margin-top: 3px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: rgba(34, 197, 94, 0.88);
}

.agent-profile__sub {
  margin-top: 4px;
  font-family: var(--font-mono);
  font-size: 10px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.58);
}

.agent-divider {
  height: 1px;
  margin: 12px 0;
  background: linear-gradient(90deg, transparent, rgba(255,255,255,0.14), transparent);
}

.agent-minirow {
  display: flex;
  align-items: baseline;
  justify-content: space-between;
  gap: 12px;
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 1.4px;
  padding: 6px 0;
}

.agent-minirow__key {
  font-size: 10px;
  color: rgba(255,255,255,0.58);
}

.agent-minirow__val {
  font-size: 10px;
  font-weight: 900;
  color: rgba(255,255,255,0.78);
}

.agent-dropdown__item {
  width: 100%;
  display: inline-flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 10px;
  border-radius: 10px;
  font-family: var(--font-mono);
  font-weight: 900;
  font-size: 11px;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.88);
  background: rgba(255,255,255,0.04);
  border: 1px solid rgba(255,255,255,0.06);
  text-decoration: none;
}

.agent-dropdown__item + .agent-dropdown__item {
  margin-top: 8px;
}

.agent-dropdown__item:hover {
  background: rgba(255,255,255,0.06);
  border-color: rgba(255,255,255,0.10);
}

.agent-dropdown__item.is-disabled {
  opacity: 0.55;
  cursor: not-allowed;
}

.agent-dropdown__item--danger {
  border-color: rgba(239, 68, 68, 0.22);
  background: rgba(239, 68, 68, 0.10);
  color: rgba(239, 68, 68, 0.95);
}

.agent-dropdown__item--danger:hover {
  background: rgba(239, 68, 68, 0.14);
  border-color: rgba(239, 68, 68, 0.30);
}

.agent-chip {
  padding: 2px 7px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(255,255,255,0.05);
  font-size: 10px;
  letter-spacing: 1px;
  opacity: 0.95;
}

.agent-chip--good {
  border-color: rgba(34, 197, 94, 0.18);
  background: rgba(34, 197, 94, 0.10);
  color: rgba(34, 197, 94, 0.95);
}

.agent-chip--danger {
  border-color: rgba(239, 68, 68, 0.22);
  background: rgba(239, 68, 68, 0.10);
  color: rgba(239, 68, 68, 0.95);
}

.agent-dropdown__link {
  display: inline-block;
  margin-top: 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: rgba(255,255,255,0.75);
  text-decoration: none;
}

.agent-dropdown__link:hover {
  color: rgba(255,255,255,0.92);
}


/* ================================================================
   AGENT DOSSIER (Profile detail block) - NEW
   ================================================================ */

.agent-dossier {
  display: flex;
  flex-direction: column;
  gap: 2px;
  padding: 4px 0 0;
}

.agent-dossier .agent-minirow {
  padding: 5px 0;
}

.agent-minirow__val--green {
  color: rgba(34, 197, 94, 0.95) !important;
}

/* Focus-visible for agent items */
.agent-dropdown__item:focus-visible,
.agent-trigger:focus-visible {
  outline: 2px solid var(--bufo-neon);
  outline-offset: 2px;
}
/* ── hero.css ── */
.command-center {
  background: linear-gradient(135deg, var(--dark-matter), var(--void), var(--nebula));
}

.command-grid {
  background-image: linear-gradient(rgba(34, 197, 94, 0.05) 1px, transparent 1px), linear-gradient(90deg, rgba(34, 197, 94, 0.05) 1px, transparent 1px);
  background-size: 40px 40px;
}

.corner-accent {
  position: absolute;
  width: 60px;
  height: 60px;
  pointer-events: none;
}

.corner-accent::before,
.corner-accent::after {
  content: '';
  position: absolute;
  background: var(--ufo-green);
  opacity: 0.5;
}

.corner-accent--tl {
  top: 0;
  left: 0;
}

.corner-accent--tl::before {
  top: 0;
  left: 0;
  width: 20px;
  height: 2px;
}

.corner-accent--tl::after {
  top: 0;
  left: 0;
  width: 2px;
  height: 20px;
}

.corner-accent--tr {
  top: 0;
  right: 0;
}

.corner-accent--tr::before {
  top: 0;
  right: 0;
  width: 20px;
  height: 2px;
}

.corner-accent--tr::after {
  top: 0;
  right: 0;
  width: 2px;
  height: 20px;
}

.corner-accent--bl {
  bottom: 0;
  left: 0;
}

.corner-accent--bl::before {
  bottom: 0;
  left: 0;
  width: 20px;
  height: 2px;
}

.corner-accent--bl::after {
  bottom: 0;
  left: 0;
  width: 2px;
  height: 20px;
}

.corner-accent--br {
  bottom: 0;
  right: 0;
}

.corner-accent--br::before {
  bottom: 0;
  right: 0;
  width: 20px;
  height: 2px;
}

.corner-accent--br::after {
  bottom: 0;
  right: 0;
  width: 2px;
  height: 20px;
}

.radar-sweep {
  background: conic-gradient(from 0deg, transparent 0deg, rgba(34, 197, 94, 0.15) 30deg, transparent 60deg);
  border-radius: 50%;
  animation: radar-rotate 6s linear infinite;
}

.scan-line-horizontal {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.6), transparent);
  animation: scan-v 4s ease-in-out infinite;
}

.scan-line-vertical {
  position: absolute;
  top: 0;
  bottom: 0;
  width: 2px;
  background: linear-gradient(180deg, transparent, rgba(34, 197, 94, 0.6), transparent);
  animation: scan-h 5s ease-in-out infinite;
}

.console-panel {
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  overflow: hidden;
}

.console-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 14px 18px;
  background: rgba(0, 0, 0, 0.3);
  border-bottom: 1px solid var(--glass-border);
}

.console-panel__body {
  padding: 18px;
}

.console-panel__radar {
  position: relative;
  width: 28px;
  height: 28px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 50%;
  overflow: hidden;
}

.console-panel__radar-sweep {
  position: absolute;
  inset: 0;
  background: conic-gradient(from 0deg, transparent 0deg, rgba(34, 197, 94, 0.4) 20deg, transparent 40deg);
  animation: radar-rotate 2s linear infinite;
}

.console-panel__radar-dot {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 4px;
  height: 4px;
  background: var(--ufo-green);
  border-radius: 50%;
  box-shadow: 0 0 8px var(--ufo-green);
}

.stat-cell {
  padding: 12px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  text-align: center;
}

.stat-cell__label {
  display: block;
  font-family: var(--font-mono);
  font-size: 9px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 6px;
}

.stat-cell__value {
  font-size: 13px;
  font-weight: 600;
  color: var(--text-primary);
}

.stat-cell__value--green {
  color: var(--ufo-green);
}

.stat-cell__value--yellow {
  color: var(--warning-amber);
}

.console-search__wrapper {
  position: relative;
  display: flex;
  align-items: center;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  overflow: hidden;
  transition: border-color var(--transition-base);
}

.console-search__icon {
  position: absolute;
  left: 14px;
  width: 18px;
  height: 18px;
  color: var(--text-muted);
  pointer-events: none;
}

.console-search__input {
  flex: 1;
  padding: 12px 14px 12px 44px;
  background: transparent;
  border: none;
  font-size: 14px;
  color: var(--text-primary);
}

.console-search__input::placeholder {
  color: var(--text-dim);
}

.console-search__btn {
  padding: 10px 18px;
  background: rgba(34, 197, 94, 0.2);
  border-left: 1px solid var(--glass-border);
  font-family: var(--font-mono);
  font-size: 12px;
  font-weight: 600;
  color: var(--ufo-green);
  letter-spacing: 1px;
  transition: background var(--transition-base);
}

.console-search__btn:hover {
  background: rgba(34, 197, 94, 0.3);
}

.console-terminal {
  padding: 14px;
  background: rgba(0, 0, 0, 0.6);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  font-family: var(--font-mono);
  font-size: 12px;
  min-height: 140px;
}

.console-terminal__line {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 6px 0;
  color: var(--text-muted);
  min-height: 24px;
}

.console-terminal__line--success {
  color: var(--ufo-green);
}

.console-terminal__line--success .console-terminal__prompt {
  color: var(--ufo-green);
}

.console-terminal__line--warning {
  color: var(--warning-amber);
}

.console-terminal__line--warning .console-terminal__prompt {
  color: var(--warning-amber);
}

.console-terminal__line--system {
  color: var(--signal-cyan, #06b6d4);
}

.console-terminal__line--system .console-terminal__prompt {
  color: var(--signal-cyan, #06b6d4);
}

.console-terminal__prompt {
  color: var(--ufo-green);
  opacity: 0.8;
  white-space: nowrap;
  flex-shrink: 0;
}

.console-terminal__text {
  flex: 1;
  white-space: nowrap;
  overflow: hidden;
}

.console-terminal__cursor {
  display: inline-block;
  width: 8px;
  height: 14px;
  background: var(--ufo-green);
  margin-left: 2px;
  opacity: 0;
  flex-shrink: 0;
}

.console-terminal__cursor--active {
  animation: cursor-blink 0.6s step-end infinite;
}

.console-terminal__cursor--blink {
  opacity: 1;
  animation: cursor-blink 1s step-end infinite;
}

.hero-card {
  transition: transform 0.5s ease;
}

.hero-card:hover {
  transform: translateY(-4px);
}

.hero-placeholder-pattern {
  background-image: radial-gradient(circle at 20% 30%, rgba(34, 197, 94, 0.15) 0%, transparent 50%), radial-gradient(circle at 80% 70%, rgba(34, 197, 94, 0.1) 0%, transparent 40%);
}

.bu-scanner {
  isolation: isolate;
  box-shadow: inset 0 0 0 1px rgba(255, 255, 255, 0.06), 0 0 28px rgba(34, 197, 94, 0.08);
}

.bu-scanner__sweep {
  background: conic-gradient(from 180deg, transparent 0deg, transparent 250deg, rgba(34, 197, 94, 0.25) 292deg, rgba(255, 255, 255, 0.08) 298deg, rgba(34, 197, 94, 0.15) 304deg, transparent 332deg);
  animation: radar-rotate 2s linear infinite;
  mix-blend-mode: screen;
}

.bu-scanner__grid {
  background: radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.1) 1px, transparent 1px), linear-gradient(to right, rgba(255, 255, 255, 0.08) 1px, transparent 1px), linear-gradient(to bottom, rgba(255, 255, 255, 0.06) 1px, transparent 1px);
  background-size: 20px 20px, 10px 10px, 10px 10px;
  mask-image: radial-gradient(circle at 50% 50%, black, transparent 75%);
  -webkit-mask-image: radial-gradient(circle at 50% 50%, black, transparent 75%);
}

.bu-scanner__pulse {
  border-radius: 50%;
  box-shadow: inset 0 0 0 1px rgba(34, 197, 94, 0.2), 0 0 20px rgba(34, 197, 94, 0.1);
  animation: bu-scan-pulse 2.5s ease-out infinite;
}

.index-hero {
  position: relative;
  min-height: 85vh;
  display: flex;
  flex-direction: column;
  overflow: hidden;
  justify-content: center;
  padding: 4rem 0;
}

.index-hero__bg {
  position: fixed;
  inset: 0;
  background: linear-gradient(180deg, #020205 0%, #050508 20%, #080810 50%, #0a0a12 80%, #050508 100%);
  z-index: -1;
}

.index-hero__bg-single {
  inset: 0;
  pointer-events: none;
  background: linear-gradient(180deg, #020205 0%, #050508 20%, #080810 50%, #0a0a12 80%, #050508 100%);
}

.index-hero__gradient {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 80% 50% at 20% 40%, rgba(34, 197, 94, 0.08) 0%, transparent 50%), radial-gradient(ellipse 60% 40% at 80% 60%, rgba(34, 197, 94, 0.05) 0%, transparent 40%), radial-gradient(ellipse 100% 100% at 50% 100%, rgba(34, 197, 94, 0.03) 0%, transparent 50%);
}
/*
.index-hero__stars {
  position: absolute;
  inset: 0;
  background-image:
    radial-gradient(1px 1px at 7% 12%, rgba(255,255,255,.12), transparent),
    radial-gradient(1px 1px at 18% 83%, rgba(255,255,255,.1), transparent),
    radial-gradient(1px 1px at 29% 44%, rgba(255,255,255,.14), transparent),
    radial-gradient(1px 1px at 41% 67%, rgba(255,255,255,.11), transparent),
    radial-gradient(1px 1px at 53% 21%, rgba(255,255,255,.13), transparent),
    radial-gradient(1px 1px at 64% 91%, rgba(255,255,255,.1), transparent),
    radial-gradient(1px 1px at 76% 38%, rgba(255,255,255,.15), transparent),
    radial-gradient(1px 1px at 88% 59%, rgba(255,255,255,.12), transparent),
    radial-gradient(1.5px 1.5px at 12% 34%, rgba(255,255,255,.22), transparent),
    radial-gradient(1.5px 1.5px at 27% 71%, rgba(255,255,255,.2), transparent),
    radial-gradient(1.5px 1.5px at 39% 18%, rgba(255,255,255,.24), transparent),
    radial-gradient(1.5px 1.5px at 58% 49%, rgba(255,255,255,.21), transparent),
    radial-gradient(1.5px 1.5px at 73% 82%, rgba(255,255,255,.23), transparent),
    radial-gradient(1.5px 1.5px at 91% 26%, rgba(255,255,255,.2), transparent),
    radial-gradient(2px 2px at 22% 56%, rgba(255,255,255,.35), transparent),
    radial-gradient(2px 2px at 47% 77%, rgba(255,255,255,.32), transparent),
    radial-gradient(2px 2px at 69% 33%, rgba(255,255,255,.38), transparent),
    radial-gradient(2px 2px at 34% 64%, rgba(34,197,94,.35), transparent),
    radial-gradient(2px 2px at 81% 48%, rgba(34,197,94,.25), transparent);
  background-size: 480px 360px, 620px 510px, 740px 590px;
  animation: stars-drift 120s linear infinite;
  pointer-events: none;
}
*/
.index-hero__grid {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(34, 197, 94, 0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(34, 197, 94, 0.02) 1px, transparent 1px);
  background-size: 80px 80px;
  mask-image: radial-gradient(ellipse 80% 60% at 50% 50%, black, transparent);
}

.index-hero__noise {
  position: absolute;
  inset: 0;
  opacity: 0.015;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.8' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.index-hero__vignette {
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 300px 100px rgba(0, 0, 0, 0.5);
}

.index-hero__scan {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, rgba(34, 197, 94, 0.3) 20%, rgba(34, 197, 94, 0.6) 50%, rgba(34, 197, 94, 0.3) 80%, transparent 100%);
  animation: index-scan 6s ease-in-out infinite;
  filter: blur(1px);
}

.index-hero__flare {
  position: absolute;
  border-radius: 50%;
  filter: blur(80px);
  pointer-events: none;
}

.index-hero__flare--1 {
  top: 10%;
  left: 5%;
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, rgba(34, 197, 94, 0.15) 0%, transparent 70%);
  animation: flare-float-1 12s ease-in-out infinite;
}

.index-hero__flare--2 {
  bottom: 20%;
  right: 10%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(34, 197, 94, 0.1) 0%, transparent 70%);
  animation: flare-float-2 15s ease-in-out infinite;
}

.index-hero__orb {
  position: absolute;
  top: 25%;
  right: 15%;
  width: 120px;
  height: 120px;
}

@media (max-width:1024px) {
  .index-hero__orb {
    display: none
  }
}

.index-hero__orb-glow {
  position: absolute;
  inset: 20%;
  background: radial-gradient(circle, rgba(34, 197, 94, 0.6), rgba(34, 197, 94, 0.1) 60%, transparent);
  border-radius: 50%;
  animation: orb-pulse 3s ease-in-out infinite;
}

.index-hero__orb-ring {
  position: absolute;
  inset: 0;
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 50%;
  animation: orb-ring-rotate 10s linear infinite;
}

.index-hero__orb-ring--2 {
  inset: -20px;
  animation-duration: 15s;
  animation-direction: reverse;
}

.hero-bracket {
  position: absolute;
  width: 60px;
  height: 60px;
  z-index: 10;
  border-color: rgba(0, 255, 136, 0.3);
  border-style: solid;
  border-width: 0;
}

.hero-bracket::before,
.hero-bracket::after {
  content: '';
  position: absolute;
  background: rgba(34, 197, 94, 0.4);
  transition: all 0.3s ease;
}

.hero-bracket--tl {
  top: 20px;
  left: 20px;
  border-top-width: 2px;
  border-left-width: 2px;
}

.hero-bracket--tl::before {
  top: 0;
  left: 0;
  width: 40px;
  height: 2px;
}

.hero-bracket--tl::after {
  top: 0;
  left: 0;
  width: 2px;
  height: 40px;
}

.hero-bracket--tr {
  top: 20px;
  right: 20px;
  border-top-width: 2px;
  border-right-width: 2px;
}

.hero-bracket--tr::before {
  top: 0;
  right: 0;
  width: 40px;
  height: 2px;
}

.hero-bracket--tr::after {
  top: 0;
  right: 0;
  width: 2px;
  height: 40px;
}

.hero-bracket--bl {
  bottom: 20px;
  left: 20px;
  border-bottom-width: 2px;
  border-left-width: 2px;
}

.hero-bracket--bl::before {
  bottom: 0;
  left: 0;
  width: 40px;
  height: 2px;
}

.hero-bracket--bl::after {
  bottom: 0;
  left: 0;
  width: 2px;
  height: 40px;
}

.hero-bracket--br {
  bottom: 20px;
  right: 20px;
  border-bottom-width: 2px;
  border-right-width: 2px;
}

.hero-bracket--br::before {
  bottom: 0;
  right: 0;
  width: 40px;
  height: 2px;
}

.hero-bracket--br::after {
  bottom: 0;
  right: 0;
  width: 2px;
  height: 40px;
}

.index-hero__topbar {
  position: relative;
  z-index: 20;
  padding: 20px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.index-hero__content {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  position: relative;
  z-index: 10;
  padding: 60px 0;
}

.hero-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
  padding: 0.25rem 0.5rem;
  border-radius: 2px;
  font-family: var(--font-mono);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  border: 1px solid;
}

.hero-badge--primary {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.4);
  color: var(--ufo-green);
  position: relative;
}

.hero-badge__pulse {
  width: 6px;
  height: 6px;
  background: currentColor;
  border-radius: 50%;
  box-shadow: 0 0 8px var(--ufo-green);
  animation: pulse 2s ease-in-out infinite;
}

.hero-badge--secondary {
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  color: var(--text-muted);
}

.hero-badge--secondary svg {
  color: var(--ufo-green);
  opacity: 0.7;
}

.hero-badge--accent {
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  color: var(--text-secondary);
}

.hero-search {
  flex: 1;
  min-width: 300px;
  max-width: 500px;
  width: 100%;
}

.hero-search__wrapper {
  display: flex;
  align-items: center;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  padding: 4px;
  transition: all var(--transition-base);
  overflow: hidden;
}

.hero-search__icon {
  width: 20px;
  height: 20px;
  margin: 0 12px;
  color: var(--text-muted);
  margin-left: 1rem;
  flex-shrink: 0;
}

.hero-search__input {
  flex: 1;
  padding: 1rem;
  background: transparent;
  border: none;
  font-size: 0.9rem;
  color: var(--text-primary);
  font-family: var(--font-mono);
}

.hero-search__input::placeholder {
  color: var(--text-muted);
}

.hero-search__btn {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 1rem 1.5rem;
  background: var(--ufo-green);
  border: none;
  border-radius: 8px;
  font-family: var(--font-mono);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--ufo-black);
  letter-spacing: 0.05em;
  cursor: pointer;
  transition: all var(--transition-base);
}

.hero-search__btn:hover {
  background: var(--ufo-green-dim);
  border-color: var(--ufo-green);
}

.hero-sectors {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 1rem;
  padding-top: 2rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
}

.hero-sectors__label {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.75rem;
  color: var(--text-muted);
  font-family: var(--font-mono);
  letter-spacing: 0.05em;
}

.hero-sectors__dot {
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  opacity: 0.6;
}

.hero-sectors__list {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
}

.hero-sector-chip {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.25rem 1rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 20px;
  font-size: 0.75rem;
  color: var(--text-secondary);
  transition: all var(--transition-base);
  font-family: var(--font-mono);
  text-decoration: none;
}

.hero-sector-chip:hover {
  border-color: var(--ufo-green);
  background: rgba(0, 255, 136, 0.1);
  color: var(--ufo-green);
}

.hero-sector-chip__count {
  padding: 2px 6px;
  background: rgba(255, 255, 255, 0.1);
  border-radius: 10px;
  font-family: var(--font-mono);
  font-size: 0.65rem;
  color: var(--text-muted);
}

.index-hero__console {
  position: relative;
  z-index: 10;
  padding-bottom: 40px;
}

.console-line {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 6px 0;
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-muted);
}

.console-line--info .console-line__prompt {
  color: #06b6d4;
}

.console-line--warning .console-line__prompt {
  color: #f59e0b;
}

.console-line--success .console-line__prompt {
  color: var(--ufo-green);
}

.console-line--success {
  color: var(--ufo-green);
}

.console-line__prompt {
  color: var(--ufo-green);
  opacity: 0.8;
  white-space: nowrap;
}

.console-line__text {
  flex: 1;
}

.console-line__cursor {
  width: 8px;
  height: 14px;
  background: var(--ufo-green);
  opacity: 0;
}

.console-line__cursor--blink {
  animation: cursor-blink 1s step-end infinite;
  opacity: 1;
}

.index-hero__scroll {
  position: absolute;
  bottom: 2rem;
  left: 50%;
  transform: translateX(-50%);
  z-index: 20;
}

.hero-split {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 4rem;
  align-items: center;
  margin-bottom: 2rem;
}

@media (max-width:1024px) {
  .hero-split {
    grid-template-columns: 1fr;
    gap: 2rem
  }
}

.hero-badge--danger {
  background: rgba(255, 51, 102, 0.1);
  border-color: var(--ufo-red);
  color: var(--ufo-red);
}

.hero-terminal-wrapper {
  position: relative;
  perspective: 1000px;
}

.hero-terminal {
  position: relative;
  background: rgba(0, 0, 0, 0.85);
  border: 1px solid rgba(0, 255, 136, 0.2);
  border-radius: 8px;
  overflow: hidden;
  font-family: var(--font-mono);
  box-shadow: 0 0 0 1px rgba(0, 255, 136, 0.1), 0 20px 60px rgba(0, 0, 0, 0.5), inset 0 0 60px rgba(0, 255, 136, 0.02);
  transform: rotateY(-2deg) rotateX(1deg);
  transition: transform var(--transition-slow);
}

.hero-terminal:hover {
  transform: rotateY(0) rotateX(0);
}

.hero-terminal__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 1rem;
  background: rgba(0, 255, 136, 0.05);
  border-bottom: 1px solid rgba(0, 255, 136, 0.1);
}

.hero-terminal__dots {
  display: flex;
  gap: 6px;
}

.hero-terminal__dot {
  width: 10px;
  height: 10px;
  border-radius: 50%;
}

.hero-terminal__dot--red {
  background: #ff5f56;
}

.hero-terminal__dot--yellow {
  background: #ffbd2e;
}

.hero-terminal__dot--green {
  background: #27c93f;
}

.hero-terminal__title {
  font-size: 0.7rem;
  color: var(--text-muted);
  letter-spacing: 0.05em;
}

.hero-terminal__status {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 0.65rem;
  color: var(--ufo-green);
  letter-spacing: 0.1em;
}

.hero-terminal__status-indicator {
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  animation: pulse 2s ease-in-out infinite;
}

.hero-terminal__body {
  padding: 1rem;
  min-height: 350px;
  max-height: 650px;
  overflow-y: auto;
  font-size: 0.8rem;
  line-height: 1.6;
  scrollbar-width: thin;
  scrollbar-color: rgba(34,197,94,0.45) rgba(255,255,255,0.04);
}

.hero-terminal__scanlines {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(0deg, transparent, transparent 2px, rgba(0, 0, 0, 0.1) 2px, rgba(0, 0, 0, 0.1) 4px);
  pointer-events: none;
  opacity: 0.3;
}

.terminal-decoration {
  position: absolute;
  width: 20px;
  height: 20px;
  border-color: var(--ufo-green);
  border-style: solid;
  border-width: 0;
  opacity: 0.3;
}

.terminal-decoration--tl {
  top: -10px;
  left: -10px;
  border-top-width: 2px;
  border-left-width: 2px;
}

.terminal-decoration--tr {
  top: -10px;
  right: -10px;
  border-top-width: 2px;
  border-right-width: 2px;
}

.terminal-decoration--bl {
  bottom: -10px;
  left: -10px;
  border-bottom-width: 2px;
  border-left-width: 2px;
}

.terminal-decoration--br {
  bottom: -10px;
  right: -10px;
  border-bottom-width: 2px;
  border-right-width: 2px;
}

.terminal-block {
  margin-bottom: 1rem;
  opacity: 0;
  transform: translateY(10px);
}

.terminal-block.visible {
  opacity: 1;
  transform: translateY(0);
  transition: opacity 0.4s ease, transform 0.4s ease;
}

.terminal-line {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 2px;
  flex-wrap: wrap;
}

.terminal-line--prompt {
  margin-top: 0.5rem;
}

.terminal-user {
  color: var(--ufo-cyan);
}

.terminal-path {
  color: var(--ufo-green);
}

.terminal-command {
  color: var(--text-primary);
}

.terminal-cursor {
  color: var(--ufo-green);
  opacity: 0;
}

.terminal-cursor.active {
  animation: cursorBlink 0.8s step-end infinite;
}

.terminal-prefix {
  color: var(--text-muted);
  min-width: 60px;
}

.terminal-line--system .terminal-text {
  color: var(--text-secondary);
}

.terminal-line--info .terminal-prefix {
  color: var(--ufo-cyan);
}

.terminal-line--info .terminal-text {
  color: var(--text-secondary);
}

.terminal-line--warning .terminal-prefix {
  color: var(--ufo-amber);
}

.terminal-line--warning .terminal-text {
  color: var(--ufo-amber);
}

.terminal-line--success .terminal-prefix {
  color: var(--ufo-green);
}

.terminal-line--success .terminal-text {
  color: var(--ufo-green);
}

.terminal-ok {
  color: var(--ufo-green);
  margin-left: auto;
  font-weight: 600;
}

.terminal-block--files .terminal-line--file {
  display: grid;
  grid-template-columns: 100px 50px 100px 1fr;
  gap: 1rem;
  font-size: 0.75rem;
}

@media (max-width:640px) {
  .terminal-block--files .terminal-line--file {
    grid-template-columns: 1fr;
    gap: 0.25rem
  }
}

.terminal-line--dim {
  color: var(--text-muted);
  font-size: 0.75rem;
  margin-bottom: 0.5rem;
}

.terminal-perms {
  color: var(--text-muted);
}

.terminal-size {
  color: var(--text-secondary);
  text-align: right;
}

.terminal-date {
  color: var(--text-muted);
}

.terminal-filename {
  color: var(--text-primary);
}

.terminal-filename--dir {
  color: var(--ufo-cyan);
}

.terminal-filename--classified {
  color: var(--ufo-amber);
}

.terminal-filename--top-secret {
  color: var(--ufo-red);
  animation: redact 2s ease-in-out infinite;
}

.terminal-block--ascii {
  margin-top: 1rem;
}

.terminal-ascii {
  color: var(--ufo-green);
  font-size: 0.6rem;
  line-height: 1.2;
  margin: 0;
  text-shadow: 0 0 10px var(--ufo-green-glow);
  white-space: pre;
  overflow-x: auto;
}

@media (max-width:640px) {
  .terminal-ascii {
    font-size: 0.5rem
  }
}

.terminal-line--final .terminal-command {
  color: var(--ufo-green);
}

.terminal-line--interactive {
  display: flex;
  align-items: baseline;
  gap: .35rem;
  flex-wrap: wrap;
}

.terminal-input {
  display: inline-block;
  min-width: 2ch;
  max-width: 72ch;
  min-height: 1em;
  white-space: pre;
  outline: none;
  caret-color: transparent;
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0 .35rem 0 0;
  -webkit-user-modify: read-write-plaintext-only;
}

.terminal-cursor--block {
  display: inline-block;
  width: 1ch;
  line-height: 1;
  color: rgba(34,197,94,.98);
  animation: block-cursor 1000ms steps(1) infinite;
  user-select: none;
  pointer-events: none;
}

.terminal-cursor--active {
  animation: block-cursor-fast 600ms steps(1) infinite;
}

.terminal-processing {
  display: flex;
  gap: .6rem;
  align-items: center;
  color: rgba(255,255,255,0.9);
  font-family: inherit;
}

.terminal-spinner {
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background: rgba(34,197,94,0.95);
  box-shadow: 0 0 6px rgba(34,197,94,0.12);
  animation: spinner-bounce 900ms infinite ease-in-out;
}

.terminal-spinner:nth-child(2) {
  animation-delay: 150ms;
  opacity: .85;
}

.terminal-spinner:nth-child(3) {
  animation-delay: 300ms;
  opacity: .7;
}

.terminal-block--interactive {
    position: sticky;
    bottom: -16px;
    z-index: 5;
    padding-top: 2rem;
    padding-bottom: .6rem;
    background: linear-gradient(to top, rgba(0, 0, 0, 1) 45%, rgba(0, 0, 0, 0));
}

.terminal-block--printed {
  margin-bottom: .25rem;
}

.terminal-line.terminal-line--prompt {
  color: rgba(34,197,94,0.95);
}

.terminal-line.terminal-line--system {
  color: rgba(180,180,180,0.95);
}

.terminal-line.terminal-line--info {
  color: rgba(200,200,200,0.95);
}

.terminal-line.terminal-line--warning {
  color: #ffb86b;
}

.terminal-line.terminal-line--success {
  color: #9be67a;
}

.terminal-line.terminal-line--dim {
  color: rgba(180,180,180,0.8);
  font-size: .95em;
}

.terminal-line.terminal-line--file {
  font-family: ui-monospace, monospace;
  color: rgba(200,200,200,0.95);
}

.hero-terminal__body::-webkit-scrollbar {
  width: 10px;
}

.hero-terminal__body::-webkit-scrollbar-track {
  background:
    linear-gradient(180deg, rgba(0,0,0,0.35), rgba(0,0,0,0.65)),
    repeating-linear-gradient(180deg, rgba(34,197,94,0) 0px, rgba(34,197,94,0) 8px, rgba(34,197,94,0.05) 8px, rgba(34,197,94,0.05) 9px);
  border-left: 1px solid rgba(34,197,94,0.10);
}

.hero-terminal__body::-webkit-scrollbar-thumb {
  background: linear-gradient(180deg, rgba(34,197,94,0.12), rgba(34,197,94,0.45), rgba(34,197,94,0.18));
  border: 1px solid rgba(34,197,94,0.22);
  border-radius: 999px;
  box-shadow: 0 0 14px rgba(34,197,94,0.10);
}

.hero-terminal__body::-webkit-scrollbar-thumb:hover {
  background: linear-gradient(180deg, rgba(34,197,94,0.22), rgba(34,197,94,0.65), rgba(34,197,94,0.28));
  border-color: rgba(34,197,94,0.40);
}

.hero-terminal__body::-webkit-scrollbar-thumb:active {
  background: rgba(34,197,94,0.75);
}

.hero-terminal__body::-webkit-scrollbar-corner {
  background: transparent;
}

.terminal-ascii-box {
  white-space: pre;
  margin: 0;
  line-height: 1.25;
  color: var(--ufo-green);
}
/* Prompt estable */
.terminal-line--interactive {
  display: inline-flex;
  align-items: baseline;
}

/* Input sin reservar espacio */
.terminal-input {
  display: inline-block;
  min-width: 0;             /* clave: sin hueco fantasma */
  max-width: 72ch;
  min-height: 1em;
  white-space: pre;
  outline: none;
  caret-color: transparent; /* ocultamos caret nativo */
  vertical-align: middle;
  color: inherit;
  font: inherit;
  background: transparent;
  border: 0;
  padding: 0;
  margin: 0;                /* clave: adiós gap */
  -webkit-user-modify: read-write-plaintext-only;
}

/* Cursor bloque REAL pegado al final del texto */
.terminal-input::after {
  content: "█";
  display: inline-block;
  width: 1ch;
  line-height: 1;
  color: rgba(34, 197, 94, .98);
  animation: block-cursor 1000ms steps(1) infinite;
  user-select: none;
  pointer-events: none;
  vertical-align: baseline;
}

/* Si el input está deshabilitado, el cursor se atenúa (opcional) */
.terminal-input[contenteditable="false"]::after {
  opacity: 0.55;
}

/* Cursor DUMMY: existe para el JS, pero no ocupa ni molesta */
.terminal-cursor--block {
  position: absolute;
  width: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  pointer-events: none;
}

/* Animación */
@keyframes block-cursor {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

/* ── featured.css ── */
.featured-section {
  background: linear-gradient(180deg, var(--deep-space) 0%, var(--dark-matter) 100%);
  border-top: 1px solid var(--glass-border);
  position: relative;
  z-index: 1;
}

.featured-header {
  margin-bottom: 2rem;
  display: flex;
  justify-content: center;
}

.featured-header__badge {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.5rem 1.5rem;
  background: rgba(255, 170, 0, 0.1);
  border: 1px solid var(--ufo-amber);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 0.75rem;
  font-weight: 600;
  color: var(--ufo-amber);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  position: relative;
}

.featured-header__pulse {
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: var(--ufo-amber);
  animation: pulse 2s ease-in-out infinite;
  width: 8px;
  height: 8px;
}

.featured-card {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 8px;
  overflow: hidden;
  transition: all var(--transition-slow);
  position: relative;
}

.featured-card:hover {
  border-color: var(--ufo-green);
  box-shadow: 0 0 40px var(--ufo-green-glow);
}

.featured-card__link {
  display: grid;
  grid-template-columns: 1fr 1fr;
  text-decoration: none;
  color: inherit;
}

@media (min-width:768px) {
  .featured-card__link {
    grid-template-columns: 1.2fr 1fr
  }
}

.featured-card__image {
  position: relative;
  min-height: 300px;
  overflow: hidden;
  aspect-ratio: 16/10;
}

@media (min-width:768px) {
  .featured-card__image {
    min-height: 400px
  }
}

.featured-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow);
}

.featured-card:hover .featured-card__image img {
  transform: scale(1.05);
}

.featured-card__placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--ufo-dark) 0%, var(--ufo-medium) 100%);
}

.featured-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(90deg, transparent 50%, rgba(0, 0, 0, 0.8) 100%);
}

.featured-card__corner {
  position: absolute;
  width: 40px;
  height: 40px;
  border-color: var(--ufo-green);
  border-style: solid;
  border-width: 0;
  z-index: 2;
  opacity: 0;
  transition: opacity var(--transition-base);
}

.featured-card__corner::before,
.featured-card__corner::after {
  content: '';
  position: absolute;
  background: rgba(34, 197, 94, 0.5);
}

.featured-card__corner--tl {
  top: 10px;
  left: 10px;
  border-top-width: 2px;
  border-left-width: 2px;
}

.featured-card__corner--tl::before {
  top: 0;
  left: 0;
  width: 20px;
  height: 2px;
}

.featured-card__corner--tl::after {
  top: 0;
  left: 0;
  width: 2px;
  height: 20px;
}

.featured-card__corner--tr {
  top: 10px;
  right: 10px;
  border-top-width: 2px;
  border-right-width: 2px;
}

.featured-card__corner--tr::before {
  top: 0;
  right: 0;
  width: 20px;
  height: 2px;
}

.featured-card__corner--tr::after {
  top: 0;
  right: 0;
  width: 2px;
  height: 20px;
}

.featured-card__corner--bl {
  bottom: 10px;
  left: 10px;
  border-bottom-width: 2px;
  border-left-width: 2px;
}

.featured-card__corner--bl::before {
  bottom: 0;
  left: 0;
  width: 20px;
  height: 2px;
}

.featured-card__corner--bl::after {
  bottom: 0;
  left: 0;
  width: 2px;
  height: 20px;
}

.featured-card__corner--br {
  bottom: 10px;
  right: 10px;
  border-bottom-width: 2px;
  border-right-width: 2px;
}

.featured-card__corner--br::before {
  bottom: 0;
  right: 0;
  width: 20px;
  height: 2px;
}

.featured-card__corner--br::after {
  bottom: 0;
  right: 0;
  width: 2px;
  height: 20px;
}

.featured-card__scan {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: var(--ufo-green);
  animation: scanLine 2s linear infinite;
  opacity: 0;
  transition: opacity var(--transition-base);
}

.featured-card__content {
  padding: 2rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 1rem;
}

@media (min-width:768px) {
  .featured-card__content {
    padding: 40px
  }
}

.featured-card__meta-top {
  display: flex;
  align-items: center;
  gap: 1rem;
  margin-bottom: 16px;
}

.featured-card__cat {
  padding: 0.25rem 0.5rem;
  background: var(--ufo-green);
  border-radius: 2px;
  font-family: var(--font-mono);
  font-size: 0.65rem;
  font-weight: 600;
  color: var(--ufo-black);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.featured-card__id {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  color: var(--text-muted);
  letter-spacing: 0.1em;
}

.featured-card__title {
  font-size: clamp(1.5rem, 3vw, 2rem);
  font-weight: 700;
  color: var(--text-primary);
  line-height: 1.2;
  margin-bottom: 16px;
  transition: color var(--transition-base);
  font-family: var(--font-display);
  margin: 0;
}

.featured-card:hover .featured-card__title {
  color: var(--ufo-green);
}

.featured-card__excerpt {
  font-size: 0.95rem;
  color: var(--text-secondary);
  line-height: 1.6;
  margin-bottom: 20px;
  margin: 0;
}

.featured-card__meta-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-bottom: 24px;
  margin-top: auto;
}

.featured-card__author {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  font-size: 0.85rem;
  color: var(--text-secondary);
}

.featured-card__author img {
  width: 36px;
  height: 36px;
  border-radius: 50%;
  border: 2px solid rgba(255, 255, 255, 0.1);
}

.featured-card__author span {
  font-size: 14px;
  color: var(--text-secondary);
}

.featured-card__stats {
  display: flex;
  align-items: center;
  gap: 1rem;
  font-family: var(--font-mono);
  font-size: 0.75rem;
  color: var(--text-muted);
}

.featured-card__stats span {
  display: flex;
  align-items: center;
  gap: 0.25rem;
  font-size: 13px;
  color: var(--text-muted);
}

.featured-card__stats svg {
  color: var(--ufo-green);
  opacity: 0.6;
}

.featured-card__cta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 14px 24px;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.2), rgba(34, 197, 94, 0.1));
  border: 1px solid rgba(34, 197, 94, 0.4);
  border-radius: 10px;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--ufo-green);
  transition: gap var(--transition-base);
  padding-top: 1rem;
  border-top: 1px solid rgba(255, 255, 255, 0.1);
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.featured-card:hover .featured-card__cta {
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.3), rgba(34, 197, 94, 0.15));
  border-color: var(--ufo-green);
  gap: 1rem;
}

.featured-card__cta svg {
  transition: transform var(--transition-base);
}

.featured-card:hover .featured-card__cta svg {
  transform: translateX(4px);
}

@media (max-width:768px) {
  .featured-card__link {
    grid-template-columns: 1fr
  }
}

.featured-card:hover .featured-card__corner {
  opacity: 0.5;
}

.featured-card:hover .featured-card__scan {
  opacity: 0.5;
}

/* ── posts.css ── */
.post-card__inner {
  background: linear-gradient(135deg, rgba(255, 255, 255, 0.08), rgba(255, 255, 255, 0.05));
  transition: all var(--transition-base);
}

.post-card:hover .post-card__inner {
  box-shadow: var(--shadow-glow-green);
}

.post-card__content {
  background: var(--dark-matter);
  min-height: 175px;
  padding: 1rem;
}

.posts-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 1rem;
  margin-bottom: 2rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.1);
}

.posts-header__title {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.posts-header__dot {
  position: relative;
  width: 8px;
  height: 8px;
  background: var(--ufo-green);
  border-radius: 50%;
  animation: pulse 2s ease-in-out infinite;
}

.posts-header__dot::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--ufo-green);
  border-radius: 50%;
  animation: dot-ping 2s ease-out infinite;
}

.posts-header__dot::after {
  content: '';
  position: absolute;
  inset: 2px;
  background: var(--ufo-green);
  border-radius: 50%;
}

.posts-header__title h2 {
  font-family: var(--font-display);
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--text-primary);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin: 0;
}

.posts-header__info {
  font-family: var(--font-mono);
  font-size: 0.75rem;
  color: var(--text-muted);
  letter-spacing: 0.05em;
}

.posts-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
  gap: 2rem;
}

@media (min-width:640px) {
  .posts-grid {
    grid-template-columns: repeat(2, 1fr)
  }
}

.post-card {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 6px;
  overflow: hidden;
  transition: all var(--transition-base);
  position: relative;
}

.post-card:hover {
  border-color: rgba(0, 255, 136, 0.3);
  transform: translateY(-4px);
  box-shadow: 0 20px 40px rgba(0, 0, 0, 0.3);
}

.post-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

.post-card__image {
  position: relative;
  height: 180px;
  overflow: hidden;
  aspect-ratio: 16/10;
}

.post-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform var(--transition-slow);
}

.post-card:hover .post-card__image img {
  transform: scale(1.1);
}

.post-card__placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--ufo-dark) 0%, var(--ufo-medium) 100%);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-muted);
}

.post-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 50%, rgba(0, 0, 0, 0.8) 100%);
}

.post-card__meta-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  margin-bottom: 0.5rem;
}

.post-card__cat {
  padding: 4px 10px;
  background: rgba(34, 197, 94, 0.15);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 0.65rem;
  color: var(--ufo-green);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  font-weight: 600;
}

.post-card__id {
  font-family: var(--font-mono);
  font-size: 0.65rem;
  color: var(--text-muted);
  letter-spacing: 0.05em;
}

.post-card__title {
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.3;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color var(--transition-base);
  font-family: var(--font-display);
  margin: 0 0 1rem;
}

.post-card:hover .post-card__title {
  color: var(--ufo-green);
}

.post-card__meta-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 0.7rem;
  color: var(--text-muted);
  padding-top: 0.5rem;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  font-family: var(--font-mono);
}

.posts-pagination {
  margin-top: 3rem;
  display: flex;
  justify-content: center;
}

.posts-pagination ul {
  display: flex;
  align-items: center;
  gap: 8px;
  list-style: none;
  padding: 0;
  margin: 0;
}

.posts-pagination li a,
.posts-pagination li span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 14px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  font-family: var(--font-mono);
  font-size: 14px;
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.posts-pagination li a:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
}

.posts-pagination li span.current {
  background: rgba(34, 197, 94, 0.15);
  border-color: rgba(34, 197, 94, 0.4);
  color: var(--ufo-green);
}

.posts-pagination .page-numbers {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  list-style: none;
  margin: 0;
  padding: 0;
}

.posts-pagination .page-numbers li a,
.posts-pagination .page-numbers li span {
  display: flex;
  align-items: center;
  justify-content: center;
  min-width: 40px;
  height: 40px;
  padding: 0 0.75rem;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 0.8rem;
  color: var(--text-secondary);
  text-decoration: none;
  transition: all var(--transition-base);
}

.posts-pagination .page-numbers li a:hover {
  border-color: var(--ufo-green);
  color: var(--ufo-green);
}

.posts-pagination .page-numbers li .current {
  background: var(--ufo-green);
  border-color: var(--ufo-green);
  color: var(--ufo-black);
}

/* ── single.css ── */
.post-hero {
  position: relative;
  background: var(--deep-space);
}

.post-hero__scanline {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.6), transparent);
  animation: hero-scan 4s ease-in-out infinite;
}

.post-hero__title {
  text-shadow: 0 4px 30px rgba(0, 0, 0, 0.5);
}

.post-content {
  font-size: 1.125rem;
  line-height: 1.8;
  color: var(--text-secondary);
}

.post-content h2 {
  font-size: 1.75rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-top: 3rem;
  margin-bottom: 1.5rem;
  padding-left: 1rem;
  border-left: 3px solid var(--ufo-green);
}

.post-content h3 {
  font-size: 1.375rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-top: 2.5rem;
  margin-bottom: 1rem;
}

.post-content h4 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-top: 2rem;
  margin-bottom: 0.75rem;
}

.post-content p {
  margin-bottom: 1.5rem;
}

.post-content a {
  color: var(--ufo-green);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color var(--transition-base);
}

.post-content a:hover {
  color: var(--ufo-green-bright);
}

.post-content ul,
.post-content ol {
  margin-bottom: 1.5rem;
  padding-left: 1.5rem;
}

.post-content li {
  margin-bottom: 0.5rem;
}

.post-content ul li::marker {
  color: var(--ufo-green);
}

.post-content blockquote {
  margin: 2rem 0;
  padding: 1.5rem 2rem;
  background: rgba(34, 197, 94, 0.05);
  border-left: 4px solid var(--ufo-green);
  border-radius: 0 12px 12px 0;
  font-style: italic;
  color: var(--text-secondary);
}

.post-content pre {
  margin: 2rem 0;
  padding: 1.5rem;
  background: rgba(0, 0, 0, 0.5);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  overflow-x: auto;
  font-family: var(--font-mono);
  font-size: 0.875rem;
}

.post-content code {
  font-family: var(--font-mono);
  font-size: 0.9em;
  padding: 0.2em 0.4em;
  background: rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  color: var(--ufo-green);
}

.post-content pre code {
  padding: 0;
  background: none;
}

.post-content img {
  border-radius: 12px;
  margin: 2rem 0;
}

.post-content figure {
  margin: 2rem 0;
}

.post-content figcaption {
  text-align: center;
  font-size: 0.875rem;
  color: var(--text-muted);
  margin-top: 0.75rem;
}

.author-box {
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  overflow: hidden;
}

.author-box__header {
  padding: 12px 20px;
  background: rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid var(--glass-border);
}

.author-box__label {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.author-box__content {
  display: flex;
  gap: 20px;
  padding: 24px;
}

.author-box__avatar-link {
  position: relative;
  flex-shrink: 0;
}

.author-box__avatar {
  width: 80px;
  height: 80px;
  border-radius: 16px;
  border: 2px solid var(--glass-border);
  transition: border-color var(--transition-base);
}

.author-box__avatar-link:hover .author-box__avatar {
  border-color: var(--ufo-green);
}

.author-box__status {
  position: absolute;
  bottom: -4px;
  right: -4px;
  width: 20px;
  height: 20px;
  background: var(--ufo-green);
  border: 3px solid var(--dark-matter);
  border-radius: 50%;
}

.author-box__info {
  flex: 1;
}

.author-box__name {
  display: block;
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 8px;
  transition: color var(--transition-base);
}

.author-box__name:hover {
  color: var(--ufo-green);
}

.author-box__bio {
  font-size: 0.9375rem;
  color: var(--text-muted);
  line-height: 1.6;
  margin-bottom: 12px;
}

.author-box__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-size: 0.875rem;
  color: var(--ufo-green);
  transition: gap var(--transition-base);
}

.author-box__link:hover {
  gap: 10px;
}

.post-nav__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}

@media (max-width:640px) {
  .post-nav__grid {
    grid-template-columns: 1fr
  }
}

.post-nav__item {
  display: flex;
  flex-direction: column;
  gap: 8px;
  padding: 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  transition: all var(--transition-base);
}

.post-nav__item:hover {
  border-color: var(--glass-border-hover);
  background: rgba(34, 197, 94, 0.05);
}

.post-nav__item--next {
  text-align: right;
}

.post-nav__direction {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  font-family: var(--font-mono);
  color: var(--ufo-green);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.post-nav__item--next .post-nav__direction {
  justify-content: flex-end;
}

.post-nav__title {
  font-size: 15px;
  font-weight: 500;
  color: var(--text-primary);
  line-height: 1.4;
  display: block;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}

.reading-progress {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 3px;
  z-index: 9999;
  background: #090d13;
}

.reading-progress__bar {
  height: 100%;
  width: 0;
  background: linear-gradient(90deg, var(--ufo-green), var(--ufo-green-bright));
  transition: width 0.1s linear;
  position: relative;
}

.reading-progress__bar::after {
  content: '';
  position: absolute;
  right: 0;
  top: -2px;
  bottom: -2px;
  width: 80px;
  background: linear-gradient(90deg, transparent, var(--ufo-green));
  filter: blur(4px);
}

.expedition-hero {
  position: relative;
  min-height: 85vh;
  display: flex;
  flex-direction: column;
  justify-content: flex-end;
  overflow: hidden;
}

.expedition-hero__bg {
  position: absolute;
  inset: 0;
}

.expedition-hero__img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.expedition-hero__gradient {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(5, 5, 8, 1) 0%, rgba(5, 5, 8, 0.95) 15%, rgb(5 5 8 / 90%) 40%, rgb(5 5 8 / 70%) 70%, rgb(5 5 8 / 75%) 100%);
}

.expedition-hero__noise {
  position: absolute;
  inset: 0;
  opacity: 0.04;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 200 200' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
}

.expedition-hero__grid {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(34, 197, 94, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(34, 197, 94, 0.03) 1px, transparent 1px);
  background-size: 60px 60px;
}

.expedition-hero__vignette {
  position: absolute;
  inset: 0;
  box-shadow: inset 0 0 200px 100px rgba(0, 0, 0, 0.4);
}

.expedition-hero__scan {
  position: absolute;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.5), transparent);
  animation: hero-scan-move 5s ease-in-out infinite;
}

.expedition-hero__flare {
  position: absolute;
  top: 20%;
  left: 10%;
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, rgba(34, 197, 94, 0.15), transparent 70%);
  filter: blur(60px);
  animation: flare-pulse 8s ease-in-out infinite;
}

.expedition-hero__content {
  position: relative;
  z-index: 10;
  padding: 40px 0 60px;
}

.expedition-hero__topbar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 40px;
}

.classification-strip {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 30px;
}

.classification-strip__line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.3), transparent);
}

.classification-strip__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
}

.exp-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
}

.exp-badge--green {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.4);
  color: var(--ufo-green);
}

.exp-badge--cyan {
  background: rgba(6, 182, 212, 0.15);
  border: 1px solid rgba(6, 182, 212, 0.4);
  color: #06b6d4;
}

.exp-badge--amber {
  background: rgba(245, 158, 11, 0.15);
  border: 1px solid rgba(245, 158, 11, 0.4);
  color: #f59e0b;
}

.exp-badge--red {
  background: rgba(239, 68, 68, 0.15);
  border: 1px solid rgba(239, 68, 68, 0.4);
  color: #ef4444;
}

.exp-badge--purple {
  background: rgba(168, 85, 247, 0.15);
  border: 1px solid rgba(168, 85, 247, 0.4);
  color: #a855f7;
}

.exp-badge--mono {
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid var(--glass-border);
  color: var(--text-muted);
}

.exp-badge--sector {
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.exp-badge--sector:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
}

.exp-badge__pulse {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: currentColor;
  box-shadow: 0 0 8px currentColor;
  animation: pulse-glow 2s ease-in-out infinite;
}

.exp-badge__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--ufo-green);
  opacity: 0.7;
}

.expedition-hero__title {
  font-size: clamp(2rem, 6vw, 4rem);
  font-weight: 800;
  color: var(--text-primary);
  line-height: 1.1;
  max-width: 900px;
  margin-bottom: 20px;
  text-shadow: 0 4px 30px rgba(0, 0, 0, 0.5);
}

.expedition-hero__excerpt {
  font-size: 1.25rem;
  color: var(--text-secondary);
  max-width: 700px;
  line-height: 1.6;
  margin-bottom: 30px;
}

.expedition-hero__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 24px;
}

.author-chip {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 10px 16px 10px 10px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 50px;
  transition: all var(--transition-base);
}

.author-chip:hover {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.3);
}

.author-chip__avatar {
  position: relative;
  width: 44px;
  height: 44px;
}

.author-chip__avatar img {
  width: 100%;
  height: 100%;
  border-radius: 50%;
  object-fit: cover;
}

.author-chip__status {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 12px;
  height: 12px;
  background: var(--ufo-green);
  border: 2px solid var(--deep-space);
  border-radius: 50%;
}

.author-chip__info {
  display: flex;
  flex-direction: column;
}

.author-chip__role {
  font-size: 11px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.author-chip__name {
  font-size: 14px;
  font-weight: 600;
  color: var(--text-primary);
}

.scroll-beacon {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 12px;
  margin-top: 50px;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity var(--transition-base);
}

.scroll-beacon:hover {
  opacity: 1;
}

.scroll-beacon__line {
  width: 1px;
  height: 40px;
  background: linear-gradient(to bottom, var(--ufo-green), transparent);
}

.scroll-beacon__icon {
  color: var(--ufo-green);
  animation: bounce-down 2s ease-in-out infinite;
}

.scroll-beacon__text {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.expedition-body {
  background: var(--deep-space);
}

.expedition-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 40px;
}

@media (min-width:1024px) {
  .expedition-layout {
    grid-template-columns: 1fr 320px;
    gap: 50px
  }
}

.quick-info-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding: 16px 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  margin-bottom: 40px;
}

.quick-info-bar__item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.quick-info-bar__label {
  font-size: 10px;
  color: var(--text-dim);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.quick-info-bar__value {
  font-size: 13px;
  color: var(--text-primary);
  font-weight: 500;
}

.quick-info-bar__value--active {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--ufo-green);
}

.quick-info-bar__divider {
  width: 1px;
  height: 30px;
  background: var(--glass-border);
}

.prose-content {
  font-size: 1.2rem;
  line-height: 1.9;
  color: rgba(200, 205, 220, 0.92);
  letter-spacing: 0.005em;
}

.prose-content>*:first-child {
  margin-top: 0;
}

.prose-content h2 {
  font-size: clamp(1.65rem, 2.8vw, 2.25rem);
  font-weight: 800;
  color: var(--bufo-text);
  margin-top: 3.5rem;
  margin-bottom: 1.75rem;
  padding-left: 1.5rem;
  padding-top: 1rem;
  padding-bottom: 0;
  border-left: none;
  border-bottom: none;
  position: relative;
  letter-spacing: -0.02em;
  line-height: 1.25;
}

.prose-content h2::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--bufo-green), rgba(34, 197, 94, 0.3));
  border-radius: 4px;
  box-shadow: 0 0 14px rgba(34, 197, 94, 0.4), 0 0 28px rgba(34, 197, 94, 0.15);
}

.prose-content h2::after {
  content: "SEC //";
  position: absolute;
  right: 0;
  top: 0.5em;
  font-family: var(--bufo-mono);
  font-size: 0.6rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.25);
  pointer-events: none;
}

.prose-content h3 {
  font-size: clamp(1.3rem, 2.2vw, 1.65rem);
  font-weight: 700;
  color: var(--bufo-text);
  margin-top: 2.75rem;
  margin-bottom: 1.25rem;
  padding-left: 1.25rem;
  position: relative;
  letter-spacing: -0.01em;
}

.prose-content h3::before {
  content: "▸";
  position: absolute;
  left: 0;
  top: 0.05em;
  font-size: 1.1rem;
  color: var(--bufo-green);
  text-shadow: 0 0 10px rgba(34, 197, 94, 0.5);
}

.prose-content h4 {
  font-size: clamp(1.1rem, 1.8vw, 1.35rem);
  font-weight: 600;
  color: rgba(245, 247, 255, 0.88);
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-left: 1rem;
  position: relative;
}

.prose-content h4::before {
  content: "//";
  position: absolute;
  left: 0;
  top: 0;
  font-family: var(--bufo-mono);
  font-size: 0.85em;
  color: rgba(34, 197, 94, 0.45);
  font-weight: 700;
}

.prose-content p {
  margin-bottom: 1.65rem;
}

.prose-content a {
  color: var(--ufo-green);
  text-decoration: underline;
  text-underline-offset: 3px;
  transition: color var(--transition-base);
}

.prose-content a:hover {
  color: var(--ufo-green-bright);
}

.prose-content ul,
.prose-content ol {
  margin-bottom: 1.5rem;
  padding-left: 1.5rem;
}

.prose-content li {
  margin-bottom: 0.5rem;
}

.prose-content ul li::marker {
  color: var(--ufo-green);
}

.prose-content blockquote {
  position: relative;
  margin: 2.5rem 0;
  padding: 2rem 2rem 1.75rem 2.25rem;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.04) 0%, rgba(0, 0, 0, 0.35) 40%, rgba(0, 0, 0, 0.42) 100%);
  border: 1px solid rgba(34, 197, 94, 0.15);
  border-left: 3px solid var(--bufo-green);
  border-radius: 2px 12px 12px 2px;
  font-style: normal;
  overflow: hidden;
  box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.05) inset, -4px 0 20px rgba(34, 197, 94, 0.06), 0 16px 48px rgba(0, 0, 0, 0.35);
}

.prose-content pre {
  margin: 2rem 0;
  padding: 1.5rem;
  background: rgba(0, 0, 0, 0.5);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  overflow-x: auto;
  font-family: var(--font-mono);
  font-size: 0.875rem;
}

.prose-content code {
  font-family: var(--font-mono);
  font-size: 0.9em;
  padding: 0.2em 0.4em;
  background: rgba(0, 0, 0, 0.3);
  border-radius: 4px;
  color: var(--ufo-green);
}

.prose-content pre code {
  padding: 0;
  background: none;
}

.prose-content img {
  border-radius: 16px;
  margin: 2.5rem 0;
}

.prose-content figure {
  margin: 2.5rem 0;
}

.prose-content figcaption {
  text-align: center;
  font-size: 0.875rem;
  color: var(--text-muted);
  margin-top: 0.75rem;
}

.author-card {
  position: relative;
  margin-top: 3rem;
  padding: 2px;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.3), transparent 50%, rgba(34, 197, 94, 0.1));
  border-radius: 20px;
  overflow: hidden;
}

.author-card__glow {
  position: absolute;
  top: -50%;
  left: -50%;
  width: 200%;
  height: 200%;
  background: conic-gradient(from 0deg, transparent, rgba(34, 197, 94, 0.1), transparent 30%);
  animation: rotate-glow 8s linear infinite;
}

.author-card__content {
  position: relative;
  display: flex;
  gap: 24px;
  padding: 28px;
  background: var(--dark-matter);
  border-radius: 18px;
}

@media (max-width:640px) {
  .author-card__content {
    flex-direction: column;
    align-items: center;
    text-align: center
  }
}

.author-card__avatar {
  position: relative;
  flex-shrink: 0;
  height: 128px;
}

.author-card__avatar img {
  border-radius: 20px;
  object-fit: cover;
}

.author-card__ring {
  position: absolute;
  inset: -4px;
  border: 2px solid var(--ufo-green);
  border-radius: 24px;
  opacity: 0.3;
}

.author-card__info {
  flex: 1;
}

.author-card__label {
  display: block;
  font-size: 11px;
  color: var(--text-dim);
  text-transform: uppercase;
  letter-spacing: 1px;
  margin-bottom: 6px;
}

.author-card__name {
  display: block;
  font-size: 1.375rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 10px;
  transition: color var(--transition-base);
}

.author-card__name:hover {
  color: var(--ufo-green);
}

.author-card__bio {
  font-size: 0.9375rem;
  color: var(--text-muted);
  line-height: 1.6;
  margin-bottom: 14px;
}

.author-card__link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--ufo-green);
  transition: gap var(--transition-base);
}

.author-card__link:hover {
  gap: 12px;
}

.post-nav {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
  margin-top: 3rem;
}

@media (max-width:640px) {
  .post-nav {
    grid-template-columns: 1fr
  }
}

.post-nav__link {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 14px;
  transition: all var(--transition-base);
  min-width: 0;
}

.post-nav__link:hover {
  border-color: var(--glass-border-hover);
  background: rgba(34, 197, 94, 0.05);
}

.post-nav__link--next {
  text-align: right;
  flex-direction: row-reverse;
}

.post-nav__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: rgba(34, 197, 94, 0.1);
  border-radius: 10px;
  color: var(--ufo-green);
  flex-shrink: 0;
}

.post-nav__text {
  flex: 1;
  min-width: 0;
}

.post-nav__label {
  display: block;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--ufo-green);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 6px;
}

.expedition-sidebar {
  display: flex;
  flex-direction: column;
  gap: 20px;
}

@media (min-width:1024px) {
  .expedition-sidebar {
    position: sticky;
    top: 100px;
    align-self: flex-start
  }
}

.prose-content--page {
  font-size: 1.0625rem;
}

.expedition-body, .archive-body {
  background-color: transparent;
 
}
    /* =========================================================================
       BUFO: Personalidades Dossier Revamp
       Self-contained styles for quick iteration.
       Once approved, move into style.css.
       ========================================================================= */

    .bufo-persona-wrap { position: relative; }
    .bufo-persona-hero {
      position: relative;
      padding: clamp(24px, 4vw, 48px) 0 0;
    }

    /* The dossier sheet */
    .bufo-dossier {
      position: relative;
      border-radius: 26px;
      border: 1px solid rgba(255,255,255,.10);
      background:
        linear-gradient(180deg, rgba(255,255,255,.06), rgba(255,255,255,.03)),
        radial-gradient(1200px 500px at 10% 0%, rgba(0,255,65,.10), rgba(0,0,0,0) 60%),
        radial-gradient(900px 420px at 100% 30%, rgba(167,177,194,.08), rgba(0,0,0,0) 55%),
        rgba(6,7,9,.72);
      box-shadow:
        0 22px 90px rgba(0,0,0,.55),
        0 0 0 1px rgba(0,255,65,.10) inset;
      overflow: hidden;
      isolation: isolate;
    }

    /* Paper grain + scanlines */
    .bufo-dossier::before {
      content: "";
      position: absolute;
      inset: 0;
      background:
        repeating-linear-gradient(
          180deg,
          rgba(255,255,255,.00),
          rgba(255,255,255,.00) 2px,
          rgba(255,255,255,.02) 3px
        );
      opacity: .55;
      mix-blend-mode: overlay;
      pointer-events: none;
    }
    .bufo-dossier::after {
      content: "";
      position: absolute;
      inset: -2px;
      background:
        radial-gradient(70% 40% at 30% 0%, rgba(0,255,65,.16), rgba(0,0,0,0) 55%),
        radial-gradient(40% 45% at 85% 85%, rgba(0,255,65,.10), rgba(0,0,0,0) 65%);
      opacity: .9;
      pointer-events: none;
    }

    /* Header strip like a folder tab */
    .bufo-dossier__tab {
      display: flex;
      align-items: center;
      justify-content: space-between;
      gap: 14px;
      padding: 16px 18px;
      border-bottom: 1px solid rgba(255,255,255,.10);
      background:
        linear-gradient(180deg, rgba(0,0,0,.55), rgba(0,0,0,.20)),
        rgba(0,255,65,.06);
      position: relative;
      z-index: 2;
    }
    .bufo-dossier__tab-left {
      display: flex;
      align-items: center;
      gap: 12px;
      min-width: 0;
    }
    .bufo-chip {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: var(--bufo-mono);
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      padding: 8px 10px;
      border-radius: 999px;
      border: 1px solid rgba(0,255,65,.22);
      background: rgba(0,0,0,.35);
      color: rgba(230,236,246,.92);
      box-shadow: 0 0 0 1px rgba(0,255,65,.06) inset;
      white-space: nowrap;
    }
    .bufo-chip__dot {
      width: 8px;
      height: 8px;
      border-radius: 999px;
      background: rgba(0,255,65,.75);
      box-shadow: 0 0 0 4px rgba(0,255,65,.12);
    }
    .bufo-tab-meta {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
      justify-content: flex-end;
    }

    .bufo-tab-meta a,
    .bufo-tab-meta span {
      font-family: var(--bufo-mono);
      font-size: 12px;
      letter-spacing: .08em;
      color: rgba(167,177,194,.92);
      text-transform: uppercase;
      padding: 6px 10px;
      border-radius: 12px;
      border: 1px solid rgba(255,255,255,.08);
      background: rgba(0,0,0,.22);
    }
    .bufo-tab-meta a:hover { color: rgba(230,236,246,.95); border-color: rgba(0,255,65,.22); }

    /* Main sheet grid */
    .bufo-dossier__body {
      position: relative;
      z-index: 2;
      padding: clamp(16px, 2.5vw, 26px);
    }

    .bufo-dossier__grid {
      display: grid;
      grid-template-columns: 340px 1fr;
      gap: clamp(16px, 2.6vw, 26px);
      align-items: start;
    }

    @media (max-width: 980px) {
      .bufo-dossier__grid { grid-template-columns: 1fr; }
    }

    /* Polaroid */
    .bufo-polaroid {
      position: relative;
      width: min(340px, 100%);
      margin: 0 auto;
      transform: rotate(-3.3deg);
      filter: drop-shadow(0 18px 60px rgba(0,0,0,.55));
    }
    .bufo-polaroid::before,
    .bufo-polaroid::after {
      content: "";
      position: absolute;
      top: -10px;
      width: 86px;
      height: 26px;
      background: rgba(255,255,255,.13);
      border: 1px solid rgba(255,255,255,.12);
      box-shadow: 0 14px 36px rgba(0,0,0,.40);
      transform: rotate(6deg);
      opacity: .85;
    }
    .bufo-polaroid::before { left: 14px; }
    .bufo-polaroid::after  { right: 16px; transform: rotate(-7deg); }

    .bufo-polaroid__frame {
      background:
        linear-gradient(180deg, rgba(255,255,255,.10), rgba(255,255,255,.06)),
        rgba(12,13,15,.86);
      border: 1px solid rgba(255,255,255,.12);
      border-radius: 18px;
      padding: 14px;
      position: relative;
      overflow: hidden;
    }

    .bufo-polaroid__photo {
      border-radius: 14px;
      overflow: hidden;
      position: relative;
      aspect-ratio: 3 / 4;
      border: 1px solid rgba(255,255,255,.10);
      background: rgba(0,0,0,.35);
    }
    .bufo-polaroid__photo img {
      width: 100%;
      height: 100%;
      object-fit: cover;
      filter: contrast(1.08) saturate(0.92);
    }
    .bufo-polaroid__photo::after {
      content: "";
      position: absolute;
      inset: 0;
      background:
        radial-gradient(80% 60% at 30% 25%, rgba(255,255,255,.18), rgba(0,0,0,0) 60%),
        linear-gradient(180deg, rgba(0,0,0,.00), rgba(0,0,0,.28));
      pointer-events: none;
    }
    .bufo-polaroid__caption {
      margin-top: 12px;
      display: flex;
      align-items: baseline;
      justify-content: space-between;
      gap: 10px;
      font-family: var(--bufo-mono);
      color: rgba(230,236,246,.92);
    }
    .bufo-polaroid__caption strong {
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      opacity: .8;
      white-space: nowrap;
    }
    .bufo-polaroid__caption span {
      font-size: 13px;
      letter-spacing: .06em;
      opacity: .9;
      text-align: right;
    }

    /* Headline + stamps */
    .bufo-persona-head { min-width: 0; }

    .bufo-persona-kicker {
      font-family: var(--bufo-mono);
      letter-spacing: .28em;
      text-transform: uppercase;
      font-size: 12px;
      color: rgba(167,177,194,.92);
      margin-bottom: 10px;
      display: inline-flex;
      align-items: center;
      gap: 10px;
    }
    .bufo-persona-kicker i {
      display: inline-block;
      width: 10px;
      height: 10px;
      border-radius: 999px;
      background: rgba(0,255,65,.75);
      box-shadow: 0 0 0 4px rgba(0,255,65,.12);
    }

    .bufo-persona-name {
      font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, sans-serif;
      font-weight: 800;
      letter-spacing: -0.02em;
      line-height: 1.02;
      font-size: clamp(36px, 5vw, 62px);
      color: rgba(230,236,246,.98);
      margin: 0 0 14px;
      text-shadow: 0 22px 80px rgba(0,0,0,.55);
    }

    .bufo-persona-summary {
      font-size: 16px;
      line-height: 1.7;
      color: rgba(167,177,194,.95);
      margin: 0 0 18px;
      max-width: 70ch;
    }

    .bufo-stamps {
      display: flex;
      align-items: center;
      gap: 10px;
      flex-wrap: wrap;
      margin-top: 10px;
    }
    .bufo-stamp {
      display: inline-flex;
      align-items: center;
      gap: 8px;
      font-family: var(--bufo-mono);
      font-size: 12px;
      letter-spacing: .14em;
      text-transform: uppercase;
      padding: 8px 12px;
      border-radius: 14px;
      border: 1px dashed rgba(255,255,255,.18);
      background: rgba(0,0,0,.28);
      color: rgba(230,236,246,.92);
    }
    .bufo-stamp--conf {
      border-color: rgba(255, 72, 72, .35);
      color: rgba(255, 210, 210, .95);
      background: rgba(255, 72, 72, .08);
      transform: rotate(-1.4deg);
    }
    .bufo-stamp--green {
      border-color: rgba(0,255,65,.28);
      background: rgba(0,255,65,.06);
      transform: rotate(1.1deg);
    }

    /* Data table like a dossier */
    .bufo-data {
      margin-top: 18px;
      border-radius: 20px;
      border: 1px solid rgba(255,255,255,.10);
      background: rgba(0,0,0,.24);
      overflow: hidden;
    }
    .bufo-data__row {
      display: grid;
      grid-template-columns: 210px 1fr;
      gap: 12px;
      padding: 12px 14px;
      border-top: 1px solid rgba(255,255,255,.08);
    }
    .bufo-data__row:first-child { border-top: 0; }
    @media (max-width: 520px) {
      .bufo-data__row { grid-template-columns: 1fr; }
    }

    .bufo-data__label {
      font-family: var(--bufo-mono);
      font-size: 12px;
      letter-spacing: .18em;
      text-transform: uppercase;
      color: rgba(167,177,194,.85);
    }
    .bufo-data__value {
      font-size: 14px;
      line-height: 1.6;
      color: rgba(230,236,246,.92);
      word-break: break-word;
    }
    .bufo-data__value strong { color: rgba(0,255,65,.88); font-weight: 700; }

    .bufo-inline-badges {
      display: flex;
      flex-wrap: wrap;
      gap: 10px;
      margin: 6px 0 0;
    }

    /* Replace the old "hero" spacing a bit */
    .expedition-body { padding-top: 22px; }

    /* Make the post content look more "report" and less "blog post" */
    .single-expedition--personalidad .prose-content {
      position: relative;
      padding: 26px 22px;
      border-radius: 22px;
      border: 1px solid rgba(255,255,255,.10);
      background:
        linear-gradient(180deg, rgba(255,255,255,.05), rgba(255,255,255,.02)),
        rgba(0,0,0,.22);
      box-shadow: 0 18px 60px rgba(0,0,0,.45);
    }
    .single-expedition--personalidad .prose-content::before {
      content: "";
      position: absolute;
      inset: 0;
      border-radius: 22px;
      background: radial-gradient(70% 40% at 10% 0%, rgba(0,255,65,.10), rgba(0,0,0,0) 60%);
      pointer-events: none;
    }

    /* Tighten right sidebar a hair */
    .single-expedition--personalidad .expedition-sidebar { margin-top: 10px; }

/* ═══════════════════════════════════════════════════════════════════════
   SINGLE v3.0 — OSINT Dossier Components
   Intelligence panels, relationship network, evidence, verification
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Operational briefing (hero) ─── */
.dossier-briefing {
  display: flex;
  gap: 14px;
  margin: 1.5rem 0 0.5rem;
  padding: 16px 20px;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.06), rgba(34, 197, 94, 0.02));
  border: 1px solid rgba(34, 197, 94, 0.15);
  border-left: 3px solid var(--bufo-green);
  border-radius: var(--bufo-radius-sm);
}
.dossier-briefing__icon {
  flex-shrink: 0;
  margin-top: 2px;
  color: var(--bufo-green);
  opacity: 0.8;
}
.dossier-briefing__label {
  display: block;
  font-family: var(--bufo-mono);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  color: var(--bufo-green);
  margin-bottom: 6px;
}
.dossier-briefing__body p {
  margin: 0;
  font-size: 0.925rem;
  line-height: 1.65;
  color: var(--bufo-text-2);
}

/* ── OSINT verification badge (hero) ─── */
.dossier-verif {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: 10px;
  margin-top: 1rem;
}
.dossier-verif__badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 14px;
  font-family: var(--bufo-mono);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  border-radius: 6px;
  border: 1px solid;
}
.dossier-verif__badge--green { color: #22c55e; border-color: rgba(34,197,94,0.3); background: rgba(34,197,94,0.08); }
.dossier-verif__badge--cyan  { color: #22d3ee; border-color: rgba(34,211,238,0.3); background: rgba(34,211,238,0.08); }
.dossier-verif__badge--amber { color: #fbbf24; border-color: rgba(251,191,36,0.3); background: rgba(251,191,36,0.08); }
.dossier-verif__badge--red   { color: #ef4444; border-color: rgba(239,68,68,0.3);  background: rgba(239,68,68,0.08); }
.dossier-verif__source {
  font-family: var(--bufo-mono);
  font-size: 0.7rem;
  color: var(--bufo-text-4);
}

/* ── Intel panel (shared base) ─── */
.intel-panel {
  margin: 2.5rem 0;
  padding: 28px;
  background: linear-gradient(145deg, rgba(10, 14, 20, 0.85), rgba(17, 24, 32, 0.65));
  border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius);
  position: relative;
  overflow: hidden;
}
.intel-panel::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.35), transparent);
}
.intel-panel__header {
  display: flex;
  align-items: center;
  gap: 12px;
  margin-bottom: 24px;
  padding-bottom: 16px;
  border-bottom: 1px solid var(--bufo-line);
}
.intel-panel__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  border-radius: 10px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.2);
  color: var(--bufo-green);
  flex-shrink: 0;
}
.intel-panel__header h3 {
  font-family: var(--bufo-mono);
  font-size: 0.8rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: var(--bufo-text-2);
  text-transform: uppercase;
  margin: 0;
}

/* ── Intel panel grid ─── */
.intel-panel__grid {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 20px;
}
.intel-panel__field--wide {
  grid-column: 1 / -1;
}
.intel-panel__label {
  display: block;
  font-family: var(--bufo-mono);
  font-size: 0.625rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bufo-text-4);
  margin-bottom: 6px;
}
.intel-panel__value {
  font-size: 0.875rem;
  color: var(--bufo-text);
}
.intel-panel__value--green { color: #22c55e; }
.intel-panel__value--cyan  { color: #22d3ee; }
.intel-panel__value--amber { color: #fbbf24; }
.intel-panel__value--red   { color: #ef4444; }
.intel-panel__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--bufo-mono);
  font-size: 0.8rem;
  color: var(--bufo-green);
  text-decoration: none;
  word-break: break-all;
  transition: opacity var(--bufo-ease-fast);
}
.intel-panel__link:hover { opacity: 0.75; }
.intel-panel__text {
  font-size: 0.85rem;
  line-height: 1.7;
  color: var(--bufo-text-3);
  margin: 0;
}
.intel-panel__text--note {
  padding: 10px 14px;
  background: rgba(251, 191, 36, 0.05);
  border-left: 2px solid rgba(251, 191, 36, 0.3);
  border-radius: 0 6px 6px 0;
  font-style: italic;
}
.intel-panel__hash {
  display: block;
  font-family: var(--bufo-mono);
  font-size: 0.7rem;
  color: var(--bufo-text-3);
  background: rgba(0, 0, 0, 0.3);
  padding: 8px 12px;
  border-radius: 6px;
  word-break: break-all;
  border: 1px solid var(--bufo-line);
}

@media (max-width: 640px) {
  .intel-panel { padding: 20px; }
  .intel-panel__grid { grid-template-columns: 1fr; }
}

/* ── v4.0.0: Spacing for standalone fields outside the grid ─── */
/* Fixes: fuente primaria / custody / hash blocks running together */
.intel-panel > .intel-panel__field + .intel-panel__field {
  margin-top: 20px;
  padding-top: 16px;
  border-top: 1px solid var(--bufo-line);
}
.intel-panel > .intel-panel__grid + .intel-panel__field {
  margin-top: 24px;
  padding-top: 20px;
  border-top: 1px solid var(--bufo-line);
}
.intel-panel > .intel-panel__field .intel-panel__label {
  margin-bottom: 10px;
}
.intel-panel > .intel-panel__field .intel-panel__link {
  display: inline-flex;
  margin-top: 4px;
  padding: 6px 14px;
  background: rgba(34, 197, 94, 0.04);
  border: 1px solid rgba(34, 197, 94, 0.1);
  border-radius: 6px;
}
.intel-panel > .intel-panel__field .intel-panel__link:hover {
  background: rgba(34, 197, 94, 0.08);
  border-color: rgba(34, 197, 94, 0.25);
}
.intel-panel .intel-panel__hash {
  margin-top: 6px;
}

/* ── Evidence panel ─── */
.intel-panel--evidence::before {
  background: linear-gradient(90deg, transparent, rgba(34, 211, 238, 0.35), transparent);
}
.intel-panel--evidence .intel-panel__icon {
  background: rgba(34, 211, 238, 0.1);
  border-color: rgba(34, 211, 238, 0.2);
  color: var(--bufo-cyan);
}
.intel-panel__evidence-grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(220px, 1fr));
  gap: 16px;
}
.evidence-card {
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-sm);
  overflow: hidden;
  transition: border-color var(--bufo-ease);
}
.evidence-card:hover {
  border-color: rgba(34, 211, 238, 0.3);
}
.evidence-card__preview {
  aspect-ratio: 16 / 10;
  background: rgba(0, 0, 0, 0.4);
  overflow: hidden;
  display: flex;
  align-items: center;
  justify-content: center;
}
.evidence-card__preview img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.evidence-card__file-icon {
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 6px;
  color: var(--bufo-text-4);
}
.evidence-card__file-icon span {
  font-family: var(--bufo-mono);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.1em;
}
.evidence-card__meta {
  padding: 10px 14px;
}
.evidence-card__name {
  display: block;
  font-size: 0.8rem;
  font-weight: 600;
  color: var(--bufo-text-2);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.evidence-card__type {
  display: block;
  font-family: var(--bufo-mono);
  font-size: 0.625rem;
  color: var(--bufo-text-4);
  margin-top: 2px;
}
.evidence-card__action {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 6px;
  padding: 8px 14px;
  background: rgba(34, 211, 238, 0.06);
  border-top: 1px solid var(--bufo-line);
  font-family: var(--bufo-mono);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.05em;
  color: var(--bufo-cyan);
  text-decoration: none;
  transition: background var(--bufo-ease-fast);
}
.evidence-card__action:hover {
  background: rgba(34, 211, 238, 0.12);
}

/* ── Relationship network ─── */
.intel-panel--network::before {
  background: linear-gradient(90deg, transparent, rgba(168, 85, 247, 0.3), transparent);
}
.intel-panel--network .intel-panel__icon {
  background: rgba(168, 85, 247, 0.1);
  border-color: rgba(168, 85, 247, 0.2);
  color: #a855f7;
}
.rel-section {
  margin-bottom: 24px;
}
.rel-section:last-child {
  margin-bottom: 0;
}
.rel-section__title {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--bufo-mono);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--bufo-text-3);
  text-transform: uppercase;
  margin: 0 0 12px;
}
.rel-section__dot {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}
.rel-section__dot--green  { background: #22c55e; box-shadow: 0 0 8px rgba(34,197,94,0.5); }
.rel-section__dot--cyan   { background: #22d3ee; box-shadow: 0 0 8px rgba(34,211,238,0.5); }
.rel-section__dot--amber  { background: #fbbf24; box-shadow: 0 0 8px rgba(251,191,36,0.5); }
.rel-section__dot--red    { background: #ef4444; box-shadow: 0 0 8px rgba(239,68,68,0.5); }
.rel-section__grid {
  display: grid;
  grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
  gap: 10px;
}

.rel-card {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid var(--bufo-line);
  border-radius: var(--bufo-radius-sm);
  text-decoration: none;
  transition: all var(--bufo-ease);
}
.rel-card:hover {
  background: rgba(34, 197, 94, 0.04);
  border-color: rgba(34, 197, 94, 0.2);
}
.rel-card:hover .rel-card__arrow {
  color: var(--bufo-green);
  transform: translateX(3px);
}
.rel-card__avatar {
  width: 40px;
  height: 40px;
  border-radius: 50%;
  overflow: hidden;
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.15);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  color: var(--bufo-text-4);
}
.rel-card__avatar img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}
.rel-card__icon {
  width: 36px;
  height: 36px;
  border-radius: 8px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}
.rel-card--event .rel-card__icon    { background: rgba(34,211,238,0.08); color: #22d3ee; border: 1px solid rgba(34,211,238,0.15); }
.rel-card--testimony .rel-card__icon { background: rgba(251,191,36,0.08); color: #fbbf24; border: 1px solid rgba(251,191,36,0.15); }
.rel-card--document .rel-card__icon  { background: rgba(239,68,68,0.08); color: #ef4444; border: 1px solid rgba(239,68,68,0.15); }
.rel-card__info {
  flex: 1;
  min-width: 0;
}
.rel-card__name {
  display: block;
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--bufo-text);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.rel-card__role {
  display: block;
  font-size: 0.72rem;
  color: var(--bufo-text-4);
  margin-top: 2px;
}
.rel-card__arrow {
  flex-shrink: 0;
  color: var(--bufo-text-4);
  transition: all var(--bufo-ease);
}

/* ── Sources panel ─── */
.intel-panel--sources::before {
  background: linear-gradient(90deg, transparent, rgba(251, 191, 36, 0.3), transparent);
}
.intel-panel--sources .intel-panel__icon {
  background: rgba(251, 191, 36, 0.1);
  border-color: rgba(251, 191, 36, 0.2);
  color: #fbbf24;
}
.source-list {
  display: flex;
  flex-direction: column;
  gap: 8px;
}
.source-list__item {
  display: flex;
  align-items: baseline;
  gap: 10px;
  padding: 8px 0;
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
}
.source-list__item:last-child { border-bottom: none; }
.source-list__num {
  flex-shrink: 0;
  width: 22px;
  height: 22px;
  display: flex;
  align-items: center;
  justify-content: center;
  font-family: var(--bufo-mono);
  font-size: 0.6rem;
  font-weight: 700;
  color: var(--bufo-text-4);
  background: rgba(255, 255, 255, 0.04);
  border-radius: 4px;
}
.source-list__link {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  font-family: var(--bufo-mono);
  font-size: 0.78rem;
  color: var(--bufo-green);
  text-decoration: none;
  word-break: break-all;
  transition: opacity var(--bufo-ease-fast);
}
.source-list__link:hover { opacity: 0.7; }
.source-list__text {
  font-size: 0.82rem;
  color: var(--bufo-text-3);
}

/* ── Ghost badge variant ─── */
.exp-badge--ghost {
  display: inline-flex;
  align-items: center;
  gap: 5px;
  padding: 4px 12px;
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 6px;
  font-family: var(--bufo-mono);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: var(--bufo-text-3);
  white-space: nowrap;
}

/* ── Case file mono variant ─── */
.case-file__value--mono {
  font-family: var(--bufo-mono);
  font-size: 0.72rem;
  letter-spacing: 0.03em;
}

/* ── Dim status color ─── */
.exp-badge--dim,
.case-file__value--dim {
  color: var(--bufo-text-4);
}
.exp-badge--dim {
  background: rgba(255, 255, 255, 0.03);
  border-color: rgba(255, 255, 255, 0.06);
}

/* ── Purple accent ─── */
.exp-badge--purple {
  background: rgba(168, 85, 247, 0.1);
  border-color: rgba(168, 85, 247, 0.3);
  color: #a855f7;
}
.case-file__value--purple { color: #a855f7; }
/* ── sidebar.css ── */
.sidebar-panel {
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  overflow: hidden;
}

.sidebar-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px 20px;
  background: rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid var(--glass-border);
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.sidebar-panel__icon {
  color: var(--ufo-green);
  margin-right: 8px;
}

.sidebar-panel__body {
  padding: 20px;
}

.sidebar-widget {
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid rgba(255, 255, 255, 0.08);
  border-radius: 8px;
  overflow: hidden;
  position: relative;
}

.sidebar-widget--highlight {
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.1), rgba(34, 197, 94, 0.02));
  border-color: rgba(34, 197, 94, 0.2);
  position: relative;
  padding: 20px;
}

.sidebar-widget__glow {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 1px;
  background: linear-gradient(90deg, transparent, var(--ufo-green), transparent);
  pointer-events: none;
  left: 0;
  opacity: 0.5;
}

.sidebar-widget--danger {
  background: rgba(239, 68, 68, 0.05);
  border-color: rgba(239, 68, 68, 0.2);
  padding: 20px;
}

.sidebar-widget__header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 14px 18px;
  background: rgba(0, 0, 0, 0.2);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
  font-family: var(--font-mono);
  font-size: 0.75rem;
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.1em;
  margin-bottom: 1rem;
  padding-bottom: 0.75rem;
  font-weight: 600;
}

.sidebar-widget__body {
  padding: 18px;
}

.toc__list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.toc__item {
  margin-bottom: 4px;
}

.toc__item--sub {
  padding-left: 16px;
}

.toc__link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 12px;
  border-radius: 8px;
  font-size: 13px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.toc__link:hover {
  background: rgba(34, 197, 94, 0.1);
  color: var(--text-primary);
}

.toc__link--active {
  background: rgba(34, 197, 94, 0.15);
  color: var(--ufo-green);
}

.toc__marker {
  width: 6px;
  height: 6px;
  background: var(--glass-border);
  border-radius: 50%;
  flex-shrink: 0;
  transition: all var(--transition-base);
}

.toc__link:hover .toc__marker,
.toc__link--active .toc__marker {
  background: var(--ufo-green);
  box-shadow: 0 0 8px var(--ufo-green);
}

.case-info__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 18px;
  border-bottom: 1px solid var(--glass-border);
}

.case-info__row:last-child {
  border-bottom: none;
}

.case-info__label {
  font-size: 12px;
  color: var(--text-muted);
}

.case-info__value {
  font-size: 13px;
  color: var(--text-primary);
  font-weight: 500;
}

.case-info__value--mono {
  font-family: var(--font-mono);
  color: var(--ufo-green);
}

.case-info__value--green {
  color: var(--ufo-green);
}

.case-info__value--cyan {
  color: #06b6d4;
}

.case-info__value--amber {
  color: #f59e0b;
}

.case-info__value--red {
  color: #ef4444;
}

.sector-link {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  font-size: 13px;
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.sector-link:hover {
  border-color: var(--glass-border-hover);
  background: rgba(34, 197, 94, 0.1);
  color: var(--ufo-green);
}

.sector-link__dot {
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  opacity: 0.6;
}

.related-post__thumb {
  width: 60px;
  height: 60px;
  border-radius: 8px;
  overflow: hidden;
  flex-shrink: 0;
}

.related-post__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.related-post__thumb-placeholder {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-dim);
}

.related-post__content {
  flex: 1;
  min-width: 0;
}

.related-post__title {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  line-height: 1.4;
  margin-bottom: 6px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.related-post:hover .related-post__title {
  color: var(--ufo-green);
}

.related-post__date {
  font-size: 12px;
  color: var(--text-dim);
  font-family: var(--font-mono);
}

.newsletter-form {
  display: flex;
  gap: 8px;
}

.newsletter-form__input {
  flex: 1;
  padding: 12px 16px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  font-size: 14px;
  color: var(--text-primary);
  transition: border-color var(--transition-base);
}

.newsletter-form__input::placeholder {
  color: var(--text-dim);
}

.newsletter-form__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  background: var(--ufo-green);
  border-radius: 10px;
  color: var(--deep-space);
  transition: all var(--transition-base);
}

.newsletter-form__btn:hover {
  background: var(--ufo-green-bright);
  transform: translateX(2px);
}

.sidebar-widget__header svg {
  color: var(--ufo-green);
}

.sidebar-widget--cta {
  background: linear-gradient(135deg, rgba(0, 255, 136, 0.05) 0%, rgba(0, 212, 255, 0.05) 100%);
  border-color: rgba(0, 255, 136, 0.2);
  padding: 24px;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.sidebar-widget--warning {
  background: rgba(255, 170, 0, 0.05);
  border-color: rgba(255, 170, 0, 0.3);
  padding: 20px;
  text-align: center;
}

.sidebar-widget--warning h4 {
  font-size: 0.9rem;
  font-weight: 700;
  color: var(--ufo-amber);
  margin-bottom: 8px;
  font-family: var(--font-display);
  margin: 0 0 0.5rem;
}

.sidebar-widget--warning p {
  font-size: 0.8rem;
  color: var(--text-secondary);
  line-height: 1.5;
  margin: 0;
}

.toc-nav {
  padding: 16px;
}

.toc-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.toc-item {
  margin-bottom: 4px;
}

.toc-item--sub {
  padding-left: 16px;
}

.toc-link {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 8px;
  font-size: 13px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.toc-link:hover {
  background: rgba(34, 197, 94, 0.1);
  color: var(--text-primary);
}

.toc-link--active {
  background: rgba(34, 197, 94, 0.15);
  color: var(--ufo-green);
}

.toc-marker {
  width: 6px;
  height: 6px;
  background: var(--glass-border);
  border-radius: 50%;
  flex-shrink: 0;
  transition: all var(--transition-base);
}

.toc-link:hover .toc-marker,
.toc-link--active .toc-marker {
  background: var(--ufo-green);
  box-shadow: 0 0 8px var(--ufo-green);
}

.toc-text {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.case-file__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 18px;
  border-bottom: 1px solid var(--glass-border);
}

.case-file__row:last-child {
  border-bottom: none;
}

.case-file__row span:first-child {
  font-size: 12px;
  color: var(--text-muted);
}

.case-file__value {
  font-size: 13px;
  color: var(--text-primary);
  font-weight: 500;
}

.case-file__value--highlight {
  font-family: var(--font-mono);
  color: var(--ufo-green);
}

.case-file__value--green {
  color: var(--ufo-green);
}

.case-file__value--cyan {
  color: #06b6d4;
}

.case-file__value--amber {
  color: #f59e0b;
}

.case-file__value--red {
  color: #ef4444;
}

.case-file__value--purple {
  color: #a855f7;
}

.related-list {
  display: flex;
  flex-direction: column;
}

.related-item {
  display: flex;
  gap: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--glass-border);
  transition: background var(--transition-base);
}

.related-item:last-child {
  border-bottom: none;
}

.related-item:hover {
  background: rgba(34, 197, 94, 0.05);
}

.related-item__thumb {
  width: 56px;
  height: 56px;
  border-radius: 10px;
  overflow: hidden;
  flex-shrink: 0;
}

.related-item__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

.related-item__placeholder {
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.3);
  display: flex;
  align-items: center;
  justify-content: center;
  color: var(--text-dim);
}

.related-item__content {
  flex: 1;
  min-width: 0;
  display: flex;
  flex-direction: column;
  justify-content: center;
}

.related-item__title {
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  line-height: 1.4;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin-bottom: 4px;
  transition: color var(--transition-base);
}

.related-item:hover .related-item__title {
  color: var(--ufo-green);
}

.related-item__date {
  font-size: 12px;
  font-family: var(--font-mono);
  color: var(--text-dim);
}

.cta-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 50px;
  height: 50px;
  background: var(--ufo-green);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 50%;
  color: var(--ufo-black);
  margin-bottom: 16px;
  margin: 0 auto 1rem;
}

.cta-title {
  font-size: 1.1rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 8px;
  font-family: var(--font-display);
  margin: 0 0 0.5rem;
}

.cta-text {
  font-size: 0.85rem;
  color: var(--text-secondary);
  margin-bottom: 16px;
  margin: 0 0 1rem;
}

.cta-form {
  display: flex;
  gap: 0.5rem;
}

.cta-form input {
  flex: 1;
  padding: 0.75rem 1rem;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.1);
  border-radius: 4px;
  font-size: 0.85rem;
  color: var(--text-primary);
  transition: border-color var(--transition-base);
}

.cta-form input::placeholder {
  color: var(--text-muted);
}

.cta-form button {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  background: var(--ufo-green);
  border-radius: 4px;
  color: var(--ufo-black);
  transition: background var(--transition-base);
  height: 44px;
  border: none;
  cursor: pointer;
}

.cta-form button:hover {
  background: var(--ufo-green-dim);
}

.index-layout {
  display: grid;
  grid-template-columns: 1fr 320px;
  gap: 3rem;
}

@media (min-width:1024px) {
  .index-layout {
    grid-template-columns: 1fr 340px;
    gap: 50px
  }
}

.index-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

@media (min-width:1024px) {
  .index-sidebar {
    position: sticky;
    top: 100px
  }
}

.sidebar-widget--about {
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.08), rgba(34, 197, 94, 0.02));
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-radius: 20px;
  padding: 28px;
  position: relative;
  overflow: hidden;
  text-align: center;
}

.about-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 60px;
  height: 60px;
  background: rgba(0, 255, 136, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 50%;
  color: var(--ufo-green);
  margin-bottom: 20px;
  margin: 0 auto 1rem;
}

.about-title {
  font-size: 1.25rem;
  font-weight: 700;
  color: var(--text-primary);
  margin-bottom: 10px;
  font-family: var(--font-display);
  margin: 0 0 0.5rem;
}

.about-text {
  font-size: 0.85rem;
  color: var(--text-secondary);
  line-height: 1.5;
  margin-bottom: 20px;
  margin: 0 0 1rem;
}

.about-stats {
  display: flex;
  gap: 2rem;
  padding-top: 16px;
  border-top: 1px solid rgba(34, 197, 94, 0.15);
  justify-content: center;
}

.about-stat {
  display: flex;
  flex-direction: column;
  text-align: center;
}

.about-stat__value {
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--ufo-green);
  display: block;
  font-family: var(--font-display);
}

.about-stat__label {
  font-size: 0.65rem;
  color: var(--text-muted);
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.recent-list {
  padding: 8px 0;
  display: flex;
  flex-direction: column;
  gap: 0.75rem;
}

.recent-item {
  display: flex;
  align-items: flex-start;
  gap: 0.75rem;
  padding: 0.5rem;
  margin: -0.5rem;
  transition: background var(--transition-base);
  border-radius: 4px;
  text-decoration: none;
}

.recent-item:hover {
  background: rgba(255, 255, 255, 0.03);
}

.recent-item__dot {
  width: 6px;
  height: 6px;
  margin-top: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  opacity: 0.5;
  flex-shrink: 0;
}

.recent-item__content {
  flex: 1;
  min-width: 0;
}

.recent-item__title {
  display: block;
  font-size: 0.85rem;
  color: var(--text-primary);
  line-height: 1.4;
  margin-bottom: 0.25rem;
  transition: color var(--transition-base);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}

.recent-item:hover .recent-item__title {
  color: var(--ufo-green);
}

.recent-item__date {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  color: var(--text-muted);
}

.sectors-list {
  padding: 12px 16px;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.sector-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.5rem 0.75rem;
  border-bottom: 1px solid var(--glass-border);
  transition: all var(--transition-base);
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid transparent;
  border-radius: 4px;
  text-decoration: none;
}

.sector-item:last-child {
  border-bottom: none;
}

.sector-item:hover .sector-item__name {
  color: var(--ufo-green);
}

.sector-item__name {
  font-size: 0.85rem;
  color: var(--text-secondary);
  transition: color var(--transition-base);
}

.sector-item__count {
  padding: 2px 8px;
  background: rgba(255, 255, 255, 0.05);
  border-radius: 10px;
  font-family: var(--font-mono);
  font-size: 0.7rem;
  color: var(--text-muted);
}

@media (max-width:1024px) {
  .index-layout {
    grid-template-columns: 1fr
  }
}

.sector-item:hover {
  background: rgba(0, 255, 136, 0.05);
  border-color: rgba(0, 255, 136, 0.2);
}

/* ── components.css ── */

.status-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.status-badge--online {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.3);
  color: var(--ufo-green);
}

.status-badge__dot {
  width: 8px;
  height: 8px;
  background: var(--ufo-green);
  border-radius: 50%;
  box-shadow: 0 0 10px var(--ufo-green);
  animation: pulse-glow 2s ease-in-out infinite;
}

.classified-stamp {
  display: inline-flex;
  padding: 6px 16px;
  border: 2px solid rgba(239, 68, 68, 0.5);
  background: rgba(239, 68, 68, 0.1);
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 700;
  letter-spacing: 2px;
  color: var(--warning-red);
  text-transform: uppercase;
  transform: rotate(-1deg);
  animation: stamp-flicker 4s ease-in-out infinite;
}

.cta-primary {
  position: relative;
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 24px;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.2), rgba(34, 197, 94, 0.1));
  border: 1px solid rgba(34, 197, 94, 0.4);
  border-radius: 10px;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  overflow: hidden;
  transition: all var(--transition-base);
}

.cta-primary__glow {
  position: absolute;
  inset: 0;
  background: radial-gradient(circle at 50% 50%, rgba(34, 197, 94, 0.3), transparent 60%);
  opacity: 0;
  transition: opacity var(--transition-base);
}

.cta-primary:hover {
  border-color: var(--ufo-green);
  box-shadow: 0 0 40px rgba(34, 197, 94, 0.25);
  transform: translateY(-2px);
}

.cta-primary:hover .cta-primary__glow {
  opacity: 1;
}

.cta-secondary {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 12px 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  font-size: 14px;
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.cta-secondary:hover {
  border-color: var(--glass-border-hover);
  color: var(--text-primary);
}

.sector-chip {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 12px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  font-size: 12px;
  transition: all var(--transition-base);
}

.sector-chip:hover {
  border-color: var(--glass-border-hover);
  background: rgba(34, 197, 94, 0.1);
}

.sector-chip__indicator {
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  opacity: 0.7;
}

.sector-chip__name {
  color: var(--text-secondary);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.sector-chip__count {
  color: var(--text-muted);
  font-family: var(--font-mono);
  font-size: 11px;
}

.priority-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.4);
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  color: var(--ufo-green);
  letter-spacing: 1px;
}

.priority-badge__dot {
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  box-shadow: 0 0 8px var(--ufo-green);
  animation: pulse-glow 2s ease-in-out infinite;
}

.case-id-badge {
  padding: 6px 12px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-muted);
  letter-spacing: 1px;
}

.category-tag {
  padding: 4px 10px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--ufo-green);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.category-tag--small {
  padding: 3px 8px;
  font-size: 10px;
}

.meta-separator {
  color: var(--text-dim);
  font-size: 8px;
}

.read-more-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 20px;
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 8px;
  font-size: 14px;
  font-weight: 500;
  color: var(--text-primary);
  transition: all var(--transition-base);
}

.read-more-btn:hover {
  background: rgba(34, 197, 94, 0.25);
  border-color: var(--ufo-green);
}

.line-clamp-2 {
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.line-clamp-3 {
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.pagination-item {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 44px;
  height: 44px;
  padding: 0 14px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  font-family: var(--font-mono);
  font-size: 14px;
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.pagination-item:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
}

.pagination-item--active {
  background: rgba(34, 197, 94, 0.15);
  border-color: rgba(34, 197, 94, 0.4);
  color: var(--ufo-green);
}

.protocol-tag {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 5px 10px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  font-size: 12px;
  color: var(--text-muted);
}

.protocol-tag::before {
  content: '';
  width: 5px;
  height: 5px;
  background: var(--ufo-green);
  border-radius: 50%;
  opacity: 0.6;
}

.recent-post-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  padding: 14px 20px;
  transition: background var(--transition-base);
}

.recent-post-item:hover {
  background: rgba(34, 197, 94, 0.05);
}

.recent-post-item__content {
  display: flex;
  align-items: flex-start;
  gap: 10px;
  flex: 1;
  min-width: 0;
}

.recent-post-item__indicator {
  color: var(--ufo-green);
  opacity: 0.6;
  flex-shrink: 0;
}

.recent-post-item__title {
  font-size: 14px;
  color: var(--text-secondary);
  line-height: 1.4;
}

.recent-post-item:hover .recent-post-item__title {
  color: var(--text-primary);
}

.recent-post-item__date {
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-dim);
  flex-shrink: 0;
}

.sector-index-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: rgba(0, 0, 0, 0.2);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  transition: all var(--transition-base);
}

.sector-index-item:hover {
  border-color: var(--glass-border-hover);
  background: rgba(34, 197, 94, 0.05);
}

.sector-index-item__dot {
  width: 8px;
  height: 8px;
  background: var(--ufo-green);
  border-radius: 50%;
  opacity: 0.6;
}

.sector-index-item__name {
  font-size: 14px;
  color: var(--text-secondary);
}

.sector-index-item:hover .sector-index-item__name {
  color: var(--text-primary);
}

.sector-index-item__count {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-dim);
}

.warning-panel {
  display: flex;
  gap: 16px;
  padding: 20px;
  background: rgba(245, 158, 11, 0.08);
  border: 1px solid rgba(245, 158, 11, 0.25);
  border-radius: 16px;
}

.warning-panel__icon {
  flex-shrink: 0;
  color: var(--warning-amber);
}

.warning-panel__title {
  font-size: 14px;
  font-weight: 600;
  color: var(--warning-amber);
  margin-bottom: 4px;
}

.warning-panel__text {
  font-size: 13px;
  color: var(--text-muted);
  line-height: 1.5;
}

.empty-state {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding: 60px 30px;
  background: var(--glass-light);
  border: 1px dashed var(--glass-border);
  border-radius: 20px;
  text-align: center;
}

.empty-state__icon {
  color: var(--text-dim);
  margin-bottom: 20px;
}

.empty-state__title {
  font-size: 24px;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 10px;
}

.empty-state__text {
  font-size: 15px;
  color: var(--text-muted);
  max-width: 400px;
  margin-bottom: 24px;
}

.hero-pattern {
  background-image: radial-gradient(circle at 20% 50%, rgba(34, 197, 94, 0.15) 0%, transparent 50%), radial-gradient(circle at 80% 50%, rgba(34, 197, 94, 0.1) 0%, transparent 40%);
}

.classification-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 6px 14px;
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  letter-spacing: 1px;
  text-transform: uppercase;
}

.classification-badge__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  animation: pulse-glow 2s ease-in-out infinite;
}

.classification-badge--green {
  background: rgba(34, 197, 94, 0.15);
  border: 1px solid rgba(34, 197, 94, 0.4);
  color: var(--ufo-green);
}

.classification-badge--green .classification-badge__dot {
  background: var(--ufo-green);
  box-shadow: 0 0 8px var(--ufo-green);
}

.classification-badge--cyan {
  background: rgba(6, 182, 212, 0.15);
  border: 1px solid rgba(6, 182, 212, 0.4);
  color: #06b6d4;
}

.classification-badge--cyan .classification-badge__dot {
  background: #06b6d4;
  box-shadow: 0 0 8px #06b6d4;
}

.classification-badge--amber {
  background: rgba(245, 158, 11, 0.15);
  border: 1px solid rgba(245, 158, 11, 0.4);
  color: #f59e0b;
}

.classification-badge--amber .classification-badge__dot {
  background: #f59e0b;
  box-shadow: 0 0 8px #f59e0b;
}

.classification-badge--red {
  background: rgba(239, 68, 68, 0.15);
  border: 1px solid rgba(239, 68, 68, 0.4);
  color: #ef4444;
}

.classification-badge--red .classification-badge__dot {
  background: #ef4444;
  box-shadow: 0 0 8px #ef4444;
}

.meta-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 12px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-muted);
}

.meta-badge--interactive {
  transition: all var(--transition-base);
}

.meta-badge--interactive:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
}

.scroll-indicator {
  width: 24px;
  height: 40px;
  border: 2px solid var(--glass-border);
  border-radius: 12px;
  display: flex;
  justify-content: center;
  padding-top: 8px;
  flex-direction: column;
  align-items: center;
  gap: 0.5rem;
  cursor: pointer;
  opacity: 0.6;
  transition: opacity var(--transition-base);
  animation: float 3s ease-in-out infinite;
}

.scroll-indicator__dot {
  width: 4px;
  height: 8px;
  background: var(--ufo-green);
  border-radius: 2px;
  animation: scroll-bounce 2s ease-in-out infinite;
}

.tag-chip {
  display: inline-flex;
  align-items: center;
  gap: 2px;
  padding: 6px 12px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  font-size: 13px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.tag-chip:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
  background: rgba(34, 197, 94, 0.1);
}

.tag-chip span:first-child {
  color: var(--ufo-green);
  opacity: 0.7;
}

.share-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.share-btn:hover {
  border-color: var(--glass-border-hover);
  color: var(--text-primary);
  transform: translateY(-2px);
}

.share-btn--copy.copied {
  border-color: var(--ufo-green);
  color: var(--ufo-green);
  background: rgba(34, 197, 94, 0.2);
}

.related-posts {
  display: flex;
  flex-direction: column;
}

.related-post {
  display: flex;
  gap: 14px;
  padding: 14px 18px;
  border-bottom: 1px solid var(--glass-border);
  transition: background var(--transition-base);
}

.related-post:last-child {
  border-bottom: none;
}

.related-post:hover {
  background: rgba(34, 197, 94, 0.05);
}

.related-section {
  background: linear-gradient(180deg, var(--deep-space), var(--dark-matter));
  border-top: 1px solid var(--glass-border);
}

.related-card {
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  overflow: hidden;
  transition: all var(--transition-base);
}

.related-card:hover {
  border-color: var(--glass-border-hover);
  transform: translateY(-4px);
  box-shadow: var(--shadow-glow-green);
}

.related-card__image {
  position: relative;
  height: 180px;
  overflow: hidden;
}

.related-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s ease;
}

.related-card:hover .related-card__image img {
  transform: scale(1.05);
}

.related-card__placeholder {
  width: 100%;
  height: 100%;
  background: linear-gradient(135deg, var(--void), var(--nebula));
}

.related-card__overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(to top, rgba(0, 0, 0, 0.8), transparent);
}

.related-card__content {
  padding: 20px;
}

.related-card__cat {
  display: inline-block;
  padding: 4px 10px;
  background: rgba(34, 197, 94, 0.15);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 10px;
  color: var(--ufo-green);
  text-transform: uppercase;
  letter-spacing: 0.5px;
  margin-bottom: 10px;
}

.related-card__title {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--text-primary);
  line-height: 1.4;
  margin-bottom: 12px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color var(--transition-base);
}

.related-card:hover .related-card__title {
  color: var(--ufo-green);
}

.related-card__meta {
  font-size: 13px;
  color: var(--text-muted);
  font-family: var(--font-mono);
}

.corner-bracket {
  position: absolute;
  width: 60px;
  height: 60px;
  z-index: 5;
}

.corner-bracket::before,
.corner-bracket::after {
  content: '';
  position: absolute;
  background: rgba(34, 197, 94, 0.4);
}

.corner-bracket--tl {
  top: 20px;
  left: 20px;
}

.corner-bracket--tl::before {
  top: 0;
  left: 0;
  width: 30px;
  height: 2px;
}

.corner-bracket--tl::after {
  top: 0;
  left: 0;
  width: 2px;
  height: 30px;
}

.corner-bracket--tr {
  top: 20px;
  right: 20px;
}

.corner-bracket--tr::before {
  top: 0;
  right: 0;
  width: 30px;
  height: 2px;
}

.corner-bracket--tr::after {
  top: 0;
  right: 0;
  width: 2px;
  height: 30px;
}

.corner-bracket--bl {
  bottom: 20px;
  left: 20px;
}

.corner-bracket--bl::before {
  bottom: 0;
  left: 0;
  width: 30px;
  height: 2px;
}

.corner-bracket--bl::after {
  bottom: 0;
  left: 0;
  width: 2px;
  height: 30px;
}

.corner-bracket--br {
  bottom: 20px;
  right: 20px;
}

.corner-bracket--br::before {
  bottom: 0;
  right: 0;
  width: 30px;
  height: 2px;
}

.corner-bracket--br::after {
  bottom: 0;
  right: 0;
  width: 2px;
  height: 30px;
}

.back-btn {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: rgba(255, 255, 255, 0.05);
  border: 1px solid rgba(255, 255, 255, 0.2);
  border-radius: 8px;
  font-size: 13px;
  color: #cbcbecb0;
  transition: all var(--transition-base);
}

.back-btn:hover {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.3);
  color: var(--ufo-green);
}

.timestamp-badge {
  display: inline-flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  background: rgba(0, 0, 0, 0.4);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-muted);
}

.timestamp-badge__dot {
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  box-shadow: 0 0 8px var(--ufo-green);
  animation: pulse-glow 2s ease-in-out infinite;
}

.meta-stats {
  display: flex;
  align-items: center;
  gap: 16px;
}

.meta-stat {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 13px;
  color: var(--text-muted);
}

.meta-stat svg {
  color: var(--ufo-green);
  opacity: 0.7;
}

.content-tags {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 12px;
  margin-top: 3rem;
  padding-top: 2rem;
  border-top: 1px solid var(--glass-border);
}

.content-tags__label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.content-tags__label svg {
  color: var(--ufo-green);
}

.content-tags__list {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
}

.tag-pill {
  padding: 6px 14px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 20px;
  font-size: 13px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.tag-pill:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
  background: rgba(34, 197, 94, 0.1);
}

.share-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  margin-top: 2rem;
  padding: 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
}

.share-bar__label {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.share-bar__buttons {
  display: flex;
  gap: 10px;
}

.share-btn svg {
  width: 18px;
  height: 18px;
}

.share-btn--x:hover {
  background: rgba(0, 0, 0, 0.5);
}

.share-btn--telegram:hover {
  background: rgba(0, 136, 204, 0.2);
  color: #0088cc;
}

.share-btn--whatsapp:hover {
  background: rgba(37, 211, 102, 0.2);
  color: #25d366;
}

.share-btn--copy .share-btn__icon-success {
  display: none;
}

.share-btn--copy.copied .share-btn__icon-default {
  display: none;
}

.share-btn--copy.copied .share-btn__icon-success {
  display: block;
}

.warning-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: rgba(239, 68, 68, 0.1);
  border-radius: 10px;
  color: var(--ufo-amber);
  margin-bottom: 12px;
  margin: 0 auto 0.75rem;
}

.related-section__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 30px;
}

.related-section__header h2 {
  font-family: var(--font-mono);
  font-size: 16px;
  color: var(--text-primary);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.pulse-dot {
  position: relative;
  width: 10px;
  height: 10px;
}

.pulse-dot::before {
  content: '';
  position: absolute;
  inset: 0;
  background: var(--ufo-green);
  border-radius: 50%;
  animation: ping 2s cubic-bezier(0, 0, 0.2, 1) infinite;
}

.pulse-dot::after {
  content: '';
  position: absolute;
  inset: 2px;
  background: var(--ufo-green);
  border-radius: 50%;
}

.view-all-link {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 14px;
  color: var(--ufo-green);
  transition: gap var(--transition-base);
}

.view-all-link:hover {
  gap: 12px;
}

.related-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(280px, 1fr));
  gap: 24px;
}

.related-card__link {
  display: block;
}

.related-card__body {
  padding: 20px;
}

.content-status-bar {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 20px;
  padding: 14px 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  margin-bottom: 40px;
}

.content-status-bar__item {
  display: flex;
  flex-direction: column;
  gap: 4px;
}

.content-status-bar__label {
  font-size: 10px;
  color: var(--text-dim);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.content-status-bar__value {
  font-size: 13px;
  color: var(--text-primary);
  font-weight: 500;
}

.content-status-bar__value--active {
  display: flex;
  align-items: center;
  gap: 6px;
  color: var(--ufo-green);
}

.content-status-bar__divider {
  width: 1px;
  height: 28px;
  background: var(--glass-border);
}

.status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
}

.status-dot--green {
  background: var(--ufo-green);
  box-shadow: 0 0 6px var(--ufo-green);
}

.page-info__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 12px 16px;
  border-bottom: 1px solid var(--glass-border);
}

.page-info__row:last-child {
  border-bottom: none;
}

.page-info__label {
  font-size: 12px;
  color: var(--text-muted);
}

.page-info__value {
  font-size: 13px;
  color: var(--text-primary);
  font-weight: 500;
}

.page-info__value--mono {
  font-family: var(--font-mono);
  color: var(--ufo-green);
}

.page-related-list {
  display: flex;
  flex-direction: column;
}

.page-related-item {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  border-bottom: 1px solid var(--glass-border);
  font-size: 13px;
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.page-related-item:last-child {
  border-bottom: none;
}

.page-related-item:hover {
  background: rgba(34, 197, 94, 0.05);
  color: var(--ufo-green);
}

.page-related-item svg {
  color: var(--ufo-green);
  opacity: 0.5;
  flex-shrink: 0;
}

.page-actions {
  display: flex;
  flex-direction: column;
  gap: 8px;
}

.page-action-btn {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 12px 16px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  font-size: 13px;
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.page-action-btn:hover {
  border-color: var(--glass-border-hover);
  background: rgba(34, 197, 94, 0.05);
  color: var(--ufo-green);
}

.page-action-btn svg {
  color: var(--ufo-green);
  opacity: 0.7;
}

.page-notice {
  display: flex;
  gap: 14px;
}

.page-notice__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 40px;
  height: 40px;
  background: rgba(34, 197, 94, 0.1);
  border-radius: 10px;
  color: var(--ufo-green);
  flex-shrink: 0;
}

.page-notice__content h4 {
  font-size: 14px;
  font-weight: 600;
  color: var(--ufo-green);
  margin-bottom: 4px;
}

.page-notice__content p {
  font-size: 12px;
  color: var(--text-muted);
  line-height: 1.5;
}

.status-indicator {
  width: 8px;
  height: 8px;
  border-radius: 50%;
}

.status-indicator--live {
  background: var(--ufo-green);
  box-shadow: 0 0 8px var(--ufo-green);
  animation: pulse-glow 2s ease-in-out infinite;
}

.hero-status {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 8px 16px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 6px;
}

.hero-status__pulse {
  width: 8px;
  height: 8px;
  background: var(--ufo-green);
  border-radius: 50%;
  box-shadow: 0 0 10px var(--ufo-green);
  animation: status-pulse 2s ease-in-out infinite;
}

.hero-status__text {
  font-family: var(--font-mono);
  font-size: 11px;
  font-weight: 600;
  color: var(--ufo-green);
  letter-spacing: 1px;
}

.hero-freq {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-muted);
}

.hero-freq svg {
  color: var(--ufo-green);
}

.hero-timestamp {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-muted);
}

.hero-timestamp__divider {
  opacity: 0.3;
}

.hero-classification {
  display: flex;
  align-items: center;
  gap: 20px;
  margin-bottom: 40px;
}

.hero-classification__line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.3), transparent);
}

.hero-classification__badges {
  display: flex;
  flex-wrap: wrap;
  gap: 12px;
}

.hero-headline {
  max-width: 800px;
  margin-bottom: 40px;
}

.hero-headline__title {
  font-size: clamp(2.5rem, 7vw, 5rem);
  font-weight: 800;
  color: var(--text-primary);
  line-height: 1.05;
  letter-spacing: -0.02em;
  margin-bottom: 20px;
}

.hero-headline__cursor {
  color: var(--ufo-green);
  animation: cursor-blink 1s step-end infinite;
}

.hero-headline__subtitle {
  font-size: 1.25rem;
  color: var(--text-secondary);
  line-height: 1.6;
  max-width: 600px;
}

.hero-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 16px;
  margin-bottom: 40px;
}

.hero-quick-actions {
  display: flex;
  gap: 10px;
}

.hero-action-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.hero-action-btn:hover {
  border-color: var(--glass-border-hover);
  color: #f97316;
}

.hero-console {
  max-width: 600px;
  background: rgba(0, 0, 0, 0.5);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  overflow: hidden;
}

.hero-console__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 12px 16px;
  background: rgba(0, 0, 0, 0.3);
  border-bottom: 1px solid var(--glass-border);
}

.hero-console__dots {
  display: flex;
  gap: 6px;
}

.hero-console__dots span {
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: var(--glass-border);
}

.hero-console__dots span:first-child {
  background: #ef4444;
}

.hero-console__dots span:nth-child(2) {
  background: #f59e0b;
}

.hero-console__dots span:last-child {
  background: #22c55e;
}

.hero-console__title {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-muted);
}

.hero-console__status {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-mono);
  font-size: 11px;
  color: var(--text-dim);
}

.hero-console__status-dot {
  width: 6px;
  height: 6px;
  background: var(--ufo-green);
  border-radius: 50%;
  animation: pulse-glow 2s ease-in-out infinite;
}

.hero-console__body {
  padding: 16px;
  min-height: 140px;
}

.scroll-indicator:hover {
  opacity: 1;
}

.scroll-indicator__text {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.1em;
	text-align:center;
}

.scroll-indicator__line {
  width: 1px;
  height: 30px;
  background: linear-gradient(180deg, transparent, var(--ufo-green), transparent);
}

.scroll-indicator__arrow {
  color: var(--ufo-green);
  animation: arrowBounce 1.5s ease-in-out infinite;
}

.global-atmosphere {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: -1;
  pointer-events: none;
  overflow: hidden;
}

.global-atmosphere__gradient {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse 120% 80% at 50% 0%, rgba(20, 30, 60, 0.4) 0%, transparent 60%), radial-gradient(ellipse 80% 50% at 80% 50%, rgba(0, 50, 80, 0.15) 0%, transparent 50%), radial-gradient(ellipse 80% 50% at 20% 80%, rgba(30, 0, 60, 0.15) 0%, transparent 50%), linear-gradient(180deg, var(--ufo-black) 0%, var(--ufo-darker) 50%, var(--ufo-black) 100%);
}

.global-atmosphere__stars {
  position: absolute;
  inset: 0;
  background-image: radial-gradient(2px 2px at 20px 30px, white, transparent), radial-gradient(2px 2px at 40px 70px, rgba(255, 255, 255, 0.8), transparent), radial-gradient(1px 1px at 90px 40px, white, transparent), radial-gradient(2px 2px at 130px 80px, rgba(255, 255, 255, 0.6), transparent), radial-gradient(1px 1px at 160px 120px, white, transparent), radial-gradient(2px 2px at 200px 50px, rgba(255, 255, 255, 0.7), transparent), radial-gradient(1px 1px at 250px 160px, white, transparent), radial-gradient(2px 2px at 300px 90px, rgba(255, 255, 255, 0.5), transparent), radial-gradient(1px 1px at 350px 200px, white, transparent), radial-gradient(2px 2px at 400px 130px, rgba(255, 255, 255, 0.8), transparent);
  background-size: 550px 250px;
  animation: twinkle 8s ease-in-out infinite alternate;
  opacity: 0.6;
}

.global-atmosphere__grid {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(0, 255, 136, 0.02) 1px, transparent 1px), linear-gradient(90deg, rgba(0, 255, 136, 0.02) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.3) 30%, rgba(0, 0, 0, 0.1) 70%, transparent 100%);
  -webkit-mask-image: linear-gradient(180deg, transparent 0%, rgba(0, 0, 0, 0.3) 30%, rgba(0, 0, 0, 0.1) 70%, transparent 100%);
}

.global-atmosphere__noise {
  position: absolute;
  inset: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
  opacity: 0.03;
  mix-blend-mode: overlay;
}

.global-atmosphere__vignette {
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at center, transparent 0%, transparent 50%, rgba(0, 0, 0, 0.6) 100%);
}

.global-atmosphere__scan {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent 0%, rgba(0, 255, 136, 0.1) 20%, rgba(0, 255, 136, 0.3) 50%, rgba(0, 255, 136, 0.1) 80%, transparent 100%);
  animation: globalScan 12s linear infinite;
  opacity: 0.5;
}

.global-atmosphere__flare {
  position: absolute;
  border-radius: 50%;
  filter: blur(40px);
  opacity: 0.15;
  animation: flareFloat 20s ease-in-out infinite;
}

.global-atmosphere__flare--1 {
  width: 400px;
  height: 400px;
  background: radial-gradient(circle, var(--ufo-cyan) 0%, transparent 70%);
  top: 10%;
  right: 10%;
}

.global-atmosphere__flare--2 {
  width: 300px;
  height: 300px;
  background: radial-gradient(circle, var(--ufo-purple) 0%, transparent 70%);
  bottom: 20%;
  left: 5%;
  animation-delay: -7s;
}

.global-atmosphere__flare--3 {
  width: 250px;
  height: 250px;
  background: radial-gradient(circle, var(--ufo-green) 0%, transparent 70%);
  top: 60%;
  right: 20%;
  animation-delay: -14s;
}

.hero-brand {
  display: flex;
  flex-direction: column;
  gap: 1.5rem;
}

.hero-classification-inline {
  display: flex;
  align-items: center;
  gap: 1rem;
}

.hero-code {
  font-family: var(--font-mono);
  font-size: 0.75rem;
  color: var(--text-muted);
  letter-spacing: 0.15em;
}

.hero-logo-group {
  display: flex;
  align-items: center;
  gap: 1.5rem;
}

.hero-logo-icon {
  width: 100px;
  height: 115px;
  color: var(--ufo-green);
  filter: drop-shadow(0 0 20px var(--ufo-green-glow));
  animation: ufoHover 4s ease-in-out infinite;
}

.hero-ufo-icon {
  width: 100%;
  height: 100%;
}

.ufo-light {
  animation: lightBlink 1.5s ease-in-out infinite;
}

.ufo-light--1 {
  animation-delay: 0s;
}

.ufo-light--2 {
  animation-delay: 0.5s;
}

.ufo-light--3 {
  animation-delay: 1s;
}

.ufo-beam {
  animation: beamPulse 3s ease-in-out infinite;
}

.glitch-line {
  animation: glitchLine 4s linear infinite;
}

.hero-brand-title {
  font-family: var(--font-display);
  font-size: clamp(2.5rem, 6vw, 4rem);
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.05em;
  display: flex;
  flex-direction: column;
}

.hero-brand-title__main {
  color: var(--text-primary);
  text-shadow: 0 0 30px rgba(255, 255, 255, 0.1);
}

.hero-brand-title__accent {
  color: var(--ufo-green);
  text-shadow: 0 0 20px var(--ufo-green-glow), 0 0 40px var(--ufo-green-glow);
}

.hero-brand-title__cursor {
  color: var(--ufo-green);
  animation: cursorBlink 1s step-end infinite;
  font-weight: 400;
}

.hero-tagline {
  font-size: 1.1rem;
  color: var(--text-secondary);
  line-height: 1.6;
}

.hero-mission {
  display: flex;
  gap: 0.5rem;
  padding: 1rem;
  background: rgba(0, 255, 136, 0.03);
  border-left: 2px solid var(--ufo-green);
  border-radius: 0 4px 4px 0;
}

.hero-mission__icon {
  color: var(--ufo-green);
  flex-shrink: 0;
}

.hero-mission p {
  font-size: 0.85rem;
  color: var(--text-secondary);
  line-height: 1.5;
  margin: 0;
}

.hero-stats-row {
  display: flex;
  gap: 2rem;
  padding: 1rem 0;
  border-top: 1px solid rgba(255, 255, 255, 0.05);
  border-bottom: 1px solid rgba(255, 255, 255, 0.05);
}

.hero-stat {
  display: flex;
  flex-direction: column;
  gap: 0.25rem;
}

.hero-stat__value {
  font-family: var(--font-display);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--text-primary);
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.hero-stat__live-dot {
  width: 8px;
  height: 8px;
  background: var(--ufo-green);
  border-radius: 50%;
  animation: pulse 2s ease-in-out infinite;
  box-shadow: 0 0 10px var(--ufo-green);
}

.hero-stat__label {
  font-family: var(--font-mono);
  font-size: 0.7rem;
  color: var(--text-muted);
  text-transform: uppercase;
  letter-spacing: 0.1em;
}

.index-main {
  position: relative;
  z-index: 1;
}

.max-w-7xl {
  max-width: 80rem;
}

.mx-auto {
  margin-left: auto;
  margin-right: auto;
}

.px-5 {
  padding-left: 1.25rem;
  padding-right: 1.25rem;
}

.py-12 {
  padding-top: 3rem;
  padding-bottom: 3rem;
}

.py-16 {
  padding-top: 4rem;
  padding-bottom: 4rem;
}

.relative {
  position: relative;
}

.flex {
  display: flex;
}

.items-center {
  align-items: center;
}

.justify-between {
  justify-content: space-between;
}

.gap-4 {
  gap: 1rem;
}

.w-3 {
  width: 0.75rem;
}

.w-4 {
  width: 1rem;
}

.w-5 {
  width: 1.25rem;
}

.w-6 {
  width: 1.5rem;
}

.w-8 {
  width: 2rem;
}

.w-10 {
  width: 2.5rem;
}

.w-16 {
  width: 4rem;
}

.h-3 {
  height: 0.75rem;
}

.h-4 {
  height: 1rem;
}

.h-5 {
  height: 1.25rem;
}

.h-6 {
  height: 1.5rem;
}

.h-8 {
  height: 2rem;
}

.h-10 {
  height: 2.5rem;
}

.h-16 {
  height: 4rem;
}

.hero-stat__value--signal {
  display: inline-flex;
  align-items: center;
  gap: 10px;
}

.hero-stat__wifi {
  opacity: .95;
  filter: drop-shadow(0 0 10px rgba(34, 197, 94, .35));
}

header.sticky {
  box-shadow: 0px 4px 7px 2px #00000075;
}

.bufo-corner {
  position: absolute;
  width: 14px;
  height: 14px;
  border-color: rgba(34, 197, 94, .40);
}

.bufo-corner--tl {
  top: 10px;
  left: 10px;
  border-top: 2px solid;
  border-left: 2px solid;
}

.bufo-corner--tr {
  top: 10px;
  right: 10px;
  border-top: 2px solid;
  border-right: 2px solid;
}

.bufo-corner--bl {
  bottom: 10px;
  left: 10px;
  border-bottom: 2px solid;
  border-left: 2px solid;
}

.bufo-corner--br {
  bottom: 10px;
  right: 10px;
  border-bottom: 2px solid;
  border-right: 2px solid;
}

.bufo-dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(34, 197, 94, .95);
  box-shadow: 0 0 0 6px rgba(34, 197, 94, .10), 0 0 22px rgba(34, 197, 94, .50);
  position: relative;
}

.bufo-dot::after {
  content: "";
  position: absolute;
  inset: -10px;
  border-radius: 999px;
  border: 1px solid rgba(34, 197, 94, .25);
  animation: bufoPulse 2s ease-in-out infinite;
}

.bufo-kpi {
  padding: 12px 12px;
  border-radius: 14px;
  background: rgba(255, 255, 255, .05);
  border: 1px solid rgba(255, 255, 255, .10);
  box-shadow: 0 0 0 1px rgba(0, 0, 0, .35) inset;
}

.bufo-kpi__label {
  display: block;
  font-size: 11px;
  letter-spacing: .12em;
  text-transform: uppercase;
  color: rgba(156, 163, 175, .9);
  margin-bottom: 6px;
  font-family: var(--bufo-mono);
}

.bufo-kpi__value {
  display: flex;
  align-items: center;
  gap: 10px;
  color: rgba(243, 244, 246, .96);
  font-weight: 600;
}

.bufo-kpi__hint {
  font-size: 12px;
  color: rgba(167, 243, 208, .9);
  font-family: var(--bufo-mono);
}

.bufo-noise {
  width: 92px;
  height: 10px;
  border-radius: 999px;
  background: rgba(0, 0, 0, .35);
  border: 1px solid rgba(255, 255, 255, .10);
  overflow: hidden;
  position: relative;
}

.bufo-noise__bar {
  position: absolute;
  inset: 0;
  width: 52%;
  background: linear-gradient(90deg, rgba(34, 197, 94, .15), rgba(34, 197, 94, .70), rgba(56, 189, 248, .40));
  animation: bufoNoise 2.4s ease-in-out infinite;
}

.bufo-ticker {
  display: block;
  width: 100%;
  overflow: hidden;
  white-space: nowrap;
  mask-image: linear-gradient(90deg, transparent, #000 12%, #000 88%, transparent);
}

.bufo-ticker__track {
  display: inline-block;
  padding-left: 100%;
  animation: bufoTicker 16s linear infinite;
  color: rgba(209, 250, 229, .9);
  font-family: var(--bufo-mono);
  font-size: 12px;
}

.logazo {
  font-family: 'Zen Dots';
}

.hamburger-line {
  transition: all 0.3s ease;
  transform-origin: center;
}

[data-menu-open="true"] .hamburger-line-1 {
  transform: translateY(5px) rotate(45deg);
}

[data-menu-open="true"] .hamburger-line-2 {
  opacity: 0;
  transform: scaleX(0);
}

[data-menu-open="true"] .hamburger-line-3 {
  transform: translateY(-5px) rotate(-45deg);
}

.bu-logo {
  color: white;
}

.glow-text {
  text-shadow: 0 0 10px rgba(34, 197, 94, 0.5), 0 0 20px rgba(34, 197, 94, 0.3), 0 0 30px rgba(34, 197, 94, 0.2);
}

#matrix-canvas {
  mix-blend-mode: screen;
}

/* =========================================================
   BUFO DIRECTIVE - PAGE TEMPLATE V2 (Cinematic, cleaner)
   Readability Pass (more spacing, more editorial)
   ========================================================= */

/* BUFO login msg inside agent dropdown */

/* ── wp-blocks.css ── */
/* ═══════════════════════════════════════════════════════════════════════════
   WP Blocks — Cinematic OSINT Overhaul
   File: assets/css/wp-blocks.css
   Broken UFO Theme v3.3.0
   ═══════════════════════════════════════════════════════════════════════════ */

/* ── Keyframes ─────────────────────────────────────────────────────────── */

@keyframes bufo-scanline {
  0%   { transform: translateY(-100%); }
  100% { transform: translateY(100%); }
}

@keyframes bufo-data-flicker {
  0%, 100% { opacity: 1; }
  92%      { opacity: 1; }
  93%      { opacity: 0.6; }
  94%      { opacity: 1; }
  96%      { opacity: 0.7; }
  97%      { opacity: 1; }
}

@keyframes bufo-glow-pulse {
  0%, 100% { box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.08) inset, 0 0 20px rgba(34, 197, 94, 0.04); }
  50%      { box-shadow: 0 0 0 1px rgba(34, 197, 94, 0.15) inset, 0 0 30px rgba(34, 197, 94, 0.08); }
}

@keyframes bufo-list-fadeIn {
  from { opacity: 0; transform: translateY(8px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ── Images ────────────────────────────────────────────────────────────── */

.wp-block-image img {
  border-radius: 12px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   HEADINGS — wp-block-heading
   Cinematic OSINT heading with classification markers and glow accents
   ═══════════════════════════════════════════════════════════════════════════ */

.prose-content h2.wp-block-heading,
h2.wp-block-heading {
  position: relative;
  font-family: var(--bufo-font);
  font-size: clamp(1.65rem, 2.8vw, 2.25rem);
  font-weight: 800;
  letter-spacing: -0.02em;
  line-height: 1.25;
  color: var(--bufo-text);
  margin-top: 3.5rem;
  margin-bottom: 1.75rem;
  padding-left: 1.5rem;
  padding-top: 1rem;
  padding-bottom: 1rem;
  border-left: none;
  border-bottom: none;
}

.prose-content h2.wp-block-heading::before,
h2.wp-block-heading::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.15em;
  bottom: 0;
  width: 4px;
  background: linear-gradient(180deg, var(--bufo-green), rgba(34, 197, 94, 0.3));
  border-radius: 4px;
  box-shadow: 0 0 14px rgba(34, 197, 94, 0.4), 0 0 28px rgba(34, 197, 94, 0.15);
}

.prose-content h2.wp-block-heading::after,
h2.wp-block-heading::after {
  content: "SEC //";
  position: absolute;
  right: 0;
  top: 0.5em;
  font-family: var(--bufo-mono);
  font-size: 0.6rem;
  font-weight: 500;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.25);
  pointer-events: none;
}

h3.wp-block-heading {
  position: relative;
  font-family: var(--bufo-font);
  font-size: clamp(1.3rem, 2.2vw, 1.65rem);
  font-weight: 700;
  color: var(--bufo-text);
  margin-top: 2.75rem;
  margin-bottom: 1.25rem;
  padding-left: 1.25rem;
  letter-spacing: -0.01em;
}

h3.wp-block-heading::before {
  content: "▸";
  position: absolute;
  left: 0;
  top: 0.05em;
  font-size: 1.1rem;
  color: var(--bufo-green);
  text-shadow: 0 0 10px rgba(34, 197, 94, 0.5);
}

h4.wp-block-heading {
  position: relative;
  font-family: var(--bufo-font);
  font-size: clamp(1.1rem, 1.8vw, 1.35rem);
  font-weight: 600;
  color: rgba(245, 247, 255, 0.88);
  margin-top: 2rem;
  margin-bottom: 1rem;
  padding-left: 1rem;
  letter-spacing: 0.01em;
}

h4.wp-block-heading::before {
  content: "//";
  position: absolute;
  left: 0;
  top: 0;
  font-family: var(--bufo-mono);
  font-size: 0.85em;
  color: rgba(34, 197, 94, 0.45);
  font-weight: 700;
}

h5.wp-block-heading,
h6.wp-block-heading {
  font-family: var(--bufo-mono);
  font-size: 0.8rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.7);
  margin-top: 1.75rem;
  margin-bottom: 0.75rem;
}

/* ═══════════════════════════════════════════════════════════════════════════
   LISTS — ul/ol.wp-block-list
   OSINT Intel Briefing Panel with radar grid, scanline & animated markers
   ═══════════════════════════════════════════════════════════════════════════ */

ul.wp-block-list,
ol.wp-block-list {
  position: relative;
  margin: 1.5rem 0 2rem;
  padding: 1.5rem 1.5rem 1.5rem 1.75rem;
  border: 1px solid rgba(34, 197, 94, 0.15);
  border-radius: 12px;
  background:
    linear-gradient(180deg,
      rgba(34, 197, 94, 0.06) 0%,
      rgba(0, 0, 0, 0.35) 8%,
      rgba(0, 0, 0, 0.40) 100%);
  box-shadow:
    0 0 0 1px rgba(34, 197, 94, 0.06) inset,
    0 1px 0 0 rgba(255, 255, 255, 0.03) inset,
    0 20px 50px rgba(0, 0, 0, 0.4);
  color: var(--bufo-text);
  overflow: hidden;
  animation: bufo-glow-pulse 6s ease-in-out infinite;
}

/* Radar grid overlay */
ul.wp-block-list::before,
ol.wp-block-list::before {
  content: "";
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(
      0deg,
      rgba(34, 197, 94, 0.03) 0px,
      transparent 1px,
      transparent 32px
    ),
    repeating-linear-gradient(
      90deg,
      rgba(34, 197, 94, 0.02) 0px,
      transparent 1px,
      transparent 32px
    );
  pointer-events: none;
  opacity: 0.6;
}

/* Sweeping scanline */
ul.wp-block-list::after,
ol.wp-block-list::after {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 60px;
  background: linear-gradient(180deg,
    rgba(34, 197, 94, 0.07),
    transparent);
  pointer-events: none;
  animation: bufo-scanline 4s linear infinite;
  opacity: 0.5;
}

/* Individual list items */
ul.wp-block-list > li,
ol.wp-block-list > li {
  position: relative;
  padding: 0.45rem 0 0.45rem 1.65rem;
  line-height: 1.7;
  color: rgba(245, 247, 255, 0.88);
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
  animation: bufo-list-fadeIn 0.4s ease both;
}

ul.wp-block-list > li:first-child { padding-top: 0; }
ul.wp-block-list > li:last-child,
ol.wp-block-list > li:last-child { border-bottom: none; }

/* Stagger animation */
ul.wp-block-list > li:nth-child(1),
ol.wp-block-list > li:nth-child(1) { animation-delay: 0.05s; }
ul.wp-block-list > li:nth-child(2),
ol.wp-block-list > li:nth-child(2) { animation-delay: 0.10s; }
ul.wp-block-list > li:nth-child(3),
ol.wp-block-list > li:nth-child(3) { animation-delay: 0.15s; }
ul.wp-block-list > li:nth-child(4),
ol.wp-block-list > li:nth-child(4) { animation-delay: 0.20s; }
ul.wp-block-list > li:nth-child(5),
ol.wp-block-list > li:nth-child(5) { animation-delay: 0.25s; }
ul.wp-block-list > li:nth-child(6),
ol.wp-block-list > li:nth-child(6) { animation-delay: 0.30s; }
ul.wp-block-list > li:nth-child(7),
ol.wp-block-list > li:nth-child(7) { animation-delay: 0.35s; }
ul.wp-block-list > li:nth-child(8),
ol.wp-block-list > li:nth-child(8) { animation-delay: 0.40s; }

/* UL: pulsing radar dot bullet */
ul.wp-block-list {
  list-style: none;
}

ul.wp-block-list > li::before {
  content: "";
  position: absolute;
  left: 0.2rem;
  top: 0.85em;
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: var(--bufo-green);
  box-shadow:
    0 0 6px rgba(34, 197, 94, 0.6),
    0 0 14px rgba(34, 197, 94, 0.25);
}

ul.wp-block-list > li::after {
  content: "";
  position: absolute;
  left: calc(0.2rem - 3px);
  top: calc(0.85em - 3px);
  width: 13px;
  height: 13px;
  border-radius: 50%;
  border: 1px solid rgba(34, 197, 94, 0.25);
  animation: bufo-glow-pulse 3s ease-in-out infinite;
  pointer-events: none;
}

ul.wp-block-list > li:nth-child(odd)::after  { animation-delay: 0s; }
ul.wp-block-list > li:nth-child(even)::after { animation-delay: 1.5s; }

/* OL: styled counters */
ol.wp-block-list {
  list-style: none;
  counter-reset: bufo-intel;
  padding-left: 1.5rem;
}

ol.wp-block-list > li {
  counter-increment: bufo-intel;
  padding-left: 2.2rem;
}

ol.wp-block-list > li::before {
  content: counter(bufo-intel, decimal-leading-zero);
  position: absolute;
  left: 0;
  top: 0.45rem;
  font-family: var(--bufo-mono);
  font-size: 0.72rem;
  font-weight: 700;
  color: var(--bufo-green);
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-radius: 4px;
  padding: 1px 6px;
  text-shadow: 0 0 8px rgba(34, 197, 94, 0.3);
  letter-spacing: 0.05em;
  line-height: 1.5;
}

/* Nested lists */
ul.wp-block-list ul,
ul.wp-block-list ol,
ol.wp-block-list ul,
ol.wp-block-list ol {
  margin: 0.75rem 0 0.85rem;
  padding: 0.75rem 0.85rem 0.75rem 1rem;
  border-radius: 8px;
  border: 1px solid rgba(34, 197, 94, 0.08);
  border-left: 2px solid rgba(34, 197, 94, 0.2);
  background: rgba(0, 0, 0, 0.25);
}

ul.wp-block-list ul {
  list-style: none;
}

ul.wp-block-list ul > li {
  position: relative;
  padding-left: 1.2rem;
  margin: 0.35rem 0;
  color: var(--bufo-text-dim);
}

ul.wp-block-list ul > li::before {
  content: "›";
  position: absolute;
  left: 0.15rem;
  top: 0;
  font-size: 1rem;
  font-weight: 700;
  color: rgba(34, 197, 94, 0.6);
}

ul.wp-block-list ul > li::after {
  display: none;
}

/* Links inside lists */
ul.wp-block-list a,
ol.wp-block-list a {
  color: rgba(34, 197, 94, 0.92);
  text-decoration: none;
  border-bottom: 1px solid rgba(34, 197, 94, 0.2);
  transition: all 0.25s ease;
}

ul.wp-block-list a:hover,
ol.wp-block-list a:hover {
  color: #4ade80;
  border-bottom-color: rgba(34, 197, 94, 0.5);
  text-shadow: 0 0 12px rgba(34, 197, 94, 0.3);
}

ul.wp-block-list strong,
ol.wp-block-list strong {
  color: rgba(255, 255, 255, 0.96);
  font-weight: 600;
}

/* ── Classified variant ─────────────────────────────────────────────── */

ul.wp-block-list.bufo-list--classified,
ol.wp-block-list.bufo-list--classified {
  padding-top: 2.5rem;
  border-color: rgba(245, 158, 11, 0.2);
}

ul.wp-block-list.bufo-list--classified::before {
  background:
    repeating-linear-gradient(
      0deg,
      rgba(245, 158, 11, 0.03) 0px,
      transparent 1px,
      transparent 32px
    ),
    repeating-linear-gradient(
      90deg,
      rgba(245, 158, 11, 0.02) 0px,
      transparent 1px,
      transparent 32px
    );
}

/* ═══════════════════════════════════════════════════════════════════════════
   BLOCKQUOTE — wp-block-quote
   Intercepted transmission / classified intel brief style
   ═══════════════════════════════════════════════════════════════════════════ */

.wp-block-quote,
.wp-block-quote.is-layout-flow.wp-block-quote-is-layout-flow {
  position: relative;
  margin: 2.5rem 0;
  padding: 2rem 2rem 1.75rem 2.25rem;
  background:
    linear-gradient(135deg,
      rgba(34, 197, 94, 0.04) 0%,
      rgba(0, 0, 0, 0.35) 40%,
      rgba(0, 0, 0, 0.42) 100%);
  border: 1px solid rgba(34, 197, 94, 0.15);
  border-left: 3px solid var(--bufo-green);
  border-radius: 2px 12px 12px 2px;
  font-style: normal;
  overflow: hidden;
  box-shadow:
    0 0 0 1px rgba(34, 197, 94, 0.05) inset,
    -4px 0 20px rgba(34, 197, 94, 0.06),
    0 16px 48px rgba(0, 0, 0, 0.35);
}

/* Classification header */
.wp-block-quote::before,
.wp-block-quote.is-layout-flow.wp-block-quote-is-layout-flow::before {
  content: "◄ TRANSMISIÓN INTERCEPTADA ► ";
  display: block;
  font-family: var(--bufo-mono);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.2em;
  text-transform: uppercase;
  color: var(--bufo-green);
  margin-bottom: 1.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid rgba(34, 197, 94, 0.12);
  text-shadow: 0 0 10px rgba(34, 197, 94, 0.35);
  animation: bufo-data-flicker 8s ease-in-out infinite;
}

/* Scanline sweep over quote */
.wp-block-quote::after,
.wp-block-quote.is-layout-flow.wp-block-quote-is-layout-flow::after {
  content: "";
  position: absolute;
  inset: 0;
  background:
    repeating-linear-gradient(
      0deg,
      transparent 0px,
      transparent 3px,
      rgba(0, 0, 0, 0.08) 3px,
      rgba(0, 0, 0, 0.08) 4px
    );
  pointer-events: none;
  opacity: 0.4;
}

.wp-block-quote p,
.wp-block-quote.is-layout-flow p {
  position: relative;
  z-index: 1;
  font-size: 1.1rem;
  line-height: 1.85;
  color: rgba(245, 247, 255, 0.9);
  font-style: italic;
  margin-bottom: 0.75rem;
}

.wp-block-quote p:last-of-type {
  margin-bottom: 0;
}

.wp-block-quote cite,
.wp-block-quote.is-layout-flow cite {
  position: relative;
  z-index: 1;
  display: block;
  margin-top: 1rem;
  padding-top: 0.75rem;
  border-top: 1px solid rgba(34, 197, 94, 0.1);
  font-family: var(--bufo-mono);
  font-size: 0.75rem;
  font-style: normal;
  color: rgba(34, 197, 94, 0.65);
  letter-spacing: 0.04em;
}

.wp-block-quote cite::before {
  content: "— FUENTE: ";
  color: rgba(34, 197, 94, 0.4);
  font-weight: 600;
}

/* ═══════════════════════════════════════════════════════════════════════════
   CODE BLOCK
   ═══════════════════════════════════════════════════════════════════════════ */

.wp-block-code {
  position: relative;
  background: rgba(0, 0, 0, 0.55);
  border: 1px solid rgba(34, 197, 94, 0.12);
  border-radius: 10px;
  padding: 1.5rem 1.25rem;
  font-family: var(--bufo-mono);
  overflow-x: auto;
}

.wp-block-code::before {
  content: "[ DATOS BRUTOS ]";
  position: absolute;
  top: 0;
  right: 0;
  font-family: var(--bufo-mono);
  font-size: 0.55rem;
  letter-spacing: 0.12em;
  color: rgba(34, 197, 94, 0.3);
  padding: 4px 10px;
  background: rgba(34, 197, 94, 0.05);
  border-bottom-left-radius: 6px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   SEPARATOR
   ═══════════════════════════════════════════════════════════════════════════ */

.wp-block-separator {
  border: none;
  height: 1px;
  background: linear-gradient(90deg,
    transparent 0%,
    rgba(34, 197, 94, 0.06) 10%,
    rgba(34, 197, 94, 0.25) 50%,
    rgba(34, 197, 94, 0.06) 90%,
    transparent 100%);
  margin: 3rem 0;
  position: relative;
}

.wp-block-separator::after {
  content: "◆";
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  font-size: 0.5rem;
  color: rgba(34, 197, 94, 0.4);
  background: var(--bufo-space, #050508);
  padding: 0 12px;
}

/* ═══════════════════════════════════════════════════════════════════════════
   DETAILS / ACCORDION
   ═══════════════════════════════════════════════════════════════════════════ */

.wp-block-details.is-layout-flow.wp-block-details-is-layout-flow {
  margin: 1.5rem 0;
  padding: 1rem 1.25rem;
  border-radius: 8px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(255, 255, 255, 0.06);
  box-shadow: 0 0 0 1px rgba(255,255,255,0.02) inset;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}

.wp-block-details.is-layout-flow.wp-block-details-is-layout-flow:hover {
  border-color: rgba(34, 197, 94, 0.25);
  box-shadow: 0 0 12px rgba(34, 197, 94, 0.08);
}

.wp-block-details summary {
  list-style: none;
  cursor: pointer;
  font-weight: 600;
  color: #e5e7eb;
  display: flex;
  align-items: center;
  gap: 0.5rem;
  position: relative;
  padding-right: 1.5rem;
  font-family: var(--bufo-font);
}

.wp-block-details summary::-webkit-details-marker { display: none; }

.wp-block-details summary::before {
  content: "▸";
  font-size: 0.9rem;
  color: var(--bufo-green-bright);
  transition: transform 0.25s ease, color 0.25s ease;
}

.wp-block-details[open] summary::before {
  transform: rotate(90deg);
  color: var(--bufo-green);
}

.wp-block-details summary:hover { color: #ffffff; }

.wp-block-details > *:not(summary) {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transform: translateY(-4px);
  transition: max-height 0.35s ease, opacity 0.25s ease, transform 0.35s ease;
}

.wp-block-details[open] > *:not(summary) {
  max-height: 500px;
  opacity: 1;
  transform: translateY(0);
}

.wp-block-details .wp-block-paragraph {
  margin-top: 0.75rem;
  font-size: 0.95rem;
  line-height: 1.6;
  color: rgba(229, 231, 235, 0.9);
}

.wp-block-details .wp-block-paragraph strong {
  color: var(--bufo-green-bright);
  font-weight: 600;
}

/* ═══════════════════════════════════════════════════════════════════════════
   RESPONSIVE
   ═══════════════════════════════════════════════════════════════════════════ */

@media (max-width: 640px) {
  ul.wp-block-list,
  ol.wp-block-list {
    padding: 1.15rem 1rem 1.15rem 1.15rem;
    border-radius: 10px;
  }

  ol.wp-block-list { padding-left: 1.25rem; }
  ol.wp-block-list > li { padding-left: 2rem; }

  .wp-block-quote,
  .wp-block-quote.is-layout-flow.wp-block-quote-is-layout-flow {
    padding: 1.5rem 1.25rem 1.25rem 1.5rem;
    margin: 1.5rem 0;
  }

  h2.wp-block-heading,
  .prose-content h2.wp-block-heading {
    font-size: 1.5rem;
    padding-left: 1.25rem;
  }

  h2.wp-block-heading::after,
  .prose-content h2.wp-block-heading::after {
    display: none;
  }
}
/* ── bufo-content.css ── */
.bufo-pill {
  font-size: 10px;
  padding: 4px 10px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(0,0,0,0.22);
  color: rgba(255,255,255,0.85);
  font-family: var(--font-mono);
  display: inline-flex;
  align-items: center;
  gap: 8px;
  font-weight: 950;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  margin-right: 8px;
  vertical-align: middle;
}

.bufo-pill--ok {
  border-color: rgba(34, 197, 94, .22);
  background: rgba(34, 197, 94, .10);
  color: rgba(187, 247, 208, .95);
}

.bufo-pill--soft {
  border-color: rgba(56, 189, 248, .18);
  background: rgba(56, 189, 248, .08);
  color: rgba(186, 230, 253, .95);
}

.bufo-cta {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 14px 14px;
  border-radius: 16px;
  border: 1px solid rgba(255, 255, 255, .12);
  background: rgba(255, 255, 255, .06);
  text-decoration: none;
  transition: transform .2s ease, border-color .2s ease, background .2s ease;
  box-shadow: 0 0 0 1px rgba(0, 0, 0, .45) inset;
  margin: 0;
  flex-wrap: wrap;
}

.bufo-cta:hover {
  transform: translateY(-2px);
  border-color: rgba(34, 197, 94, .28);
  background: rgba(34, 197, 94, .08);
}

.bufo-cta--primary {
  border-color: rgba(34, 197, 94, .22);
  background: radial-gradient(600px 120px at 20% 50%, rgba(34, 197, 94, .14), rgba(255, 255, 255, .06));
}

.bufo-cta--ghost:hover {
  border-color: rgba(56, 189, 248, .25);
  background: rgba(56, 189, 248, .08);
}

.bufo-cta__icon {
  width: 38px;
  height: 38px;
  border-radius: 12px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(0, 0, 0, .30);
  border: 1px solid rgba(255, 255, 255, .10);
  color: rgba(209, 250, 229, .95);
  font-family: var(--bufo-mono);
}

.bufo-cta__text strong {
  display: block;
  color: rgba(243, 244, 246, .98);
  font-size: 13px;
  letter-spacing: .02em;
}

.bufo-cta__text span {
  display: block;
  margin-top: 2px;
  font-size: 12px;
  color: rgba(156, 163, 175, .9);
}

.bufo-cta__arrow {
  color: rgba(167, 243, 208, .85);
  font-size: 18px;
  padding: 0 6px;
}

.bufo-dossier {
  position: relative;
  border: 1px solid rgba(34, 197, 94, 0.18);
  border-radius: 14px;
  background:
    radial-gradient(900px 240px at 20% 0%, rgba(34, 197, 94, 0.10), transparent 60%),
              linear-gradient(180deg, rgba(10,12,15,0.55), rgba(10,12,15,0.85));
  box-shadow: 0 18px 50px rgba(0,0,0,0.55);
  overflow: hidden;
  padding: 18px 18px 16px;
  background-image:
    url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='180' height='180'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.85' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='180' height='180' filter='url(%23n)' opacity='.35'/%3E%3C/svg%3E"),
    radial-gradient(900px 280px at 18% 0%, rgba(0,255,65,0.10), transparent 58%),
    radial-gradient(700px 260px at 90% 10%, rgba(0,255,65,0.06), transparent 62%),
    linear-gradient(180deg, rgba(10,12,15,0.55), rgba(10,12,15,0.86));
  background-blend-mode: overlay, normal, normal, normal;
}

.bufo-dossier::after {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 3px;
  background: linear-gradient(180deg, rgba(34,197,94,0.9), rgba(34,197,94,0.0));
  opacity: 0.7;
}

.bufo-dossier::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    repeating-linear-gradient(0deg,
      rgba(255,255,255,0.03) 0px,
      rgba(255,255,255,0.03) 1px,
      transparent 2px,
      transparent 7px
    );
  opacity: 0.45;
  mix-blend-mode: overlay;
}

.bufo-dossier .bufo-grain::before {
  content: "";
}

.bufo-dossier::marker {
  content: "";
}

.bufo-dossier .bufo-grain {
  display: none;
}

.bufo-dossier > .bufo-noise-layer {
  display: none;
}

.bufo-dossier .bufo-panel {
  position: relative;
  z-index: 2;
}

.bufo-title {
  position: relative;
  z-index: 2;
  margin: 8px 0 12px;
  display: flex;
  flex-wrap: wrap;
  gap: 10px;
  align-items: baseline;
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 1.8px;
  line-height: 1.15;
  color: rgba(255,255,255,0.92);
}

.bufo-title__num {
  font-weight: 950;
  color: rgba(34,197,94,0.95);
  text-shadow: 0 0 14px rgba(0,255,65,0.12);
  opacity: 0.95;
}

.bufo-title__text {
  font-weight: 950;
}

.bufo-title__sub {
  font-size: 12px;
  letter-spacing: 1.2px;
  text-transform: none;
  color: rgba(255,255,255,0.68);
}

.bufo-title[id],
.bufo-h2[id] {
  scroll-margin-top: 90px;
}

.bufo-panel {
  position: relative;
  z-index: 2;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(0,0,0,0.20);
  box-shadow:
    0 18px 40px rgba(0,0,0,0.30),
    inset 0 1px 0 rgba(255,255,255,0.04);
  padding: 14px 14px 12px;
  overflow: hidden;
}

.bufo-panel::before {
  content: '';
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    radial-gradient(700px 260px at 100% 10%, rgba(34,197,94,0.08), transparent 60%),
    repeating-linear-gradient(90deg,
      rgba(0,0,0,0.00) 0px,
      rgba(0,0,0,0.00) 22px,
      rgba(0,0,0,0.12) 23px,
      rgba(0,0,0,0.00) 24px
    );
  opacity: 0.55;
}

.bufo-panel--tight {
  padding: 14px 14px 12px;
}

.bufo-leadnote {
  margin-top: 10px;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 1.35px;
  text-transform: uppercase;
  color: var(--bufo-text-2);
}

.bufo-leadnote__mark {
  color: rgba(0,255,65,0.92);
  margin-right: 8px;
}

.bufo-osint-list,
.bufo-lines,
.bufo-steps {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 0 !important;
}

.bufo-osint-list li,
.bufo-lines li,
.bufo-steps li {
  margin: 0 !important;
  padding: 0 !important;
}

.bufo-osint-list li::marker,
.bufo-lines li::marker,
.bufo-steps li::marker {
  content: "" !important;
}

.bufo-osint-list {
  display: grid;
  gap: 10px;
  margin: 0;
  padding-left: 0;
  list-style: none;
}

.bufo-osint-item {
  position: relative;
  padding: 12px 12px 12px 14px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.03);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.bufo-osint-item::after {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 3px;
  border-radius: 999px;
  background: rgba(0,255,65,0.55);
  opacity: 0.78;
}

.bufo-osint-text {
  font-family: var(--bufo-font);
  font-size: 15px;
  line-height: 1.55;
  color: rgba(255,255,255,0.80);
}

.bufo-pill--good {
  border-color: rgba(34,197,94,0.20);
  background: rgba(34,197,94,0.08);
  color: rgba(34,197,94,0.95);
}

.bufo-pill--warn {
  border-color: rgba(239, 68, 68, 0.18);
  background: rgba(239, 68, 68, 0.07);
  color: rgba(239, 68, 68, 0.92);
}

.bufo-pill--danger {
  border-color: rgba(239, 68, 68, 0.28);
  background: rgba(239, 68, 68, 0.10);
  color: rgba(239, 68, 68, 0.98);
}

.bufo-pill--neutral {
  border-color: rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.05);
  color: rgba(255,255,255,0.82);
}

.bufo-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  margin-top: 10px;
}

.bufo-tag {
  display: inline-flex;
  padding: 3px 8px;
  border-radius: 999px;
  border: 1px solid rgba(255,255,255,0.10);
  background: rgba(0,0,0,0.22);
  font-family: var(--font-mono);
  font-weight: 900;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  font-size: 10px;
  color: rgba(255,255,255,0.76);
}

.bufo-tag--fact {
  border-color: rgba(34,197,94,0.18);
  color: rgba(34,197,94,0.92);
  background: rgba(34,197,94,0.07);
}

.bufo-tag--doc {
  border-color: rgba(59,130,246,0.18);
  color: rgba(147,197,253,0.92);
  background: rgba(59,130,246,0.07);
}

.bufo-tag--test {
  border-color: rgba(168,85,247,0.18);
  color: rgba(216,180,254,0.92);
  background: rgba(168,85,247,0.07);
}

.bufo-tag--hyp {
  border-color: rgba(245,158,11,0.18);
  color: rgba(253,230,138,0.92);
  background: rgba(245,158,11,0.07);
}

.bufo-tag--op {
  border-color: rgba(239,68,68,0.16);
  color: rgba(252,165,165,0.92);
  background: rgba(239,68,68,0.06);
}

.bufo-footnote {
  margin: 12px 0 0;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 1.3px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.58);
}

.bufo-footnote__mark {
  color: rgba(34,197,94,0.90);
  margin-right: 8px;
}

.bufo-lines {
  display: grid;
  gap: 10px;
}

.bufo-lines li {
  position: relative;
  padding: 12px 12px 12px 40px !important;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(255,255,255,0.03);
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.04);
}

.bufo-lines li::before {
  content: "▸";
  position: absolute;
  left: 14px;
  top: 12px;
  font-family: var(--font-mono);
  font-weight: 950;
  color: rgba(0,255,65,0.90);
}

.bufo-lines li::after {
  content: "";
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 3px;
  border-radius: 999px;
  background: rgba(0,255,65,0.50);
  opacity: 0.75;
}

.bufo-steps {
  counter-reset: bufoStep;
  display: grid;
  gap: 10px;
}

.bufo-steps li {
  counter-increment: bufoStep;
  position: relative;
  padding: 12px 12px 12px 62px !important;
  border: 0px solid rgba(255,255,255,0.08);
}

.bufo-steps li::before {
  content: counter(bufoStep);
  position: absolute;
  left: 15px;
  top: 18px;
  width: 34px;
  height: 24px;
  border-radius: 8px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  font-family: var(--font-mono);
  font-weight: 950;
  letter-spacing: 1px;
  border: 1px solid rgba(0,255,65,0.18);
  background: rgba(0,255,65,0.08);
  color: rgba(0,255,65,0.95);
}

.bufo-table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
  font-family: var(--bufo-font);
  font-size: 14px;
  color: var(--bufo-text);
  display: block;
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

.bufo-table thead th {
  font-family: var(--font-mono);
  text-transform: uppercase;
  letter-spacing: 1.6px;
  font-size: 11px;
  color: rgba(255,255,255,0.70);
  border-bottom: 1px solid rgba(255,255,255,0.10);
  padding: 10px 10px;
}

.bufo-table td {
  border-bottom: 1px solid rgba(255,255,255,0.08);
  padding: 10px 10px;
  vertical-align: top;
}

.bufo-table--levels tbody tr:hover td {
  background: rgba(0,255,65,0.03);
}

.bufo-cta__sub {
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 1.2px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.56);
}

.bufo-osint-page .wp-block-separator {
  border-color: rgba(0,255,65,0.16);
  opacity: 0.75;
}

.bufo-directive {
  position: relative;
  max-width: 980px;
  margin-left: auto;
  margin-right: auto;
  padding-left: clamp(14px, 3vw, 28px);
  padding-right: clamp(14px, 3vw, 28px);
}

.bufo-directive .bufo-lead {
  margin: 0 0 18px;
  font-size: 16px;
  line-height: 1.78;
  color: rgba(255,255,255,0.82);
  max-width: 72ch;
}

.bufo-directive .bufo-sep {
  margin: 18px 0 26px;
  border: 0;
  height: 1px;
  background: linear-gradient(90deg, rgba(34,197,94,0), rgba(34,197,94,0.55), rgba(34,197,94,0));
  opacity: 0.85;
}

.bufo-directive .bufo-stamp {
  display: none !important;
}

.bufo-directive .bufo-dossier {
  margin: 0;
}

.bufo-directive .bufo-panel {
  padding: 14px 14px 12px;
}

.bufo-directive .bufo-osint-list {
  display: grid;
  gap: 10px;
}

.bufo-directive .bufo-osint-item {
  border-radius: 14px;
  background:
    radial-gradient(520px 140px at 12% 0%, rgba(34,197,94,0.10), transparent 60%),
    linear-gradient(180deg, rgba(255,255,255,0.035), rgba(0,0,0,0.18));
  border: 1px solid rgba(255,255,255,0.09);
  box-shadow: 0 16px 35px rgba(0,0,0,0.35);
}

.bufo-directive .bufo-osint-item:hover {
  border-color: rgba(34,197,94,0.22);
  transform: translateY(-1px);
  transition: transform .18s ease, border-color .18s ease, box-shadow .18s ease;
  box-shadow: 0 22px 50px rgba(0,0,0,0.45);
}

.bufo-directive .bufo-osint-text {
  color: rgba(255,255,255,0.82);
  line-height: 1.72;
  font-size: 16px;
  max-width: 78ch;
}

.bufo-directive .bufo-rank-list {
  counter-reset: bufo_rank;
  display: grid;
  gap: 10px;
  margin-top: 2px !important;
}

.bufo-directive .bufo-rank-list > li {
  counter-increment: bufo_rank;
  position: relative;
  padding: 12px 12px 12px 54px !important;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.09);
  background:
    radial-gradient(520px 160px at 14% 0%, rgba(34,197,94,0.08), transparent 60%),
    rgba(255,255,255,0.03);
}

.bufo-directive .bufo-rank-list > li::before {
  content: counter(bufo_rank);
  position: absolute;
  left: 12px;
  top: 12px;
  width: 30px;
  height: 30px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-family: var(--font-mono);
  font-weight: 950;
  letter-spacing: 1px;
  color: rgba(34,197,94,0.95);
  border: 1px solid rgba(34,197,94,0.22);
  background: rgba(34,197,94,0.08);
  box-shadow: 0 0 0 1px rgba(255,255,255,0.04) inset;
}

.bufo-directive .bufo-rank-list--compact > li {
  padding-left: 54px !important;
}

.bufo-directive .bufo-bullet-list {
  display: grid;
  gap: 10px;
}

.bufo-directive .bufo-bullet-list > li {
  position: relative;
  padding: 10px 12px 10px 34px !important;
  border-radius: 14px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(0,0,0,0.16);
}

.bufo-directive .bufo-bullet-list > li::before {
  content: "▸";
  position: absolute;
  left: 12px;
  top: 10px;
  font-size: 18px;
  color: rgba(34,197,94,0.95);
  text-shadow: 0 0 14px rgba(34,197,94,0.22);
}

.bufo-directive .bufo-cta {
  margin: 26px 0 0;
}

.bufo-directive .bufo-cta__btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  padding: 14px 16px;
  border-radius: 16px;
  border: 1px solid rgba(34,197,94,0.25);
  background:
    radial-gradient(520px 180px at 12% 0%, rgba(34,197,94,0.18), transparent 62%),
    rgba(34,197,94,0.10);
  color: rgba(34,197,94,0.96);
  text-decoration: none;
  font-family: var(--font-mono);
  font-weight: 950;
  letter-spacing: 2px;
  text-transform: uppercase;
  box-shadow: 0 18px 45px rgba(0,0,0,0.35);
}

.bufo-directive .bufo-cta__btn:hover {
  border-color: rgba(34,197,94,0.40);
  background:
    radial-gradient(560px 200px at 12% 0%, rgba(34,197,94,0.22), transparent 62%),
    rgba(34,197,94,0.12);
}

.bufo-directive .bufo-seal {
  margin: 10px 0 0;
  padding: 10px 12px;
  border-radius: 14px;
  border: 1px dashed rgba(34,197,94,0.22);
  background: rgba(0,0,0,0.20);
  font-family: var(--font-mono);
  letter-spacing: 1.2px;
  text-transform: uppercase;
  font-size: 11px;
  color: rgba(255,255,255,0.72);
  display: flex;
  gap: 10px;
  align-items: center;
  justify-content: center;
}

.bufo-directive .bufo-seal__dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(34,197,94,0.95);
  box-shadow: 0 0 0 2px rgba(10,12,15,0.85);
}

@media (max-width:640px){
  .bufo-directive .bufo-rank-list > li{
    padding-left: 52px !important;
  }
}

.bufo-dossier__top {
  position: relative;
  z-index: 2;
  gap: 10px;
  margin-bottom: 10px;
}

.bufo-kicker {
  margin: 0;
  font-family: var(--font-mono);
  letter-spacing: 2px;
  text-transform: uppercase;
  font-size: 11px;
  color: rgba(255,255,255,0.72);
  display: inline-flex;
  align-items: center;
  gap: 8px;
}

.bufo-kicker__dot {
  width: 8px;
  height: 8px;
  border-radius: 999px;
  background: rgba(34,197,94,0.95);
  box-shadow: 0 0 0 2px rgba(10,12,15,0.85);
}

.bufo-meta {
  margin: 0;
  font-family: var(--font-mono);
  letter-spacing: 1.6px;
  text-transform: uppercase;
  font-size: 10px;
  color: rgba(255,255,255,0.62);
}

.bufo-meta__label {
  opacity: 0.75;
}

.bufo-meta__value {
  font-weight: 900;
  color: rgba(255,255,255,0.78);
}

.bufo-meta__value--ok {
  color: rgba(34,197,94,0.92);
}

.bufo-meta__sep {
  opacity: 0.5;
  margin: 0 6px;
}

.bufo-stamp {
  position: absolute;
  right: 12px;
  top: 10px;
  transform: rotate(10deg);
  opacity: 0.85;
  pointer-events: none;
  user-select: none;
}

.bufo-stamp__inner {
  border: 2px solid rgba(34,197,94,0.45);
  border-radius: 10px;
  padding: 10px 10px;
  background: rgba(34,197,94,0.06);
  box-shadow: 0 10px 25px rgba(0,0,0,0.35);
}

.bufo-stamp__top {
  font-family: var(--font-mono);
  font-weight: 950;
  letter-spacing: 2.2px;
  text-transform: uppercase;
  font-size: 12px;
  color: rgba(34,197,94,0.95);
}

.bufo-stamp__mid {
  margin-top: 2px;
  font-family: var(--font-mono);
  font-weight: 950;
  letter-spacing: 4px;
  text-transform: uppercase;
  font-size: 11px;
  color: rgba(255,255,255,0.62);
}

.bufo-stamp__bot {
  margin-top: 6px;
  font-family: var(--font-mono);
  font-weight: 900;
  letter-spacing: 1.4px;
  text-transform: uppercase;
  font-size: 9px;
  color: rgba(255,255,255,0.52);
}

.bufo-osint-item::before {
  content: '';
  position: absolute;
  left: 0;
  top: 10px;
  bottom: 10px;
  width: 3px;
  background: rgba(34,197,94,0.65);
  border-radius: 999px;
  opacity: 0.75;
}

.bufo-directive .bufo-title {
  margin: 36px 0 14px;
  display: grid;
  grid-template-columns: auto 1fr;
  column-gap: 12px;
  row-gap: 6px;
  align-items: baseline;
  letter-spacing: 1.4px;
  line-height: 1.12;
}

.bufo-directive ul.wp-block-list,
.bufo-directive ol.wp-block-list {
  list-style: none !important;
  padding-left: 0 !important;
  margin: 0 !important;
  border: 0 !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: visible !important;
}

.bufo-directive ul.wp-block-list::before,
.bufo-directive ul.wp-block-list::after,
.bufo-directive ol.wp-block-list::before,
.bufo-directive ol.wp-block-list::after {
  content: none !important;
  display: none !important;
}

.bufo-directive .bufo-slab {
  position: relative;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,0.09);
  background:
    radial-gradient(760px 260px at 12% 0%, rgba(34,197,94,0.08), transparent 62%),
    linear-gradient(180deg, rgba(255,255,255,0.028), rgba(0,0,0,0.18));
  box-shadow: 0 18px 45px rgba(0,0,0,0.35);
  padding: 18px 18px 16px;
  overflow: hidden;
}

.bufo-directive .bufo-slab::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    repeating-linear-gradient(
    0deg,
    rgba(255,255,255,0.016) 0px,
    rgba(255,255,255,0.016) 1px,
    transparent 2px,
    transparent 7px
  );
  opacity: 0.32;
}

.bufo-directive .bufo-scanlist,
.bufo-directive .bufo-lines {
  display: grid;
  gap: 12px;
}

.bufo-directive .bufo-scanlist > li,
.bufo-directive .bufo-lines > li {
  position: relative;
  padding: 14px 14px 14px 22px !important;
  border-top: 1px solid rgba(255,255,255,0.06);
  border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.02);
  border-radius: 14px;
}

.bufo-directive .bufo-scanlist > li:first-child,
.bufo-directive .bufo-lines > li:first-child {
  border-top: 0;
}

.bufo-directive .bufo-scanlist > li::before,
.bufo-directive .bufo-lines > li::before {
  content: "";
  position: absolute;
  left: 10px;
  top: 12px;
  bottom: 12px;
  width: 3px;
  border-radius: 999px;
  background: rgba(34,197,94,0.65);
  opacity: 0.90;
}

.bufo-directive .bufo-scanlist > li {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 12px;
  align-items: start;
}

.bufo-directive .bufo-steps {
  counter-reset: bufoStep;
  display: grid;
  gap: 12px;
}

.bufo-directive .bufo-steps > li:first-child {
  border-top: 0;
}

.bufo-directive .bufo-steps > li::before {
  content: counter(bufoStep);
  position: absolute;
  left: 14px;
  top: 14px;
  width: 34px;
  height: 28px;
  border-radius: 10px;
  display: grid;
  place-items: center;
  font-family: var(--font-mono);
  font-weight: 950;
  letter-spacing: 1px;
  color: rgba(34,197,94,0.95);
  border: 1px solid rgba(34,197,94,0.22);
  background: rgba(34,197,94,0.08);
}

.bufo-directive .bufo-footnote {
  margin: 16px 0 0;
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 1.35px;
  text-transform: uppercase;
  color: rgba(255,255,255,0.60);
  line-height: 1.6;
}

.bufo-directive .bufo-footnote__mark {
  color: rgba(34,197,94,0.95);
  margin-right: 8px;
}

@media (max-width: 640px){
  .bufo-directive .bufo-slab{
    padding: 12px 12px 10px;
  }
  .bufo-directive .bufo-steps > li{
    padding-left: 54px !important;
  }
}

.bufo-loginmsg {
  margin-top: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255,255,255,0.08);
  background: rgba(0,0,0,0.22);
  font-family: var(--font-mono);
  font-size: 11px;
  letter-spacing: 1.6px;
  text-transform: uppercase;
  color: rgba(34,197,94,0.92);
  position: relative;
  overflow: hidden;
}

.bufo-loginmsg::before {
  content: "";
  position: absolute;
  inset: 0;
  pointer-events: none;
  background:
    repeating-linear-gradient(
    0deg,
    rgba(255,255,255,0.018) 0px,
    rgba(255,255,255,0.018) 1px,
    transparent 2px,
    transparent 7px
  );
  opacity: 0.45;
}

.bufo-loginmsg.is-error {
  color: rgba(239,68,68,0.92);
  border-color: rgba(239,68,68,0.22);
}

.bufo-loginmsg.is-ok {
  color: rgba(34,197,94,0.95);
  border-color: rgba(34,197,94,0.22);
}

.bufo-directive .bufo-title:first-of-type {
  margin-top: 18px;
}

.bufo-directive .bufo-title__num {
  font-size: 22px;
  line-height: 1;
}

.bufo-directive .bufo-title__text {
  font-size: 22px;
  line-height: 1.12;
}

.bufo-directive .bufo-title__sub {
  grid-column: 2 / -1;
  display: block;
  font-size: 13px;
  letter-spacing: 0.6px;
  color: rgba(255,255,255,0.70);
  line-height: 1.45;
  margin-top: 0;
}

.bufo-directive .bufo-pill {
  margin-top: 1px;
}

.bufo-directive .bufo-tags {
  margin-top: 12px;
}

.bufo-directive .bufo-steps > li {
  counter-increment: bufoStep;
  position: relative;
  padding: 16px 14px 16px 64px !important;
  border: 1px solid rgba(255,255,255,0.06);
  background: rgba(255,255,255,0.02);
  border-radius: 14px;
  line-height: 1.72;
  color: rgba(255,255,255,0.82);
}

.bufo-directive .bufo-steps > li:hover,
.bufo-directive .bufo-lines > li:hover,
.bufo-directive .bufo-scanlist > li:hover {
  border-color: rgba(34,197,94,0.16);
  background: rgba(34,197,94,0.04);
}

@media (max-width: 640px){
  .bufo-directive{
    padding-left: 14px;
    padding-right: 14px;
  }

  .bufo-directive .bufo-title{
    margin: 30px 0 12px;
    grid-template-columns: auto 1fr;
  }

  .bufo-directive .bufo-title__num{
    font-size: 20px;
  }

  .bufo-directive .bufo-title__text{
    font-size: 20px;
  }

  /* subtitle full width under title on mobile */
  .bufo-directive .bufo-title__sub{
    grid-column: 1 / -1;
    padding-left: 0;
  }

  .bufo-directive .bufo-slab{
    padding: 14px 14px 12px;
  }

  .bufo-directive .bufo-steps > li{
    padding-left: 62px !important;
  }
}

/* ── footer.css ── */
/* ═══════════════════════════════════════════════════════════════════════
   BROKEN UFO — OSINT COMMAND CENTER FOOTER
   Award-winning intelligence aesthetic · Cinematic design system
   ═══════════════════════════════════════════════════════════════════════ */

/* ── Transition gradient ─────────────────────────────────────────────── */
.bufo-footer-transition {
  height: 6rem;
  margin-bottom: -1px;
  background: linear-gradient(180deg, transparent 0%, var(--dark-matter) 100%);
}

/* ── Footer wrapper ──────────────────────────────────────────────────── */
.bufo-footer {
  position: relative;
  overflow: hidden;
  background: #06160b45;
  border-top: 1px solid var(--bufo-line-green);
  color: var(--bufo-text-3);
  font-family: var(--bufo-font);
}

.bufo-footer::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(34,197,94,.4) 15%, rgba(34,197,94,.9) 50%, rgba(34,197,94,.4) 85%, transparent 100%);
  z-index: 5;
}

/* ── Ambient layers ──────────────────────────────────────────────────── */
.bufo-footer__ambient { position: absolute; inset: 0; pointer-events: none; z-index: 0; }

.bufo-footer__grid-bg {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(34,197,94,.025) 1px, transparent 1px), linear-gradient(90deg, rgba(34,197,94,.025) 1px, transparent 1px);
  background-size: 48px 48px;
  mask-image: radial-gradient(ellipse 80% 60% at 30% 40%, rgba(0,0,0,.6) 0%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 80% 60% at 30% 40%, rgba(0,0,0,.6) 0%, transparent 100%);
  animation: bufo-ft-grid 30s linear infinite;
}
@keyframes bufo-ft-grid { to { transform: translate3d(-48px,-48px,0); } }

.bufo-footer__radar-sweep {
  position: absolute; bottom: -30%; right: -10%;
  width: 500px; height: 500px; border-radius: 50%;
  background: conic-gradient(from 0deg, transparent 0deg, rgba(34,197,94,.06) 30deg, transparent 60deg);
  animation: bufo-ft-radar 8s linear infinite;
  opacity: .5;
}
@keyframes bufo-ft-radar { to { transform: rotate(360deg); } }

.bufo-footer__noise {
  position: absolute; inset: 0; opacity: .015;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)'/%3E%3C/svg%3E");
  background-size: 128px 128px;
}


/* ═══════════════════════════════════════════════════════════════════════
   INTEL STATUS BAR
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-footer__intel-bar {
  position: relative; z-index: 2;
  background: rgba(0,0,0,.45);
  border-bottom: 1px solid var(--bufo-line);
  backdrop-filter: blur(8px); -webkit-backdrop-filter: blur(8px);
}
.bufo-footer__intel-bar-inner {
  max-width: 1280px; margin: 0 auto;
  padding: .625rem 1.5rem;
  display: flex; align-items: center; justify-content: space-between;
  gap: 1rem; flex-wrap: wrap;
}
.bufo-footer__intel-item { display: flex; align-items: center; gap: .5rem; }
.bufo-footer__intel-item--hide-mobile { display: none; }
@media (min-width:768px) { .bufo-footer__intel-item--hide-mobile { display: flex; } }

.bufo-footer__pulse {
  width: 7px; height: 7px; border-radius: 50%;
  background: var(--bufo-green);
  box-shadow: 0 0 10px var(--bufo-green-glow), 0 0 20px rgba(34,197,94,.15);
  animation: bufo-ft-pulse 2s ease-in-out infinite;
}
@keyframes bufo-ft-pulse {
  0%,100% { opacity: 1; box-shadow: 0 0 10px var(--bufo-green-glow); }
  50% { opacity: .4; box-shadow: 0 0 4px var(--bufo-green-glow); }
}

.bufo-footer__intel-label {
  font-family: var(--bufo-mono); font-size: .625rem; font-weight: 600;
  letter-spacing: .1em; text-transform: uppercase; color: var(--bufo-green);
}
.bufo-footer__intel-label--dim { color: var(--bufo-text-5); font-weight: 400; }
.bufo-footer__intel-value { font-family: var(--bufo-mono); font-size: .625rem; font-weight: 500; letter-spacing: .06em; color: var(--bufo-text-2); }
.bufo-footer__intel-value--green { color: var(--bufo-green); text-shadow: 0 0 8px var(--bufo-green-glow); }


/* ═══════════════════════════════════════════════════════════════════════
   MAIN BODY
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-footer__body { position: relative; z-index: 1; }
.bufo-footer__container { max-width: 1280px; margin: 0 auto; padding: 3rem 1.5rem 2rem; }
@media (min-width:768px) { .bufo-footer__container { padding: 3.5rem 2rem 2.5rem; } }

.bufo-footer__grid { display: grid; grid-template-columns: 1fr; gap: 2.5rem; }
@media (min-width:768px) { .bufo-footer__grid { grid-template-columns: 1fr 1fr; gap: 2.5rem; } }
@media (min-width:1024px) { .bufo-footer__grid { grid-template-columns: 1.5fr 1fr 1fr 1.3fr; gap: 2rem; } }


/* ═══════════════════════════════════════════════════════════════════════
   COL 1 — BRAND / HQ
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-footer__col--brand { display: flex; flex-direction: column; gap: 1.25rem; }

.bufo-footer__logo-block { display: flex; align-items: center; gap: .875rem; }
.bufo-footer__logo-mark {
  width: 44px; height: 44px; display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; color: var(--bufo-green);
  filter: drop-shadow(0 0 12px var(--bufo-green-glow));
  animation: bufo-ft-logo 4s ease-in-out infinite;
}
@keyframes bufo-ft-logo {
  0%,100% { filter: drop-shadow(0 0 12px var(--bufo-green-glow)); }
  50% { filter: drop-shadow(0 0 20px rgba(34,197,94,.5)); }
}
.bufo-footer__logo-img { width: 44px; height: auto; object-fit: contain; }
.bufo-footer__logo-svg { width: 44px; height: 44px; }

.bufo-footer__title {
  font-family: var(--bufo-display); font-size: 1.3rem; font-weight: 700;
  letter-spacing: .04em; color: var(--bufo-text); line-height: 1.1; margin: 0;
}
.bufo-footer__title span { color: var(--bufo-green); text-shadow: 0 0 20px var(--bufo-green-glow); }

.bufo-footer__subtitle {
  font-family: var(--bufo-mono); font-size: .6rem; font-weight: 400;
  letter-spacing: .14em; text-transform: uppercase; color: var(--bufo-text-4); margin: .15rem 0 0;
}

.bufo-footer__mission { font-size: .85rem; line-height: 1.65; color: var(--bufo-text-3); max-width: 420px; margin: 0; }
.bufo-footer__mission em { font-style: normal; color: var(--bufo-green); }


/* ── Stats grid ──────────────────────────────────────────────────────── */
.bufo-footer__stats-grid { display: grid; grid-template-columns: repeat(2,1fr); gap: .5rem; }
@media (min-width:480px) { .bufo-footer__stats-grid { grid-template-columns: repeat(4,1fr); } }
@media (min-width:1024px) { .bufo-footer__stats-grid { grid-template-columns: repeat(2,1fr); } }

.bufo-footer__stat-card {
  position: relative; display: flex; flex-direction: column; align-items: center; justify-content: center;
  padding: .75rem .5rem; border-radius: var(--bufo-radius-xs);
  background: var(--bufo-surface-2); border: 1px solid var(--bufo-line);
  transition: border-color .3s ease, box-shadow .3s ease; overflow: hidden;
}
.bufo-footer__stat-card::before {
  content: ''; position: absolute; top: 0; left: 0; right: 0; height: 2px;
  background: linear-gradient(90deg, transparent, var(--bufo-green), transparent);
  opacity: 0; transition: opacity .3s ease;
}
.bufo-footer__stat-card:hover { border-color: var(--bufo-line-green-2); box-shadow: 0 0 20px rgba(34,197,94,.08); }
.bufo-footer__stat-card:hover::before { opacity: .6; }

.bufo-footer__stat-number {
  font-family: var(--bufo-mono); font-size: 1.5rem; font-weight: 700;
  color: var(--bufo-green); line-height: 1; text-shadow: 0 0 20px var(--bufo-green-glow);
  letter-spacing: -.02em;
}
.bufo-footer__stat-name {
  font-family: var(--bufo-mono); font-size: .55rem; font-weight: 400;
  letter-spacing: .1em; text-transform: uppercase; color: var(--bufo-text-4); margin-top: .35rem;
}

/* Clearance badge */
.bufo-footer__clearance {
  display: inline-flex; align-items: center; gap: .5rem;
  padding: .4rem .85rem; border-radius: 100px;
  background: rgba(239,68,68,.06); border: 1px solid rgba(239,68,68,.2);
  align-self: flex-start;
}
.bufo-footer__clearance svg { width: 14px; height: 14px; color: rgba(239,68,68,.7); flex-shrink: 0; }
.bufo-footer__clearance span { font-family: var(--bufo-mono); font-size: .6rem; letter-spacing: .1em; text-transform: uppercase; color: rgba(239,68,68,.6); }
.bufo-footer__clearance strong { color: rgba(239,68,68,.85); }


/* ═══════════════════════════════════════════════════════════════════════
   NAVIGATION COLUMNS
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-footer__col-header { display: flex; align-items: center; gap: .6rem; margin-bottom: 1.25rem; }
.bufo-footer__col-header svg { width: 16px; height: 16px; color: var(--bufo-green); flex-shrink: 0; opacity: .7; }
.bufo-footer__col-header h4 {
  font-family: var(--bufo-mono); font-size: .65rem; font-weight: 700;
  letter-spacing: .16em; text-transform: uppercase; color: var(--bufo-text-2); margin: 0; white-space: nowrap;
}
.bufo-footer__col-line { flex: 1; height: 1px; background: linear-gradient(90deg, var(--bufo-line-green), transparent); min-width: 20px; }

.bufo-footer__nav { display: flex; flex-direction: column; gap: .25rem; }

.bufo-footer__link {
  display: flex; align-items: center; gap: .625rem;
  padding: .55rem .75rem; border-radius: var(--bufo-radius-xs);
  text-decoration: none; color: var(--bufo-text-3);
  transition: all .25s ease; border: 1px solid transparent; position: relative;
}
.bufo-footer__link:hover { color: var(--bufo-text); background: rgba(34,197,94,.04); border-color: var(--bufo-line-green); }

.bufo-footer__link-indicator {
  width: 6px; height: 6px; border-radius: 50%;
  background: var(--bufo-line-green-2); flex-shrink: 0; transition: all .25s ease;
}
.bufo-footer__link:hover .bufo-footer__link-indicator { background: var(--bufo-green); box-shadow: 0 0 8px var(--bufo-green-glow); }

.bufo-footer__link-text { font-size: .82rem; font-weight: 400; flex: 1; }

.bufo-footer__link-arrow {
  font-family: var(--bufo-mono); font-size: 1rem; color: var(--bufo-green);
  opacity: 0; transform: translateX(-4px); transition: all .25s ease;
}
.bufo-footer__link:hover .bufo-footer__link-arrow { opacity: .7; transform: translateX(0); }

/* Highlight link (Enviar Pista) */
.bufo-footer__link--highlight { background: rgba(251,191,36,.04); border-color: rgba(251,191,36,.12); }
.bufo-footer__link--highlight .bufo-footer__link-indicator {
  background: var(--bufo-amber); box-shadow: 0 0 6px rgba(251,191,36,.3);
  animation: bufo-ft-pulse 2s ease-in-out infinite;
}
.bufo-footer__link--highlight .bufo-footer__link-text { color: var(--bufo-text-2); font-weight: 500; }
.bufo-footer__link-badge { width: 16px; height: 16px; color: var(--bufo-amber); flex-shrink: 0; opacity: .7; }
.bufo-footer__link--highlight:hover { background: rgba(251,191,36,.08); border-color: rgba(251,191,36,.25); }


/* ═══════════════════════════════════════════════════════════════════════
   COMMUNICATION CHANNELS
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-footer__col--comms { display: flex; flex-direction: column; gap: .75rem; }

.bufo-footer__channel {
  display: flex; align-items: center; gap: .75rem;
  padding: .75rem; border-radius: var(--bufo-radius-sm);
  background: var(--bufo-surface-2); border: 1px solid var(--bufo-line);
  text-decoration: none; transition: all .3s ease;
  position: relative; overflow: hidden;
}
.bufo-footer__channel::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(400px circle at var(--mx,30%) var(--my,50%), rgba(34,197,94,.08), transparent 60%);
  opacity: 0; transition: opacity .3s ease; pointer-events: none;
}
.bufo-footer__channel:hover { border-color: var(--bufo-line-green-2); transform: translateY(-2px); box-shadow: 0 8px 24px -8px rgba(34,197,94,.12); }
.bufo-footer__channel:hover::before { opacity: 1; }

.bufo-footer__channel-icon {
  width: 36px; height: 36px; border-radius: var(--bufo-radius-xs);
  background: var(--bufo-green-dim); display: flex; align-items: center; justify-content: center;
  flex-shrink: 0; transition: background .3s ease;
}
.bufo-footer__channel:hover .bufo-footer__channel-icon { background: rgba(34,197,94,.18); }
.bufo-footer__channel-icon svg { width: 18px; height: 18px; color: var(--bufo-green); }

.bufo-footer__channel-info { flex: 1; min-width: 0; }
.bufo-footer__channel-name {
  display: block; font-size: .82rem; font-weight: 500; color: var(--bufo-text-2);
  transition: color .3s ease; white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
}
.bufo-footer__channel:hover .bufo-footer__channel-name { color: var(--bufo-green); }
.bufo-footer__channel-meta {
  display: block; font-family: var(--bufo-mono); font-size: .6rem;
  letter-spacing: .04em; color: var(--bufo-text-5); margin-top: .15rem;
}
.bufo-footer__channel-status {
  width: 8px; height: 8px; border-radius: 50%;
  background: var(--bufo-green); flex-shrink: 0; opacity: .5;
  box-shadow: 0 0 6px var(--bufo-green-glow); animation: bufo-ft-pulse 2.5s ease-in-out infinite;
}

/* Social grid */
.bufo-footer__social-grid { display: flex; flex-wrap: wrap; gap: .3rem; margin-top: .25rem; }

.bufo-footer__social {
  display: flex; align-items: center; gap: .4rem;
  padding: .45rem .6rem; border-radius: var(--bufo-radius-xs);
  background: var(--bufo-surface-2); border: 1px solid var(--bufo-line);
  text-decoration: none; color: var(--bufo-text-4); transition: all .25s ease;
}
.bufo-footer__social:hover {
  color: var(--bufo-green); border-color: var(--bufo-line-green-2);
  background: rgba(34,197,94,.06); transform: translateY(-2px);
  box-shadow: 0 6px 16px -6px rgba(34,197,94,.15);
}
.bufo-footer__social svg { width: 14px; height: 14px; fill: currentColor; flex-shrink: 0; }
.bufo-footer__social span { font-family: var(--bufo-mono); font-size: .6rem; font-weight: 500; letter-spacing: .04em; }

/* Secure notice */
.bufo-footer__secure-notice {
  display: flex; align-items: flex-start; gap: .5rem;
  padding: .65rem .75rem; border-radius: var(--bufo-radius-xs);
  background: rgba(0,0,0,.2); border: 1px solid var(--bufo-line); margin-top: .25rem;
}
.bufo-footer__secure-notice svg { width: 14px; height: 14px; color: var(--bufo-amber); flex-shrink: 0; opacity: .6; margin-top: 1px; }
.bufo-footer__secure-notice p { font-family: var(--bufo-mono); font-size: .6rem; line-height: 1.55; color: var(--bufo-text-5); margin: 0; }


/* ═══════════════════════════════════════════════════════════════════════
   LEGAL ROW
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-footer__legal-row { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid var(--bufo-line); }
.bufo-footer__legal-nav { display: flex; flex-wrap: wrap; align-items: center; justify-content: center; gap: .25rem .75rem; }
.bufo-footer__legal-nav a {
  font-family: var(--bufo-mono); font-size: .65rem; letter-spacing: .04em;
  color: var(--bufo-text-4); text-decoration: none; padding: .35rem .5rem;
  border-radius: var(--bufo-radius-xs); transition: color .25s ease, background .25s ease;
}
.bufo-footer__legal-nav a:hover { color: var(--bufo-green); background: rgba(34,197,94,.04); }
.bufo-footer__legal-sep { color: var(--bufo-text-5); font-size: .6rem; user-select: none; }


/* ═══════════════════════════════════════════════════════════════════════
   BOTTOM BAR
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-footer__bottom { position: relative; z-index: 2; background: rgba(0,0,0,.35); border-top: 1px solid var(--bufo-line); }
.bufo-footer__bottom-inner {
  max-width: 1280px; margin: 0 auto; padding: .875rem 1.5rem;
  display: flex; align-items: center; justify-content: space-between; gap: 1rem; flex-wrap: wrap;
}
@media (min-width:768px) { .bufo-footer__bottom-inner { padding: .875rem 2rem; } }

.bufo-footer__copyright { display: flex; flex-wrap: wrap; align-items: center; gap: .25rem .5rem; font-size: .75rem; color: var(--bufo-text-4); }
.bufo-footer__dot { color: rgba(34,197,94,.3); font-size: .5rem; }
.bufo-footer__heart { color: rgba(255,90,160,.85); }
.bufo-footer__credit { color: var(--bufo-text-5); }
.bufo-footer__credit strong { color: var(--bufo-text-3); }
.bufo-footer__credit a { color: var(--bufo-text-3); text-decoration: none; transition: color .25s ease; }
.bufo-footer__credit a:hover { color: var(--bufo-green); }
.bufo-footer__iv-i { color: var(--bufo-green); font-weight: 700; }

.bufo-footer__top-btn {
  display: inline-flex; align-items: center; gap: .5rem;
  padding: .5rem .875rem; border-radius: 100px;
  border: 1px solid var(--bufo-line-2); background: rgba(255,255,255,.03);
  color: var(--bufo-text-4); font-family: var(--bufo-mono); font-size: .65rem;
  font-weight: 500; letter-spacing: .06em; cursor: pointer;
  transition: all .25s ease; flex-shrink: 0;
}
.bufo-footer__top-btn:hover {
  color: var(--bufo-green); border-color: var(--bufo-line-green-2);
  background: rgba(34,197,94,.06); transform: translateY(-1px);
}
.bufo-footer__top-btn svg { width: 14px; height: 14px; transition: transform .25s ease; }
.bufo-footer__top-btn:hover svg { transform: translateY(-2px); }
.bufo-footer__top-btn:focus-visible { outline: 2px solid var(--bufo-green); outline-offset: 2px; }

/* ── Accessibility ───────────────────────────────────────────────────── */
.sr-only { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0,0,0,0); white-space: nowrap; border-width: 0; }

@media (prefers-reduced-motion: reduce) {
  .bufo-footer__grid-bg, .bufo-footer__radar-sweep, .bufo-footer__pulse,
  .bufo-footer__channel-status, .bufo-footer__logo-mark,
  .bufo-footer__link--highlight .bufo-footer__link-indicator { animation: none !important; }
  .bufo-footer__link, .bufo-footer__channel, .bufo-footer__social,
  .bufo-footer__stat-card, .bufo-footer__top-btn { transition-duration: 0s !important; }
}


/* ═══════════════════════════════════════════════════════════════════════
   CTA SECTION — Carried forward (cinematic subscription panel)
   ═══════════════════════════════════════════════════════════════════════ */
.bufo-cta-cinema {
  --bufo-surface: var(--bufo-surface-1);
  --bufo-surface-elevated: var(--bufo-surface-2);
  --bufo-border: var(--bufo-line);
  --bufo-border-active: var(--bufo-line-green-2);
  --bufo-text-primary: #f0f2f5;
  --bufo-text-secondary: #8893a4;
  --bufo-text-tertiary: #556070;
  --bufo-radius: var(--bufo-radius-md);
  position: relative; padding: 2rem 1.5rem; overflow: hidden;
}
.bufo-cta-cinema__scene {
  position: relative; max-width: 1240px; margin: 0 auto;
  border-radius: var(--bufo-radius); background: var(--bufo-surface);
  border: 1px solid var(--bufo-border); overflow: hidden;
  animation: bufo-scene-in .8s cubic-bezier(.16,1,.3,1) both;
}
.bufo-cta-cinema__scene::before {
  content: ''; position: absolute; inset: 0;
  background: radial-gradient(ellipse 80% 60% at 15% 50%, rgba(34,197,94,.07) 0%, transparent 70%),
    radial-gradient(ellipse 60% 80% at 85% 30%, rgba(255,58,140,.04) 0%, transparent 70%),
    radial-gradient(ellipse 40% 40% at 50% 100%, rgba(255,184,0,.03) 0%, transparent 60%);
  pointer-events: none; z-index: 0;
}
@keyframes bufo-scene-in { from { opacity: 0; transform: translateY(30px) scale(.98); } to { opacity: 1; transform: translateY(0) scale(1); } }

.bufo-cta-cinema__scanlines {
  position: absolute; inset: 0;
  background: repeating-linear-gradient(0deg, transparent 0px, transparent 2px, rgba(0,0,0,.03) 2px, rgba(0,0,0,.03) 4px);
  pointer-events: none; z-index: 1; opacity: .5;
}
.bufo-cta-cinema__grid {
  position: absolute; inset: 0;
  background-image: linear-gradient(rgba(34,197,94,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(34,197,94,.03) 1px, transparent 1px);
  background-size: 40px 40px; pointer-events: none; z-index: 1;
  mask-image: radial-gradient(ellipse 70% 70% at 20% 50%, black 0%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 70% 70% at 20% 50%, black 0%, transparent 100%);
  animation: bufo-grid-drift 20s linear infinite;
}
@keyframes bufo-grid-drift { to { transform: translate3d(-40px,-40px,0); } }

.bufo-cta-cinema__corner { position: absolute; width: 48px; height: 48px; z-index: 2; pointer-events: none; opacity: .25; }
.bufo-cta-cinema__corner--tl { top: 0; left: 0; border-top: 2px solid var(--bufo-green); border-left: 2px solid var(--bufo-green); }
.bufo-cta-cinema__corner--tr { top: 0; right: 0; border-top: 2px solid var(--bufo-green); border-right: 2px solid var(--bufo-green); }
.bufo-cta-cinema__corner--bl { bottom: 0; left: 0; border-bottom: 2px solid var(--bufo-green); border-left: 2px solid var(--bufo-green); }
.bufo-cta-cinema__corner--br { bottom: 0; right: 0; border-bottom: 2px solid var(--bufo-green); border-right: 2px solid var(--bufo-green); }

.bufo-cta-cinema__hud {
  display: flex; align-items: center; justify-content: space-between;
  padding: .75rem 1.5rem; border-bottom: 1px solid var(--bufo-border);
  background: rgba(0,0,0,.3); position: relative; z-index: 3; flex-wrap: wrap; gap: .5rem;
}
.bufo-cta-cinema__hud-left { display: flex; align-items: center; gap: .75rem; }
.bufo-cta-cinema__hud-signal { display: flex; align-items: center; gap: .4rem; font-family: var(--bufo-mono); font-size: .65rem; font-weight: 500; letter-spacing: .08em; text-transform: uppercase; color: var(--bufo-green); }
.bufo-cta-cinema__hud-signal .dot { width: 6px; height: 6px; border-radius: 50%; background: var(--bufo-green); box-shadow: 0 0 8px var(--bufo-green-glow); animation: bufo-pulse-dot 2s ease-in-out infinite; }
@keyframes bufo-pulse-dot { 0%,100% { opacity: 1; box-shadow: 0 0 8px var(--bufo-green-glow); } 50% { opacity: .5; box-shadow: 0 0 3px var(--bufo-green-glow); } }
.bufo-cta-cinema__hud-divider { width: 1px; height: 12px; background: var(--bufo-border); }
.bufo-cta-cinema__hud-tag { font-family: var(--bufo-mono); font-size: .6rem; font-weight: 400; letter-spacing: .06em; color: var(--bufo-text-tertiary); text-transform: uppercase; }
.bufo-cta-cinema__hud-right { display: flex; align-items: center; gap: 1rem; }
.bufo-cta-cinema__hud-coord { font-family: var(--bufo-mono); font-size: .6rem; color: var(--bufo-text-tertiary); letter-spacing: .04em; }

.bufo-cta-cinema__body { position: relative; z-index: 3; display: grid; grid-template-columns: 1fr; gap: 2.5rem; padding: 2.5rem 1.5rem; }
@media (min-width:768px) { .bufo-cta-cinema__body { grid-template-columns: 1.3fr 1fr; gap: 4rem; padding: 3.5rem 2.5rem; } }

.bufo-cta-cinema__intel { display: flex; flex-direction: column; gap: 1.5rem; }
.bufo-cta-cinema__classification { display: inline-flex; align-items: center; gap: .5rem; align-self: flex-start; padding: .35rem .85rem; border-radius: 100px; background: var(--bufo-green-dim); border: 1px solid rgba(34,197,94,.18); animation: bufo-fade-up .6s ease .2s both; }
.bufo-cta-cinema__classification-icon { width: 14px; height: 14px; color: var(--bufo-green); flex-shrink: 0; }
.bufo-cta-cinema__classification-text { font-family: var(--bufo-mono); font-size: .65rem; font-weight: 600; letter-spacing: .12em; text-transform: uppercase; color: var(--bufo-green); }

.bufo-cta-cinema__headline { font-family: var(--bufo-sans); font-size: clamp(1.6rem,4vw,2.4rem); font-weight: 700; line-height: 1.2; color: var(--bufo-text-primary); letter-spacing: -.02em; max-width: 540px; animation: bufo-fade-up .6s ease .35s both; }
.bufo-cta-cinema__headline em { font-style: normal; color: var(--bufo-green); text-shadow: 0 0 30px var(--bufo-green-glow); }

.bufo-cta-cinema__subtext { font-family: var(--bufo-sans); font-size: .95rem; font-weight: 300; line-height: 1.7; color: var(--bufo-text-secondary); max-width: 480px; animation: bufo-fade-up .6s ease .45s both; }

.bufo-cta-cinema__stats { display: flex; flex-wrap: wrap; gap: .5rem; margin-top: .25rem; animation: bufo-fade-up .6s ease .55s both; }
.bufo-cta-cinema__stat { display: flex; align-items: center; gap: .5rem; padding: .5rem .85rem; border-radius: var(--bufo-radius-xs); background: var(--bufo-surface-elevated); border: 1px solid var(--bufo-border); transition: border-color .3s ease; }
.bufo-cta-cinema__stat:hover { border-color: var(--bufo-border-active); }
.bufo-cta-cinema__stat-icon { width: 14px; height: 14px; color: var(--bufo-green); flex-shrink: 0; opacity: .7; }
.bufo-cta-cinema__stat-label { font-family: var(--bufo-mono); font-size: .68rem; font-weight: 400; letter-spacing: .03em; color: var(--bufo-text-secondary); }

.bufo-cta-cinema__actions { display: flex; flex-direction: column; gap: 1.25rem; justify-content: center; }

.bufo-cta-cinema__btn-primary {
  position: relative; display: flex; align-items: center; justify-content: center; gap: .75rem;
  width: 100%; padding: 1rem 1.75rem; border-radius: var(--bufo-radius-sm);
  border: 1px solid var(--bufo-green);
  background: linear-gradient(135deg, rgba(34,197,94,.14) 0%, rgba(34,197,94,.05) 100%);
  color: var(--bufo-green); font-family: var(--bufo-mono); font-size: .75rem; font-weight: 600;
  letter-spacing: .14em; text-transform: uppercase; text-decoration: none; cursor: pointer;
  overflow: hidden; transition: all .4s cubic-bezier(.16,1,.3,1); animation: bufo-fade-up .6s ease .5s both;
}
.bufo-cta-cinema__btn-primary::before { content: ''; position: absolute; inset: 0; background: linear-gradient(135deg, var(--bufo-green) 0%, rgba(34,197,94,.75) 100%); opacity: 0; transition: opacity .4s ease; }
.bufo-cta-cinema__btn-primary:hover { color: var(--bufo-surface); border-color: var(--bufo-green); box-shadow: 0 0 30px rgba(34,197,94,.3), 0 0 60px rgba(34,197,94,.12), inset 0 0 30px rgba(34,197,94,.06); transform: translateY(-1px); }
.bufo-cta-cinema__btn-primary:hover::before { opacity: 1; }
.bufo-cta-cinema__btn-primary span, .bufo-cta-cinema__btn-primary svg { position: relative; z-index: 1; }
.bufo-cta-cinema__btn-primary svg { width: 16px; height: 16px; transition: transform .3s ease; }
.bufo-cta-cinema__btn-primary:hover svg { transform: translateX(3px); }
.bufo-cta-cinema__btn-primary::after { content: ''; position: absolute; top: 0; left: -100%; width: 60%; height: 100%; background: linear-gradient(90deg, transparent, rgba(255,255,255,.08), transparent); z-index: 1; animation: bufo-shimmer 4s ease-in-out infinite; }
@keyframes bufo-shimmer { 0%,100% { left: -100%; } 50% { left: 150%; } }

.bufo-cta-cinema__btn-secondary {
  display: flex; align-items: center; justify-content: center; gap: .6rem;
  width: 100%; padding: .85rem 1.5rem; border-radius: var(--bufo-radius-sm);
  border: 1px solid var(--bufo-border); background: var(--bufo-surface-elevated);
  color: var(--bufo-text-secondary); font-family: var(--bufo-mono); font-size: .7rem; font-weight: 500;
  letter-spacing: .1em; text-transform: uppercase; text-decoration: none; cursor: pointer;
  transition: all .3s ease; animation: bufo-fade-up .6s ease .6s both;
}
.bufo-cta-cinema__btn-secondary:hover { border-color: var(--bufo-border-active); color: var(--bufo-text-primary); background: rgba(34,197,94,.05); }
.bufo-cta-cinema__btn-secondary svg { width: 15px; height: 15px; opacity: .6; transition: opacity .3s ease; }
.bufo-cta-cinema__btn-secondary:hover svg { opacity: 1; }

.bufo-cta-cinema__divider { display: flex; align-items: center; gap: .75rem; }
.bufo-cta-cinema__divider::before, .bufo-cta-cinema__divider::after { content: ''; flex: 1; height: 1px; background: var(--bufo-border); }
.bufo-cta-cinema__divider-text { font-family: var(--bufo-mono); font-size: .55rem; letter-spacing: .15em; text-transform: uppercase; color: var(--bufo-text-tertiary); white-space: nowrap; }

.bufo-cta-cinema__trust { padding: 1rem; border-radius: var(--bufo-radius-xs); background: rgba(0,0,0,.25); border: 1px solid var(--bufo-border); animation: bufo-fade-up .6s ease .7s both; }
.bufo-cta-cinema__trust-header { display: flex; align-items: center; gap: .4rem; margin-bottom: .6rem; }
.bufo-cta-cinema__trust-header svg { width: 12px; height: 12px; color: var(--bufo-amber); opacity: .7; }
.bufo-cta-cinema__trust-header span { font-family: var(--bufo-mono); font-size: .6rem; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--bufo-amber); opacity: .8; }
.bufo-cta-cinema__trust-text { font-family: var(--bufo-sans); font-size: .78rem; font-weight: 300; line-height: 1.6; color: var(--bufo-text-tertiary); }

.bufo-cta-cinema__status {
  display: flex; align-items: center; justify-content: space-between;
  padding: .6rem 1.5rem; border-top: 1px solid var(--bufo-border);
  background: rgba(0,0,0,.25); position: relative; z-index: 3; flex-wrap: wrap; gap: .5rem;
}
.bufo-cta-cinema__status-item { font-family: var(--bufo-mono); font-size: .55rem; letter-spacing: .06em; color: var(--bufo-text-tertiary); display: flex; align-items: center; gap: .35rem; }
.bufo-cta-cinema__status-item .bar { display: inline-flex; gap: 2px; align-items: flex-end; height: 10px; }
.bufo-cta-cinema__status-item .bar span { display: block; width: 2px; background: var(--bufo-green); border-radius: 1px; opacity: .5; }
.bufo-cta-cinema__status-item .bar span:nth-child(1) { height: 3px; animation: bufo-bar 1.2s ease infinite 0s; }
.bufo-cta-cinema__status-item .bar span:nth-child(2) { height: 6px; animation: bufo-bar 1.2s ease infinite .15s; }
.bufo-cta-cinema__status-item .bar span:nth-child(3) { height: 9px; animation: bufo-bar 1.2s ease infinite .3s; }
.bufo-cta-cinema__status-item .bar span:nth-child(4) { height: 5px; animation: bufo-bar 1.2s ease infinite .45s; }
@keyframes bufo-bar { 0%,100% { opacity: .3; } 50% { opacity: .9; } }
@keyframes bufo-fade-up { from { opacity: 0; transform: translateY(16px); } to { opacity: 1; transform: translateY(0); } }

.bufo-cta-cinema__btn-primary:focus-visible, .bufo-cta-cinema__btn-secondary:focus-visible { outline: 2px solid var(--bufo-green); outline-offset: 3px; }

@media (max-width:767px) {
  .bufo-cta-cinema { padding: 1.5rem 1rem; }
  .bufo-cta-cinema__body { padding: 2rem 1.25rem; }
  .bufo-cta-cinema__hud { padding: .6rem 1rem; }
  .bufo-cta-cinema__status { padding: .5rem 1rem; }
  .bufo-cta-cinema__hud-right { display: none; }
}

/* ── archive.css ── */
/* ════════════════════════════════════════════════════════════
   BROKEN UFO — ARCHIVE v3.6.0
   Cinematographic OSINT intelligence archive
   ════════════════════════════════════════════════════════════ */

.ba-archive { min-height: 100vh; }
.ba-wrap { max-width: 1280px; margin: 0 auto; padding-left: 1.25rem; padding-right: 1.25rem; }

/* ── HERO ── */
.ba-hero { position: relative; padding: 130px 0 60px; overflow: hidden; }
.ba-hero__bg { position: absolute; inset: 0; background: linear-gradient(160deg, var(--bufo-space) 0%, var(--bufo-surface-1) 50%, var(--bufo-space) 100%); }
.ba-hero__grad { position: absolute; inset: 0; background: radial-gradient(ellipse 70% 50% at 20% 30%, rgba(var(--ba-acr), 0.1) 0%, transparent 60%), radial-gradient(ellipse 50% 40% at 80% 70%, rgba(var(--ba-acr), 0.06) 0%, transparent 50%); }
.ba-hero__grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(var(--ba-acr), 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--ba-acr), 0.03) 1px, transparent 1px); background-size: 60px 60px; mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, black, transparent); -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, black, transparent); }
.ba-hero__scan { position: absolute; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, rgba(var(--ba-acr), 0.5), transparent); animation: ba-scan 5s ease-in-out infinite; }
@keyframes ba-scan { 0% { top: 0; opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { top: 100%; opacity: 0; } }

.ba-hero__orb { position: absolute; border-radius: 50%; filter: blur(80px); pointer-events: none; }
.ba-hero__orb--1 { width: 400px; height: 400px; top: -100px; left: -100px; background: rgba(var(--ba-acr), 0.08); animation: ba-orb1 20s ease-in-out infinite alternate; }
.ba-hero__orb--2 { width: 300px; height: 300px; bottom: -80px; right: -80px; background: rgba(var(--ba-acr), 0.05); animation: ba-orb2 25s ease-in-out infinite alternate; }
@keyframes ba-orb1 { 0% { transform: translate(0, 0); } 100% { transform: translate(60px, 40px); } }
@keyframes ba-orb2 { 0% { transform: translate(0, 0); } 100% { transform: translate(-40px, -30px); } }

/* Brackets */
.ba-bracket { position: absolute; width: 40px; height: 40px; z-index: 5; }
.ba-bracket::before, .ba-bracket::after { content: ''; position: absolute; background: rgba(var(--ba-acr), 0.35); }
.ba-bracket--tl { top: 20px; left: 20px; } .ba-bracket--tl::before { top: 0; left: 0; width: 24px; height: 2px; } .ba-bracket--tl::after { top: 0; left: 0; width: 2px; height: 24px; }
.ba-bracket--tr { top: 20px; right: 20px; } .ba-bracket--tr::before { top: 0; right: 0; width: 24px; height: 2px; } .ba-bracket--tr::after { top: 0; right: 0; width: 2px; height: 24px; }
.ba-bracket--bl { bottom: 20px; left: 20px; } .ba-bracket--bl::before { bottom: 0; left: 0; width: 24px; height: 2px; } .ba-bracket--bl::after { bottom: 0; left: 0; width: 2px; height: 24px; }
.ba-bracket--br { bottom: 20px; right: 20px; } .ba-bracket--br::before { bottom: 0; right: 0; width: 24px; height: 2px; } .ba-bracket--br::after { bottom: 0; right: 0; width: 2px; height: 24px; }

.ba-hero__content { position: relative; z-index: 10; }

/* Breadcrumb */
.ba-crumb { display: flex; align-items: center; gap: 10px; margin-bottom: 28px; font-size: 13px; font-family: var(--bufo-mono); }
.ba-crumb a { display: flex; align-items: center; gap: 6px; color: var(--bufo-text-4); transition: color .2s; text-decoration: none; }
.ba-crumb a:hover { color: var(--ba-ac); }
.ba-crumb a svg { color: var(--ba-ac); opacity: .6; }
.ba-crumb > span:last-child { color: var(--bufo-text-2); }

/* Tag badge */
.ba-tag { display: inline-flex; align-items: center; gap: 8px; padding: 8px 16px; background: rgba(var(--ba-acr), 0.08); border: 1px solid rgba(var(--ba-acr), 0.25); border-radius: 6px; font-family: var(--bufo-mono); font-size: 11px; font-weight: 700; color: var(--ba-ac); text-transform: uppercase; letter-spacing: 1.5px; margin-bottom: 16px; }

.ba-hero__title { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 800; color: var(--bufo-text); line-height: 1.08; margin: 0 0 12px; letter-spacing: -0.02em; }
.ba-hero__sub { font-family: var(--bufo-mono); font-size: 13px; color: var(--ba-ac); text-transform: uppercase; letter-spacing: 0.1em; margin-bottom: 8px; opacity: .7; }
.ba-hero__desc { font-size: 1rem; color: var(--bufo-text-3); max-width: 600px; line-height: 1.6; margin-bottom: 0; }

/* Agent (author) */
.ba-agent { display: flex; align-items: flex-start; gap: 28px; }
@media(max-width:640px) { .ba-agent { flex-direction: column; align-items: center; text-align: center; } }
.ba-agent__av { position: relative; flex-shrink: 0; }
.ba-agent__av img { width: 110px; height: 110px; border-radius: 20px; object-fit: cover; }
.ba-agent__ring { position: absolute; inset: -5px; border: 2px solid rgba(var(--ba-acr), 0.3); border-radius: 24px; }
.ba-agent__status { position: absolute; bottom: 4px; right: 4px; width: 18px; height: 18px; background: var(--ba-ac); border: 3px solid var(--bufo-space); border-radius: 50%; }
.ba-agent__info { flex: 1; }
.ba-agent__stats { display: flex; gap: 28px; margin-top: 18px; }
.ba-agent__val { display: block; font-size: 1.6rem; font-weight: 700; color: var(--ba-ac); }
.ba-agent__lbl { display: block; font-size: 11px; color: var(--bufo-text-4); text-transform: uppercase; letter-spacing: .5px; }

/* HUD Stats */
.ba-hud { display: flex; flex-wrap: wrap; align-items: center; gap: 20px; margin-top: 36px; padding: 16px 20px; background: rgba(0,0,0,0.35); border: 1px solid rgba(var(--ba-acr), 0.12); border-radius: 12px; backdrop-filter: blur(8px); }
.ba-hud__item { display: flex; align-items: center; gap: 10px; font-size: 13px; color: var(--bufo-text-3); }
.ba-hud__item strong { color: var(--bufo-text); font-weight: 600; }
.ba-hud__pulse { position: relative; width: 10px; height: 10px; border-radius: 50%; background: var(--ba-ac); box-shadow: 0 0 10px rgba(var(--ba-acr), .5); flex-shrink: 0; }
.ba-hud__pulse::after { content: ''; position: absolute; inset: -4px; border-radius: 50%; border: 1px solid rgba(var(--ba-acr), .3); animation: ba-hpulse 2s ease-out infinite; }
@keyframes ba-hpulse { 0% { transform: scale(.7); opacity: 1; } 100% { transform: scale(1.8); opacity: 0; } }
.ba-hud__dot { width: 8px; height: 8px; border-radius: 50%; flex-shrink: 0; }
.ba-hud__dot--on { background: var(--ba-ac); box-shadow: 0 0 8px rgba(var(--ba-acr), .5); }
.ba-hud__div { width: 1px; height: 32px; background: rgba(var(--ba-acr), .12); }
@media(max-width:640px) { .ba-hud__div { display: none; } .ba-hud { gap: 12px; } }

/* Perf tiers */
.perf-tier-2 .ba-hud, .perf-tier-3 .ba-hud { backdrop-filter: none; background: rgba(0,0,0,.5); }
.perf-tier-2 .ba-hero__orb, .perf-tier-3 .ba-hero__orb { display: none; }
.perf-tier-3 .ba-hero__scan, .perf-tier-3 .ba-hud__pulse::after { animation: none; }

/* ── BODY ── */
.ba-body { background: var(--bufo-space); padding: 3rem 0 4rem; }

.ba-filter { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; padding-bottom: 20px; margin-bottom: 28px; border-bottom: 1px solid var(--bufo-line); }
.ba-filter__actions { display: flex; align-items: center; gap: 10px; }
.ba-filter__info { font-family: var(--bufo-mono); font-size: 12px; color: var(--bufo-text-4); letter-spacing: .04em; }
.ba-filter__rss { display: inline-flex; align-items: center; gap: 6px; padding: 8px 14px; background: var(--bufo-glass); border: 1px solid var(--bufo-line-2); border-radius: 8px; font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-4); text-decoration: none; transition: all .2s; }
.ba-filter__rss:hover { border-color: rgba(var(--ba-acr), .3); color: var(--ba-ac); }
.ba-filter__rss svg { color: var(--ba-ac); opacity: .6; }

/* ── GRID ── */
.ba-grid { display: grid; grid-template-columns: 1fr; gap: 20px; }
@media(min-width:640px) { .ba-grid { grid-template-columns: repeat(2, 1fr); } }
@media(min-width:1024px) { .ba-grid { grid-template-columns: repeat(3, 1fr); } }

/* ── CARD ── */
.ba-card { position: relative; border-radius: 14px; overflow: hidden; background: rgba(255,255,255,.02); border: 1px solid var(--bufo-line); transition: all .35s cubic-bezier(.16,1,.3,1); opacity: 0; transform: translateY(24px); }
.ba-card.ba-revealed { animation: ba-cardIn .6s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes ba-cardIn { to { opacity: 1; transform: translateY(0); } }

.ba-card:hover { border-color: rgba(var(--ba-acr), .25); transform: translateY(-4px); box-shadow: 0 16px 48px rgba(0,0,0,.4), 0 0 30px rgba(var(--ba-acr), .06); }
.ba-card.ba-revealed:hover { transform: translateY(-4px); }
.ba-card__link { display: block; text-decoration: none; color: inherit; }
.ba-card__img { position: relative; height: 190px; overflow: hidden; }
.ba-card__img img { width: 100%; height: 100%; object-fit: cover; transition: transform .6s ease; }
.ba-card:hover .ba-card__img img { transform: scale(1.06); }
.ba-card__ph { width: 100%; height: 100%; background: linear-gradient(135deg, var(--bufo-surface-1), var(--bufo-surface-2)); display: flex; align-items: center; justify-content: center; }
.ba-card__ov { position: absolute; inset: 0; background: linear-gradient(to top, rgba(5,5,8,.8) 0%, rgba(5,5,8,.2) 50%, transparent 100%); }
.ba-card__fb { position: absolute; top: 12px; left: 12px; padding: 6px 12px; background: rgba(0,0,0,.7); backdrop-filter: blur(8px); border: 1px solid rgba(var(--ba-acr), .4); border-radius: 6px; font-family: var(--bufo-mono); font-size: 10px; font-weight: 700; color: var(--ba-ac); letter-spacing: .1em; display: flex; align-items: center; gap: 6px; }
.ba-card__fp { width: 6px; height: 6px; border-radius: 50%; background: var(--ba-ac); animation: ba-fpulse 2s ease-out infinite; }
@keyframes ba-fpulse { 0%,100% { box-shadow: 0 0 0 0 rgba(var(--ba-acr),.4); } 50% { box-shadow: 0 0 0 6px rgba(var(--ba-acr),0); } }

/* Card corners */
.ba-card__corner { position: absolute; width: 24px; height: 24px; }
.ba-card__corner::before, .ba-card__corner::after { content: ''; position: absolute; background: rgba(var(--ba-acr), .4); transition: background .3s; }
.ba-card:hover .ba-card__corner::before, .ba-card:hover .ba-card__corner::after { background: rgba(var(--ba-acr), .7); }
.ba-card__corner--tl { top: 8px; left: 8px; } .ba-card__corner--tl::before { width: 12px; height: 1px; } .ba-card__corner--tl::after { width: 1px; height: 12px; }
.ba-card__corner--br { bottom: 8px; right: 8px; } .ba-card__corner--br::before { bottom: 0; right: 0; width: 12px; height: 1px; } .ba-card__corner--br::after { bottom: 0; right: 0; width: 1px; height: 12px; }

/* Card hover glow */
.ba-card__glow { position: absolute; inset: -1px; border-radius: 14px; pointer-events: none; opacity: 0; transition: opacity .4s; background: linear-gradient(135deg, rgba(var(--ba-acr), .06), transparent 50%, rgba(var(--ba-acr), .03)); }
.ba-card:hover .ba-card__glow { opacity: 1; }

.ba-card__body { padding: 18px 20px 20px; }
.ba-card__top { display: flex; align-items: center; justify-content: space-between; gap: 8px; margin-bottom: 10px; }
.ba-card__cat { padding: 3px 10px; background: rgba(var(--ba-acr), .1); border-radius: 4px; font-family: var(--bufo-mono); font-size: 10px; font-weight: 600; color: var(--ba-ac); text-transform: uppercase; letter-spacing: .5px; }
.ba-card__id { font-family: var(--bufo-mono); font-size: 10px; color: var(--bufo-text-5); }
.ba-card__title { font-size: 1.05rem; font-weight: 600; color: var(--bufo-text); line-height: 1.4; margin: 0 0 10px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; transition: color .2s; }
.ba-card:hover .ba-card__title { color: var(--ba-ac); }
.ba-card__exc { font-size: 13px; color: var(--bufo-text-4); line-height: 1.5; margin: 0 0 12px; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.ba-card__bot { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-5); }
.ba-card__date { display: flex; align-items: center; gap: 4px; }
.ba-card__date svg { color: var(--ba-ac); opacity: .5; width: 13px; height: 13px; }

/* Featured card */
.ba-card--feat { grid-column: 1 / -1; }
.ba-card--feat .ba-card__img { max-height: 400px; }
@media(min-width:768px) {
  .ba-card--feat .ba-card__link { display: grid; grid-template-columns: 1fr 1fr; }
  .ba-card--feat .ba-card__img { height: 100%; min-height: 300px; }
  .ba-card--feat .ba-card__body { display: flex; flex-direction: column; justify-content: center; padding: 28px 32px; }
  .ba-card--feat .ba-card__title { font-size: 1.4rem; -webkit-line-clamp: 3; }
}

/* ── PAGINATION ── */
.ba-pag { margin-top: 48px; padding-top: 28px; border-top: 1px solid var(--bufo-line); display: flex; justify-content: center; }
.ba-pag ul { display: flex; align-items: center; gap: 6px; list-style: none; padding: 0; margin: 0; }
.ba-pag li a, .ba-pag li span { display: flex; align-items: center; justify-content: center; min-width: 42px; height: 42px; padding: 0 12px; background: var(--bufo-glass); border: 1px solid var(--bufo-line); border-radius: 10px; font-family: var(--bufo-mono); font-size: 13px; color: var(--bufo-text-3); transition: all .2s; text-decoration: none; }
.ba-pag li a:hover { border-color: rgba(var(--ba-acr), .3); color: var(--ba-ac); }
.ba-pag li span.current { background: rgba(var(--ba-acr), .12); border-color: rgba(var(--ba-acr), .35); color: var(--ba-ac); }
.ba-pag li.dots span { background: transparent; border: none; min-width: auto; padding: 0 6px; }

/* ── EMPTY STATE ── */
.ba-empty { display: flex; flex-direction: column; align-items: center; text-align: center; padding: 80px 20px; background: var(--bufo-glass); border: 1px dashed var(--bufo-line-2); border-radius: 20px; }
.ba-empty h2 { font-size: 1.5rem; font-weight: 600; color: var(--bufo-text); margin: 20px 0 8px; }
.ba-empty p { font-size: 14px; color: var(--bufo-text-4); max-width: 400px; margin: 0 0 24px; }
.ba-empty__btn { padding: 12px 24px; background: rgba(var(--ba-acr), .1); border: 1px solid rgba(var(--ba-acr), .25); border-radius: 10px; font-size: 13px; font-weight: 500; color: var(--bufo-text); text-decoration: none; transition: all .2s; }
.ba-empty__btn:hover { background: rgba(var(--ba-acr), .2); border-color: var(--ba-ac); }

/* ── VIEW TOGGLE ── */
.ba-viewtoggle { display: flex; align-items: center; gap: 2px; padding: 3px; background: rgba(0,0,0,.4); border: 1px solid var(--bufo-line); border-radius: 10px; }
.ba-viewtoggle__btn { display: flex; align-items: center; justify-content: center; width: 36px; height: 34px; border: none; border-radius: 8px; background: transparent; color: var(--bufo-text-5); cursor: pointer; transition: all .25s ease; }
.ba-viewtoggle__btn:hover { color: var(--bufo-text-3); background: rgba(255,255,255,.04); }
.ba-viewtoggle__btn--active { background: rgba(var(--ba-acr), .12); color: var(--ba-ac); box-shadow: 0 0 12px rgba(var(--ba-acr), .1); }

/* ── HIDDEN VIEW ── */
.ba-view--hidden { display: none !important; }

/* ── ARCHIVE SEARCH BAR ── */
.ba-search { margin-top: 24px; }
.ba-search__form {
  display: flex;
  align-items: center;
  gap: 0;
  background: rgba(0,0,0,.45);
  border: 1px solid rgba(var(--ba-acr), .15);
  border-radius: 14px;
  padding: 4px;
  transition: border-color .3s, box-shadow .3s;
}
.ba-search__form:focus-within {
  border-color: rgba(var(--ba-acr), .4);
  box-shadow: 0 0 24px rgba(var(--ba-acr), .08), 0 0 0 1px rgba(var(--ba-acr), .1) inset;
}
.ba-search__icon {
  display: flex; align-items: center; justify-content: center;
  width: 44px; flex-shrink: 0; color: rgba(var(--ba-acr), .5);
}
.ba-search__input {
  flex: 1; min-width: 0;
  background: transparent; border: none; outline: none;
  font-family: var(--bufo-mono); font-size: 13px; letter-spacing: .02em;
  color: var(--bufo-text); padding: 10px 0;
}
.ba-search__input::placeholder { color: var(--bufo-text-5); }
.ba-search__kbd {
  display: none; padding: 3px 8px;
  font-family: var(--bufo-mono); font-size: 10px; font-weight: 600;
  color: var(--bufo-text-5); background: rgba(255,255,255,.04);
  border: 1px solid rgba(255,255,255,.08); border-radius: 6px;
  letter-spacing: .5px; margin-right: 8px;
}
@media(min-width:768px) { .ba-search__kbd { display: inline-block; } }
.ba-search__btn {
  display: flex; align-items: center; justify-content: center;
  width: 40px; height: 40px; flex-shrink: 0;
  background: rgba(var(--ba-acr), .1); border: 1px solid rgba(var(--ba-acr), .2);
  border-radius: 10px; color: var(--ba-ac); cursor: pointer;
  transition: all .25s;
}
.ba-search__btn:hover { background: rgba(var(--ba-acr), .18); }

/* ════════════════════════════════════════════════════════════════════════════
   LIST VIEW — CIA/OSINT Dossier Table
   ════════════════════════════════════════════════════════════════════════════ */

.ba-list { border: 1px solid var(--bufo-line); border-radius: 16px; overflow: hidden; background: rgba(0,0,0,.25); backdrop-filter: blur(8px); }

/* ── Grid: default (non-personalidades) — 3 data cols ── */
.ba-list__header,
.ba-list__row {
  display: grid;
  grid-template-columns: 2.5fr 1fr 1.4fr 36px;
  align-items: center;
  gap: 0;
  padding: 14px 24px;
}

/* ── Grid per CPT variant — name + 4 data cols + dates + arrow = 7 cols ── */
.ba-list--personas .ba-list__header,
.ba-list--personas .ba-list__row {
  grid-template-columns: 2fr 1fr 0.6fr 1.1fr 0.8fr 1.2fr 36px;
}
.ba-list--expedientes .ba-list__header,
.ba-list--expedientes .ba-list__row {
  grid-template-columns: 2fr 0.9fr 0.9fr 1.1fr 0.8fr 1.2fr 36px;
}
.ba-list--documentos .ba-list__header,
.ba-list--documentos .ba-list__row {
  grid-template-columns: 2fr 0.8fr 1fr 0.9fr 1fr 1.2fr 36px;
}
.ba-list--testimonios .ba-list__header,
.ba-list--testimonios .ba-list__row {
  grid-template-columns: 2fr 1fr 1fr 0.8fr 0.8fr 1.2fr 36px;
}
.ba-list--eventos .ba-list__header,
.ba-list--eventos .ba-list__row {
  grid-template-columns: 2fr 0.8fr 1.1fr 1fr 0.9fr 1.2fr 36px;
}

/* ── Header ── */
.ba-list__header { background: rgba(var(--ba-acr), .04); border-bottom: 1px solid rgba(var(--ba-acr), .12); padding-top: 12px; padding-bottom: 12px; }
.ba-list__hcol { font-family: var(--bufo-mono); font-size: 10px; font-weight: 700; color: rgba(var(--ba-acr), .6); text-transform: uppercase; letter-spacing: 1.5px; white-space: nowrap; padding: 0 8px; }
.ba-list__hcol--name { padding-left: 0; }

/* ── Row ── */
.ba-list__row { padding-top: 16px; padding-bottom: 16px; border-bottom: 1px solid rgba(255,255,255,.03); text-decoration: none; color: inherit; transition: background .3s ease, box-shadow .3s ease; opacity: 0; transform: translateY(16px); position: relative; }
.ba-list__row.ba-revealed { animation: ba-listIn .5s cubic-bezier(.16,1,.3,1) forwards; }
@keyframes ba-listIn { to { opacity: 1; transform: translateY(0); } }

.ba-list__row::before { content: ''; position: absolute; left: 0; top: 0; width: 3px; height: 100%; background: var(--ba-ac); opacity: 0; transition: opacity .3s; border-radius: 0 2px 2px 0; }
.ba-list__row:hover { background: rgba(var(--ba-acr), .04); }
.ba-list__row:hover::before { opacity: 1; }
.ba-list__row:last-child { border-bottom: none; }

/* ── Col ── */
.ba-list__col { padding: 0 8px; min-width: 0; }
.ba-list__col--name { display: flex; align-items: center; gap: 14px; padding-left: 0; }
.ba-list__col--arrow { display: flex; align-items: center; justify-content: center; color: var(--bufo-text-5); transition: color .2s, transform .2s; }
.ba-list__row:hover .ba-list__col--arrow { color: var(--ba-ac); transform: translateX(3px); }

/* ── Avatar ── */
.ba-list__avatar { position: relative; width: 48px; height: 48px; flex-shrink: 0; border-radius: 12px; overflow: hidden; }
.ba-list__avatar img { width: 100%; height: 100%; object-fit: cover; }
.ba-list__avatar-ph { width: 100%; height: 100%; display: flex; align-items: center; justify-content: center; background: linear-gradient(135deg, var(--bufo-surface-1), var(--bufo-surface-2)); }
.ba-list__avatar-ring { position: absolute; inset: -2px; border: 1px solid rgba(var(--ba-acr), .2); border-radius: 14px; pointer-events: none; transition: border-color .3s; }
.ba-list__row:hover .ba-list__avatar-ring { border-color: rgba(var(--ba-acr), .5); }

/* ── Name block ── */
.ba-list__nameblock { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
.ba-list__id { font-family: var(--bufo-mono); font-size: 10px; color: var(--bufo-text-5); letter-spacing: .5px; }
.ba-list__name { font-size: 15px; font-weight: 600; color: var(--bufo-text); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: color .2s; line-height: 1.3; }
.ba-list__row:hover .ba-list__name { color: var(--ba-ac); }
.ba-list__role { font-size: 12px; color: var(--bufo-text-4); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }

/* ── Data cells ── */
.ba-list__natbadge { display: inline-flex; align-items: center; padding: 4px 12px; background: rgba(var(--ba-acr), .08); border: 1px solid rgba(var(--ba-acr), .15); border-radius: 6px; font-family: var(--bufo-mono); font-size: 11px; color: var(--ba-ac); letter-spacing: .3px; white-space: nowrap; }
.ba-list__agetxt { font-family: var(--bufo-mono); font-size: 14px; color: var(--bufo-text-2); font-weight: 700; }
.ba-list__birthtxt { font-size: 12px; color: var(--bufo-text-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.ba-list__dim { color: var(--bufo-text-5); font-size: 12px; }

/* ── Generic cell text ── */
.ba-list__celltxt { font-size: 12px; color: var(--bufo-text-3); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.ba-list__codetxt { font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-4); letter-spacing: .3px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; display: block; }
.ba-list__datetxt { font-family: var(--bufo-mono); font-size: 12px; color: var(--bufo-text-2); font-weight: 600; }

/* ── Status badge ── */
.ba-status { display: inline-flex; align-items: center; gap: 6px; padding: 4px 12px; border-radius: 20px; font-family: var(--bufo-mono); font-size: 10px; font-weight: 600; letter-spacing: .5px; text-transform: uppercase; white-space: nowrap; }
.ba-status__dot { width: 6px; height: 6px; border-radius: 50%; flex-shrink: 0; }
.ba-status--active { background: rgba(34,197,94,.08); color: #22c55e; border: 1px solid rgba(34,197,94,.2); }
.ba-status--active .ba-status__dot { background: #22c55e; box-shadow: 0 0 6px rgba(34,197,94,.5); }
.ba-status--dead { background: rgba(239,68,68,.08); color: #ef4444; border: 1px solid rgba(239,68,68,.2); }
.ba-status--dead .ba-status__dot { background: #ef4444; }
.ba-status--unknown { background: rgba(251,191,36,.06); color: #fbbf24; border: 1px solid rgba(251,191,36,.15); }
.ba-status--unknown .ba-status__dot { background: #fbbf24; }
.ba-status--warning { background: rgba(251,191,36,.06); color: #fbbf24; border: 1px solid rgba(251,191,36,.15); }
.ba-status--warning .ba-status__dot { background: #fbbf24; box-shadow: 0 0 6px rgba(251,191,36,.4); }
.ba-status--danger { background: rgba(239,68,68,.06); color: #ef4444; border: 1px solid rgba(239,68,68,.15); }
.ba-status--danger .ba-status__dot { background: #ef4444; box-shadow: 0 0 6px rgba(239,68,68,.4); }

/* ── Date pair ── */
.ba-list__datepair { display: flex; flex-direction: column; gap: 3px; }
.ba-list__dateitem { display: flex; align-items: center; gap: 5px; font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-3); white-space: nowrap; }
.ba-list__dateitem svg { color: var(--ba-ac); opacity: .5; flex-shrink: 0; }
.ba-list__dateitem--mod { color: var(--bufo-text-5); }
.ba-list__dateitem--mod svg { opacity: .3; }

/* ── Hide-tablet utility ── */
@media(max-width:1200px) {
  .ba-list__col--hide-tablet,
  .ba-list__hcol--hide-tablet { display: none; }
  .ba-list--personas .ba-list__header,
  .ba-list--personas .ba-list__row { grid-template-columns: 2fr 1fr 0.7fr 0.9fr 1.2fr 36px; }
  .ba-list--expedientes .ba-list__header,
  .ba-list--expedientes .ba-list__row { grid-template-columns: 2fr 0.9fr 0.9fr 0.9fr 1.2fr 36px; }
  .ba-list--documentos .ba-list__header,
  .ba-list--documentos .ba-list__row { grid-template-columns: 2fr 0.8fr 1fr 0.9fr 1.2fr 36px; }
  .ba-list--eventos .ba-list__header,
  .ba-list--eventos .ba-list__row { grid-template-columns: 2fr 0.8fr 1.1fr 1fr 1.2fr 36px; }
}

/* ── Responsive: mobile ── */
@media(max-width:768px) {
  .ba-list__header { display: none; }
  .ba-list__row,
  .ba-list--personas .ba-list__row,
  .ba-list--expedientes .ba-list__row,
  .ba-list--documentos .ba-list__row,
  .ba-list--testimonios .ba-list__row,
  .ba-list--eventos .ba-list__row {
    grid-template-columns: 1fr;
    gap: 8px;
    padding: 18px 20px;
  }
  .ba-list__col { padding: 0; }
  .ba-list__col--arrow { display: none; }
  .ba-list__col--hide-tablet { display: block; }
  .ba-list__col:not(.ba-list__col--name) { padding-left: 62px; }
  .ba-list__col[data-label]::before {
    content: attr(data-label) ': ';
    font-family: var(--bufo-mono);
    font-size: 10px;
    color: var(--bufo-text-5);
    text-transform: uppercase;
    letter-spacing: .5px;
    margin-right: 6px;
  }
  .ba-list__datepair { flex-direction: row; gap: 12px; }
}

@media(max-width:480px) {
  .ba-list { border-radius: 12px; }
  .ba-list__row { padding: 14px 16px; }
  .ba-list__avatar { width: 40px; height: 40px; border-radius: 10px; }
  .ba-list__col:not(.ba-list__col--name) { padding-left: 54px; }
}

/* ── Perf tiers ── */
.perf-tier-2 .ba-list, .perf-tier-3 .ba-list { backdrop-filter: none; }
.perf-tier-3 .ba-list__row { opacity: 1; transform: none; }

/* ── Reduced motion ── */
@media(prefers-reduced-motion:reduce) {
  .ba-card, .ba-list__row { opacity: 1; transform: none; }
  .ba-hero__scan, .ba-hero__orb, .ba-hud__pulse::after, .ba-card__fp { animation: none; }
}

/* ── page.css ── */
/* ════════════════════════════════════════════════════════════
   BROKEN UFO — PAGE v3.6.0
   Cinematographic OSINT Document Viewer
   ════════════════════════════════════════════════════════════ */

.bp-page { min-height: 100vh; }
.bp-wrap { max-width: 1280px; margin: 0 auto; padding-left: 1.25rem; padding-right: 1.25rem; }

/* ── HERO ── */
.bp-hero { position: relative; min-height: 48vh; display: flex; flex-direction: column; justify-content: flex-end; overflow: hidden; background: var(--bufo-space); }
.bp-hero--img { min-height: 56vh; }
.bp-hero__bg { position: absolute; inset: 0; }
.bp-hero__photo { width: 100%; height: 100%; object-fit: cover; }
.bp-hero__overlay { position: absolute; inset: 0; background: linear-gradient(to top, var(--bufo-space) 0%, rgba(5,5,8,.92) 35%, rgba(5,5,8,.5) 100%); }
.bp-hero__pattern { position: absolute; inset: 0; background: radial-gradient(ellipse at 25% 40%, rgba(34,197,94,.08) 0%, transparent 55%), radial-gradient(ellipse at 75% 30%, rgba(34,197,94,.05) 0%, transparent 45%); }
.bp-hero__grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(34,197,94,.03) 1px, transparent 1px), linear-gradient(90deg, rgba(34,197,94,.03) 1px, transparent 1px); background-size: 60px 60px; mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, black, transparent); -webkit-mask-image: radial-gradient(ellipse 80% 70% at 50% 40%, black, transparent); }
.bp-hero__scan { position: absolute; left: 0; right: 0; height: 1px; background: linear-gradient(90deg, transparent, rgba(34,197,94,.4), transparent); animation: bp-scan 5s ease-in-out infinite; }
@keyframes bp-scan { 0% { top: 0; opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { top: 100%; opacity: 0; } }
.bp-hero__orb { position: absolute; border-radius: 50%; filter: blur(80px); pointer-events: none; }
.bp-hero__orb--1 { width: 350px; height: 350px; top: -80px; left: -80px; background: rgba(34,197,94,.06); animation: bp-orb 20s ease-in-out infinite alternate; }
.bp-hero__orb--2 { width: 250px; height: 250px; bottom: -60px; right: -60px; background: rgba(34,197,94,.04); animation: bp-orb 25s ease-in-out infinite alternate-reverse; }
@keyframes bp-orb { 0% { transform: translate(0,0); } 100% { transform: translate(40px,30px); } }

/* Brackets */
.bp-bracket { position: absolute; width: 60px; height: 60px; z-index: 5; }
.bp-bracket::before, .bp-bracket::after { content: ''; position: absolute; background: rgba(34,197,94,.25); }
.bp-bracket--tl { top: 24px; left: 24px; } .bp-bracket--tl::before { width: 28px; height: 2px; } .bp-bracket--tl::after { width: 2px; height: 28px; }
.bp-bracket--tr { top: 24px; right: 24px; } .bp-bracket--tr::before { top: 0; right: 0; width: 28px; height: 2px; } .bp-bracket--tr::after { top: 0; right: 0; width: 2px; height: 28px; }

.bp-hero__content { position: relative; z-index: 10; padding: 60px 0 70px; }

/* Breadcrumb */
.bp-crumb { display: flex; align-items: center; gap: 10px; margin-bottom: 24px; font-size: 13px; font-family: var(--bufo-mono); }
.bp-crumb a { display: flex; align-items: center; gap: 6px; color: var(--bufo-text-4); text-decoration: none; transition: color .2s; }
.bp-crumb a:hover { color: var(--bufo-green); }
.bp-crumb a svg { color: var(--bufo-green); opacity: .6; }
.bp-crumb > span:last-child { color: var(--bufo-text-2); }

/* Classification badge */
.bp-class { display: inline-flex; align-items: center; gap: 12px; padding: 10px 18px; background: rgba(0,0,0,.4); border: 1px solid var(--bufo-line-2); border-radius: 10px; margin-bottom: 20px; backdrop-filter: blur(8px); }
.bp-class__icon { display: flex; align-items: center; justify-content: center; width: 30px; height: 30px; background: rgba(34,197,94,.12); border-radius: 6px; color: var(--bufo-green); }
.bp-class__id { font-family: var(--bufo-mono); font-size: 13px; font-weight: 700; color: var(--bufo-green); letter-spacing: 1px; }
.bp-class__div { width: 1px; height: 16px; background: var(--bufo-line-2); }
.bp-class__status { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--bufo-text-4); }
.bp-class__dot { width: 7px; height: 7px; background: var(--bufo-green); border-radius: 50%; box-shadow: 0 0 8px rgba(34,197,94,.5); animation: bp-dotpulse 2s ease-in-out infinite; }
@keyframes bp-dotpulse { 0%,100% { opacity: 1; } 50% { opacity: .4; } }
.bp-class__rt { font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-5); }

.bp-hero__title { font-size: clamp(2rem, 5vw, 3.2rem); font-weight: 800; color: var(--bufo-text); line-height: 1.12; max-width: 800px; margin: 0 0 14px; letter-spacing: -.02em; }
.bp-hero__sub { font-size: 1.15rem; color: var(--bufo-text-3); max-width: 600px; line-height: 1.6; margin: 0 0 20px; }
.bp-hero__meta { display: flex; flex-wrap: wrap; gap: 18px; }
.bp-meta { display: flex; align-items: center; gap: 6px; font-size: 13px; color: var(--bufo-text-4); }
.bp-meta svg { color: var(--bufo-green); opacity: .6; }

/* Perf tiers */
.perf-tier-2 .bp-class, .perf-tier-3 .bp-class { backdrop-filter: none; background: rgba(0,0,0,.6); }
.perf-tier-2 .bp-hero__orb, .perf-tier-3 .bp-hero__orb { display: none; }
.perf-tier-3 .bp-hero__scan { animation: none; }
.perf-tier-3 .bp-class__dot { animation: none; }

/* ── BODY ── */
.bp-body { background:linear-gradient(    to bottom,    var(--bufo-space) 0%,    rgba(0, 0, 0, 0.35) 3%,    transparent 6%  ); padding: 3rem 0 4rem; }

.bp-layout { display: grid; grid-template-columns: 1fr; gap: 36px; }
@media(min-width:1024px) { .bp-layout { grid-template-columns: 1fr 280px; gap: 48px; } }
.bp-content--full { max-width: 860px; margin: 0 auto; }

/* Status bar */
.bp-status-bar { display: flex; align-items: center; gap: 12px; padding: 10px 16px; margin-bottom: 28px; background: rgba(34,197,94,.03); border: 1px solid rgba(34,197,94,.1); border-radius: 8px; font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-5); letter-spacing: .04em; }
.bp-status-bar__div { width: 1px; height: 14px; background: rgba(34,197,94,.12); }
.bp-status-bar__on { display: flex; align-items: center; gap: 6px; color: var(--bufo-green); }
.bp-status-bar__dot { width: 6px; height: 6px; border-radius: 50%; background: var(--bufo-green); box-shadow: 0 0 6px rgba(34,197,94,.4); }

/* Footer */
.bp-content__footer { margin-top: 2.5rem; padding-top: 1.5rem; border-top: 1px solid var(--bufo-line); }
.bp-share { display: flex; align-items: center; justify-content: space-between; flex-wrap: wrap; gap: 12px; margin-bottom: 16px; }
.bp-share__label { font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-5); text-transform: uppercase; letter-spacing: .5px; }
.bp-share__btns { display: flex; gap: 8px; }
.bp-share__btn { display: flex; align-items: center; justify-content: center; width: 36px; height: 36px; background: var(--bufo-glass); border: 1px solid var(--bufo-line-2); border-radius: 8px; color: var(--bufo-text-4); cursor: pointer; transition: all .2s; text-decoration: none; }
.bp-share__btn:hover { border-color: rgba(34,197,94,.3); color: var(--bufo-green); }
.bp-share__btn .ic-check { display: none; }
.bp-share__btn.copied .ic-copy { display: none; }
.bp-share__btn.copied .ic-check { display: block; }
.bp-share__btn.copied { border-color: var(--bufo-green); color: var(--bufo-green); }
.bp-updated { display: flex; align-items: center; gap: 6px; font-size: 12px; color: var(--bufo-text-5); }
.bp-updated svg { color: var(--bufo-green); opacity: .5; }

/* Comments */
.bp-comments { margin-top: 2.5rem; padding-top: 2rem; border-top: 1px solid var(--bufo-line); }

/* ── SIDEBAR ── */
.bp-sidebar { display: flex; flex-direction: column; gap: 16px; }
@media(min-width:1024px) { .bp-sidebar { position: sticky; top: 90px; align-self: flex-start; } }

.bp-widget { background: rgba(255,255,255,.02); border: 1px solid var(--bufo-line); border-radius: 12px; overflow: hidden; }
.bp-widget__head { display: flex; align-items: center; gap: 8px; padding: 12px 14px; background: rgba(0,0,0,.2); border-bottom: 1px solid var(--bufo-line); font-family: var(--bufo-mono); font-size: 10px; font-weight: 600; color: var(--bufo-text-4); text-transform: uppercase; letter-spacing: 1px; }
.bp-widget__head svg { color: var(--bufo-green); }
.bp-widget--actions { background: transparent; border: none; display: flex; flex-direction: column; gap: 6px; }
.bp-widget--seal { background: rgba(34,197,94,.04); border-color: rgba(34,197,94,.15); }

/* TOC */
.bp-toc { padding: 8px; }
.bp-toc__list { list-style: none; padding: 0; margin: 0; }
.bp-toc__item { margin-bottom: 1px; }
.bp-toc__item--3 { padding-left: 12px; }
.bp-toc__link { display: flex; align-items: center; gap: 8px; padding: 7px 10px; border-radius: 6px; font-size: 12px; color: var(--bufo-text-4); text-decoration: none; transition: all .2s; }
.bp-toc__link:hover { background: rgba(34,197,94,.06); color: var(--bufo-text-2); }
.bp-toc__link--active { background: rgba(34,197,94,.1); color: var(--bufo-green); }
.bp-toc__dot { width: 4px; height: 4px; background: var(--bufo-line-2); border-radius: 50%; flex-shrink: 0; transition: all .2s; }
.bp-toc__link:hover .bp-toc__dot, .bp-toc__link--active .bp-toc__dot { background: var(--bufo-green); box-shadow: 0 0 6px rgba(34,197,94,.4); }

/* Info */
.bp-info { padding: 12px 14px; display: flex; flex-direction: column; gap: 8px; }
.bp-info__row { display: flex; justify-content: space-between; font-size: 12px; }
.bp-info__row > span:first-child { color: var(--bufo-text-5); }
.bp-info__row > span:last-child { color: var(--bufo-text-3); }
.bp-info__mono { font-family: var(--bufo-mono); color: var(--bufo-green) !important; }

/* Related */
.bp-related { padding: 8px; display: flex; flex-direction: column; gap: 2px; }
.bp-related__item { display: flex; align-items: center; gap: 8px; padding: 8px 10px; border-radius: 6px; font-size: 12px; color: var(--bufo-text-4); text-decoration: none; transition: all .2s; }
.bp-related__item:hover { background: rgba(34,197,94,.06); color: var(--bufo-text-2); }
.bp-related__item svg { color: var(--bufo-green); opacity: .5; flex-shrink: 0; }

/* Seal */
.bp-seal { display: flex; align-items: flex-start; gap: 12px; padding: 16px; }
.bp-seal svg { color: var(--bufo-green); flex-shrink: 0; margin-top: 2px; }
.bp-seal strong { display: block; font-size: 12px; color: var(--bufo-text-2); margin-bottom: 2px; }
.bp-seal p { font-size: 11px; color: var(--bufo-text-5); margin: 0; line-height: 1.4; }

/* Action buttons */
.bp-act-btn { display: flex; align-items: center; gap: 8px; width: 100%; padding: 10px 14px; background: var(--bufo-glass); border: 1px solid var(--bufo-line); border-radius: 8px; font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-4); text-transform: uppercase; letter-spacing: .04em; cursor: pointer; transition: all .2s; text-decoration: none; }
.bp-act-btn:hover { border-color: rgba(34,197,94,.25); color: var(--bufo-text-2); }
.bp-act-btn svg { color: var(--bufo-green); opacity: .6; }

@media(prefers-reduced-motion:reduce) { .bp-hero__scan, .bp-hero__orb, .bp-class__dot { animation: none; } }

/* ════════════════════════════════════════════════════════════
   PRESERVED FROM v3.5.0 — CTA Panel + Contact Command Center
   ════════════════════════════════════════════════════════════ */

  .bufo-cta-panel {
    position: relative;
    overflow: hidden;
    border-radius: 18px;
    background: rgba(12, 14, 18, 0.62);
    border: 1px solid rgba(57, 255, 20, 0.18);
    box-shadow:
      0 18px 60px rgba(0, 0, 0, 0.55),
      0 0 0 1px rgba(255, 255, 255, 0.04) inset;
    backdrop-filter: blur(10px);
  }

  .bufo-cta-panel::before {
    content: '';
    position: absolute;
    inset: -2px;
    background: linear-gradient(90deg, rgba(57,255,20,0.22), transparent 35%, rgba(57,255,20,0.14), transparent 70%, rgba(57,255,20,0.22));
    opacity: 0.2;
    pointer-events: none;
  }

  .bufo-cta-panel::after {
    content: '';
    position: absolute;
    inset: 0;
    background:
      repeating-linear-gradient(
        180deg,
        rgba(255,255,255,0.035) 0px,
        rgba(255,255,255,0.035) 1px,
        transparent 2px,
        transparent 6px
      );
    opacity: 0.12;
    pointer-events: none;
    mix-blend-mode: overlay;
  }

  .bufo-cta-chip {
    display: inline-flex;
    align-items: center;
    gap: .5rem;
    padding: .35rem .7rem;
    border-radius: 999px;
    background: rgba(255,255,255,0.04);
    border: 1px solid rgba(255,255,255,0.08);
    color: rgba(245,247,255,0.74);
    font-size: 12px;
    letter-spacing: .10em;
    text-transform: uppercase;
  }

  .bufo-cta-dot {
    width: 8px;
    height: 8px;
    border-radius: 999px;
    background: rgba(57,255,20,0.95);
    box-shadow: 0 0 14px rgba(57,255,20,0.35);
  }

  .bufo-cta-btn {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    gap: .55rem;
    padding: .95rem 1.1rem;
    border-radius: 14px;
    border: 1px solid rgba(57,255,20,0.22);
    background: linear-gradient(180deg, rgba(57,255,20,0.18), rgba(57,255,20,0.08));
    color: rgba(245,247,255,0.92);
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
    transition: transform 160ms ease, box-shadow 160ms ease, border-color 160ms ease, background 160ms ease;
  }

  .bufo-cta-btn:hover {
    transform: translateY(-1px);
    border-color: rgba(57,255,20,0.40);
    box-shadow: 0 0 26px rgba(57,255,20,0.18);
    background: linear-gradient(180deg, rgba(57,255,20,0.24), rgba(57,255,20,0.10));
  }

  .bufo-cta-secondary {
    display: inline-flex;
    align-items: center;
    gap: .45rem;
    padding: .75rem 1rem;
    border-radius: 14px;
    border: 1px solid rgba(255,255,255,0.10);
    background: rgba(255,255,255,0.04);
    color: rgba(245,247,255,0.78);
    transition: transform 160ms ease, border-color 160ms ease, background 160ms ease;
  }

  .bufo-cta-secondary:hover {
    transform: translateY(-1px);
    border-color: rgba(57,255,20,0.22);
    background: rgba(57,255,20,0.06);
  }

  .bu-logo-img {
    width: 48px;
    height: 48px;
    object-fit: contain;
    filter: drop-shadow(0 0 16px rgba(57,255,20,0.18));
  }

/* ════════════════════════════════════════════════════════════
   BROKEN UFO — CONTACT: COMMAND CENTER
   Cinematographic OSINT / Military HQ aesthetic
   ════════════════════════════════════════════════════════════ */

/* ─── Page base ─── */
.bcc-page {
  position: relative;
  min-height: 100vh;
  overflow: hidden;
}

/* ─── Atmospheric background ─── */
.bcc-page__atmosphere {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.bcc-page__atmosphere::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 900px 500px at 10% 15%, rgba(var(--bcc-green-rgb), 0.08) 0%, transparent 60%),
    radial-gradient(ellipse 700px 600px at 90% 10%, rgba(var(--bcc-green-rgb), 0.05) 0%, transparent 55%),
    radial-gradient(ellipse 500px 400px at 75% 85%, rgba(var(--bcc-magenta-rgb), 0.04) 0%, transparent 50%),
    radial-gradient(ellipse 600px 300px at 30% 95%, rgba(var(--bcc-green-rgb), 0.03) 0%, transparent 50%);
}

.bcc-page__atmosphere::after {
  content: '';
  position: absolute;
  inset: -30%;
  background:
    radial-gradient(circle at 25% 20%, rgba(var(--bcc-green-rgb), 0.12) 0%, transparent 35%),
    radial-gradient(circle at 75% 30%, rgba(var(--bcc-green-rgb), 0.06) 0%, transparent 40%);
  filter: blur(60px);
  opacity: 0.5;
  animation: bcc-atmo-drift 25s ease-in-out infinite alternate;
}

@keyframes bcc-atmo-drift {
  0% { transform: translate(0, 0) scale(1); }
  100% { transform: translate(20px, -15px) scale(1.03); }
}

/* Scanlines */
.bcc-page__scanlines {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background: repeating-linear-gradient(
    0deg,
    transparent 0px,
    transparent 3px,
    rgba(0, 0, 0, 0.025) 3px,
    rgba(0, 0, 0, 0.025) 6px
  );
  opacity: 0.6;
}

/* Grid overlay */
.bcc-page__grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background-image:
    linear-gradient(rgba(var(--bcc-green-rgb), 0.015) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--bcc-green-rgb), 0.015) 1px, transparent 1px);
  background-size: 60px 60px;
  mask-image: radial-gradient(ellipse 80% 60% at 50% 40%, black 0%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 40%, black 0%, transparent 100%);
  animation: bcc-grid-scroll 30s linear infinite;
}

@keyframes bcc-grid-scroll {
  0% { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(-60px, -60px, 0); }
}

/* Floating particles */
.bcc-page__particles {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  overflow: hidden;
}

.bcc-particle {
  position: absolute;
  width: 2px;
  height: 2px;
  border-radius: 50%;
  background: var(--bcc-green);
  opacity: 0;
  animation: bcc-particle-float linear infinite;
}

.bcc-particle:nth-child(1)  { left: 8%;  animation-duration: 18s; animation-delay: 0s; }
.bcc-particle:nth-child(2)  { left: 22%; animation-duration: 22s; animation-delay: 3s; }
.bcc-particle:nth-child(3)  { left: 35%; animation-duration: 16s; animation-delay: 7s; }
.bcc-particle:nth-child(4)  { left: 48%; animation-duration: 20s; animation-delay: 2s; }
.bcc-particle:nth-child(5)  { left: 62%; animation-duration: 24s; animation-delay: 5s; }
.bcc-particle:nth-child(6)  { left: 75%; animation-duration: 17s; animation-delay: 9s; }
.bcc-particle:nth-child(7)  { left: 88%; animation-duration: 21s; animation-delay: 1s; }
.bcc-particle:nth-child(8)  { left: 15%; animation-duration: 19s; animation-delay: 6s; }
.bcc-particle:nth-child(9)  { left: 55%; animation-duration: 23s; animation-delay: 4s; }
.bcc-particle:nth-child(10) { left: 92%; animation-duration: 15s; animation-delay: 8s; }

@keyframes bcc-particle-float {
  0%   { transform: translateY(100vh) scale(0); opacity: 0; }
  10%  { opacity: 0.4; transform: translateY(85vh) scale(1); }
  90%  { opacity: 0.15; }
  100% { transform: translateY(-10vh) scale(0.5); opacity: 0; }
}

/* ─── Main content wrapper ─── */
.bcc-content {
  position: relative;
  z-index: 5;
  max-width: 1280px;
  margin: 0 auto;
  padding: 2rem 1.5rem 4rem;
}

@media (min-width: 768px) {
  .bcc-content { padding: 3rem 2rem 5rem; }
}

/* ─── Top HUD stripe ─── */
.bcc-hud-stripe {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.65rem 1.25rem;
  margin-bottom: 2rem;
  border-radius: var(--bcc-radius-sm);
  background: rgba(var(--bcc-green-rgb), 0.03);
  border: 1px solid rgba(var(--bcc-green-rgb), 0.08);
  flex-wrap: wrap;
  gap: 0.5rem;
}

.bcc-hud-stripe__left,
.bcc-hud-stripe__right {
  display: flex;
  align-items: center;
  gap: 0.75rem;
}

.bcc-hud-stripe__signal {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--bcc-mono);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bcc-green);
}

.bcc-hud-stripe__signal .pulse {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--bcc-green);
  box-shadow: 0 0 10px var(--bcc-green-glow);
  animation: bcc-dot-pulse 2s ease-in-out infinite;
}

@keyframes bcc-dot-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.4; transform: scale(0.8); }
}

.bcc-hud-stripe__sep {
  width: 1px;
  height: 14px;
  background: rgba(var(--bcc-green-rgb), 0.15);
}

.bcc-hud-stripe__tag {
  font-family: var(--bcc-mono);
  font-size: 0.58rem;
  letter-spacing: 0.06em;
  color: var(--bcc-text-40);
  text-transform: uppercase;
}

.bcc-hud-stripe__coord {
  font-family: var(--bcc-mono);
  font-size: 0.55rem;
  color: var(--bcc-text-25);
  letter-spacing: 0.04em;
}

@media (max-width: 767px) {
  .bcc-hud-stripe__right { display: none; }
}

/* ─── Hero section ─── */
.bcc-hero {
  margin-bottom: 3rem;
}

@media (min-width: 768px) {
  .bcc-hero { margin-bottom: 3.5rem; }
}

.bcc-hero__chips {
  display: flex;
  flex-wrap: wrap;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
}

.bcc-chip {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  padding: 0.3rem 0.75rem;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.03);
  border: 1px solid rgba(255, 255, 255, 0.07);
  font-family: var(--bcc-mono);
  font-size: 0.62rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bcc-text-60);
}

.bcc-chip__dot {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  flex-shrink: 0;
}

.bcc-chip__dot--green  { background: var(--bcc-green); box-shadow: 0 0 10px rgba(var(--bcc-green-rgb), 0.4); }
.bcc-chip__dot--cyan   { background: var(--bcc-cyan); box-shadow: 0 0 10px rgba(34, 211, 238, 0.35); }
.bcc-chip__dot--pink   { background: var(--bcc-magenta); box-shadow: 0 0 10px rgba(var(--bcc-magenta-rgb), 0.35); }

.bcc-hero__grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
  align-items: end;
}

@media (min-width: 768px) {
  .bcc-hero__grid {
    grid-template-columns: 1fr auto;
    gap: 3rem;
  }
}

.bcc-hero__kicker {
  font-family: var(--bcc-mono);
  font-size: 0.7rem;
  font-weight: 700;
  letter-spacing: 0.18em;
  text-transform: uppercase;
  color: var(--bcc-green);
  margin-bottom: 0.75rem;
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.bcc-hero__kicker::before {
  content: '';
  display: block;
  width: 20px;
  height: 1px;
  background: var(--bcc-green);
  opacity: 0.5;
}

.bcc-hero__title {
  font-family: var(--bcc-sans);
  font-size: clamp(1.75rem, 4.5vw, 3.2rem);
  font-weight: 800;
  line-height: 1.08;
  letter-spacing: -0.025em;
  color: var(--bcc-text-100);
  margin-bottom: 1rem;
  max-width: 680px;
}

.bcc-hero__title em {
  font-style: normal;
  background: linear-gradient(135deg, var(--bcc-green) 0%, var(--bcc-green-bright) 100%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.bcc-hero__subtitle {
  font-family: var(--bcc-sans);
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.7;
  color: var(--bcc-text-60);
  max-width: 560px;
}

/* Classification badge */
.bcc-hero__badge {
  display: inline-flex;
  align-items: center;
  gap: 0.6rem;
  padding: 0.55rem 1rem;
  border-radius: var(--bcc-radius-md);
  background: var(--bcc-surface-2);
  border: 1px solid rgba(var(--bcc-magenta-rgb), 0.2);
  flex-shrink: 0;
  align-self: flex-end;
}

.bcc-hero__badge-stamp {
  font-family: var(--bcc-mono);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  padding: 0.2rem 0.55rem;
  border-radius: 100px;
  border: 1px solid rgba(var(--bcc-magenta-rgb), 0.3);
  color: var(--bcc-magenta);
  background: rgba(var(--bcc-magenta-rgb), 0.08);
}

.bcc-hero__badge-label {
  font-family: var(--bcc-mono);
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bcc-text-60);
}

/* ─── Main 2-column layout ─── */
.bcc-layout {
  display: grid;
  grid-template-columns: 1fr;
  gap: 2rem;
}

@media (min-width: 1024px) {
  .bcc-layout {
    grid-template-columns: 7fr 5fr;
    gap: 2rem;
  }
}

/* ─── Panel (glass card) ─── */
.bcc-panel {
  position: relative;
  border-radius: var(--bcc-radius);
  background: rgba(12, 14, 18, 0.55);
  border: 1px solid var(--bcc-border-green);
  box-shadow:
    0 20px 60px rgba(0, 0, 0, 0.4),
    0 0 0 1px rgba(255, 255, 255, 0.03) inset;
  backdrop-filter: blur(12px);
  -webkit-backdrop-filter: blur(12px);
  overflow: hidden;
  transition: border-color 0.4s ease, box-shadow 0.4s ease;
}

.bcc-panel:hover {
  border-color: rgba(var(--bcc-green-rgb), 0.25);
  box-shadow:
    0 20px 60px rgba(0, 0, 0, 0.4),
    0 0 40px rgba(var(--bcc-green-rgb), 0.04),
    0 0 0 1px rgba(255, 255, 255, 0.03) inset;
}

/* Panel top edge glow */
.bcc-panel::before {
  content: '';
  position: absolute;
  top: 0;
  left: 10%;
  right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bcc-green-rgb), 0.3), transparent);
  z-index: 1;
}

/* ─── Panel header bar ─── */
.bcc-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.75rem 1.5rem;
  border-bottom: 1px solid var(--bcc-border);
  background: rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 2;
}

.bcc-panel__header-left {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.bcc-panel__header-icon {
  width: 32px;
  height: 32px;
  border-radius: var(--bcc-radius-sm);
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
}

.bcc-panel__header-icon--green {
  background: rgba(var(--bcc-green-rgb), 0.1);
  border: 1px solid rgba(var(--bcc-green-rgb), 0.2);
}

.bcc-panel__header-icon--pink {
  background: rgba(var(--bcc-magenta-rgb), 0.08);
  border: 1px solid rgba(var(--bcc-magenta-rgb), 0.18);
}

.bcc-panel__header-icon--amber {
  background: rgba(var(--bcc-amber-rgb), 0.08);
  border: 1px solid rgba(var(--bcc-amber-rgb), 0.18);
}

.bcc-panel__header-icon svg {
  width: 15px;
  height: 15px;
}

.bcc-panel__header-title {
  font-family: var(--bcc-mono);
  font-size: 0.68rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bcc-text-80);
}

.bcc-panel__header-sub {
  font-family: var(--bcc-mono);
  font-size: 0.55rem;
  color: var(--bcc-text-40);
  letter-spacing: 0.04em;
}

.bcc-panel__header-status {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  font-family: var(--bcc-mono);
  font-size: 0.55rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bcc-green);
}

.bcc-panel__header-status .dot {
  width: 5px;
  height: 5px;
  border-radius: 50%;
  background: var(--bcc-green);
  animation: bcc-dot-pulse 2s ease-in-out infinite;
}

/* ─── Panel body ─── */
.bcc-panel__body {
  position: relative;
  z-index: 2;
  padding: 1.5rem;
}

@media (min-width: 768px) {
  .bcc-panel__body { padding: 2rem; }
}

/* ─── Divider ─── */
.bcc-divider {
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bcc-green-rgb), 0.15), transparent);
  margin: 1.25rem 0;
}

.bcc-divider--labeled {
  display: flex;
  align-items: center;
  gap: 0.75rem;
  height: auto;
  background: none;
}

.bcc-divider--labeled::before,
.bcc-divider--labeled::after {
  content: '';
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bcc-green-rgb), 0.12), transparent);
}

.bcc-divider__label {
  font-family: var(--bcc-mono);
  font-size: 0.52rem;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: var(--bcc-text-25);
  white-space: nowrap;
}

/* ─── Briefing text ─── */
.bcc-briefing {
  font-family: var(--bcc-sans);
  font-size: 0.88rem;
  font-weight: 300;
  line-height: 1.65;
  color: var(--bcc-text-60);
}

.bcc-briefing strong {
  color: var(--bcc-text-80);
  font-weight: 500;
}

/* ─── Mini note ─── */
.bcc-note {
  font-family: var(--bcc-mono);
  font-size: 0.68rem;
  line-height: 1.5;
  color: var(--bcc-text-25);
}

.bcc-note .accent { color: rgba(var(--bcc-green-rgb), 0.6); }

/* ─── Channel cards ─── */
.bcc-channel {
  display: block;
  position: relative;
  border-radius: var(--bcc-radius-md);
  padding: 1rem 1.15rem;
  background: rgba(255, 255, 255, 0.02);
  border: 1px solid var(--bcc-border);
  text-decoration: none;
  transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
}

.bcc-channel::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bcc-green-rgb), 0.2), transparent);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.bcc-channel:hover {
  transform: translateY(-2px);
  border-color: rgba(var(--bcc-green-rgb), 0.22);
  background: rgba(var(--bcc-green-rgb), 0.04);
  box-shadow: 0 8px 30px rgba(var(--bcc-green-rgb), 0.06);
}

.bcc-channel:hover::before { opacity: 1; }

.bcc-channel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-bottom: 0.35rem;
}

.bcc-channel__label {
  font-family: var(--bcc-mono);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--bcc-text-80);
}

.bcc-channel__arrow {
  width: 14px;
  height: 14px;
  color: var(--bcc-text-25);
  transition: color 0.25s ease, transform 0.25s ease;
}

.bcc-channel:hover .bcc-channel__arrow {
  color: var(--bcc-green);
  transform: translateX(3px);
}

.bcc-channel__value {
  font-family: var(--bcc-sans);
  font-size: 0.9rem;
  font-weight: 500;
  color: var(--bcc-text-100);
  margin-bottom: 0.25rem;
}

.bcc-channel__hint {
  font-family: var(--bcc-mono);
  font-size: 0.6rem;
  color: var(--bcc-text-40);
  letter-spacing: 0.02em;
}

/* ─── Protocol steps ─── */
.bcc-protocol {
  position: relative;
  display: grid;
  gap: 0.75rem;
}

.bcc-protocol__step {
  display: grid;
  grid-template-columns: auto 1fr;
  gap: 0.85rem;
  align-items: start;
  padding: 0.85rem 1rem;
  border-radius: var(--bcc-radius-sm);
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid var(--bcc-border);
  transition: all 0.25s ease;
}

.bcc-protocol__step:hover {
  border-color: rgba(var(--bcc-green-rgb), 0.15);
  background: rgba(var(--bcc-green-rgb), 0.02);
}

.bcc-protocol__num {
  width: 28px;
  height: 28px;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--bcc-green-rgb), 0.08);
  border: 1px solid rgba(var(--bcc-green-rgb), 0.2);
  font-family: var(--bcc-mono);
  font-size: 0.65rem;
  font-weight: 700;
  color: var(--bcc-green);
  flex-shrink: 0;
  margin-top: 2px;
}

.bcc-protocol__text h4 {
  font-family: var(--bcc-mono);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bcc-text-80);
  margin: 0 0 0.2rem 0;
}

.bcc-protocol__text p {
  font-family: var(--bcc-sans);
  font-size: 0.82rem;
  font-weight: 300;
  line-height: 1.5;
  color: var(--bcc-text-40);
  margin: 0;
}

/* ─── Social buttons ─── */
.bcc-socials {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.bcc-social-btn {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  border-radius: var(--bcc-radius-sm);
  border: 1px solid var(--bcc-border);
  background: rgba(255, 255, 255, 0.02);
  color: var(--bcc-text-40);
  text-decoration: none;
  transition: all 0.25s ease;
}

.bcc-social-btn:hover {
  border-color: rgba(var(--bcc-green-rgb), 0.25);
  background: rgba(var(--bcc-green-rgb), 0.06);
  color: var(--bcc-green);
  transform: translateY(-1px);
}

.bcc-social-btn svg {
  width: 16px;
  height: 16px;
}

/* ─── Radar widget (right sidebar) ─── */
.bcc-radar-wrap {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  padding: 1.5rem;
  overflow: hidden;
}

.bcc-radar {
  position: relative;
  width: 140px;
  height: 140px;
}

.bcc-radar__circle {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(var(--bcc-green-rgb), 0.08);
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.bcc-radar__circle--1 { width: 40px;  height: 40px; }
.bcc-radar__circle--2 { width: 80px;  height: 80px; }
.bcc-radar__circle--3 { width: 120px; height: 120px; border-color: rgba(var(--bcc-green-rgb), 0.06); }

.bcc-radar__crosshair-h,
.bcc-radar__crosshair-v {
  position: absolute;
  background: rgba(var(--bcc-green-rgb), 0.06);
}

.bcc-radar__crosshair-h {
  width: 100%;
  height: 1px;
  top: 50%;
  left: 0;
}

.bcc-radar__crosshair-v {
  width: 1px;
  height: 100%;
  top: 0;
  left: 50%;
}

.bcc-radar__sweep {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 50%;
  height: 2px;
  transform-origin: left center;
  animation: bcc-radar-spin 4s linear infinite;
}

.bcc-radar__sweep::before {
  content: '';
  position: absolute;
  top: -30px;
  left: 0;
  width: 100%;
  height: 60px;
  background: conic-gradient(from -30deg at 0% 50%, rgba(var(--bcc-green-rgb), 0.15) 0deg, transparent 60deg);
  transform-origin: left center;
}

.bcc-radar__sweep::after {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 2px;
  background: linear-gradient(90deg, rgba(var(--bcc-green-rgb), 0.6), transparent);
}

@keyframes bcc-radar-spin {
  from { transform: rotate(0deg); }
  to   { transform: rotate(360deg); }
}

.bcc-radar__blip {
  position: absolute;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  background: var(--bcc-green);
  box-shadow: 0 0 8px var(--bcc-green-glow);
  animation: bcc-blip 3s ease-in-out infinite;
}

.bcc-radar__blip--1 { top: 25%; left: 60%; animation-delay: 0s; }
.bcc-radar__blip--2 { top: 65%; left: 35%; animation-delay: 1.5s; }
.bcc-radar__blip--3 { top: 40%; left: 72%; animation-delay: 0.8s; }

@keyframes bcc-blip {
  0%, 100% { opacity: 0.3; transform: scale(0.8); }
  50% { opacity: 1; transform: scale(1.2); }
}

.bcc-radar__center {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: var(--bcc-green);
  box-shadow: 0 0 12px var(--bcc-green-glow);
}

/* ─── Typing cursor effect for labels ─── */
.bcc-typing::after {
  content: '█';
  font-size: 0.85em;
  color: var(--bcc-green);
  opacity: 0;
  animation: bcc-blink 1s step-end infinite;
  margin-left: 2px;
}

@keyframes bcc-blink {
  0%, 100% { opacity: 0; }
  50% { opacity: 0.7; }
}

/* ─── Bottom footer stripe ─── */
.bcc-footer-stripe {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 2rem;
  flex-wrap: wrap;
  margin-top: 3rem;
  padding: 0.75rem 1.25rem;
  border-radius: var(--bcc-radius-sm);
  background: rgba(var(--bcc-green-rgb), 0.02);
  border: 1px solid rgba(var(--bcc-green-rgb), 0.05);
}

.bcc-footer-stripe__item {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--bcc-mono);
  font-size: 0.55rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bcc-text-25);
}

.bcc-footer-stripe__item .bars {
  display: inline-flex;
  gap: 2px;
  align-items: flex-end;
  height: 10px;
}

.bcc-footer-stripe__item .bars span {
  display: block;
  width: 2px;
  border-radius: 1px;
  background: var(--bcc-green);
  opacity: 0.35;
}

.bcc-footer-stripe__item .bars span:nth-child(1) { height: 3px; animation: bcc-bar-anim 1.4s ease infinite 0s; }
.bcc-footer-stripe__item .bars span:nth-child(2) { height: 6px; animation: bcc-bar-anim 1.4s ease infinite 0.2s; }
.bcc-footer-stripe__item .bars span:nth-child(3) { height: 9px; animation: bcc-bar-anim 1.4s ease infinite 0.4s; }

@keyframes bcc-bar-anim {
  0%, 100% { opacity: 0.2; }
  50% { opacity: 0.8; }
}

/* ─── Staggered entrance animations ─── */
.bcc-enter { animation: bcc-fade-up 0.7s cubic-bezier(0.16, 1, 0.3, 1) both; }
.bcc-enter--d1 { animation-delay: 0.1s; }
.bcc-enter--d2 { animation-delay: 0.2s; }
.bcc-enter--d3 { animation-delay: 0.3s; }
.bcc-enter--d4 { animation-delay: 0.4s; }
.bcc-enter--d5 { animation-delay: 0.5s; }
.bcc-enter--d6 { animation-delay: 0.6s; }
.bcc-enter--d7 { animation-delay: 0.7s; }
.bcc-enter--d8 { animation-delay: 0.8s; }

@keyframes bcc-fade-up {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* ════════════════════════════════════════════════════════════
   WPForms — BUFO Command Override
   ════════════════════════════════════════════════════════════ */

.bcc-form-wrap .wpforms-container .wpforms-form {
  background: transparent !important;
}

.bcc-form-wrap .wpforms-container input[type="text"],
.bcc-form-wrap .wpforms-container input[type="email"],
.bcc-form-wrap .wpforms-container input[type="tel"],
.bcc-form-wrap .wpforms-container input[type="url"],
.bcc-form-wrap .wpforms-container input[type="number"],
.bcc-form-wrap .wpforms-container input[type="password"],
.bcc-form-wrap .wpforms-container select,
.bcc-form-wrap .wpforms-container textarea {
  background: var(--bcc-surface-2) !important;
  border: 1px solid rgba(var(--bcc-green-rgb), 0.12) !important;
  color: var(--bcc-text-80) !important;
  border-radius: var(--bcc-radius-md) !important;
  padding: 0.85rem 1rem !important;
  font-family: var(--bcc-sans) !important;
  font-size: 0.9rem !important;
  font-weight: 300 !important;
  transition: border-color 0.25s ease, box-shadow 0.25s ease, background 0.25s ease !important;
}

.bcc-form-wrap .wpforms-container input::placeholder,
.bcc-form-wrap .wpforms-container textarea::placeholder {
  color: var(--bcc-text-25) !important;
  font-weight: 300 !important;
}

.bcc-form-wrap .wpforms-container input:focus,
.bcc-form-wrap .wpforms-container select:focus,
.bcc-form-wrap .wpforms-container textarea:focus {
  outline: none !important;
  border-color: rgba(var(--bcc-green-rgb), 0.35) !important;
  box-shadow:
    0 0 0 3px rgba(var(--bcc-green-rgb), 0.08),
    0 0 20px rgba(var(--bcc-green-rgb), 0.06) !important;
  background: rgba(12, 16, 22, 0.85) !important;
}

.bcc-form-wrap .wpforms-container .wpforms-field-label {
  font-family: var(--bcc-mono) !important;
  font-size: 0.7rem !important;
  font-weight: 600 !important;
  letter-spacing: 0.08em !important;
  text-transform: uppercase !important;
  color: var(--bcc-text-60) !important;
  margin-bottom: 0.5rem !important;
}

.bcc-form-wrap .wpforms-container .wpforms-field-sublabel,
.bcc-form-wrap .wpforms-container .wpforms-field-description {
  font-family: var(--bcc-mono) !important;
  font-size: 0.62rem !important;
  color: var(--bcc-text-25) !important;
}

.bcc-form-wrap .wpforms-container .wpforms-error,
.bcc-form-wrap .wpforms-container label.wpforms-error {
  color: var(--bcc-magenta) !important;
  font-family: var(--bcc-mono) !important;
  font-size: 0.65rem !important;
}

.bcc-form-wrap .wpforms-container .wpforms-submit {
  position: relative !important;
  width: 100% !important;
  border: 1px solid rgba(var(--bcc-green-rgb), 0.3) !important;
  background: linear-gradient(135deg, rgba(var(--bcc-green-rgb), 0.14), rgba(var(--bcc-green-rgb), 0.06)) !important;
  color: var(--bcc-green) !important;
  border-radius: var(--bcc-radius-md) !important;
  font-family: var(--bcc-mono) !important;
  font-size: 0.72rem !important;
  font-weight: 700 !important;
  letter-spacing: 0.14em !important;
  text-transform: uppercase !important;
  padding: 1rem 1.5rem !important;
  cursor: pointer !important;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1) !important;
  overflow: hidden !important;
}

.bcc-form-wrap .wpforms-container .wpforms-submit:hover {
  background: linear-gradient(135deg, var(--bcc-green), rgba(var(--bcc-green-rgb), 0.8)) !important;
  color: var(--bcc-surface-0) !important;
  border-color: var(--bcc-green) !important;
  box-shadow:
    0 0 30px rgba(var(--bcc-green-rgb), 0.2),
    0 0 60px rgba(var(--bcc-green-rgb), 0.08) !important;
  transform: translateY(-1px) !important;
}

/* ════════════════════════════════════════════════════════════
   Focus / Accessibility
   ════════════════════════════════════════════════════════════ */

.bcc-channel:focus-visible,
.bcc-social-btn:focus-visible {
  outline: 2px solid var(--bcc-green);
  outline-offset: 3px;
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ── comments.css ── */
/* ═══════════════════════════════════════════════════════════
   BUFO COMMS TERMINAL — Comments System
   ═══════════════════════════════════════════════════════════ */

/* ── Container ── */
.bufo-comms {
  position: relative;
  margin-top: 4rem;
  padding: 0;
  border: 1px solid rgba(34, 197, 94, 0.10);
  border-radius: 18px;
  background: linear-gradient(180deg, rgba(34, 197, 94, 0.02) 0%, rgba(3, 5, 8, 0.6) 8%);
  overflow: hidden;
}

/* Scan lines */
.bufo-comms__scan {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(0deg, transparent 0, transparent 3px, rgba(255,255,255,0.008) 3px, rgba(255,255,255,0.008) 4px);
  pointer-events: none;
  z-index: 0;
}

/* Corner brackets */
.bufo-comms__corn {
  position: absolute;
  width: 24px;
  height: 24px;
  border-color: rgba(34, 197, 94, 0.18);
  border-style: solid;
  border-width: 0;
  z-index: 2;
  pointer-events: none;
}
.bufo-comms__corn--tl { top: 6px; left: 6px; border-top-width: 1px; border-left-width: 1px; }
.bufo-comms__corn--tr { top: 6px; right: 6px; border-top-width: 1px; border-right-width: 1px; }
.bufo-comms__corn--bl { bottom: 6px; left: 6px; border-bottom-width: 1px; border-left-width: 1px; }
.bufo-comms__corn--br { bottom: 6px; right: 6px; border-bottom-width: 1px; border-right-width: 1px; }

/* ═══════════════════════════════════════════════════════════
   HEADER
   ═══════════════════════════════════════════════════════════ */
.bufo-comms__header {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 14px;
  padding: 18px 24px;
  border-bottom: 1px solid rgba(34, 197, 94, 0.08);
  background: rgba(34, 197, 94, 0.03);
}

.bufo-comms__header-left {
  display: flex;
  align-items: center;
  gap: 14px;
}

.bufo-comms__header-icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.18);
  border-radius: 10px;
  color: #22c55e;
  flex-shrink: 0;
}

.bufo-comms__header-pulse {
  position: absolute;
  inset: 0;
  border-radius: 10px;
  background: rgba(34, 197, 94, 0.15);
  animation: bufo-comms-pulse 2.5s ease-out infinite;
}
@keyframes bufo-comms-pulse {
  0% { transform: scale(1); opacity: 0.5; }
  100% { transform: scale(1.6); opacity: 0; }
}

.bufo-comms__title {
  font-family: var(--font-mono, monospace);
  font-size: 0.85rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.9);
  margin: 0;
}

.bufo-comms__subtitle {
  font-family: var(--font-mono, monospace);
  font-size: 0.6rem;
  letter-spacing: 0.1em;
  color: rgba(255,255,255,0.3);
}

.bufo-comms__header-right {
  display: flex;
  align-items: center;
  gap: 10px;
}

.bufo-comms__status {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 5px 12px;
  border-radius: 100px;
  font-family: var(--font-mono, monospace);
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
}
.bufo-comms__status--open {
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.18);
  color: #22c55e;
}
.bufo-comms__status--closed {
  background: rgba(239, 68, 68, 0.08);
  border: 1px solid rgba(239, 68, 68, 0.18);
  color: #ef4444;
}

.bufo-comms__status-dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  animation: bufo-dot-blink 2s ease-in-out infinite;
}
.bufo-comms__status-dot--sm { width: 5px; height: 5px; }
.bufo-comms__status--open .bufo-comms__status-dot {
  background: #22c55e;
  box-shadow: 0 0 8px rgba(34, 197, 94, 0.6);
}
.bufo-comms__status--closed .bufo-comms__status-dot {
  background: #ef4444;
  box-shadow: 0 0 8px rgba(239, 68, 68, 0.4);
}
@keyframes bufo-dot-blink { 0%,100% { opacity: 1; } 50% { opacity: 0.3; } }

.bufo-comms__signal {
  display: flex;
  align-items: center;
  gap: 5px;
  font-family: var(--font-mono, monospace);
  font-size: 0.65rem;
  font-weight: 700;
  color: rgba(34, 197, 94, 0.6);
}

/* ═══════════════════════════════════════════════════════════
   LOG HEADER DIVIDER
   ═══════════════════════════════════════════════════════════ */
.bufo-comms__log-header {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px 24px;
}
.bufo-comms__log-line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.12), transparent);
}
.bufo-comms__log-label {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-mono, monospace);
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.45);
  white-space: nowrap;
}
.bufo-comms__log-label svg { opacity: 0.5; }

/* ═══════════════════════════════════════════════════════════
   TRANSMISSION LIST
   ═══════════════════════════════════════════════════════════ */
.bufo-comms__list {
  position: relative;
  z-index: 1;
  list-style: none;
  padding: 0 24px 24px;
  margin: 0;
}

.bufo-comms__list .children {
  list-style: none;
  padding-left: 24px;
  margin-top: 16px;
  border-left: 2px solid rgba(34, 197, 94, 0.1);
}
@media (max-width: 640px) { .bufo-comms__list .children { padding-left: 12px; } }

/* ── Transmission Card ── */
.bufo-tx { margin-bottom: 16px; }
.bufo-tx:last-child { margin-bottom: 0; }

.bufo-tx__card {
  border: 1px solid rgba(34, 197, 94, 0.08);
  border-radius: 14px;
  background: rgba(0, 0, 0, 0.2);
  overflow: hidden;
  transition: border-color 0.25s ease, box-shadow 0.25s ease;
}
.bufo-tx__card:hover {
  border-color: rgba(34, 197, 94, 0.2);
  box-shadow: 0 0 24px -8px rgba(34, 197, 94, 0.06);
}

/* Author card variant */
.bufo-tx.bypostauthor > .bufo-tx__card {
  border-color: rgba(34, 197, 94, 0.2);
  background: linear-gradient(180deg, rgba(34, 197, 94, 0.04), rgba(0, 0, 0, 0.2) 40%);
}

/* Strip header */
.bufo-tx__strip {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 16px;
  background: rgba(34, 197, 94, 0.03);
  border-bottom: 1px solid rgba(34, 197, 94, 0.06);
  flex-wrap: wrap;
}

.bufo-tx__id {
  font-family: var(--font-mono, monospace);
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  color: rgba(34, 197, 94, 0.5);
}

.bufo-tx__badge {
  display: inline-flex;
  align-items: center;
  gap: 4px;
  padding: 2px 8px;
  border-radius: 4px;
  font-family: var(--font-mono, monospace);
  font-size: 0.5rem;
  font-weight: 800;
  letter-spacing: 0.1em;
  text-transform: uppercase;
}
.bufo-tx__badge--author {
  background: rgba(34, 197, 94, 0.12);
  border: 1px solid rgba(34, 197, 94, 0.2);
  color: #22c55e;
}
.bufo-tx__badge--depth {
  background: rgba(255, 255, 255, 0.04);
  border: 1px solid rgba(255, 255, 255, 0.08);
  color: rgba(255, 255, 255, 0.4);
}

.bufo-tx__timestamp {
  margin-left: auto;
}
.bufo-tx__timestamp a {
  font-family: var(--font-mono, monospace);
  font-size: 0.6rem;
  letter-spacing: 0.04em;
  color: rgba(255, 255, 255, 0.3);
  text-decoration: none;
  transition: color 0.2s ease;
}
.bufo-tx__timestamp a:hover { color: rgba(34, 197, 94, 0.7); }

.bufo-tx__edit a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  height: 24px;
  border-radius: 5px;
  color: rgba(255, 255, 255, 0.2);
  transition: all 0.2s ease;
}
.bufo-tx__edit a:hover {
  background: rgba(34, 197, 94, 0.08);
  color: #22c55e;
}

/* Body */
.bufo-tx__body {
  display: flex;
  gap: 14px;
  padding: 16px;
}
@media (max-width: 480px) { .bufo-tx__body { flex-direction: column; gap: 10px; } }

.bufo-tx__avatar {
  position: relative;
  flex-shrink: 0;
}
.bufo-tx__avatar-img {
  width: 48px;
  height: 48px;
  border-radius: 10px;
  border: 2px solid rgba(34, 197, 94, 0.12);
}
.bufo-tx__avatar-verified {
  position: absolute;
  bottom: -3px;
  right: -3px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 18px;
  height: 18px;
  background: #22c55e;
  border: 2px solid rgba(5, 5, 8, 1);
  border-radius: 50%;
  color: #050508;
}

.bufo-tx__main { flex: 1; min-width: 0; }

.bufo-tx__author {
  display: block;
  font-size: 0.88rem;
  font-weight: 650;
  color: rgba(255, 255, 255, 0.9);
  margin-bottom: 6px;
}

.bufo-tx__content {
  font-size: 0.875rem;
  line-height: 1.7;
  color: rgba(255, 255, 255, 0.6);
}
.bufo-tx__content p { margin-bottom: 0.75rem; }
.bufo-tx__content p:last-child { margin-bottom: 0; }
.bufo-tx__content a {
  color: #22c55e;
  text-decoration: underline;
  text-underline-offset: 2px;
  text-decoration-color: rgba(34, 197, 94, 0.3);
}
.bufo-tx__content a:hover { text-decoration-color: #22c55e; }

.bufo-tx__pending {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 12px;
  background: rgba(251, 191, 36, 0.08);
  border: 1px solid rgba(251, 191, 36, 0.15);
  border-radius: 8px;
  margin-bottom: 10px;
  font-family: var(--font-mono, monospace);
  font-size: 0.7rem;
  color: #fbbf24;
}

/* Footer */
.bufo-tx__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 12px;
  padding-top: 10px;
  border-top: 1px solid rgba(34, 197, 94, 0.05);
}

.bufo-tx__reply a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 6px 14px;
  border-radius: 8px;
  border: 1px solid rgba(34, 197, 94, 0.1);
  background: rgba(34, 197, 94, 0.03);
  font-family: var(--font-mono, monospace);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.6);
  text-decoration: none;
  transition: all 0.2s ease;
}
.bufo-tx__reply a:hover {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.3);
  color: #22c55e;
}

.bufo-tx__footer-id {
  font-family: var(--font-mono, monospace);
  font-size: 0.55rem;
  color: rgba(255, 255, 255, 0.12);
  letter-spacing: 0.06em;
}

/* Pingback */
.bufo-tx__pingback {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 14px 16px;
  font-size: 0.8rem;
  color: rgba(255, 255, 255, 0.5);
}
.bufo-tx__pingback svg { color: rgba(34, 197, 94, 0.5); }
.bufo-tx__pingback a { color: rgba(255, 255, 255, 0.8); }
.bufo-tx__pingback a:hover { color: #22c55e; }

/* ═══════════════════════════════════════════════════════════
   PAGINATION
   ═══════════════════════════════════════════════════════════ */
.bufo-comms__pagination {
  position: relative;
  z-index: 1;
  padding: 0 24px 24px;
}
.bufo-comms__pagination-inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 16px;
  padding-top: 16px;
  border-top: 1px solid rgba(34, 197, 94, 0.06);
}
.bufo-comms__page-link a {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  border-radius: 8px;
  border: 1px solid rgba(34, 197, 94, 0.1);
  font-family: var(--font-mono, monospace);
  font-size: 0.68rem;
  font-weight: 600;
  color: rgba(255, 255, 255, 0.6);
  text-decoration: none;
  transition: all 0.2s ease;
}
.bufo-comms__page-link a:hover {
  border-color: rgba(34, 197, 94, 0.3);
  color: #22c55e;
}
.bufo-comms__page-info {
  font-family: var(--font-mono, monospace);
  font-size: 0.6rem;
  color: rgba(255, 255, 255, 0.25);
  letter-spacing: 0.06em;
}

/* ═══════════════════════════════════════════════════════════
   CLOSED NOTICE
   ═══════════════════════════════════════════════════════════ */
.bufo-comms__closed {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  gap: 14px;
  margin: 20px 24px;
  padding: 16px 18px;
  background: rgba(239, 68, 68, 0.04);
  border: 1px solid rgba(239, 68, 68, 0.12);
  border-radius: 12px;
}
.bufo-comms__closed-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: rgba(239, 68, 68, 0.08);
  border-radius: 10px;
  color: #ef4444;
  flex-shrink: 0;
}
.bufo-comms__closed-body { display: flex; flex-direction: column; gap: 2px; }
.bufo-comms__closed-body strong {
  font-family: var(--font-mono, monospace);
  font-size: 0.75rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: #ef4444;
}
.bufo-comms__closed-body span { font-size: 0.8rem; color: rgba(255,255,255,0.4); }

/* ═══════════════════════════════════════════════════════════
   FORM — Transmit Terminal
   ═══════════════════════════════════════════════════════════ */
.bufo-comms__form-wrap {
  position: relative;
  z-index: 1;
  margin: 24px;
  padding: 24px;
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid rgba(34, 197, 94, 0.1);
  border-radius: 16px;
}

.bufo-comms__form-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 14px;
  padding-bottom: 16px;
  margin-bottom: 12px;
  border-bottom: 1px solid rgba(34, 197, 94, 0.06);
}
.bufo-comms__form-header-left {
  display: flex;
  align-items: center;
  gap: 12px;
}
.bufo-comms__form-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.15);
  border-radius: 8px;
  color: #22c55e;
  flex-shrink: 0;
}
.bufo-comms__form-title {
  font-family: var(--font-mono, monospace);
  font-size: 0.82rem;
  font-weight: 700;
  text-transform: uppercase;
  letter-spacing: 0.04em;
  color: rgba(255,255,255,0.9);
  margin: 0;
}
.bufo-comms__form-desc {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.35);
  margin: 2px 0 0;
}
.bufo-comms__form-badge {
  font-family: var(--font-mono, monospace);
  font-size: 0.5rem;
  font-weight: 800;
  letter-spacing: 0.12em;
  padding: 4px 10px;
  border-radius: 4px;
  background: rgba(34, 197, 94, 0.08);
  border: 1px solid rgba(34, 197, 94, 0.15);
  color: rgba(34, 197, 94, 0.6);
  text-transform: uppercase;
  white-space: nowrap;
}

/* HUD bar */
.bufo-comms__form-hud {
  display: flex;
  align-items: center;
  gap: 6px;
  padding: 8px 12px;
  margin-bottom: 18px;
  border-radius: 6px;
  background: rgba(34, 197, 94, 0.02);
  border: 1px solid rgba(34, 197, 94, 0.05);
  font-family: var(--font-mono, monospace);
  font-size: 0.55rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  color: rgba(255,255,255,0.2);
  text-transform: uppercase;
}
.bufo-comms__form-hud svg { color: rgba(34, 197, 94, 0.4); }
.bufo-comms__form-hud-sep { opacity: 0.3; }

/* Reply title */
.bufo-comms__reply-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 16px;
  font-family: var(--font-mono, monospace);
  font-size: 0.82rem;
  font-weight: 700;
  color: rgba(255,255,255,0.8);
}
.bufo-comms__reply-title small { font-size: 0.72rem; font-weight: 400; }
.bufo-comms__reply-title small a { color: #22c55e; }

/* Logged in */
.bufo-comms__logged-in {
  display: flex;
  align-items: center;
  gap: 12px;
  padding: 12px 14px;
  background: rgba(34, 197, 94, 0.04);
  border: 1px solid rgba(34, 197, 94, 0.1);
  border-radius: 10px;
  margin-bottom: 16px;
}
.bufo-comms__logged-avatar img {
  width: 40px;
  height: 40px;
  border-radius: 8px;
  border: 2px solid rgba(34, 197, 94, 0.2);
}
.bufo-comms__logged-info { flex: 1; }
.bufo-comms__logged-status {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 0.78rem;
  color: rgba(255,255,255,0.6);
  margin-bottom: 2px;
}
.bufo-comms__logged-status strong { color: rgba(255,255,255,0.9); }
.bufo-comms__logged-status .bufo-comms__status-dot {
  background: #22c55e;
  box-shadow: 0 0 6px rgba(34, 197, 94, 0.5);
}
.bufo-comms__logged-actions {
  display: flex;
  align-items: center;
  gap: 6px;
  font-family: var(--font-mono, monospace);
  font-size: 0.62rem;
  color: rgba(255,255,255,0.2);
}
.bufo-comms__logged-actions a { color: rgba(34, 197, 94, 0.6); text-decoration: none; }
.bufo-comms__logged-actions a:hover { color: #22c55e; text-decoration: underline; }

/* Form layout */
.bufo-comms__form {
  display: flex;
  flex-wrap: wrap;
  gap: 14px;
}

.bufo-comms__field { width: 100%; }
.bufo-comms__field--half { width: 100%; }
@media (min-width: 640px) { .bufo-comms__field--half { width: calc(50% - 7px); } }

.bufo-comms__field label {
  display: block;
  margin-bottom: 6px;
  font-family: var(--font-mono, monospace);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.4);
}
.bufo-comms__field label .required { color: #22c55e; }

/* Input styling */
.bufo-comms__input-wrap {
  position: relative;
  display: flex;
  align-items: center;
}
.bufo-comms__input-wrap svg {
  position: absolute;
  left: 12px;
  color: rgba(34, 197, 94, 0.3);
  pointer-events: none;
  transition: color 0.2s ease;
}
.bufo-comms__input-wrap input {
  width: 100%;
  padding: 12px 12px 12px 38px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(34, 197, 94, 0.08);
  border-radius: 10px;
  font-size: 0.85rem;
  color: rgba(255,255,255,0.9);
  transition: all 0.25s ease;
  font-family: inherit;
}
.bufo-comms__input-wrap input::placeholder { color: rgba(255,255,255,0.2); }
.bufo-comms__input-wrap input:focus {
  outline: none;
  border-color: rgba(34, 197, 94, 0.35);
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.06), 0 0 20px -6px rgba(34, 197, 94, 0.1);
}
.bufo-comms__input-wrap:focus-within svg { color: rgba(34, 197, 94, 0.7); }

/* Textarea */
.bufo-comms__textarea-wrap textarea {
  width: 100%;
  padding: 14px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(34, 197, 94, 0.08);
  border-radius: 12px;
  font-size: 0.85rem;
  line-height: 1.65;
  color: rgba(255,255,255,0.9);
  resize: vertical;
  min-height: 130px;
  transition: all 0.25s ease;
  font-family: inherit;
}
.bufo-comms__textarea-wrap textarea::placeholder { color: rgba(255,255,255,0.2); }
.bufo-comms__textarea-wrap textarea:focus {
  outline: none;
  border-color: rgba(34, 197, 94, 0.35);
  box-shadow: 0 0 0 3px rgba(34, 197, 94, 0.06), 0 0 20px -6px rgba(34, 197, 94, 0.1);
}

.bufo-comms__textarea-footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  margin-top: 6px;
}
.bufo-comms__hint {
  display: flex;
  align-items: center;
  gap: 5px;
  font-size: 0.68rem;
  color: rgba(255,255,255,0.2);
}
.bufo-comms__hint svg { color: rgba(34, 197, 94, 0.35); }
.bufo-comms__char-hint {
  font-family: var(--font-mono, monospace);
  font-size: 0.58rem;
  color: rgba(255,255,255,0.15);
  letter-spacing: 0.04em;
}

/* Checkbox */
.bufo-comms__checkbox {
  display: flex;
  align-items: center;
  gap: 10px;
  cursor: pointer;
}
.bufo-comms__checkbox input { display: none; }
.bufo-comms__checkbox-mark {
  position: relative;
  width: 20px;
  height: 20px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid rgba(34, 197, 94, 0.12);
  border-radius: 5px;
  flex-shrink: 0;
  transition: all 0.2s ease;
}
.bufo-comms__checkbox-mark::after {
  content: '';
  position: absolute;
  top: 3px; left: 6px;
  width: 5px; height: 9px;
  border: solid #22c55e;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity 0.15s ease;
}
.bufo-comms__checkbox input:checked + .bufo-comms__checkbox-mark {
  background: rgba(34, 197, 94, 0.15);
  border-color: rgba(34, 197, 94, 0.4);
}
.bufo-comms__checkbox input:checked + .bufo-comms__checkbox-mark::after { opacity: 1; }
.bufo-comms__checkbox-text {
  font-size: 0.75rem;
  color: rgba(255,255,255,0.4);
}

/* Submit */
.bufo-comms__submit-row {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
}

.bufo-comms__submit {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 13px 28px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 12px;
  cursor: pointer;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  position: relative;
  overflow: hidden;
}
.bufo-comms__submit::before {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.1), transparent);
  opacity: 0;
  transition: opacity 0.3s ease;
}
.bufo-comms__submit:hover {
  background: rgba(34, 197, 94, 0.18);
  border-color: #22c55e;
  transform: translateY(-2px);
  box-shadow: 0 8px 30px -8px rgba(34, 197, 94, 0.2), 0 0 0 1px rgba(34, 197, 94, 0.06);
}
.bufo-comms__submit:hover::before { opacity: 1; }

.bufo-comms__submit-text {
  font-family: var(--font-mono, monospace);
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: rgba(255,255,255,0.9);
}
.bufo-comms__submit-icon {
  display: flex;
  color: #22c55e;
  transition: transform 0.3s ease;
}
.bufo-comms__submit:hover .bufo-comms__submit-icon { transform: translateX(4px); }

/* Loading state */
.bufo-comms__submit--loading {
  pointer-events: none;
  opacity: 0.65;
  cursor: not-allowed;
  transform: none !important;
  box-shadow: none !important;
}
.bufo-comms__submit--loading .bufo-comms__submit-icon { transform: none !important; }

.bufo-comms__spinner {
  animation: bufo-spinner 0.8s linear infinite;
}
@keyframes bufo-spinner {
  to { transform: rotate(360deg); }
}

/* ═══════════════════════════════════════════════════════════
   BOTTOM STATUS BAR
   ═══════════════════════════════════════════════════════════ */
.bufo-comms__bottom-bar {
  position: relative;
  z-index: 1;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 10px 24px;
  border-top: 1px solid rgba(34, 197, 94, 0.06);
  background: rgba(34, 197, 94, 0.02);
  font-family: var(--font-mono, monospace);
  font-size: 0.5rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  color: rgba(255, 255, 255, 0.15);
  text-transform: uppercase;
}

/* ═══════════════════════════════════════════════════════════
   REDUCED MOTION
   ═══════════════════════════════════════════════════════════ */
@media (prefers-reduced-motion: reduce) {
  .bufo-comms__header-pulse { animation: none; }
  .bufo-comms__status-dot { animation: none; }
  .bufo-comms__submit { transition: none; }
}

/* Performance tier 3 */
.perf-tier-3 .bufo-comms__scan { display: none; }
.perf-tier-3 .bufo-comms__header-pulse { animation: none; display: none; }
.perf-tier-3 .bufo-comms__status-dot { animation: none; }

/* ═══════════════════════════════════════════════════════════
   COMMS DIVIDER — Cinematic section break (single.php)
   ═══════════════════════════════════════════════════════════ */
.bufo-comms-divider {
  display: flex;
  align-items: center;
  gap: 16px;
  margin: 4rem 0 0;
  padding: 0;
}

.bufo-comms-divider__line {
  flex: 1;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(34, 197, 94, 0.2), transparent);
}

.bufo-comms-divider__label {
  display: flex;
  align-items: center;
  gap: 8px;
  font-family: var(--font-mono, monospace);
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.14em;
  text-transform: uppercase;
  color: rgba(34, 197, 94, 0.5);
  white-space: nowrap;
  padding: 6px 14px;
  border-radius: 100px;
  border: 1px solid rgba(34, 197, 94, 0.1);
  background: rgba(34, 197, 94, 0.03);
}

.bufo-comms-divider__label svg {
  color: rgba(34, 197, 94, 0.4);
}

.bufo-comms-divider__dot {
  width: 6px;
  height: 6px;
  border-radius: 50%;
  background: #22c55e;
  box-shadow: 0 0 8px rgba(34, 197, 94, 0.5);
  animation: bufo-dot-blink 2s ease-in-out infinite;
}

.bufo-comms-divider__count {
  font-size: 0.55rem;
  font-weight: 800;
  color: rgba(34, 197, 94, 0.7);
  background: rgba(34, 197, 94, 0.08);
  padding: 1px 7px;
  border-radius: 4px;
  min-width: 18px;
  text-align: center;
}

@media (prefers-reduced-motion: reduce) {
  .bufo-comms-divider__dot { animation: none; }
}
.perf-tier-3 .bufo-comms-divider__dot { animation: none; }
/* ── index.css ── */


/* ════════════════════════════════════════
   FEATURED POST — Full-width cinematic
   ════════════════════════════════════════ */

.bi-featured {
  position: relative;
  border-radius: var(--bi-radius);
  overflow: hidden;
  border: 1px solid var(--bi-border-green);
  transition: all 0.4s cubic-bezier(0.16, 1, 0.3, 1);
  animation: bi-rise 0.6s ease both;
}

.bi-featured::before {
  content: '';
  position: absolute;
  top: 0; left: 10%; right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bi-green-rgb), 0.3), transparent);
  z-index: 5;
}

.bi-featured:hover {
  border-color: rgba(var(--bi-green-rgb), 0.3);
  box-shadow: 0 20px 60px rgba(0,0,0,0.4), 0 0 50px rgba(var(--bi-green-rgb), 0.05);
  transform: translateY(-3px);
}

.bi-featured__link {
  display: block;
  text-decoration: none;
  color: inherit;
}

@media (min-width: 768px) {
  .bi-featured__link {
    display: grid;
    grid-template-columns: 1.35fr 1fr;
  }
}

.bi-featured__image {
  position: relative;
  min-height: 300px;
  overflow: hidden;
  background: var(--bi-surface-2);
}

@media (min-width: 768px) {
  .bi-featured__image { min-height: 380px; }
}

.bi-featured__image img {
  position: absolute;
  inset: 0;
  width: 100%; height: 100%;
  object-fit: cover;
  filter: saturate(0.8) brightness(0.85);
  transition: transform 0.6s cubic-bezier(0.16, 1, 0.3, 1), filter 0.6s ease;
}

.bi-featured:hover .bi-featured__image img {
  transform: scale(1.04);
  filter: saturate(1) brightness(0.95);
}

.bi-featured__image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(5,7,9,0.3) 0%, rgba(5,7,9,0.6) 100%);
  z-index: 1;
}

/* Scan line */
.bi-featured__scan {
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, transparent, rgba(var(--bi-green-rgb), 0.5), transparent);
  z-index: 2;
  opacity: 0;
  transition: opacity 0.3s ease;
  animation: bi-scan-sweep 3s ease-in-out infinite;
}

.bi-featured:hover .bi-featured__scan { opacity: 1; }

@keyframes bi-scan-sweep {
  0%   { top: 0; }
  50%  { top: 100%; }
  100% { top: 0; }
}

/* Corner markers */
.bi-featured__corner {
  position: absolute;
  width: 28px; height: 28px;
  z-index: 3;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.bi-featured:hover .bi-featured__corner { opacity: 0.5; }

.bi-featured__corner--tl { top: 12px; left: 12px; border-top: 2px solid var(--bi-green); border-left: 2px solid var(--bi-green); }
.bi-featured__corner--tr { top: 12px; right: 12px; border-top: 2px solid var(--bi-green); border-right: 2px solid var(--bi-green); }
.bi-featured__corner--bl { bottom: 12px; left: 12px; border-bottom: 2px solid var(--bi-green); border-left: 2px solid var(--bi-green); }
.bi-featured__corner--br { bottom: 12px; right: 12px; border-bottom: 2px solid var(--bi-green); border-right: 2px solid var(--bi-green); }

/* Featured badges on image */
.bi-featured__badges {
  position: absolute;
  top: 16px; left: 16px;
  z-index: 4;
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.bi-featured__priority {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.3rem 0.65rem;
  border-radius: 100px;
  background: rgba(var(--bi-magenta-rgb), 0.15);
  border: 1px solid rgba(var(--bi-magenta-rgb), 0.3);
  backdrop-filter: blur(8px);
  font-family: var(--bi-mono);
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bi-magenta);
}

.bi-featured__priority-dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--bi-magenta);
  animation: bi-pulse 2s ease-in-out infinite;
}

@keyframes bi-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%      { opacity: 0.3; transform: scale(0.7); }
}

.bi-featured__case-badge {
  padding: 0.3rem 0.6rem;
  border-radius: 100px;
  background: rgba(0,0,0,0.4);
  border: 1px solid var(--bi-border);
  backdrop-filter: blur(8px);
  font-family: var(--bi-mono);
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--bi-text-40);
}

/* Featured content */
.bi-featured__body {
  padding: 1.75rem 1.5rem;
  display: flex;
  flex-direction: column;
  justify-content: center;
  gap: 0.75rem;
  background: var(--bi-surface-1);
  position: relative;
}

@media (min-width: 768px) {
  .bi-featured__body { padding: 2.5rem 2rem; }
}

.bi-featured__body::before {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 20% 50%, rgba(var(--bi-green-rgb), 0.03), transparent 60%);
  pointer-events: none;
}

.bi-featured__meta {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 0.5rem;
}

.bi-featured__cat {
  font-family: var(--bi-mono);
  font-size: 0.6rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bi-green);
  padding: 0.2rem 0.55rem;
  border-radius: 100px;
  background: var(--bi-green-dim);
  border: 1px solid rgba(var(--bi-green-rgb), 0.12);
}

.bi-featured__meta-sep {
  color: var(--bi-text-25);
  font-size: 0.5rem;
}

.bi-featured__meta-item {
  font-family: var(--bi-mono);
  font-size: 0.6rem;
  color: var(--bi-text-40);
  letter-spacing: 0.04em;
}

.bi-featured__title {
  font-family: var(--bi-sans);
  font-size: clamp(1.4rem, 2.5vw, 2rem);
  font-weight: 800;
  line-height: 1.15;
  letter-spacing: -0.02em;
  color: var(--bi-text-100);
  margin: 0;
  transition: color 0.3s ease;
}

.bi-featured:hover .bi-featured__title { color: var(--bi-green-bright); }

.bi-featured__excerpt {
  font-family: var(--bi-sans);
  font-size: 0.92rem;
  font-weight: 300;
  line-height: 1.6;
  color: var(--bi-text-40);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 3;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.bi-featured__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  padding-top: 0.85rem;
  border-top: 1px solid var(--bi-border);
  margin-top: auto;
}

.bi-featured__author {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.bi-featured__author img {
  width: 28px; height: 28px;
  border-radius: 50%;
  border: 1px solid rgba(var(--bi-green-rgb), 0.15);
}

.bi-featured__author span {
  font-family: var(--bi-mono);
  font-size: 0.62rem;
  color: var(--bi-text-40);
}

.bi-featured__cta {
  display: inline-flex;
  align-items: center;
  gap: 0.45rem;
  font-family: var(--bi-mono);
  font-size: 0.65rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bi-green);
  transition: gap 0.3s ease;
}

.bi-featured:hover .bi-featured__cta { gap: 0.65rem; }

.bi-featured__cta svg { width: 14px; height: 14px; }


/* ════════════════════════════════════════
   MEDIUM CARDS — 2-column row
   ════════════════════════════════════════ */

.bi-duo-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
  margin-top: 1.25rem;
}

@media (min-width: 640px) {
  .bi-duo-grid { grid-template-columns: 1fr 1fr; }
}

.bi-card {
  position: relative;
  border-radius: var(--bi-radius);
  overflow: hidden;
  background: var(--bi-surface-1);
  border: 1px solid var(--bi-border);
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  animation: bi-rise 0.5s ease both;
}

.bi-card:nth-child(1) { animation-delay: 0.08s; }
.bi-card:nth-child(2) { animation-delay: 0.16s; }

.bi-card::before {
  content: '';
  position: absolute;
  top: 0; left: 15%; right: 15%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bi-green-rgb), 0.2), transparent);
  z-index: 3;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.bi-card:hover {
  border-color: rgba(var(--bi-green-rgb), 0.2);
  transform: translateY(-3px);
  box-shadow: 0 12px 40px rgba(0,0,0,0.3), 0 0 30px rgba(var(--bi-green-rgb), 0.04);
}

.bi-card:hover::before { opacity: 1; }

.bi-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
  height: 100%;
}

.bi-card__image {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--bi-surface-2);
}

.bi-card__image img {
  width: 100%; height: 100%;
  object-fit: cover;
  filter: saturate(0.8) brightness(0.85);
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), filter 0.5s ease;
}

.bi-card:hover .bi-card__image img {
  transform: scale(1.06);
  filter: saturate(1) brightness(0.95);
}

.bi-card__image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 30%, rgba(5,7,9,0.7) 100%);
  pointer-events: none;
}

.bi-card__placeholder {
  width: 100%; height: 100%;
  background: radial-gradient(ellipse at 30% 40%, rgba(var(--bi-green-rgb), 0.05), transparent 50%), var(--bi-surface-2);
  display: flex; align-items: center; justify-content: center;
}

.bi-card__placeholder::after {
  content: '◈';
  font-size: 1.5rem;
  color: var(--bi-text-25);
}

.bi-card__body {
  padding: 1.15rem;
  display: flex;
  flex-direction: column;
  gap: 0.45rem;
}

.bi-card__meta-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}

.bi-card__cat {
  font-family: var(--bi-mono);
  font-size: 0.56rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bi-green);
  padding: 0.18rem 0.5rem;
  border-radius: 100px;
  background: var(--bi-green-dim);
  border: 1px solid rgba(var(--bi-green-rgb), 0.1);
}

.bi-card__case-id {
  font-family: var(--bi-mono);
  font-size: 0.52rem;
  color: var(--bi-text-25);
  letter-spacing: 0.04em;
}

.bi-card__title {
  font-family: var(--bi-sans);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--bi-text-100);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
  transition: color 0.25s ease;
}

.bi-card:hover .bi-card__title { color: var(--bi-green-bright); }

.bi-card__meta-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-top: 0.55rem;
  border-top: 1px solid var(--bi-border);
  margin-top: auto;
}

.bi-card__date,
.bi-card__reading {
  font-family: var(--bi-mono);
  font-size: 0.56rem;
  color: var(--bi-text-25);
  display: inline-flex;
  align-items: center;
  gap: 0.25rem;
}

.bi-card__date svg,
.bi-card__reading svg { width: 11px; height: 11px; opacity: 0.5; }


/* ════════════════════════════════════════
   NEW SECTION: Áreas de Investigación
   ════════════════════════════════════════ */

.bi-areas {
  margin-top: 3rem;
  animation: bi-rise 0.6s ease 0.2s both;
}

.bi-section-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 1rem;
  margin-bottom: 1.25rem;
  padding-bottom: 0.75rem;
  border-bottom: 1px solid var(--bi-border);
}

.bi-section-header__left {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.bi-section-header__dot {
  position: relative;
  width: 8px; height: 8px;
}

.bi-section-header__dot::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: var(--bi-green);
  animation: bi-pulse 2s ease-in-out infinite;
}

.bi-section-header__dot::after {
  content: '';
  position: absolute;
  inset: -2px;
  border-radius: 50%;
  background: var(--bi-green);
  opacity: 0.3;
  animation: bi-pulse 2s ease-in-out infinite 0.5s;
}

.bi-section-header__title {
  font-family: var(--bi-mono);
  font-size: 0.72rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bi-text-80);
}

.bi-section-header__count {
  font-family: var(--bi-mono);
  font-size: 0.58rem;
  color: var(--bi-text-25);
}

/* Area cards grid */
.bi-areas-grid {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 0.75rem;
}

@media (min-width: 640px) { .bi-areas-grid { grid-template-columns: repeat(3, 1fr); } }

.bi-area-card {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
  gap: 0.5rem;
  padding: 1rem;
  border-radius: var(--bi-radius-md);
  background: var(--bi-surface-1);
  border: 1px solid var(--bi-border);
  text-decoration: none;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
  overflow: hidden;
}

.bi-area-card::before {
  content: '';
  position: absolute;
  top: 0; left: 0; right: 0;
  height: 2px;
  background: linear-gradient(90deg, var(--bi-green), transparent);
  opacity: 0;
  transition: opacity 0.3s ease;
}

.bi-area-card:hover {
  border-color: rgba(var(--bi-green-rgb), 0.2);
  background: rgba(var(--bi-green-rgb), 0.03);
  transform: translateY(-2px);
  box-shadow: 0 8px 24px rgba(0,0,0,0.2);
}

.bi-area-card:hover::before { opacity: 1; }

.bi-area-card__count {
  font-family: var(--bi-sans);
  font-size: 1.35rem;
  font-weight: 800;
  color: var(--bi-green);
  line-height: 1;
  transition: text-shadow 0.3s ease;
}

.bi-area-card:hover .bi-area-card__count {
  text-shadow: 0 0 20px var(--bi-green-glow);
}

.bi-area-card__name {
  font-family: var(--bi-sans);
  font-size: 0.85rem;
  font-weight: 600;
  color: var(--bi-text-80);
  line-height: 1.3;
  transition: color 0.25s ease;
}

.bi-area-card:hover .bi-area-card__name { color: var(--bi-text-100); }

.bi-area-card__label {
  font-family: var(--bi-mono);
  font-size: 0.52rem;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bi-text-25);
}


/* ════════════════════════════════════════
   NEW SECTION: Cómo empezar
   ════════════════════════════════════════ */

.bi-onboarding {
  margin-top: 2.5rem;
  padding: 1.5rem;
  border-radius: var(--bi-radius);
  background: var(--bi-surface-1);
  border: 1px solid var(--bi-border-green);
  position: relative;
  overflow: hidden;
  animation: bi-rise 0.6s ease 0.3s both;
}

.bi-onboarding::before {
  content: '';
  position: absolute;
  top: 0; left: 10%; right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bi-green-rgb), 0.25), transparent);
}

.bi-onboarding::after {
  content: '';
  position: absolute;
  inset: 0;
  background: radial-gradient(ellipse at 0% 0%, rgba(var(--bi-green-rgb), 0.04), transparent 50%);
  pointer-events: none;
}

.bi-onboarding__header {
  display: flex;
  align-items: center;
  gap: 0.6rem;
  margin-bottom: 1.25rem;
  position: relative;
  z-index: 1;
}

.bi-onboarding__icon {
  width: 32px; height: 32px;
  border-radius: var(--bi-radius-sm);
  background: rgba(var(--bi-green-rgb), 0.1);
  border: 1px solid rgba(var(--bi-green-rgb), 0.2);
  display: flex; align-items: center; justify-content: center;
  color: var(--bi-green);
  flex-shrink: 0;
}

.bi-onboarding__icon svg { width: 15px; height: 15px; }

.bi-onboarding__title {
  font-family: var(--bi-mono);
  font-size: 0.68rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bi-text-80);
}

.bi-onboarding__steps {
  display: grid;
  grid-template-columns: 1fr;
  gap: 0.75rem;
  position: relative;
  z-index: 1;
}

@media (min-width: 640px) {
  .bi-onboarding__steps { grid-template-columns: repeat(3, 1fr); }
}

.bi-step {
  display: flex;
  gap: 0.75rem;
  padding: 0.85rem;
  border-radius: var(--bi-radius-sm);
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid var(--bi-border);
  transition: all 0.25s ease;
}

.bi-step:hover {
  border-color: rgba(var(--bi-green-rgb), 0.15);
  background: rgba(var(--bi-green-rgb), 0.02);
}

.bi-step__num {
  width: 28px; height: 28px;
  border-radius: 50%;
  display: flex; align-items: center; justify-content: center;
  background: rgba(var(--bi-green-rgb), 0.08);
  border: 1px solid rgba(var(--bi-green-rgb), 0.18);
  font-family: var(--bi-mono);
  font-size: 0.65rem;
  font-weight: 700;
  color: var(--bi-green);
  flex-shrink: 0;
}

.bi-step__text h4 {
  font-family: var(--bi-mono);
  font-size: 0.65rem;
  font-weight: 700;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bi-text-80);
  margin: 0 0 0.2rem;
}

.bi-step__text p {
  font-family: var(--bi-sans);
  font-size: 0.78rem;
  font-weight: 300;
  line-height: 1.45;
  color: var(--bi-text-40);
  margin: 0;
}


/* ════════════════════════════════════════
   SIDEBAR — Cinematic overhaul
   ════════════════════════════════════════ */

.bi-sidebar {
  display: flex;
  flex-direction: column;
  gap: 1.25rem;
}

/* Sidebar panel */
.bi-panel {
  position: relative;
  border-radius: var(--bi-radius);
  background: rgba(12, 14, 18, 0.55);
  border: 1px solid var(--bi-border-green);
  box-shadow: 0 12px 40px rgba(0,0,0,0.3);
  backdrop-filter: blur(10px);
  overflow: hidden;
  transition: border-color 0.3s ease;
}

.bi-panel:hover {
  border-color: rgba(var(--bi-green-rgb), 0.22);
}

/* Panel top glow */
.bi-panel::before {
  content: '';
  position: absolute;
  top: 0; left: 12%; right: 12%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bi-green-rgb), 0.2), transparent);
  z-index: 1;
}

.bi-panel__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.7rem 1.15rem;
  border-bottom: 1px solid var(--bi-border);
  background: rgba(0, 0, 0, 0.2);
  position: relative;
  z-index: 2;
}

.bi-panel__header-left {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.bi-panel__header-icon {
  width: 28px; height: 28px;
  border-radius: var(--bi-radius-xs);
  display: flex; align-items: center; justify-content: center;
  background: rgba(var(--bi-green-rgb), 0.08);
  border: 1px solid rgba(var(--bi-green-rgb), 0.15);
  flex-shrink: 0;
}

.bi-panel__header-icon svg { width: 13px; height: 13px; color: var(--bi-green); }

.bi-panel__header-title {
  font-family: var(--bi-mono);
  font-size: 0.62rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--bi-text-80);
}

.bi-panel__header-status {
  display: flex;
  align-items: center;
  gap: 0.3rem;
  font-family: var(--bi-mono);
  font-size: 0.52rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--bi-green);
}

.bi-panel__header-status .dot {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--bi-green);
  animation: bi-pulse 2s ease-in-out infinite;
}

.bi-panel__body {
  position: relative;
  z-index: 2;
  padding: 1rem 1.15rem;
}

/* ── Protocol panel ── */
.bi-protocol-text {
  font-family: var(--bi-sans);
  font-size: 0.85rem;
  font-weight: 300;
  line-height: 1.55;
  color: var(--bi-text-40);
  margin: 0 0 0.75rem;
}

.bi-protocol-tags {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
}

.bi-protocol-tag {
  padding: 0.25rem 0.6rem;
  border-radius: 100px;
  background: rgba(var(--bi-green-rgb), 0.06);
  border: 1px solid rgba(var(--bi-green-rgb), 0.1);
  font-family: var(--bi-mono);
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--bi-green);
  text-transform: uppercase;
}

/* ── Recent transmissions ── */
.bi-recent-list {
  list-style: none;
  margin: 0;
  padding: 0;
}

.bi-recent-item {
  border-bottom: 1px solid var(--bi-border);
}

.bi-recent-item:last-child { border-bottom: none; }

.bi-recent-link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.75rem;
  padding: 0.7rem 1.15rem;
  text-decoration: none;
  transition: background 0.2s ease;
}

.bi-recent-link:hover { background: rgba(var(--bi-green-rgb), 0.03); }

.bi-recent-link__left {
  display: flex;
  align-items: flex-start;
  gap: 0.5rem;
  flex: 1;
  min-width: 0;
}

.bi-recent-link__indicator {
  color: var(--bi-green);
  font-size: 0.65rem;
  margin-top: 2px;
  flex-shrink: 0;
  opacity: 0.6;
}

.bi-recent-link__title {
  font-family: var(--bi-sans);
  font-size: 0.82rem;
  font-weight: 400;
  line-height: 1.35;
  color: var(--bi-text-60);
  transition: color 0.2s ease;
  overflow: hidden;
  text-overflow: ellipsis;
  white-space: nowrap;
}

.bi-recent-link:hover .bi-recent-link__title { color: var(--bi-text-100); }

.bi-recent-link__date {
  font-family: var(--bi-mono);
  font-size: 0.52rem;
  color: var(--bi-text-25);
  flex-shrink: 0;
}

/* ── Sector index ── */
.bi-sector-item {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.6rem 0;
  text-decoration: none;
  border-bottom: 1px solid var(--bi-border);
  transition: all 0.2s ease;
}

.bi-sector-item:last-child { border-bottom: none; }

.bi-sector-item:hover { padding-left: 0.4rem; }

.bi-sector-item__left {
  display: flex;
  align-items: center;
  gap: 0.5rem;
}

.bi-sector-item__dot {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: rgba(var(--bi-green-rgb), 0.4);
  transition: all 0.2s ease;
}

.bi-sector-item:hover .bi-sector-item__dot {
  background: var(--bi-green);
  box-shadow: 0 0 8px var(--bi-green-glow);
}

.bi-sector-item__name {
  font-family: var(--bi-sans);
  font-size: 0.85rem;
  font-weight: 400;
  color: var(--bi-text-60);
  transition: color 0.2s ease;
}

.bi-sector-item:hover .bi-sector-item__name { color: var(--bi-text-100); }

.bi-sector-item__count {
  font-family: var(--bi-mono);
  font-size: 0.58rem;
  font-weight: 600;
  color: var(--bi-text-25);
  padding: 0.15rem 0.45rem;
  border-radius: 100px;
  background: rgba(var(--bi-green-rgb), 0.06);
  border: 1px solid rgba(var(--bi-green-rgb), 0.08);
  transition: all 0.2s ease;
}

.bi-sector-item:hover .bi-sector-item__count {
  color: var(--bi-green);
  background: rgba(var(--bi-green-rgb), 0.1);
  border-color: rgba(var(--bi-green-rgb), 0.2);
}

/* ── Warning panel ── */
.bi-warning {
  position: relative;
  border-radius: var(--bi-radius);
  padding: 1.25rem;
  background: rgba(var(--bi-amber-rgb), 0.03);
  border: 1px solid rgba(var(--bi-amber-rgb), 0.12);
  overflow: hidden;
}

.bi-warning::before {
  content: '';
  position: absolute;
  top: 0; left: 10%; right: 10%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--bi-amber-rgb), 0.25), transparent);
}

.bi-warning__header {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.5rem;
}

.bi-warning__icon {
  width: 28px; height: 28px;
  border-radius: var(--bi-radius-xs);
  display: flex; align-items: center; justify-content: center;
  background: rgba(var(--bi-amber-rgb), 0.1);
  border: 1px solid rgba(var(--bi-amber-rgb), 0.2);
}

.bi-warning__icon svg { width: 14px; height: 14px; color: var(--bi-amber); }

.bi-warning__title {
  font-family: var(--bi-mono);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--bi-amber);
}

.bi-warning__text {
  font-family: var(--bi-sans);
  font-size: 0.82rem;
  font-weight: 300;
  line-height: 1.55;
  color: var(--bi-text-40);
  margin: 0;
}


/* ════════════════════════════════════════
   UTILITIES
   ════════════════════════════════════════ */

@keyframes bi-rise {
  from { opacity: 0; transform: translateY(20px); }
  to   { opacity: 1; transform: translateY(0); }
}

.bi-featured__link:focus-visible,
.bi-card__link:focus-visible,
.bi-area-card:focus-visible,
.bi-recent-link:focus-visible,
.bi-sector-item:focus-visible {
  outline: 2px solid var(--bi-green);
  outline-offset: 3px;
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* ─── Claim / elevator pitch ─── */
.hb-claim {
  margin-top: 0.5rem;
  margin-bottom: 0.25rem;
}

.hb-claim__main {
  font-family: var(--hb-sans);
  font-size: clamp(1rem, 2vw, 1.25rem);
  font-weight: 300;
  line-height: 1.5;
  color: var(--hb-text-60);
  margin: 0;
}

.hb-claim__main strong {
  font-weight: 600;
  color: var(--hb-text-100);
}

.hb-claim__main em {
  font-style: normal;
  color: var(--hb-green);
}

/* ─── What-is strip ─── */
.hb-whatstrip {
  display: flex;
  flex-wrap: wrap;
  gap: 0.4rem;
  margin-top: 0.85rem;
  margin-bottom: 0.35rem;
}

.hb-whatstrip__tag {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.25rem 0.6rem;
  border-radius: 100px;
  background: rgba(255, 255, 255, 0.025);
  border: 1px solid var(--hb-border);
  font-family: var(--hb-mono);
  font-size: 0.56rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--hb-text-40);
  transition: all 0.25s ease;
}

.hb-whatstrip__tag:hover {
  border-color: var(--hb-border-green);
  background: rgba(var(--hb-green-rgb), 0.04);
  color: var(--hb-text-60);
}

.hb-whatstrip__tag-dot {
  width: 4px; height: 4px;
  border-radius: 50%;
  background: var(--hb-green);
  opacity: 0.5;
}

/* ─── Mission box ─── */
.hb-mission {
  position: relative;
  display: flex;
  gap: 0.75rem;
  padding: 0.85rem 1rem;
  border-radius: var(--hb-radius-sm);
  background: rgba(var(--hb-green-rgb), 0.03);
  border: 1px solid rgba(var(--hb-green-rgb), 0.08);
  margin-top: 0.85rem;
  overflow: hidden;
}

.hb-mission::before {
  content: '';
  position: absolute;
  left: 0; top: 15%; bottom: 15%;
  width: 2px;
  background: var(--hb-green);
  border-radius: 1px;
  opacity: 0.4;
}

.hb-mission__icon {
  width: 28px; height: 28px;
  border-radius: var(--hb-radius-xs);
  background: rgba(var(--hb-green-rgb), 0.08);
  border: 1px solid rgba(var(--hb-green-rgb), 0.15);
  display: flex; align-items: center; justify-content: center;
  flex-shrink: 0;
  margin-top: 1px;
}

.hb-mission__icon svg { width: 13px; height: 13px; color: var(--hb-green); }

.hb-mission__text {
  font-family: var(--hb-sans);
  font-size: 0.82rem;
  font-weight: 300;
  line-height: 1.55;
  color: var(--hb-text-40);
  margin: 0;
}

.hb-mission__text strong {
  font-weight: 500;
  color: var(--hb-text-60);
}

/* ─── Archive stats grid ─── */
.hb-archive-grid {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  gap: 0.5rem;
  margin-top: 1rem;
}

@media (min-width: 480px) {
  .hb-archive-grid { grid-template-columns: repeat(5, 1fr); }
}

.hb-archive-stat {
  position: relative;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 0.2rem;
  padding: 0.6rem 0.25rem;
  border-radius: var(--hb-radius-sm);
  background: rgba(255, 255, 255, 0.015);
  border: 1px solid var(--hb-border);
  transition: all 0.25s ease;
  text-decoration: none;
  cursor: default;
}

a.hb-archive-stat { cursor: pointer; }

a.hb-archive-stat:hover {
  border-color: var(--hb-border-green);
  background: rgba(var(--hb-green-rgb), 0.04);
  transform: translateY(-1px);
}

.hb-archive-stat__value {
  font-family: var(--hb-sans);
  font-size: 1.15rem;
  font-weight: 800;
  color: var(--hb-text-100);
  line-height: 1;
  transition: color 0.25s ease;
}

a.hb-archive-stat:hover .hb-archive-stat__value { color: var(--hb-green); }

.hb-archive-stat__label {
  font-family: var(--hb-mono);
  font-size: 0.48rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hb-text-25);
  text-align: center;
}

.hb-archive-stat__icon {
  width: 18px; height: 18px;
  color: var(--hb-text-25);
  margin-bottom: 0.15rem;
  transition: color 0.25s ease;
}

a.hb-archive-stat:hover .hb-archive-stat__icon { color: var(--hb-green); }

/* Live indicator for the frequency stat */
.hb-live-row {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-top: 0.75rem;
  padding: 0.45rem 0.75rem;
  border-radius: var(--hb-radius-xs);
  background: rgba(var(--hb-green-rgb), 0.03);
  border: 1px solid rgba(var(--hb-green-rgb), 0.06);
}

.hb-live-row__left {
  display: flex;
  align-items: center;
  gap: 0.4rem;
}

.hb-live-dot {
  position: relative;
  width: 6px; height: 6px;
}

.hb-live-dot::before {
  content: '';
  position: absolute;
  inset: 0;
  border-radius: 50%;
  background: var(--hb-green);
  animation: hb-pulse 2s ease-in-out infinite;
}

.hb-live-dot::after {
  content: '';
  position: absolute;
  inset: -3px;
  border-radius: 50%;
  background: var(--hb-green);
  opacity: 0.3;
  animation: hb-pulse 2s ease-in-out infinite 0.3s;
}

@keyframes hb-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50%      { opacity: 0.3; transform: scale(0.7); }
}

.hb-live-row__freq {
  font-family: var(--hb-mono);
  font-size: 0.6rem;
  font-weight: 600;
  color: var(--hb-green);
  letter-spacing: 0.06em;
}

.hb-live-row__label {
  font-family: var(--hb-mono);
  font-size: 0.5rem;
  color: var(--hb-text-25);
  letter-spacing: 0.06em;
  text-transform: uppercase;
}

.hb-live-row__date {
  font-family: var(--hb-mono);
  font-size: 0.55rem;
  color: var(--hb-text-25);
  letter-spacing: 0.04em;
}


/* ─── Search — Cinematic ─── */
.hb-search {
  position: relative;
  margin-top: 1.15rem;
}

.hb-search__wrapper {
  position: relative;
  display: flex;
  align-items: center;
  border-radius: var(--hb-radius-md);
  background: var(--hb-surface-2);
  border: 1px solid var(--hb-border-green);
  overflow: hidden;
  transition: all 0.35s ease;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.2);
}

.hb-search__wrapper:focus-within {
  border-color: rgba(var(--hb-green-rgb), 0.35);
  box-shadow:
    0 4px 20px rgba(0, 0, 0, 0.2),
    0 0 0 3px rgba(var(--hb-green-rgb), 0.08),
    0 0 30px rgba(var(--hb-green-rgb), 0.06);
}

/* Shimmer sweep */
.hb-search__wrapper::after {
  content: '';
  position: absolute;
  top: 0; left: -100%;
  width: 50%; height: 100%;
  background: linear-gradient(90deg, transparent, rgba(var(--hb-green-rgb), 0.04), transparent);
  z-index: 0;
  animation: hb-shimmer 5s ease-in-out infinite;
  pointer-events: none;
}

@keyframes hb-shimmer {
  0%, 100% { left: -100%; }
  50%      { left: 150%; }
}

.hb-search__icon-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  flex-shrink: 0;
  position: relative;
  z-index: 1;
}

.hb-search__icon-wrap svg {
  width: 16px; height: 16px;
  color: rgba(var(--hb-green-rgb), 0.4);
  transition: color 0.25s ease;
}

.hb-search__wrapper:focus-within .hb-search__icon-wrap svg {
  color: var(--hb-green);
}

.hb-search__input {
  flex: 1;
  background: transparent !important;
  border: none !important;
  padding: 0.85rem 0 0.85rem 0 !important;
  font-family: var(--hb-mono) !important;
  font-size: 0.78rem !important;
  font-weight: 400 !important;
  color: var(--hb-text-80) !important;
  outline: none !important;
  position: relative;
  z-index: 1;
  min-width: 0;
}

.hb-search__input::placeholder {
  color: var(--hb-text-25) !important;
  font-weight: 300 !important;
}

.hb-search__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.6rem 1rem;
  margin: 0.35rem 0.35rem 0.35rem 0;
  border-radius: var(--hb-radius-sm);
  border: 1px solid rgba(var(--hb-green-rgb), 0.25);
  background: linear-gradient(135deg, rgba(var(--hb-green-rgb), 0.12), rgba(var(--hb-green-rgb), 0.04));
  font-family: var(--hb-mono);
  font-size: 0.62rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--hb-green);
  cursor: pointer;
  position: relative;
  z-index: 1;
  flex-shrink: 0;
  transition: all 0.3s cubic-bezier(0.16, 1, 0.3, 1);
}

.hb-search__btn:hover {
  background: var(--hb-green);
  color: var(--hb-surface-1);
  border-color: var(--hb-green);
  box-shadow: 0 0 20px rgba(var(--hb-green-rgb), 0.2);
}

.hb-search__btn svg {
  width: 13px; height: 13px;
  transition: transform 0.25s ease;
}

.hb-search__btn:hover svg { transform: translateX(2px); }

/* Scramble hints below search */
.hb-search__hints {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-top: 0.6rem;
  overflow: hidden;
}

.hb-search__hints-label {
  font-family: var(--hb-mono);
  font-size: 0.52rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--hb-text-25);
  flex-shrink: 0;
  white-space: nowrap;
}

.hb-search__scramble {
  font-family: var(--hb-mono);
  font-size: 0.6rem;
  font-weight: 400;
  color: rgba(var(--hb-green-rgb), 0.6);
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  min-height: 1.2em;
}

/* ─── Entrance animations ─── */
.hb-enter { animation: hb-fade-up 0.6s cubic-bezier(0.16, 1, 0.3, 1) both; }
.hb-enter--d1 { animation-delay: 0.05s; }
.hb-enter--d2 { animation-delay: 0.10s; }
.hb-enter--d3 { animation-delay: 0.15s; }
.hb-enter--d4 { animation-delay: 0.20s; }
.hb-enter--d5 { animation-delay: 0.25s; }
.hb-enter--d6 { animation-delay: 0.30s; }
.hb-enter--d7 { animation-delay: 0.35s; }

@keyframes hb-fade-up {
  from { opacity: 0; transform: translateY(14px); }
  to   { opacity: 1; transform: translateY(0); }
}

@media (prefers-reduced-motion: reduce) {
  .hb-enter, .hb-search__wrapper::after, .hb-live-dot::before, .hb-live-dot::after {
    animation: none !important;
    opacity: 1 !important;
    transform: none !important;
  }
}

/* ── archivo.css ── */
/* ════════════════════════════════════════════════════════════════════════════
   BROKEN UFO — ARCHIVE: DOSSIER CLASSIFICATION SYSTEM
   Cinematographic OSINT / Command Center aesthetic
   Prefix: ba- (Broken Archive)
   ════════════════════════════════════════════════════════════════════════════ */


/* ─── Design tokens ─── */


/* ════════════════════════════════════════
   HERO SECTION
   ════════════════════════════════════════ */

.ba-hero {
  position: relative;
  overflow: hidden;
  padding-bottom: 1px; /* collapse margin */
}

/* ── Atmospheric layers ── */
.ba-hero__atmo {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 0;
}

.ba-hero__atmo::before {
  content: '';
  position: absolute;
  inset: 0;
  background:
    radial-gradient(ellipse 1000px 550px at 12% 20%, rgba(var(--ba-green-rgb), 0.09) 0%, transparent 60%),
    radial-gradient(ellipse 700px 500px at 88% 15%, rgba(var(--ba-green-rgb), 0.05) 0%, transparent 55%),
    radial-gradient(ellipse 500px 400px at 70% 90%, rgba(var(--ba-magenta-rgb), 0.035) 0%, transparent 50%);
}

.ba-hero__atmo::after {
  content: '';
  position: absolute;
  inset: -25%;
  background:
    radial-gradient(circle at 20% 25%, rgba(var(--ba-green-rgb), 0.10) 0%, transparent 30%),
    radial-gradient(circle at 80% 35%, rgba(var(--ba-green-rgb), 0.05) 0%, transparent 35%);
  filter: blur(50px);
  opacity: 0.6;
  animation: ba-atmo-breathe 20s ease-in-out infinite alternate;
}

@keyframes ba-atmo-breathe {
  0%   { transform: translate(0, 0) scale(1); }
  100% { transform: translate(15px, -10px) scale(1.02); }
}

/* Grid overlay */
.ba-hero__grid {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background-image:
    linear-gradient(rgba(var(--ba-green-rgb), 0.018) 1px, transparent 1px),
    linear-gradient(90deg, rgba(var(--ba-green-rgb), 0.018) 1px, transparent 1px);
  background-size: 50px 50px;
  mask-image: radial-gradient(ellipse 70% 70% at 50% 50%, black, transparent);
  -webkit-mask-image: radial-gradient(ellipse 70% 70% at 50% 50%, black, transparent);
  animation: ba-grid-drift 25s linear infinite;
}

@keyframes ba-grid-drift {
  0%   { transform: translate3d(0, 0, 0); }
  100% { transform: translate3d(-50px, -50px, 0); }
}

/* Scanlines */
.ba-hero__scan {
  position: absolute;
  inset: 0;
  pointer-events: none;
  z-index: 1;
  background: repeating-linear-gradient(0deg, transparent 0px, transparent 3px, rgba(0,0,0,0.02) 3px, rgba(0,0,0,0.02) 6px);
  opacity: 0.5;
}

/* Radar decoration */
.ba-hero__radar {
  position: absolute;
  right: 8%;
  top: 50%;
  transform: translateY(-50%);
  width: 200px;
  height: 200px;
  z-index: 1;
  opacity: 0.15;
}

@media (max-width: 1023px) { .ba-hero__radar { display: none; } }

.ba-hero__radar-ring {
  position: absolute;
  border-radius: 50%;
  border: 1px solid rgba(var(--ba-green-rgb), 0.25);
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
}
.ba-hero__radar-ring--1 { width: 60px; height: 60px; }
.ba-hero__radar-ring--2 { width: 120px; height: 120px; border-color: rgba(var(--ba-green-rgb), 0.15); }
.ba-hero__radar-ring--3 { width: 180px; height: 180px; border-color: rgba(var(--ba-green-rgb), 0.08); }

.ba-hero__radar-cross-h,
.ba-hero__radar-cross-v { position: absolute; background: rgba(var(--ba-green-rgb), 0.1); }
.ba-hero__radar-cross-h { width: 100%; height: 1px; top: 50%; }
.ba-hero__radar-cross-v { height: 100%; width: 1px; left: 50%; }

.ba-hero__radar-sweep {
  position: absolute;
  top: 50%; left: 50%;
  width: 50%; height: 2px;
  transform-origin: left center;
  animation: ba-radar-spin 5s linear infinite;
}
.ba-hero__radar-sweep::before {
  content: '';
  position: absolute;
  top: -40px; left: 0;
  width: 100%; height: 80px;
  background: conic-gradient(from -25deg at 0% 50%, rgba(var(--ba-green-rgb), 0.2) 0deg, transparent 50deg);
  transform-origin: left center;
}
.ba-hero__radar-sweep::after {
  content: '';
  position: absolute;
  top: 0; left: 0;
  width: 100%; height: 2px;
  background: linear-gradient(90deg, rgba(var(--ba-green-rgb), 0.5), transparent);
}

@keyframes ba-radar-spin { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

.ba-hero__radar-center {
  position: absolute;
  top: 50%; left: 50%;
  transform: translate(-50%, -50%);
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--ba-green);
  box-shadow: 0 0 10px var(--ba-green-glow);
}

/* Corner brackets */
.ba-corner {
  position: absolute;
  width: 40px; height: 40px;
  z-index: 2;
  pointer-events: none;
  opacity: 0.2;
}
.ba-corner--tl { top: 12px; left: 12px;  border-top: 2px solid var(--ba-green); border-left: 2px solid var(--ba-green); }
.ba-corner--tr { top: 12px; right: 12px; border-top: 2px solid var(--ba-green); border-right: 2px solid var(--ba-green); }
.ba-corner--bl { bottom: 12px; left: 12px;  border-bottom: 2px solid var(--ba-green); border-left: 2px solid var(--ba-green); }
.ba-corner--br { bottom: 12px; right: 12px; border-bottom: 2px solid var(--ba-green); border-right: 2px solid var(--ba-green); }

/* ── Hero content ── */
.ba-hero__inner {
  position: relative;
  z-index: 5;
  max-width: 1280px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 3rem;
}

@media (min-width: 768px) {
  .ba-hero__inner { padding: 3.5rem 2rem 4rem; }
}

/* ── HUD stripe ── */
.ba-hud {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.55rem 1rem;
  margin-bottom: 2rem;
  border-radius: var(--ba-radius-xs);
  background: rgba(var(--ba-green-rgb), 0.03);
  border: 1px solid rgba(var(--ba-green-rgb), 0.07);
  flex-wrap: wrap;
  gap: 0.5rem;
  animation: ba-fade-up 0.5s ease both;
}

.ba-hud__left, .ba-hud__right {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.ba-hud__signal {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-family: var(--ba-mono);
  font-size: 0.58rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ba-green);
}

.ba-hud__pulse {
  width: 6px; height: 6px;
  border-radius: 50%;
  background: var(--ba-green);
  box-shadow: 0 0 8px var(--ba-green-glow);
  animation: ba-pulse 2s ease-in-out infinite;
}

@keyframes ba-pulse {
  0%, 100% { opacity: 1; transform: scale(1); }
  50% { opacity: 0.35; transform: scale(0.75); }
}

.ba-hud__sep {
  width: 1px; height: 12px;
  background: rgba(var(--ba-green-rgb), 0.12);
}

.ba-hud__tag {
  font-family: var(--ba-mono);
  font-size: 0.55rem;
  letter-spacing: 0.05em;
  color: var(--ba-text-25);
  text-transform: uppercase;
}

@media (max-width: 767px) { .ba-hud__right { display: none; } }

/* ── Breadcrumb ── */
.ba-breadcrumb {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 1.5rem;
  animation: ba-fade-up 0.5s ease 0.05s both;
}

.ba-breadcrumb a {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  font-family: var(--ba-mono);
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--ba-text-40);
  text-decoration: none;
  transition: color 0.2s ease;
}

.ba-breadcrumb a:hover { color: var(--ba-green); }
.ba-breadcrumb a svg { width: 14px; height: 14px; }

.ba-breadcrumb__sep {
  width: 14px; height: 14px;
  color: var(--ba-text-25);
}

.ba-breadcrumb__current {
  font-family: var(--ba-mono);
  font-size: 0.65rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--ba-text-60);
}

/* ── Type badge ── */
.ba-type-badge {
  display: inline-flex;
  align-items: center;
  gap: 0.4rem;
  padding: 0.3rem 0.7rem;
  border-radius: 100px;
  background: var(--ba-green-dim);
  border: 1px solid rgba(var(--ba-green-rgb), 0.18);
  font-family: var(--ba-mono);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.12em;
  text-transform: uppercase;
  color: var(--ba-green);
  margin-bottom: 0.85rem;
}

.ba-type-badge svg { width: 13px; height: 13px; }

/* ── Hero title ── */
.ba-hero__title {
  font-family: var(--ba-sans);
  font-size: clamp(2rem, 5vw, 3.5rem);
  font-weight: 800;
  line-height: 1.05;
  letter-spacing: -0.03em;
  color: var(--ba-text-100);
  margin: 0 0 0.75rem;
  max-width: 700px;
  animation: ba-fade-up 0.6s ease 0.15s both;
}

.ba-hero__desc {
  font-family: var(--ba-sans);
  font-size: 1rem;
  font-weight: 300;
  line-height: 1.65;
  color: var(--ba-text-60);
  max-width: 560px;
  margin: 0;
  animation: ba-fade-up 0.6s ease 0.2s both;
}

/* ── Author variant ── */
.ba-author {
  display: flex;
  align-items: flex-start;
  gap: 1.5rem;
  animation: ba-fade-up 0.6s ease 0.1s both;
}

@media (max-width: 639px) {
  .ba-author { flex-direction: column; align-items: center; text-align: center; }
}

.ba-author__avatar-wrap {
  position: relative;
  flex-shrink: 0;
}

.ba-author__avatar {
  width: 88px; height: 88px;
  border-radius: 50%;
  object-fit: cover;
  border: 2px solid rgba(var(--ba-green-rgb), 0.25);
  box-shadow: 0 0 30px rgba(var(--ba-green-rgb), 0.1);
}

.ba-author__ring {
  position: absolute;
  inset: -5px;
  border-radius: 50%;
  border: 1px solid rgba(var(--ba-green-rgb), 0.1);
  animation: ba-ring-rotate 8s linear infinite;
  border-top-color: rgba(var(--ba-green-rgb), 0.35);
}

@keyframes ba-ring-rotate { from { transform: rotate(0deg); } to { transform: rotate(360deg); } }

.ba-author__status {
  position: absolute;
  bottom: 4px; right: 4px;
  width: 12px; height: 12px;
  border-radius: 50%;
  background: var(--ba-green);
  border: 2px solid var(--ba-surface-1);
  box-shadow: 0 0 8px var(--ba-green-glow);
}

.ba-author__info { flex: 1; }

.ba-author__stats {
  display: flex;
  gap: 1.5rem;
  margin-top: 1rem;
}

.ba-author__stat-value {
  display: block;
  font-family: var(--ba-sans);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--ba-text-100);
  line-height: 1;
}

.ba-author__stat-label {
  display: block;
  font-family: var(--ba-mono);
  font-size: 0.6rem;
  font-weight: 500;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ba-text-40);
  margin-top: 0.25rem;
}

/* ── Stats bar ── */
.ba-stats-bar {
  display: flex;
  align-items: center;
  gap: 1.25rem;
  flex-wrap: wrap;
  margin-top: 2rem;
  padding: 0.85rem 1.25rem;
  border-radius: var(--ba-radius-sm);
  background: rgba(0, 0, 0, 0.25);
  border: 1px solid var(--ba-border);
  animation: ba-fade-up 0.6s ease 0.3s both;
}

.ba-stat {
  display: flex;
  align-items: center;
  gap: 0.6rem;
}

.ba-stat__icon {
  width: 36px; height: 36px;
  border-radius: var(--ba-radius-xs);
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--ba-green-rgb), 0.06);
  border: 1px solid rgba(var(--ba-green-rgb), 0.1);
  color: var(--ba-green);
  flex-shrink: 0;
  position: relative;
}

.ba-stat__icon svg { width: 16px; height: 16px; }

.ba-stat__icon--active::before {
  content: '';
  position: absolute;
  inset: -3px;
  border-radius: calc(var(--ba-radius-xs) + 3px);
  border: 1px solid rgba(var(--ba-green-rgb), 0.15);
  animation: ba-pulse 2.5s ease-in-out infinite;
}

.ba-stat__value {
  display: block;
  font-family: var(--ba-sans);
  font-size: 0.9rem;
  font-weight: 600;
  color: var(--ba-text-100);
  line-height: 1;
}

.ba-stat__label {
  display: block;
  font-family: var(--ba-mono);
  font-size: 0.55rem;
  letter-spacing: 0.06em;
  text-transform: uppercase;
  color: var(--ba-text-40);
  margin-top: 0.15rem;
}

.ba-stats-bar__sep {
  width: 1px;
  height: 32px;
  background: var(--ba-border);
  flex-shrink: 0;
}

@media (max-width: 639px) {
  .ba-stats-bar { gap: 0.75rem; }
  .ba-stats-bar__sep { height: 1px; width: 100%; }
}


/* ════════════════════════════════════════
   ARCHIVE BODY
   ════════════════════════════════════════ */

.ba-body {
  position: relative;
  background: transparent;
}

.ba-body__inner {
  max-width: 1280px;
  margin: 0 auto;
  padding: 2.5rem 1.5rem 4rem;
}

@media (min-width: 768px) {
  .ba-body__inner { padding: 3rem 2rem 5rem; }
}

/* ── Filter bar ── */
.ba-filter-bar {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 0.75rem;
  margin-bottom: 2rem;
  padding: 0.65rem 1rem;
  border-radius: var(--ba-radius-sm);
  background: var(--ba-surface-2);
  border: 1px solid var(--ba-border);
}

.ba-filter-bar__showing {
  font-family: var(--ba-mono);
  font-size: 0.65rem;
  letter-spacing: 0.04em;
  color: var(--ba-text-40);
}

.ba-rss-btn {
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.35rem 0.7rem;
  border-radius: var(--ba-radius-xs);
  background: rgba(var(--ba-green-rgb), 0.06);
  border: 1px solid rgba(var(--ba-green-rgb), 0.12);
  font-family: var(--ba-mono);
  font-size: 0.6rem;
  font-weight: 600;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ba-green);
  text-decoration: none;
  transition: all 0.25s ease;
}

.ba-rss-btn:hover {
  background: rgba(var(--ba-green-rgb), 0.12);
  border-color: rgba(var(--ba-green-rgb), 0.25);
  box-shadow: 0 0 15px rgba(var(--ba-green-rgb), 0.08);
}

.ba-rss-btn svg { width: 13px; height: 13px; }


/* ════════════════════════════════════════
   POST GRID
   ════════════════════════════════════════ */

.ba-grid {
  display: grid;
  grid-template-columns: 1fr;
  gap: 1.25rem;
}

@media (min-width: 640px)  { .ba-grid { grid-template-columns: repeat(2, 1fr); } }
@media (min-width: 1024px) { .ba-grid { grid-template-columns: repeat(3, 1fr); } }


/* ════════════════════════════════════════
   POST CARDS
   ════════════════════════════════════════ */

.ba-card {
  position: relative;
  border-radius: var(--ba-radius);
  background: var(--ba-surface-1);
  border: 1px solid var(--ba-border);
  overflow: hidden;
  transition: all 0.35s cubic-bezier(0.16, 1, 0.3, 1);
  animation: ba-card-in 0.5s ease both;
}

/* Staggered entrance for cards */
.ba-card:nth-child(1)  { animation-delay: 0.05s; }
.ba-card:nth-child(2)  { animation-delay: 0.10s; }
.ba-card:nth-child(3)  { animation-delay: 0.15s; }
.ba-card:nth-child(4)  { animation-delay: 0.18s; }
.ba-card:nth-child(5)  { animation-delay: 0.21s; }
.ba-card:nth-child(6)  { animation-delay: 0.24s; }
.ba-card:nth-child(7)  { animation-delay: 0.27s; }
.ba-card:nth-child(8)  { animation-delay: 0.30s; }
.ba-card:nth-child(9)  { animation-delay: 0.33s; }

@keyframes ba-card-in {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Top edge glow */
.ba-card::before {
  content: '';
  position: absolute;
  top: 0; left: 15%; right: 15%;
  height: 1px;
  background: linear-gradient(90deg, transparent, rgba(var(--ba-green-rgb), 0.2), transparent);
  z-index: 3;
  opacity: 0;
  transition: opacity 0.35s ease;
}

.ba-card:hover {
  border-color: rgba(var(--ba-green-rgb), 0.2);
  transform: translateY(-4px);
  box-shadow:
    0 16px 50px rgba(0, 0, 0, 0.35),
    0 0 40px rgba(var(--ba-green-rgb), 0.04);
}

.ba-card:hover::before { opacity: 1; }

.ba-card__link {
  display: block;
  text-decoration: none;
  color: inherit;
  height: 100%;
}

/* ── Image ── */
.ba-card__image {
  position: relative;
  aspect-ratio: 16 / 10;
  overflow: hidden;
  background: var(--ba-surface-2);
}

.ba-card__image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  transition: transform 0.5s cubic-bezier(0.16, 1, 0.3, 1), filter 0.5s ease;
  filter: saturate(0.85) brightness(0.9);
}

.ba-card:hover .ba-card__image img {
  transform: scale(1.06);
  filter: saturate(1) brightness(1);
}

.ba-card__image-overlay {
  position: absolute;
  inset: 0;
  background: linear-gradient(180deg, transparent 40%, rgba(5, 7, 9, 0.85) 100%);
  z-index: 1;
  pointer-events: none;
}

/* Placeholder when no image */
.ba-card__placeholder {
  width: 100%; height: 100%;
  background:
    radial-gradient(ellipse at 30% 40%, rgba(var(--ba-green-rgb), 0.06) 0%, transparent 50%),
    var(--ba-surface-2);
  display: flex;
  align-items: center;
  justify-content: center;
}

.ba-card__placeholder::after {
  content: '◈';
  font-size: 2rem;
  color: var(--ba-text-25);
}

/* Corner markers on featured */
.ba-card__marker {
  position: absolute;
  width: 24px; height: 24px;
  z-index: 2;
  pointer-events: none;
  opacity: 0;
  transition: opacity 0.3s ease;
}

.ba-card:hover .ba-card__marker { opacity: 0.35; }

.ba-card__marker--tl { top: 8px; left: 8px; border-top: 1.5px solid var(--ba-green); border-left: 1.5px solid var(--ba-green); }
.ba-card__marker--br { bottom: 8px; right: 8px; border-bottom: 1.5px solid var(--ba-green); border-right: 1.5px solid var(--ba-green); }

/* Featured badge */
.ba-card__featured-tag {
  position: absolute;
  top: 10px; left: 10px;
  z-index: 3;
  display: inline-flex;
  align-items: center;
  gap: 0.35rem;
  padding: 0.3rem 0.65rem;
  border-radius: 100px;
  background: rgba(var(--ba-green-rgb), 0.15);
  border: 1px solid rgba(var(--ba-green-rgb), 0.25);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.ba-card__featured-tag svg {
  width: 12px; height: 12px;
  color: var(--ba-green);
}

.ba-card__featured-tag span {
  font-family: var(--ba-mono);
  font-size: 0.55rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ba-green);
}

.ba-card__featured-pulse {
  width: 5px; height: 5px;
  border-radius: 50%;
  background: var(--ba-green);
  box-shadow: 0 0 6px var(--ba-green-glow);
  animation: ba-pulse 2s ease-in-out infinite;
}

/* ── Content ── */
.ba-card__body {
  padding: 1rem 1.15rem 1.15rem;
  display: flex;
  flex-direction: column;
  gap: 0.5rem;
}

.ba-card__meta-top {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
}

.ba-card__cat {
  font-family: var(--ba-mono);
  font-size: 0.58rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: var(--ba-green);
  padding: 0.2rem 0.55rem;
  border-radius: 100px;
  background: var(--ba-green-dim);
  border: 1px solid rgba(var(--ba-green-rgb), 0.12);
}

.ba-card__case-id {
  font-family: var(--ba-mono);
  font-size: 0.55rem;
  font-weight: 500;
  letter-spacing: 0.06em;
  color: var(--ba-text-25);
}

.ba-card__title {
  font-family: var(--ba-sans);
  font-size: 1.05rem;
  font-weight: 700;
  line-height: 1.3;
  letter-spacing: -0.01em;
  color: var(--ba-text-100);
  margin: 0;
  transition: color 0.25s ease;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ba-card:hover .ba-card__title { color: var(--ba-green-bright); }

.ba-card__excerpt {
  font-family: var(--ba-sans);
  font-size: 0.85rem;
  font-weight: 300;
  line-height: 1.55;
  color: var(--ba-text-40);
  margin: 0;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
}

.ba-card__meta-bottom {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 0.5rem;
  margin-top: auto;
  padding-top: 0.6rem;
  border-top: 1px solid var(--ba-border);
}

.ba-card__author-info {
  display: flex;
  align-items: center;
  gap: 0.45rem;
}

.ba-card__author-info img {
  width: 22px; height: 22px;
  border-radius: 50%;
  border: 1px solid rgba(var(--ba-green-rgb), 0.15);
}

.ba-card__author-info span {
  font-family: var(--ba-mono);
  font-size: 0.6rem;
  font-weight: 500;
  color: var(--ba-text-40);
}

.ba-card__stats {
  display: flex;
  align-items: center;
  gap: 0.65rem;
}

.ba-card__date,
.ba-card__reading {
  display: inline-flex;
  align-items: center;
  gap: 0.3rem;
  font-family: var(--ba-mono);
  font-size: 0.58rem;
  color: var(--ba-text-25);
}

.ba-card__date svg,
.ba-card__reading svg {
  width: 12px; height: 12px;
  opacity: 0.5;
}

/* ── Featured card: spans full row ── */
.ba-card--featured {
  grid-column: 1 / -1;
}

@media (min-width: 768px) {
  .ba-card--featured .ba-card__link {
    display: grid;
    grid-template-columns: 1.4fr 1fr;
  }

  .ba-card--featured .ba-card__image { aspect-ratio: auto; min-height: 280px; }

  .ba-card--featured .ba-card__body {
    padding: 1.5rem 1.75rem;
    gap: 0.65rem;
    justify-content: center;
  }

  .ba-card--featured .ba-card__title {
    font-size: 1.5rem;
    -webkit-line-clamp: 3;
  }

  .ba-card--featured .ba-card__excerpt {
    -webkit-line-clamp: 3;
  }
}


/* ════════════════════════════════════════
   PAGINATION
   ════════════════════════════════════════ */

.ba-pagination {
  margin-top: 3rem;
  display: flex;
  justify-content: center;
}

.ba-pagination ul {
  display: flex;
  align-items: center;
  gap: 0.35rem;
  list-style: none;
  margin: 0;
  padding: 0.5rem 0.75rem;
  border-radius: var(--ba-radius-md);
  background: var(--ba-surface-2);
  border: 1px solid var(--ba-border);
}

.ba-pagination li { margin: 0; }

.ba-pagination a,
.ba-pagination span {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  min-width: 36px; height: 36px;
  padding: 0 0.5rem;
  border-radius: var(--ba-radius-xs);
  font-family: var(--ba-mono);
  font-size: 0.7rem;
  font-weight: 500;
  text-decoration: none;
  transition: all 0.25s ease;
}

.ba-pagination a {
  color: var(--ba-text-40);
  border: 1px solid transparent;
}

.ba-pagination a:hover {
  color: var(--ba-green);
  background: rgba(var(--ba-green-rgb), 0.06);
  border-color: rgba(var(--ba-green-rgb), 0.12);
}

.ba-pagination .current {
  color: var(--ba-surface-0);
  background: var(--ba-green);
  font-weight: 700;
  box-shadow: 0 0 15px rgba(var(--ba-green-rgb), 0.25);
}

.ba-pagination .dots {
  color: var(--ba-text-25);
  pointer-events: none;
}

.ba-pagination .prev,
.ba-pagination .next {
  color: var(--ba-text-60);
}

.ba-pagination .prev svg,
.ba-pagination .next svg {
  width: 16px; height: 16px;
}


/* ════════════════════════════════════════
   EMPTY STATE
   ════════════════════════════════════════ */

.ba-empty {
  text-align: center;
  padding: 4rem 2rem;
  animation: ba-fade-up 0.6s ease both;
}

.ba-empty__icon {
  width: 80px; height: 80px;
  margin: 0 auto 1.5rem;
  border-radius: 50%;
  display: flex;
  align-items: center;
  justify-content: center;
  background: rgba(var(--ba-green-rgb), 0.05);
  border: 1px solid rgba(var(--ba-green-rgb), 0.1);
}

.ba-empty__icon svg {
  width: 36px; height: 36px;
  color: var(--ba-text-25);
}

.ba-empty__title {
  font-family: var(--ba-sans);
  font-size: 1.5rem;
  font-weight: 700;
  color: var(--ba-text-80);
  margin: 0 0 0.5rem;
}

.ba-empty__text {
  font-family: var(--ba-sans);
  font-size: 0.95rem;
  font-weight: 300;
  color: var(--ba-text-40);
  margin: 0 0 2rem;
  max-width: 400px;
  margin-left: auto;
  margin-right: auto;
}

.ba-empty__btn {
  display: inline-flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.75rem 1.25rem;
  border-radius: var(--ba-radius-md);
  background: rgba(var(--ba-green-rgb), 0.1);
  border: 1px solid rgba(var(--ba-green-rgb), 0.2);
  font-family: var(--ba-mono);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--ba-green);
  text-decoration: none;
  transition: all 0.3s ease;
}

.ba-empty__btn:hover {
  background: var(--ba-green);
  color: var(--ba-surface-0);
  box-shadow: 0 0 30px rgba(var(--ba-green-rgb), 0.2);
}

.ba-empty__btn svg { width: 16px; height: 16px; }


/* ════════════════════════════════════════
   UTILITIES & ANIMATIONS
   ════════════════════════════════════════ */

@keyframes ba-fade-up {
  from { opacity: 0; transform: translateY(18px); }
  to   { opacity: 1; transform: translateY(0); }
}

/* Reduce motion */
@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after {
    animation-duration: 0.01ms !important;
    animation-iteration-count: 1 !important;
    transition-duration: 0.01ms !important;
  }
}

/* Focus */
.ba-card__link:focus-visible,
.ba-rss-btn:focus-visible,
.ba-empty__btn:focus-visible,
.ba-pagination a:focus-visible {
  outline: 2px solid var(--ba-green);
  outline-offset: 3px;
}

/* ── unidad.css ── */
/* ═══════════════════════════════════════════════════════════════════
   BROKEN UFO — UNIT PAGE v2.0
   SIGINT War Room × Noir Cinema
   Built by iNTERVOLUTIONS · intervolutions.com
   ═══════════════════════════════════════════════════════════════════ */



:root {
  --g: #22c55e; --g-rgb: 34,197,94;
  --g-dim: rgba(34,197,94,0.12); --g-glow: rgba(34,197,94,0.4);
  --g-bright: #4ade80;
  --m: #ff3a8c; --m-rgb: 255,58,140;
  --a: #fbbf24; --a-rgb: 251,191,36;
  --c: #22d3ee; --c-rgb: 34,211,238;
  --r: #ef4444; --r-rgb: 239,68,68;

  --s0: #030508; --s1: #080c12; --s2: #0f151d; --s3: #171f28;
  --b: rgba(255,255,255,0.05); --bg: rgba(34,197,94,0.14);

  --t100: rgba(240,244,255,0.95); --t80: rgba(240,244,255,0.78);
  --t60: rgba(240,244,255,0.58); --t40: rgba(240,244,255,0.38);
  --t20: rgba(240,244,255,0.18);

  --mono: 'JetBrains Mono', 'Fira Code', monospace;
  --sans: 'Outfit', system-ui, sans-serif;
  --rad: 14px; --rad-sm: 8px;
}

/* ── Page ─── */
.bx { position: relative; min-height: 100vh; overflow: hidden; }

/* ── Atmosphere ─── */
.bx-atmo { position:absolute; inset:0; pointer-events:none; z-index:0; }
.bx-atmo::before {
  content:''; position:absolute; inset:0;
  background:
    radial-gradient(ellipse 1100px 600px at 8% 12%, rgba(var(--g-rgb),0.09) 0%, transparent 55%),
    radial-gradient(ellipse 800px 500px at 92% 8%, rgba(var(--c-rgb),0.06) 0%, transparent 50%),
    radial-gradient(ellipse 600px 400px at 75% 85%, rgba(var(--m-rgb),0.04) 0%, transparent 50%),
    radial-gradient(ellipse 900px 300px at 40% 95%, rgba(var(--g-rgb),0.03) 0%, transparent 55%);
}
.bx-atmo::after {
  content:''; position:absolute; inset:-25%;
  background:
    radial-gradient(circle at 20% 15%, rgba(var(--g-rgb),0.14) 0%, transparent 35%),
    radial-gradient(circle at 80% 25%, rgba(var(--c-rgb),0.06) 0%, transparent 40%);
  filter: blur(80px); opacity:0.5;
  animation: bx-drift 30s ease-in-out infinite alternate;
}
@keyframes bx-drift { 0%{transform:translate(0,0) scale(1)} 100%{transform:translate(20px,-16px) scale(1.04)} }

/* Scanlines */
.bx-scan { position:absolute; inset:0; pointer-events:none; z-index:1;
  background: repeating-linear-gradient(0deg, transparent 0px, transparent 2px, rgba(0,0,0,0.04) 2px, rgba(0,0,0,0.04) 4px);
  opacity:0.7;
}

/* Grid */
.bx-grid { position:absolute; inset:0; pointer-events:none; z-index:1;
  background-image: linear-gradient(rgba(var(--g-rgb),0.012) 1px, transparent 1px), linear-gradient(90deg, rgba(var(--g-rgb),0.012) 1px, transparent 1px);
  background-size: 80px 80px;
  mask-image: radial-gradient(ellipse 90% 55% at 50% 30%, black 0%, transparent 100%);
  -webkit-mask-image: radial-gradient(ellipse 90% 55% at 50% 30%, black 0%, transparent 100%);
}

/* Noise texture overlay */
.bx-noise { position:absolute; inset:0; pointer-events:none; z-index:2; opacity:0.03; mix-blend-mode:overlay;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");
  background-size: 256px 256px;
}

/* Particles */
.bx-parts { position:absolute; inset:0; pointer-events:none; z-index:1; overflow:hidden; }
.bx-p { position:absolute; width:2px; height:2px; border-radius:50%; background:var(--g); opacity:0;
  animation: bx-float linear infinite; }
.bx-p:nth-child(1){left:6%;animation-duration:22s;animation-delay:0s}
.bx-p:nth-child(2){left:18%;animation-duration:28s;animation-delay:4s}
.bx-p:nth-child(3){left:32%;animation-duration:19s;animation-delay:7s}
.bx-p:nth-child(4){left:45%;animation-duration:24s;animation-delay:2s}
.bx-p:nth-child(5){left:58%;animation-duration:26s;animation-delay:6s}
.bx-p:nth-child(6){left:72%;animation-duration:20s;animation-delay:9s}
.bx-p:nth-child(7){left:85%;animation-duration:23s;animation-delay:1s}
.bx-p:nth-child(8){left:94%;animation-duration:25s;animation-delay:5s}
@keyframes bx-float {
  0%{transform:translateY(105vh) scale(0);opacity:0}
  8%{opacity:0.5;transform:translateY(90vh) scale(1)}
  85%{opacity:0.12}
  100%{transform:translateY(-8vh) scale(0.4);opacity:0}
}

/* ── Content wrapper ─── */
.bx-wrap { position:relative; z-index:5; max-width:1320px; margin:0 auto; padding:2rem 1.25rem 5rem; }
@media(min-width:768px){ .bx-wrap{padding:3rem 2rem 6rem} }

/* ── Cinematic Intro Sequence ─── */
.bx-intro { text-align:center; margin-bottom:3.5rem; padding-top:1rem; }

.bx-coords {
  font-family:var(--mono); font-size:0.6rem; letter-spacing:0.2em; text-transform:uppercase;
  color:var(--t20); margin-bottom:0.5rem;
  animation: bx-fadein 1s ease 0.2s both;
}

.bx-sigil { margin:1.5rem auto; width:160px; height:160px; position:relative;
  animation: bx-fadein 1.2s ease 0.4s both; }
.bx-sigil-ring { position:absolute; inset:0; border:1px solid rgba(var(--g-rgb),0.2); border-radius:50%;
  animation: bx-ring-pulse 4s ease-in-out infinite; }
.bx-sigil-ring:nth-child(2){ inset:12%; animation-delay:0.5s; border-color:rgba(var(--g-rgb),0.12); }
.bx-sigil-ring:nth-child(3){ inset:25%; animation-delay:1s; border-color:rgba(var(--g-rgb),0.08); }
.bx-sigil-core { position:absolute; inset:38%; border-radius:50%;
  background:radial-gradient(circle, rgba(var(--g-rgb),0.5) 0%, rgba(var(--g-rgb),0.08) 70%, transparent 100%);
  box-shadow: 0 0 30px rgba(var(--g-rgb),0.2), 0 0 60px rgba(var(--g-rgb),0.08);
  animation: bx-core-breathe 3s ease-in-out infinite;
}
@keyframes bx-ring-pulse {
  0%,100%{transform:scale(1);opacity:1} 50%{transform:scale(1.04);opacity:0.5}
}
@keyframes bx-core-breathe {
  0%,100%{opacity:0.8;transform:scale(1)} 50%{opacity:1;transform:scale(1.1)}
}

.bx-codename {
  font-family:var(--mono); font-size:0.55rem; letter-spacing:0.35em; text-transform:uppercase;
  color:rgba(var(--g-rgb),0.45); margin-bottom:0.75rem;
  animation: bx-fadein 1s ease 0.6s both;
}
.bx-codename span { color:var(--g); text-shadow:0 0 12px rgba(var(--g-rgb),0.3); }

.bx-h1 {
  font-family:var(--sans); font-size:clamp(2.2rem,6vw,4.2rem); font-weight:900;
  line-height:1.02; letter-spacing:-0.04em; color:var(--t100); margin:0 0 1rem;
  animation: bx-fadein 1s ease 0.8s both;
}
.bx-h1 em { font-style:normal;
  background:linear-gradient(135deg, var(--g), var(--g-bright), var(--c));
  -webkit-background-clip:text; -webkit-text-fill-color:transparent; background-clip:text;
}

.bx-subtitle {
  font-family:var(--sans); font-size:1.1rem; font-weight:300; line-height:1.7;
  color:var(--t40); max-width:62ch; margin:0 auto 2rem;
  animation: bx-fadein 1s ease 1s both;
}

.bx-status-bar {
  display:inline-flex; align-items:center; gap:1.2rem; flex-wrap:wrap; justify-content:center;
  padding:0.5rem 1.2rem; border-radius:999px;
  background:rgba(var(--g-rgb),0.04); border:1px solid rgba(var(--g-rgb),0.12);
  font-family:var(--mono); font-size:0.55rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--t40);
  animation: bx-fadein 1s ease 1.2s both;
}
.bx-status-bar .bx-dot { width:6px; height:6px; border-radius:50%; background:var(--g);
  box-shadow:0 0 10px rgba(var(--g-rgb),0.4); animation: bx-blink 2s ease-in-out infinite; }
@keyframes bx-blink { 0%,100%{opacity:1} 50%{opacity:0.3} }

@keyframes bx-fadein { 0%{opacity:0;transform:translateY(16px)} 100%{opacity:1;transform:translateY(0)} }

/* ── Stats Ticker ─── */
.bx-ticker {
  display:grid; grid-template-columns:repeat(auto-fit, minmax(140px, 1fr)); gap:1px;
  background:rgba(var(--g-rgb),0.06); border-radius:var(--rad); overflow:hidden;
  margin-bottom:2.5rem;
  animation: bx-fadein 0.8s ease 1.4s both;
}
.bx-tick {
  background:var(--s1); padding:1.2rem 1rem; text-align:center;
  transition: background 0.3s;
}
.bx-tick:hover { background:rgba(var(--g-rgb),0.04); }
.bx-tick__v { font-family:var(--sans); font-size:1.8rem; font-weight:900; color:var(--t100);
  letter-spacing:-0.03em; font-variant-numeric:tabular-nums; }
.bx-tick__k { font-family:var(--mono); font-size:0.52rem; letter-spacing:0.14em;
  text-transform:uppercase; color:var(--t20); margin-top:0.3rem; }

/* ── Panel System ─── */
.bx-panel {
  position:relative; border-radius:var(--rad);
  background:rgba(8,12,18,0.6); border:1px solid var(--b);
  box-shadow:0 20px 60px rgba(0,0,0,0.4), inset 0 1px 0 rgba(255,255,255,0.03);
  backdrop-filter:blur(14px); -webkit-backdrop-filter:blur(14px);
  overflow:hidden; transition: border-color 0.4s, transform 0.4s;
}
.bx-panel:hover { border-color:rgba(var(--g-rgb),0.18); transform:translateY(-1px); }
.bx-panel::before { content:''; position:absolute; top:0; left:8%; right:8%; height:1px;
  background:linear-gradient(90deg, transparent, rgba(var(--g-rgb),0.25), transparent); z-index:1; }

.bx-panel__hd {
  display:flex; align-items:center; justify-content:space-between; gap:0.75rem;
  padding:0.7rem 1.2rem; border-bottom:1px solid var(--b); background:rgba(0,0,0,0.2);
}
.bx-panel__hd-l { display:flex; align-items:center; gap:0.6rem; min-width:0; }

.bx-ico {
  width:32px; height:32px; border-radius:var(--rad-sm); display:grid; place-items:center;
  font-size:0.8rem; flex-shrink:0; border:1px solid rgba(255,255,255,0.06);
}
.bx-ico--g { background:rgba(var(--g-rgb),0.08); border-color:rgba(var(--g-rgb),0.18); color:var(--g); }
.bx-ico--c { background:rgba(var(--c-rgb),0.06); border-color:rgba(var(--c-rgb),0.14); color:var(--c); }
.bx-ico--a { background:rgba(var(--a-rgb),0.06); border-color:rgba(var(--a-rgb),0.14); color:var(--a); }
.bx-ico--m { background:rgba(var(--m-rgb),0.06); border-color:rgba(var(--m-rgb),0.12); color:var(--m); }
.bx-ico--r { background:rgba(var(--r-rgb),0.06); border-color:rgba(var(--r-rgb),0.12); color:var(--r); }

.bx-panel__t { font-family:var(--mono); font-size:0.62rem; font-weight:700; letter-spacing:0.12em;
  text-transform:uppercase; color:var(--t80); white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.bx-panel__st { font-family:var(--mono); font-size:0.5rem; color:var(--t20); letter-spacing:0.06em; }

.bx-live { display:inline-flex; align-items:center; gap:0.3rem; font-family:var(--mono);
  font-size:0.5rem; letter-spacing:0.1em; text-transform:uppercase; color:var(--g); }
.bx-live .bx-dot { width:5px; height:5px; }

.bx-panel__bd { position:relative; z-index:2; padding:1.5rem 1.25rem; }
@media(min-width:768px){ .bx-panel__bd{padding:1.75rem 1.75rem} }

/* ── Section Grid ─── */
.bx-grid2 { display:grid; grid-template-columns:1fr; gap:1.5rem; margin-bottom:2rem; }
@media(min-width:1024px){ .bx-grid2{grid-template-columns:1.3fr 0.7fr;align-items:start} }

.bx-grid3 { display:grid; grid-template-columns:1fr; gap:1.5rem; margin-bottom:2rem; }
@media(min-width:768px){ .bx-grid3{grid-template-columns:repeat(2,1fr)} }
@media(min-width:1024px){ .bx-grid3{grid-template-columns:repeat(3,1fr)} }

/* ── Typographic elements ─── */
.bx-kicker { font-family:var(--mono); font-size:0.62rem; font-weight:800; letter-spacing:0.2em;
  text-transform:uppercase; color:rgba(var(--g-rgb),0.6);
  display:flex; align-items:center; gap:0.6rem; }
.bx-kicker::before { content:''; width:22px; height:1px; background:var(--g); opacity:0.4; }

.bx-h2 { font-family:var(--sans); font-size:clamp(1.5rem,3vw,2.2rem); font-weight:800;
  line-height:1.1; letter-spacing:-0.03em; color:var(--t100); margin:0.6rem 0 0.75rem; }
.bx-h2 em { font-style:normal; color:var(--g); }

.bx-prose { font-family:var(--sans); font-size:0.95rem; font-weight:300; line-height:1.75; color:var(--t60); }
.bx-prose strong { color:var(--t80); font-weight:600; }
.bx-prose a { color:var(--g); text-decoration:none; border-bottom:1px solid rgba(var(--g-rgb),0.2); transition:border-color 0.2s; }
.bx-prose a:hover { border-color:var(--g); }

.bx-divider { height:1px; background:linear-gradient(90deg, transparent, rgba(var(--g-rgb),0.12), transparent); margin:1.5rem 0; }

.bx-label {
  font-family:var(--mono); font-size:0.5rem; letter-spacing:0.14em;
  text-transform:uppercase; color:var(--t20);
}

/* ── Evidence Scale ─── */
.bx-evidence { display:grid; gap:2px; margin:1rem 0; border-radius:var(--rad-sm); overflow:hidden; }
.bx-ev {
  display:grid; grid-template-columns:48px 1fr; gap:1rem; align-items:center;
  padding:0.8rem 1rem; background:var(--s1); transition: background 0.3s;
}
.bx-ev:hover { background:rgba(var(--g-rgb),0.03); }
.bx-ev__badge {
  width:40px; height:40px; border-radius:10px; display:grid; place-items:center;
  font-family:var(--mono); font-size:0.7rem; font-weight:900; border:1px solid rgba(255,255,255,0.06);
}
.bx-ev__badge--0 { background:rgba(var(--r-rgb),0.08); border-color:rgba(var(--r-rgb),0.2); color:var(--r); }
.bx-ev__badge--1 { background:rgba(var(--a-rgb),0.06); border-color:rgba(var(--a-rgb),0.18); color:var(--a); }
.bx-ev__badge--2 { background:rgba(var(--a-rgb),0.06); border-color:rgba(var(--a-rgb),0.18); color:var(--a); }
.bx-ev__badge--3 { background:rgba(var(--g-rgb),0.06); border-color:rgba(var(--g-rgb),0.18); color:var(--g); }
.bx-ev__badge--4 { background:rgba(var(--g-rgb),0.08); border-color:rgba(var(--g-rgb),0.25); color:var(--g-bright);
  box-shadow:0 0 12px rgba(var(--g-rgb),0.12); }
.bx-ev h4 { margin:0; font-family:var(--mono); font-size:0.65rem; font-weight:700; letter-spacing:0.1em;
  text-transform:uppercase; color:var(--t80); }
.bx-ev p { margin:0.15rem 0 0; font-family:var(--sans); font-size:0.82rem; line-height:1.5; color:var(--t40); }

/* ── Org Chart ─── */
.bx-org { display:grid; gap:3px; margin:1rem 0; }
.bx-orgnode {
  display:grid; grid-template-columns:auto 1fr auto; gap:1rem; align-items:center;
  padding:1rem 1.1rem; background:var(--s1); border-left:3px solid transparent;
  transition: all 0.35s; position:relative; overflow:hidden;
}
.bx-orgnode::after { content:''; position:absolute; inset:0; opacity:0;
  background:linear-gradient(90deg, rgba(var(--g-rgb),0.04), transparent 60%);
  transition: opacity 0.35s; }
.bx-orgnode:hover::after { opacity:1; }
.bx-orgnode:hover { border-left-color:var(--node-accent, var(--g)); transform:translateX(2px); }

.bx-orgnode[data-accent="green"]  { --node-accent:var(--g); }
.bx-orgnode[data-accent="cyan"]   { --node-accent:var(--c); }
.bx-orgnode[data-accent="amber"]  { --node-accent:var(--a); }
.bx-orgnode[data-accent="magenta"]{ --node-accent:var(--m); }

.bx-orgnode__lvl {
  width:44px; height:44px; border-radius:12px; display:grid; place-items:center;
  font-family:var(--mono); font-size:0.85rem; font-weight:900;
  background:rgba(var(--g-rgb),0.05); border:1px solid rgba(var(--g-rgb),0.15);
  color:var(--node-accent, var(--g)); flex-shrink:0; position:relative; z-index:1;
  transition: box-shadow 0.3s;
}
.bx-orgnode:hover .bx-orgnode__lvl { box-shadow:0 0 16px rgba(var(--g-rgb),0.15); }

.bx-orgnode__info { position:relative; z-index:1; }
.bx-orgnode__role { font-family:var(--mono); font-size:0.5rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--t20); }
.bx-orgnode__title { font-family:var(--sans); font-size:1rem; font-weight:700; color:var(--t100); margin:0.15rem 0; }
.bx-orgnode__desc { font-family:var(--sans); font-size:0.82rem; font-weight:300; color:var(--t40); line-height:1.5; }
.bx-orgnode__code { font-family:var(--mono); font-size:0.5rem; letter-spacing:0.16em; text-transform:uppercase;
  color:var(--node-accent, var(--g)); opacity:0.6; margin-top:0.25rem; }

.bx-orgnode__count {
  font-family:var(--mono); font-size:0.55rem; letter-spacing:0.1em; text-transform:uppercase;
  color:var(--t20); text-align:right; white-space:nowrap; position:relative; z-index:1;
}
.bx-orgnode__count b { display:block; font-size:1.5rem; font-weight:900; color:var(--node-accent, var(--g));
  font-family:var(--sans); letter-spacing:-0.03em; line-height:1; }

/* ── Timeline ─── */
.bx-timeline { position:relative; padding-left:2rem; margin:1rem 0; }
.bx-timeline::before { content:''; position:absolute; left:6px; top:0; bottom:0; width:1px;
  background:linear-gradient(180deg, rgba(var(--g-rgb),0.3), rgba(var(--g-rgb),0.05)); }
.bx-tl-item { position:relative; margin-bottom:1.5rem; padding-left:0.5rem; }
.bx-tl-item::before { content:''; position:absolute; left:-2rem; top:0.35rem;
  width:11px; height:11px; border-radius:50%; border:2px solid rgba(var(--g-rgb),0.4);
  background:var(--s0); z-index:1; transition: all 0.3s; }
.bx-tl-item:hover::before { background:var(--g); border-color:var(--g); box-shadow:0 0 12px rgba(var(--g-rgb),0.3); }
.bx-tl-item:last-child::before { background:var(--g); border-color:var(--g); box-shadow:0 0 12px rgba(var(--g-rgb),0.3); }
.bx-tl-date { font-family:var(--mono); font-size:0.55rem; letter-spacing:0.14em; text-transform:uppercase; color:var(--g); opacity:0.7; }
.bx-tl-text { font-family:var(--sans); font-size:0.88rem; font-weight:300; color:var(--t60); line-height:1.6; margin-top:0.2rem; }

/* ── Principles Grid ─── */
.bx-rules { display:grid; grid-template-columns:1fr; gap:3px; margin:1rem 0; border-radius:var(--rad-sm); overflow:hidden; }
@media(min-width:640px){ .bx-rules{grid-template-columns:repeat(2,1fr)} }
.bx-rule { padding:1.1rem; background:var(--s1); transition:background 0.3s; }
.bx-rule:hover { background:rgba(var(--g-rgb),0.03); }
.bx-rule__n { font-family:var(--mono); font-size:2rem; font-weight:900; color:rgba(var(--g-rgb),0.15); line-height:1; }
.bx-rule h3 { font-family:var(--sans); font-size:0.92rem; font-weight:700; color:var(--t80); margin:0.3rem 0 0.2rem; }
.bx-rule p { margin:0; font-family:var(--sans); font-size:0.82rem; font-weight:300; color:var(--t40); line-height:1.55; }

/* ── CTA Buttons ─── */
.bx-ctas { display:grid; gap:0.6rem; margin:1.25rem 0; }
.bx-btn {
  display:flex; align-items:center; justify-content:center; gap:0.6rem;
  padding:0.9rem 1rem; border-radius:var(--rad-sm);
  font-family:var(--mono); font-size:0.65rem; font-weight:800; letter-spacing:0.14em;
  text-transform:uppercase; text-decoration:none; cursor:pointer; transition:all 0.3s;
}
.bx-btn--g {
  background:linear-gradient(135deg, rgba(var(--g-rgb),0.12), rgba(var(--g-rgb),0.04));
  border:1px solid rgba(var(--g-rgb),0.25); color:var(--g);
}
.bx-btn--g:hover { background:linear-gradient(135deg, var(--g), rgba(var(--g-rgb),0.8));
  color:var(--s0); box-shadow:0 0 30px rgba(var(--g-rgb),0.15); }
.bx-btn--ghost { background:rgba(255,255,255,0.02); border:1px solid var(--b); color:var(--t60); }
.bx-btn--ghost:hover { background:rgba(var(--g-rgb),0.06); color:var(--g); border-color:rgba(var(--g-rgb),0.2); }

/* ── Note ─── */
.bx-note { font-family:var(--mono); font-size:0.58rem; line-height:1.6; color:var(--t20); }
.bx-note b { color:rgba(var(--g-rgb),0.55); font-weight:700; }

/* ── Footer stripe ─── */
.bx-footer {
  display:flex; align-items:center; justify-content:center; gap:1.5rem; flex-wrap:wrap;
  margin-top:3rem; padding:0.65rem 1rem; border-radius:var(--rad-sm);
  background:rgba(var(--g-rgb),0.02); border:1px solid rgba(var(--g-rgb),0.06);
  font-family:var(--mono); font-size:0.5rem; letter-spacing:0.08em; text-transform:uppercase; color:var(--t20);
}
.bx-bars { display:inline-flex; gap:2px; align-items:flex-end; height:10px; }
.bx-bars span { display:block; width:2px; border-radius:1px; background:var(--g); opacity:0.3; }
.bx-bars span:nth-child(1){height:3px;animation:bx-bar 1.5s ease infinite 0s}
.bx-bars span:nth-child(2){height:6px;animation:bx-bar 1.5s ease infinite 0.2s}
.bx-bars span:nth-child(3){height:9px;animation:bx-bar 1.5s ease infinite 0.4s}
@keyframes bx-bar { 0%,100%{opacity:0.15} 50%{opacity:0.8} }

/* ── Scroll reveal ─── */
[data-reveal] { opacity:0; transform:translateY(20px); transition:opacity 0.7s ease, transform 0.7s ease; }
[data-reveal].is-vis { opacity:1; transform:translateY(0); }
[data-reveal]:nth-child(2) { transition-delay:0.08s; }
[data-reveal]:nth-child(3) { transition-delay:0.16s; }

/* ═══════════════════════════════════════════════════════════════════
   TRANSMISSION FEED — SIGINT Intercepted Log
   ═══════════════════════════════════════════════════════════════════ */

.bx-txfeed {
  position: relative;
}

/* Terminal header */
.bx-txfeed__hdr {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  padding: 0.65rem 1.25rem;
  background: rgba(0, 0, 0, 0.5);
  border-bottom: 1px solid rgba(var(--g-rgb), 0.08);
  font-family: var(--mono);
  font-size: 0.58rem;
  overflow: hidden;
}

.bx-txfeed__hdr-prompt {
  color: rgba(var(--g-rgb), 0.5);
  flex-shrink: 0;
  white-space: nowrap;
}

.bx-txfeed__hdr-cmd {
  color: rgba(var(--g-rgb), 0.75);
  white-space: nowrap;
}

.bx-txfeed__hdr-cursor {
  color: rgba(var(--g-rgb), 0.7);
  animation: bx-cursor 1s steps(1) infinite;
}

@keyframes bx-cursor {
  0%, 49% { opacity: 1; }
  50%, 100% { opacity: 0; }
}

/* Individual transmission item */
.bx-txitem {
  display: grid;
  grid-template-columns: 50px 20px 1fr auto auto;
  gap: 0;
  align-items: start;
  padding: 1rem 1.25rem;
  border-bottom: 1px solid rgba(255, 255, 255, 0.03);
  text-decoration: none;
  color: inherit;
  transition: background 0.3s ease;
  position: relative;
  animation: bx-txitem-in 0.5s ease both;
}

@keyframes bx-txitem-in {
  from { opacity: 0; transform: translateX(-8px); }
  to   { opacity: 1; transform: translateX(0); }
}

.bx-txitem::before {
  content: '';
  position: absolute;
  left: 0;
  top: 0;
  bottom: 0;
  width: 2px;
  background: transparent;
  transition: background 0.3s ease;
}

.bx-txitem:hover {
  background: rgba(var(--g-rgb), 0.03);
}

.bx-txitem:hover::before {
  background: var(--g);
  box-shadow: 0 0 8px rgba(var(--g-rgb), 0.3);
}

.bx-txitem:last-of-type {
  border-bottom: none;
}

/* Timestamp gutter */
.bx-txitem__ts {
  display: flex;
  flex-direction: column;
  align-items: flex-end;
  gap: 0.1rem;
  padding-right: 0.5rem;
  padding-top: 0.15rem;
}

.bx-txitem__ts-time {
  font-family: var(--mono);
  font-size: 0.62rem;
  font-weight: 700;
  color: rgba(var(--g-rgb), 0.6);
  letter-spacing: 0.04em;
}

.bx-txitem__ts-date {
  font-family: var(--mono);
  font-size: 0.48rem;
  color: var(--t20);
  letter-spacing: 0.04em;
}

/* Indicator column (pulse + vertical line) */
.bx-txitem__indicator {
  display: flex;
  flex-direction: column;
  align-items: center;
  padding-top: 0.3rem;
  position: relative;
  height: 100%;
  min-height: 40px;
}

.bx-txitem__pulse {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  background: rgba(var(--g-rgb), 0.35);
  border: 1px solid rgba(var(--g-rgb), 0.5);
  flex-shrink: 0;
  position: relative;
  z-index: 1;
  transition: all 0.3s ease;
}

.bx-txitem:hover .bx-txitem__pulse {
  background: var(--g);
  box-shadow: 0 0 10px rgba(var(--g-rgb), 0.4);
}

.bx-txitem__line {
  width: 1px;
  flex: 1;
  background: rgba(255, 255, 255, 0.04);
  margin-top: 0.2rem;
}

.bx-txitem:last-of-type .bx-txitem__line {
  background: linear-gradient(to bottom, rgba(255, 255, 255, 0.04), transparent);
}

/* Body content */
.bx-txitem__body {
  padding: 0 0.85rem;
  min-width: 0;
}

.bx-txitem__meta {
  display: flex;
  align-items: center;
  gap: 0.5rem;
  margin-bottom: 0.3rem;
  flex-wrap: wrap;
}

.bx-txitem__case {
  font-family: var(--mono);
  font-size: 0.5rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  color: rgba(var(--g-rgb), 0.5);
  padding: 0.1rem 0.35rem;
  border: 1px solid rgba(var(--g-rgb), 0.15);
  border-radius: 2px;
  background: rgba(var(--g-rgb), 0.04);
}

.bx-txitem__sector {
  font-family: var(--mono);
  font-size: 0.48rem;
  font-weight: 600;
  letter-spacing: 0.08em;
  text-transform: uppercase;
  color: var(--t20);
}

.bx-txitem__reading {
  font-family: var(--mono);
  font-size: 0.46rem;
  color: var(--t20);
  margin-left: auto;
}

.bx-txitem__title {
  font-family: var(--sans);
  font-size: 0.82rem;
  font-weight: 650;
  color: var(--t80);
  line-height: 1.35;
  margin: 0 0 0.2rem;
  transition: color 0.3s ease;
}

.bx-txitem:hover .bx-txitem__title {
  color: var(--t100);
}

.bx-txitem__excerpt {
  font-family: var(--sans);
  font-size: 0.7rem;
  line-height: 1.5;
  color: var(--t40);
  margin: 0;
}

/* Thumbnail */
.bx-txitem__thumb {
  width: 72px;
  height: 50px;
  border-radius: 3px;
  overflow: hidden;
  position: relative;
  flex-shrink: 0;
  border: 1px solid rgba(255, 255, 255, 0.04);
  margin-top: 0.1rem;
}

.bx-txitem__thumb img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  filter: grayscale(0.4) contrast(1.05);
  transition: filter 0.4s ease;
}

.bx-txitem:hover .bx-txitem__thumb img {
  filter: grayscale(0) contrast(1.1);
}

.bx-txitem__thumb-scan {
  position: absolute;
  inset: 0;
  background: repeating-linear-gradient(
    0deg,
    transparent,
    transparent 2px,
    rgba(0, 0, 0, 0.06) 2px,
    rgba(0, 0, 0, 0.06) 4px
  );
  pointer-events: none;
}

.bx-txitem__thumb-corners {
  position: absolute;
  inset: 0;
  pointer-events: none;
}

.bx-txitem__thumb-corners span {
  position: absolute;
  width: 6px;
  height: 6px;
  border-color: rgba(var(--g-rgb), 0.3);
  border-style: solid;
  border-width: 0;
  transition: border-color 0.3s ease;
}

.bx-txitem:hover .bx-txitem__thumb-corners span {
  border-color: rgba(var(--g-rgb), 0.6);
}

.bx-txitem__thumb-corners span:nth-child(1) { top: 0; left: 0; border-top-width: 1px; border-left-width: 1px; }
.bx-txitem__thumb-corners span:nth-child(2) { top: 0; right: 0; border-top-width: 1px; border-right-width: 1px; }
.bx-txitem__thumb-corners span:nth-child(3) { bottom: 0; left: 0; border-bottom-width: 1px; border-left-width: 1px; }
.bx-txitem__thumb-corners span:nth-child(4) { bottom: 0; right: 0; border-bottom-width: 1px; border-right-width: 1px; }

/* Arrow */
.bx-txitem__arrow {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 24px;
  align-self: center;
  opacity: 0;
  transform: translateX(-4px);
  transition: all 0.3s ease;
}

.bx-txitem__arrow svg {
  width: 14px;
  height: 14px;
  color: rgba(var(--g-rgb), 0.5);
}

.bx-txitem:hover .bx-txitem__arrow {
  opacity: 1;
  transform: translateX(0);
}

/* Terminal footer */
.bx-txfeed__footer {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0.6rem 1.25rem;
  background: rgba(0, 0, 0, 0.4);
  border-top: 1px solid rgba(255, 255, 255, 0.03);
}

.bx-txfeed__footer-status {
  display: flex;
  align-items: center;
  gap: 0.4rem;
  font-family: var(--mono);
  font-size: 0.5rem;
  color: var(--t20);
  letter-spacing: 0.06em;
}

.bx-txfeed__footer-status .bx-dot {
  width: 5px;
  height: 5px;
}

.bx-txfeed__footer-link {
  font-family: var(--mono);
  font-size: 0.52rem;
  font-weight: 700;
  letter-spacing: 0.1em;
  text-transform: uppercase;
  color: rgba(var(--g-rgb), 0.6);
  text-decoration: none;
  transition: all 0.3s ease;
  padding: 0.25rem 0.5rem;
  border-radius: 2px;
}

.bx-txfeed__footer-link:hover {
  color: var(--g);
  background: rgba(var(--g-rgb), 0.06);
}

/* ── Responsive: transmission feed ─── */
@media (max-width: 640px) {
  .bx-txitem {
    grid-template-columns: 1fr auto;
    gap: 0.5rem;
    padding: 0.85rem 1rem;
  }

  .bx-txitem__ts,
  .bx-txitem__indicator {
    display: none;
  }

  .bx-txitem__body {
    padding: 0;
  }

  .bx-txitem__thumb {
    width: 56px;
    height: 40px;
  }

  .bx-txitem__arrow {
    display: none;
  }

  .bx-txfeed__hdr {
    font-size: 0.5rem;
    padding: 0.5rem 0.75rem;
  }
}

/* ── Focus accessibility ─── */
a:focus-visible, button:focus-visible { outline:2px solid var(--g); outline-offset:3px; border-radius:8px; }
@media(prefers-reduced-motion:reduce){ [data-reveal]{opacity:1!important;transform:none!important;transition:none!important} .bx-p{animation:none!important} }
.bx-prose p {
    margin-bottom: 8px;
}
/* ── bufo-pages.css ── */
/* ════════════════════════════════════════════════════════════
   BROKEN UFO — SPECIAL PAGES v3.6.0
   Recruitment (/reclutamiento/), Subscription (/suscribete/),
   Changelog (/changelog/)
   
   File: bufo-pages.css — separate from recruit.css which powers
   the homepage recruitment component.
   ════════════════════════════════════════════════════════════ */

.br-page, .bs-page, .bc-page { position: relative; min-height: 100vh; overflow: hidden; }
.br-wrap { max-width: 1100px; margin: 0 auto; padding-left: 1.5rem; padding-right: 1.5rem; }

/* ── ATMOSPHERE (shared across special pages) ── */
.br-atmo { position: fixed; inset: 0; pointer-events: none; z-index: 0; }
.br-atmo__grad { position: absolute; inset: 0; background: radial-gradient(ellipse 70% 50% at 15% 20%, rgba(34,197,94,.07) 0%, transparent 60%), radial-gradient(ellipse 50% 40% at 85% 15%, rgba(34,197,94,.04) 0%, transparent 50%), radial-gradient(ellipse 40% 30% at 60% 85%, rgba(255,58,140,.03) 0%, transparent 50%); }
.br-atmo__grid { position: absolute; inset: 0; background-image: linear-gradient(rgba(34,197,94,.015) 1px, transparent 1px), linear-gradient(90deg, rgba(34,197,94,.015) 1px, transparent 1px); background-size: 60px 60px; mask-image: radial-gradient(ellipse 80% 60% at 50% 40%, black, transparent); -webkit-mask-image: radial-gradient(ellipse 80% 60% at 50% 40%, black, transparent); }
.br-atmo__scan { position: absolute; left: 0; right: 0; height: 2px; background: linear-gradient(90deg, transparent, rgba(34,197,94,.3), transparent); animation: br-pg-scan 6s ease-in-out infinite; }
@keyframes br-pg-scan { 0% { top: 0; opacity: 0; } 10% { opacity: 1; } 90% { opacity: 1; } 100% { top: 100%; opacity: 0; } }
.br-atmo__orb { position: absolute; border-radius: 50%; filter: blur(100px); }
.br-atmo__orb--1 { width: 500px; height: 500px; top: -150px; left: -150px; background: rgba(34,197,94,.06); animation: br-pg-orb 25s ease-in-out infinite alternate; }
.br-atmo__orb--2 { width: 400px; height: 400px; bottom: -100px; right: -100px; background: rgba(34,211,238,.04); animation: br-pg-orb 30s ease-in-out infinite alternate-reverse; }
.br-atmo__orb--3 { width: 300px; height: 300px; top: 40%; left: 60%; background: rgba(255,58,140,.03); animation: br-pg-orb 20s ease-in-out infinite alternate; }
@keyframes br-pg-orb { 0% { transform: translate(0,0); } 100% { transform: translate(40px,30px); } }

/* Perf tiers */
.perf-tier-2 .br-atmo__orb, .perf-tier-3 .br-atmo__orb { display: none; }
.perf-tier-3 .br-atmo__scan { animation: none; }

/* ── HERO ── */
.br-hero { position: relative; z-index: 5; padding: 140px 0 60px; }
.br-hero__chips { display: flex; flex-wrap: wrap; gap: 8px; margin-bottom: 20px; }
.br-chip { display: inline-flex; align-items: center; gap: 6px; padding: 5px 12px; border-radius: 100px; background: rgba(255,255,255,.03); border: 1px solid rgba(255,255,255,.07); font-family: var(--bufo-mono); font-size: 10px; font-weight: 600; letter-spacing: .1em; text-transform: uppercase; color: var(--bufo-text-3); }
.br-chip__dot { width: 7px; height: 7px; border-radius: 50%; flex-shrink: 0; }
.br-chip__dot--green { background: var(--bufo-green); box-shadow: 0 0 10px rgba(34,197,94,.4); }
.br-chip__dot--cyan { background: var(--bufo-cyan); box-shadow: 0 0 10px rgba(34,211,238,.4); }
.br-chip__dot--amber { background: var(--bufo-amber); box-shadow: 0 0 10px rgba(251,191,36,.4); }
.br-chip__dot--magenta { background: var(--bufo-magenta); box-shadow: 0 0 10px rgba(255,58,140,.4); }
.br-hero__kicker { font-family: var(--bufo-mono); font-size: 11px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--bufo-green); margin-bottom: 12px; display: flex; align-items: center; gap: 10px; }
.br-hero__kicker::before { content: ''; width: 24px; height: 1px; background: var(--bufo-green); opacity: .5; }
.br-hero__title { font-size: clamp(2rem, 5vw, 3.5rem); font-weight: 800; line-height: 1.08; color: var(--bufo-text); margin: 0 0 16px; letter-spacing: -.025em; max-width: 750px; }
.br-hero__title em { font-style: normal; background: linear-gradient(135deg, var(--bufo-green), var(--bufo-green-bright)); -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text; }
.br-hero__sub { font-size: 1.05rem; font-weight: 300; line-height: 1.7; color: var(--bufo-text-3); max-width: 600px; margin: 0; }
.br-hero__actions { display: flex; flex-wrap: wrap; gap: 12px; margin-top: 32px; }

/* ── BUTTONS ── */
.br-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; padding: 12px 24px; border-radius: 12px; font-family: var(--bufo-mono); font-size: 12px; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; text-decoration: none; transition: all .3s cubic-bezier(.16,1,.3,1); cursor: pointer; border: none; }
.br-btn--primary { background: linear-gradient(135deg, rgba(34,197,94,.18), rgba(34,197,94,.08)); border: 1px solid rgba(34,197,94,.3); color: var(--bufo-green); }
.br-btn--primary:hover { background: linear-gradient(135deg, var(--bufo-green), rgba(34,197,94,.8)); color: var(--bufo-space); box-shadow: 0 0 30px rgba(34,197,94,.2); transform: translateY(-2px); }
.br-btn--secondary { background: rgba(255,255,255,.04); border: 1px solid rgba(255,255,255,.1); color: var(--bufo-text-2); }
.br-btn--secondary:hover { border-color: rgba(34,197,94,.25); background: rgba(34,197,94,.06); transform: translateY(-1px); }
.br-btn--ghost { background: transparent; border: 1px solid rgba(255,255,255,.06); color: var(--bufo-text-4); padding: 10px 18px; }
.br-btn--ghost:hover { border-color: rgba(255,255,255,.15); color: var(--bufo-text-2); }
.br-btn--lg { padding: 16px 32px; font-size: 13px; }
.br-btn--sm { padding: 8px 14px; font-size: 10px; }

/* ── SECTIONS ── */
.br-section { position: relative; z-index: 5; padding: 60px 0; }
.br-section__kicker { font-family: var(--bufo-mono); font-size: 10px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: var(--bufo-green); margin-bottom: 10px; opacity: .7; }
.br-section__title { font-size: clamp(1.5rem, 3vw, 2.2rem); font-weight: 700; color: var(--bufo-text); margin: 0 0 36px; letter-spacing: -.02em; }

/* ── GRIDS ── */
.br-grid { display: grid; gap: 16px; }
.br-grid--3 { grid-template-columns: 1fr; } @media(min-width:768px) { .br-grid--3 { grid-template-columns: repeat(3, 1fr); } }
.br-grid--2 { grid-template-columns: 1fr; } @media(min-width:640px) { .br-grid--2 { grid-template-columns: repeat(2, 1fr); } }
.br-grid--2-alt { grid-template-columns: 1fr; gap: 20px; } @media(min-width:768px) { .br-grid--2-alt { grid-template-columns: repeat(2, 1fr); } }

/* ── CARDS ── */
.br-card { position: relative; padding: 28px 24px; border-radius: 14px; background: rgba(12,14,18,.5); border: 1px solid var(--bufo-line); transition: all .3s ease; overflow: hidden; }
.br-card::before { content: ''; position: absolute; top: 0; left: 10%; right: 10%; height: 1px; background: linear-gradient(90deg, transparent, rgba(34,197,94,.2), transparent); opacity: 0; transition: opacity .3s; }
.br-card:hover { border-color: rgba(34,197,94,.2); transform: translateY(-3px); box-shadow: 0 12px 40px rgba(0,0,0,.3); }
.br-card:hover::before { opacity: 1; }
.br-card--compact { padding: 22px 20px; }
.br-card__icon { display: flex; align-items: center; justify-content: center; width: 40px; height: 40px; border-radius: 10px; margin-bottom: 16px; }
.br-card__icon--green { background: rgba(34,197,94,.1); border: 1px solid rgba(34,197,94,.2); color: var(--bufo-green); }
.br-card__icon--cyan { background: rgba(34,211,238,.08); border: 1px solid rgba(34,211,238,.18); color: var(--bufo-cyan); }
.br-card__icon--amber { background: rgba(251,191,36,.08); border: 1px solid rgba(251,191,36,.18); color: var(--bufo-amber); }
.br-card__icon--magenta { background: rgba(255,58,140,.06); border: 1px solid rgba(255,58,140,.15); color: var(--bufo-magenta); }
.br-card h3 { font-size: 1rem; font-weight: 600; color: var(--bufo-text); margin: 0 0 8px; }
.br-card p { font-size: 13px; color: var(--bufo-text-4); line-height: 1.6; margin: 0; }

/* ── PANELS ── */
.br-panel { border-radius: 14px; background: rgba(12,14,18,.5); border: 1px solid rgba(34,197,94,.1); overflow: hidden; transition: border-color .3s; }
.br-panel:hover { border-color: rgba(34,197,94,.2); }
.br-panel__head { display: flex; align-items: center; gap: 8px; padding: 12px 20px; background: rgba(0,0,0,.2); border-bottom: 1px solid var(--bufo-line); font-family: var(--bufo-mono); font-size: 10px; font-weight: 700; color: var(--bufo-green); text-transform: uppercase; letter-spacing: .1em; }
.br-panel__body { padding: 24px 20px; }
.br-panel__body h3 { font-size: 1.05rem; font-weight: 600; color: var(--bufo-text); margin: 0 0 8px; }
.br-panel__body p { font-size: 13px; color: var(--bufo-text-4); line-height: 1.6; margin: 0; }

/* ── PROTOCOL STEPS ── */
.br-protocol { display: flex; flex-direction: column; gap: 12px; }
.br-protocol__step { display: grid; grid-template-columns: auto 1fr; gap: 16px; padding: 20px; border-radius: 12px; background: rgba(255,255,255,.015); border: 1px solid var(--bufo-line); transition: all .25s; }
.br-protocol__step:hover { border-color: rgba(34,197,94,.2); background: rgba(34,197,94,.02); }
.br-protocol__num { width: 36px; height: 36px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: rgba(34,197,94,.08); border: 1px solid rgba(34,197,94,.25); font-family: var(--bufo-mono); font-size: 12px; font-weight: 800; color: var(--bufo-green); flex-shrink: 0; }
.br-protocol__content h4 { font-family: var(--bufo-mono); font-size: 12px; font-weight: 700; letter-spacing: .08em; text-transform: uppercase; color: var(--bufo-text-2); margin: 4px 0 4px; }
.br-protocol__content p { font-size: 13px; color: var(--bufo-text-4); line-height: 1.5; margin: 0; }

/* ── FINAL CTA ── */
.br-section--final { padding: 40px 0 80px; }
.br-final { position: relative; padding: 48px 40px; border-radius: 20px; background: rgba(12,14,18,.6); border: 1px solid rgba(34,197,94,.15); overflow: hidden; text-align: center; }
.br-final__glow { position: absolute; top: -60px; left: 50%; transform: translateX(-50%); width: 400px; height: 200px; background: radial-gradient(ellipse, rgba(34,197,94,.1) 0%, transparent 70%); filter: blur(40px); }
.br-final__brackets { position: absolute; inset: 0; pointer-events: none; }
.br-final .br-bracket { position: absolute; width: 36px; height: 36px; }
.br-final .br-bracket::before, .br-final .br-bracket::after { content: ''; position: absolute; background: rgba(34,197,94,.3); }
.br-final .br-bracket--tl { top: 16px; left: 16px; } .br-final .br-bracket--tl::before { width: 18px; height: 2px; } .br-final .br-bracket--tl::after { width: 2px; height: 18px; }
.br-final .br-bracket--tr { top: 16px; right: 16px; } .br-final .br-bracket--tr::before { top: 0; right: 0; width: 18px; height: 2px; } .br-final .br-bracket--tr::after { top: 0; right: 0; width: 2px; height: 18px; }
.br-final .br-bracket--bl { bottom: 16px; left: 16px; } .br-final .br-bracket--bl::before { bottom: 0; width: 18px; height: 2px; } .br-final .br-bracket--bl::after { bottom: 0; width: 2px; height: 18px; }
.br-final .br-bracket--br { bottom: 16px; right: 16px; } .br-final .br-bracket--br::before { bottom: 0; right: 0; width: 18px; height: 2px; } .br-final .br-bracket--br::after { bottom: 0; right: 0; width: 2px; height: 18px; }
.br-final__content { position: relative; z-index: 2; }
.br-final__content .br-chip { margin-bottom: 16px; }
.br-final__content h2 { font-size: clamp(1.5rem, 3vw, 2rem); font-weight: 700; color: var(--bufo-text); margin: 0 0 12px; }
.br-final__content p { font-size: 14px; color: var(--bufo-text-3); max-width: 500px; margin: 0 auto 28px; line-height: 1.6; }
.br-final__actions { display: flex; flex-wrap: wrap; justify-content: center; gap: 12px; }
.br-final__alt { display: flex; align-items: center; justify-content: center; gap: 10px; margin-top: 20px; font-size: 12px; color: var(--bufo-text-5); }

/* ── CHANGELOG TIMELINE ── */
.bc-timeline { position: relative; padding-left: 32px; }
.bc-timeline::before { content: ''; position: absolute; top: 0; bottom: 0; left: 11px; width: 1px; background: linear-gradient(to bottom, rgba(34,197,94,.3), rgba(34,197,94,.05)); }
.bc-entry { position: relative; margin-bottom: 36px; }
.bc-entry__dot { position: absolute; left: -32px; top: 20px; width: 10px; height: 10px; border-radius: 50%; background: var(--bufo-surface-2); border: 2px solid rgba(34,197,94,.3); z-index: 2; }
.bc-entry__dot--active { background: var(--bufo-green); border-color: var(--bufo-green); box-shadow: 0 0 12px rgba(34,197,94,.4); }
.bc-entry__card { padding: 24px; border-radius: 14px; background: rgba(12,14,18,.5); border: 1px solid var(--bufo-line); transition: border-color .3s; }
.bc-entry__card:hover { border-color: rgba(34,197,94,.2); }
.bc-entry__head { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; margin-bottom: 12px; }
.bc-entry__version { font-family: var(--bufo-mono); font-size: 14px; font-weight: 800; color: var(--bufo-green); }
.bc-entry__tag { padding: 2px 8px; border-radius: 4px; font-family: var(--bufo-mono); font-size: 9px; font-weight: 700; text-transform: uppercase; letter-spacing: .08em; }
.bc-entry__tag--green { background: rgba(34,197,94,.12); color: var(--bufo-green); border: 1px solid rgba(34,197,94,.25); }
.bc-entry__date { font-family: var(--bufo-mono); font-size: 11px; color: var(--bufo-text-5); }
.bc-entry__card h3 { font-size: 1.1rem; font-weight: 600; color: var(--bufo-text); margin: 0 0 12px; }
.bc-entry__card > p { font-size: 13px; color: var(--bufo-text-4); line-height: 1.6; margin: 0; }
.bc-entry__section { margin-top: 16px; }
.bc-entry__section h4 { font-family: var(--bufo-mono); font-size: 11px; font-weight: 700; color: var(--bufo-text-3); text-transform: uppercase; letter-spacing: .08em; margin: 0 0 8px; }
.bc-entry__section ul { list-style: none; padding: 0; margin: 0; }
.bc-entry__section li { position: relative; padding-left: 16px; font-size: 13px; color: var(--bufo-text-4); line-height: 1.5; margin-bottom: 4px; }
.bc-entry__section li::before { content: ''; position: absolute; left: 0; top: 8px; width: 4px; height: 4px; border-radius: 50%; background: rgba(34,197,94,.4); }

@media(max-width:640px) { .br-final { padding: 32px 20px; } .bc-timeline { padding-left: 24px; } .bc-timeline::before { left: 7px; } .bc-entry__dot { left: -24px; } }
@media(prefers-reduced-motion:reduce) { .br-atmo__scan, .br-atmo__orb { animation: none; } }

/* ── orphan-rules.css ── */
/* Recovered rules from old bufo-core (not in source files) */

.comment-form-textarea-wrapper textarea:focus { outline: none; }

.comment-form-input-wrapper input:focus {
  outline: none;
  border-color: var(--bufo-neon);
  background: rgba(0, 0, 0, 0.4);
}

.comment-form-input-wrapper:focus-within svg { color: var(--bufo-neon); }

.comment-form-textarea-wrapper textarea:focus {
  border-color: var(--bufo-neon);
  background: rgba(0, 0, 0, 0.4);
}

.footer-ufo {
  background: linear-gradient(180deg, transparent, var(--dark-matter));
}

.footer-main {
  background: rgba(0, 0, 0, 0.25);
  border-top: 1px solid rgba(34, 197, 94, 0.15);
  position: relative;
  overflow: hidden;
}

.footer-main::before {
  content: '';
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, rgba(34, 197, 94, 0.5) 20%, rgba(34, 197, 94, 0.8) 50%, rgba(34, 197, 94, 0.5) 80%, transparent 100%);
  animation: footer-glow 3s ease-in-out infinite;
}

.footer-grid-overlay {
  position: absolute;
  inset: 0;
  background-image: linear-gradient(rgba(34, 197, 94, 0.03) 1px, transparent 1px), linear-gradient(90deg, rgba(34, 197, 94, 0.03) 1px, transparent 1px);
  background-size: 50px 50px;
  pointer-events: none;
}

.footer-link {
  position: relative;
  color: var(--text-muted);
  transition: color var(--transition-base);
}

.footer-link::after {
  content: '';
  position: absolute;
  bottom: -1px;
  left: 8px;
  width: 0;
  height: 1px;
  background: linear-gradient(90deg, transparent 0%, var(--ufo-green) 35%, var(--ufo-green) 60%, transparent 90%);
  transition: width var(--transition-base);
}

.footer-link:hover {
  color: var(--ufo-green);
}

.footer-link:hover::after {
  width: 100%;
}

.contact-card {
  display: block;
  padding: 16px;
  background: rgba(34, 197, 94, 0.05);
  border: 1px solid rgba(34, 197, 94, 0.1);
  border-radius: 12px;
  transition: all var(--transition-base);
}

.contact-card:hover {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.3);
  transform: translateY(-2px);
  box-shadow: 0 10px 30px -10px rgba(34, 197, 94, 0.2);
}

.social-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 42px;
  height: 42px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-radius: 10px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.social-icon:hover {
  background: rgba(34, 197, 94, 0.2);
  border-color: rgba(34, 197, 94, 0.4);
  color: var(--ufo-green);
  transform: translateY(-3px);
  box-shadow: 0 8px 20px -8px rgba(34, 197, 94, 0.3);
}

.social-icon svg {
  width: 18px;
  height: 18px;
  fill: currentColor;
}

.classified-badge {
  display: inline-block;
  padding: 4px 12px;
  border: 2px solid rgba(239, 68, 68, 0.5);
  color: rgba(239, 68, 68, 0.8);
  font-family: var(--font-mono);
  font-weight: 700;
  font-size: 10px;
  letter-spacing: 2px;
  transform: rotate(-2deg);
  text-transform: uppercase;
}

.footer-bottom {
  background: rgba(0, 0, 0, 0.3);
  border-top: 1px solid rgba(34, 197, 94, 0.1);
}

.logo-flicker {
  animation: logo-flicker 5s ease-in-out infinite;
}

.footer-navitem {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 10px;
  padding: 10px 12px;
  border-radius: 12px;
  border: 1px solid rgba(255, 255, 255, 0.08);
  background: rgba(255, 255, 255, 0.03);
}

.footer-navitem:hover {
  border-color: rgba(34, 197, 94, 0.22);
  background: rgba(34, 197, 94, 0.06);
}

.footer-navitem .nav-dot {
  width: 9px;
  height: 9px;
  border-radius: 9999px;
  background: rgba(34, 197, 94, 0.75);
  box-shadow: 0 0 18px rgba(34, 197, 94, 0.22);
  flex: 0 0 auto;
}

.footer-navitem .nav-arrow {
  opacity: 0.45;
  transition: transform 0.25s ease, opacity 0.25s ease, color 0.25s ease;
  color: rgba(34, 197, 94, 0.8);
}

.footer-navitem:hover .nav-arrow {
  opacity: 0.9;
  transform: translateX(2px);
}

.footer-bottom-link {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 8px 14px;
  border-radius: 9999px;
  border: 1px solid rgba(255, 255, 255, 0.10);
  background: rgba(255, 255, 255, 0.03);
  color: rgba(156, 163, 175, 0.95);
  transition: all 0.25s ease;
  position: relative;
  overflow: hidden;
}

.footer-bottom-link::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 0;
  background: radial-gradient(420px circle at 30% 20%, rgba(34, 197, 94, 0.12), transparent 60%);
  transition: opacity 0.25s ease;
  pointer-events: none;
}

.footer-bottom-link:hover {
  color: rgba(34, 197, 94, 0.95);
  border-color: rgba(34, 197, 94, 0.28);
  background: rgba(34, 197, 94, 0.06);
}

.footer-bottom-link:hover::before {
  opacity: 1;
}

.contact-card::before {
  content: '';
  position: absolute;
  inset: 0;
  opacity: 0;
  background: radial-gradient(500px circle at var(--mx, 35%) var(--my, 20%), rgba(34, 197, 94, 0.16), transparent 55%);
  transition: opacity 0.25s ease;
  pointer-events: none;
}

.contact-card:hover::before {
  opacity: 1;
}

.comments-section__header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-bottom: 16px;
  margin-bottom: 2rem;
  border-bottom: 1px solid var(--glass-border);
}

.comments-section {
  margin-top: 4rem;
  padding-top: 2rem;
  border-top: 1px solid var(--glass-border);
}

.comments-section__header h3 {
  font-family: var(--font-mono);
  font-size: 14px;
  color: var(--text-primary);
  text-transform: uppercase;
  letter-spacing: 1px;
}

.comments-section__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 36px;
  height: 36px;
  background: rgba(34, 197, 94, 0.1);
  border-radius: 8px;
  color: var(--ufo-green);
  margin-right: 12px;
}

.comments-section__count {
  font-family: var(--font-mono);
  font-size: 13px;
  color: var(--text-muted);
}

.comments-area {
  margin-top: 3rem;
}

.comments-header {
  display: flex;
  align-items: center;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 16px;
  padding-bottom: 20px;
  margin-bottom: 30px;
  border-bottom: 1px solid var(--glass-border);
}

.comments-header__title {
  display: flex;
  align-items: center;
  gap: 14px;
}

.comments-header__icon {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 12px;
  color: var(--ufo-green);
}

.comments-header__pulse {
  position: absolute;
  inset: 0;
  border-radius: 12px;
  background: rgba(34, 197, 94, 0.2);
  animation: comment-pulse 2s ease-out infinite;
}

.comments-header__title h3 {
  font-size: 1.25rem;
  font-weight: 600;
  color: var(--text-primary);
}

.comments-header__status {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 8px 14px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.2);
  border-radius: 20px;
  font-size: 12px;
  color: var(--ufo-green);
}

.comment-list {
  list-style: none;
  padding: 0;
  margin: 0;
}

.comment-list .children {
  list-style: none;
  padding-left: 30px;
  margin-top: 20px;
  border-left: 2px solid var(--glass-border);
}

  .comment-list .children {
    padding-left: 16px
  }

.comment-item {
  margin-bottom: 24px;
}

.comment-item:last-child {
  margin-bottom: 0;
}

.comment-body {
  display: flex;
  gap: 16px;
  padding: 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 16px;
  transition: border-color var(--transition-base);
}

.comment-body:hover {
  border-color: var(--glass-border-hover);
}

  .comment-body {
    flex-direction: column;
    gap: 12px;
    padding: 16px
  }

.comment-pingback {
  display: flex;
  align-items: center;
  gap: 10px;
  padding: 16px 20px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  font-size: 14px;
  color: var(--text-muted);
}

.comment-pingback svg {
  color: var(--ufo-green);
  opacity: 0.7;
}

.comment-pingback a {
  color: var(--text-primary);
  transition: color var(--transition-base);
}

.comment-pingback a:hover {
  color: var(--ufo-green);
}

.comment-avatar {
  position: relative;
  flex-shrink: 0;
}

.comment-avatar__img {
  width: 56px;
  height: 56px;
  border-radius: 14px;
  border: 2px solid var(--glass-border);
}

.comment-avatar__badge {
  position: absolute;
  bottom: -4px;
  right: -4px;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  background: var(--ufo-green);
  border: 2px solid var(--dark-matter);
  border-radius: 50%;
  color: var(--deep-space);
}

.comment-main {
  flex: 1;
  min-width: 0;
}

.comment-header {
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  flex-wrap: wrap;
  gap: 10px;
  margin-bottom: 12px;
}

.comment-author {
  display: flex;
  align-items: center;
  gap: 10px;
}

.comment-author__name {
  font-size: 15px;
  font-weight: 600;
  color: var(--text-primary);
}

.comment-author__tag {
  padding: 3px 10px;
  background: rgba(34, 197, 94, 0.15);
  border-radius: 4px;
  font-family: var(--font-mono);
  font-size: 10px;
  font-weight: 600;
  color: var(--ufo-green);
  text-transform: uppercase;
  letter-spacing: 0.5px;
}

.comment-meta {
  display: flex;
  align-items: center;
  gap: 12px;
}

.comment-meta__date {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--text-dim);
  transition: color var(--transition-base);
}

.comment-meta__date:hover {
  color: var(--text-muted);
}

.comment-meta__date svg {
  color: var(--ufo-green);
  opacity: 0.5;
}

.comment-meta__edit {
  display: flex;
  align-items: center;
}

.comment-meta__edit a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  color: var(--text-dim);
  transition: all var(--transition-base);
}

.comment-meta__edit a:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
}

.comment-content {
  font-size: 0.9375rem;
  line-height: 1.7;
  color: var(--text-secondary);
}

.comment-content p {
  margin-bottom: 1rem;
}

.comment-content p:last-child {
  margin-bottom: 0;
}

.comment-content a {
  color: var(--ufo-green);
  text-decoration: underline;
  text-underline-offset: 2px;
}

.comment-content a:hover {
  color: var(--ufo-green-bright);
}

.comment-awaiting {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 14px;
  background: rgba(245, 158, 11, 0.1);
  border: 1px solid rgba(245, 158, 11, 0.2);
  border-radius: 8px;
  margin-bottom: 12px;
  font-size: 13px;
  color: #f59e0b;
}

.comment-awaiting svg {
  flex-shrink: 0;
}

.comment-footer {
  margin-top: 14px;
}

.comment-reply a {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 8px 14px;
  background: transparent;
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  font-size: 13px;
  color: var(--text-muted);
  transition: all var(--transition-base);
}

.comment-reply a:hover {
  background: rgba(34, 197, 94, 0.1);
  border-color: rgba(34, 197, 94, 0.3);
  color: var(--ufo-green);
}

.comment-reply a svg {
  width: 16px;
  height: 16px;
}

.comments-pagination {
  margin-top: 30px;
  padding-top: 20px;
  border-top: 1px solid var(--glass-border);
}

.comments-pagination__inner {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 20px;
}

.comments-pagination__link a {
  display: flex;
  align-items: center;
  gap: 8px;
  padding: 10px 16px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 8px;
  font-size: 13px;
  color: var(--text-secondary);
  transition: all var(--transition-base);
}

.comments-pagination__link a:hover {
  border-color: var(--glass-border-hover);
  color: var(--ufo-green);
}

.comments-pagination__info {
  font-family: var(--font-mono);
  font-size: 12px;
  color: var(--text-dim);
}

.comments-closed {
  display: flex;
  align-items: center;
  gap: 16px;
  padding: 20px;
  background: rgba(239, 68, 68, 0.05);
  border: 1px solid rgba(239, 68, 68, 0.2);
  border-radius: 12px;
}

.comments-closed__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 48px;
  height: 48px;
  background: rgba(239, 68, 68, 0.1);
  border-radius: 12px;
  color: #ef4444;
  flex-shrink: 0;
}

.comments-closed__content h4 {
  font-size: 15px;
  font-weight: 600;
  color: #ef4444;
  margin-bottom: 4px;
}

.comments-closed__content p {
  font-size: 14px;
  color: var(--text-muted);
}

.comment-form-wrapper {
  margin-top: 40px;
  padding: 24px;
  background: var(--glass-light);
  border: 1px solid var(--glass-border);
  border-radius: 20px;
}

.comment-form-header {
  display: flex;
  align-items: center;
  gap: 14px;
  padding-bottom: 20px;
  margin-bottom: 20px;
  border-bottom: 1px solid var(--glass-border);
}

.comment-form-header__icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 44px;
  height: 44px;
  background: rgba(34, 197, 94, 0.1);
  border: 1px solid rgba(34, 197, 94, 0.3);
  border-radius: 12px;
  color: var(--ufo-green);
  flex-shrink: 0;
}

.comment-form-header h4 {
  font-size: 1.125rem;
  font-weight: 600;
  color: var(--text-primary);
  margin-bottom: 4px;
}

.comment-form-header p {
  font-size: 13px;
  color: var(--text-muted);
}

.comment-reply-title {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  margin-bottom: 20px;
  font-size: 1rem;
  font-weight: 600;
  color: var(--text-primary);
}

.comment-reply-title small {
  font-size: 13px;
  font-weight: 400;
}

.comment-reply-title small a {
  color: var(--ufo-green);
  text-decoration: underline;
}

.comment-form-logged-in {
  display: flex;
  align-items: center;
  gap: 14px;
  padding: 16px;
  background: rgba(34, 197, 94, 0.05);
  border: 1px solid rgba(34, 197, 94, 0.15);
  border-radius: 12px;
  margin-bottom: 20px;
}

.comment-form-logged-in__avatar img {
  width: 48px;
  height: 48px;
  border-radius: 12px;
  border: 2px solid rgba(34, 197, 94, 0.3);
}

.comment-form-logged-in__info {
  flex: 1;
}

.comment-form-logged-in__text {
  display: block;
  font-size: 14px;
  color: var(--text-secondary);
  margin-bottom: 4px;
}

.comment-form-logged-in__text strong {
  color: var(--text-primary);
}

.comment-form-logged-in__actions {
  display: flex;
  align-items: center;
  gap: 8px;
  font-size: 12px;
}

.comment-form-logged-in__actions a {
  color: var(--ufo-green);
}

.comment-form-logged-in__actions a:hover {
  text-decoration: underline;
}

.comment-form-logged-in__actions .separator {
  color: var(--text-dim);
}

.comment-form-container {
  position: relative;
}

.comment-form {
  display: flex;
  flex-wrap: wrap;
  gap: 16px;
}

.comment-form-field {
  width: 100%;
}

.comment-form-field--half {
  width: 100%;
}

  .comment-form-field--half {
    width: calc(50% - 8px)
  }

.comment-form-field label {
  display: block;
  margin-bottom: 8px;
  font-size: 13px;
  font-weight: 500;
  color: var(--text-secondary);
}

.comment-form-field label .required {
  color: var(--ufo-green);
  margin-left: 2px;
}

.comment-form-input-wrapper {
  position: relative;
  display: flex;
  align-items: center;
}

.comment-form-input-wrapper svg {
  position: absolute;
  left: 14px;
  color: var(--text-dim);
  pointer-events: none;
  transition: color var(--transition-base);
}

.comment-form-input-wrapper input {
  width: 100%;
  padding: 14px 14px 14px 44px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  border-radius: 10px;
  font-size: 14px;
  color: var(--text-primary);
  transition: all var(--transition-base);
}

.comment-form-input-wrapper input::placeholder {
  color: var(--text-dim);
}

.comment-form-field--textarea {
  width: 100%;
}

.comment-form-textarea-wrapper {
  position: relative;
}

.comment-form-textarea-wrapper textarea {
  width: 100%;
  padding: 16px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  border-radius: 12px;
  font-size: 14px;
  line-height: 1.6;
  color: var(--text-primary);
  resize: vertical;
  min-height: 140px;
  transition: all var(--transition-base);
}

.comment-form-textarea-wrapper textarea::placeholder {
  color: var(--text-dim);
}

.comment-form-textarea-footer {
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
}

.comment-form-hint {
  display: flex;
  align-items: center;
  gap: 6px;
  font-size: 12px;
  color: var(--text-dim);
}

.comment-form-hint svg {
  color: var(--ufo-green);
  opacity: 0.5;
}

.comment-form-field--cookies {
  width: 100%;
}

.comment-form-checkbox {
  display: flex;
  align-items: center;
  gap: 12px;
  cursor: pointer;
}

.comment-form-checkbox input {
  display: none;
}

.comment-form-checkbox__mark {
  position: relative;
  width: 22px;
  height: 22px;
  background: rgba(0, 0, 0, 0.3);
  border: 1px solid var(--glass-border);
  border-radius: 6px;
  flex-shrink: 0;
  transition: all var(--transition-base);
}

.comment-form-checkbox__mark::after {
  content: '';
  position: absolute;
  top: 4px;
  left: 7px;
  width: 6px;
  height: 10px;
  border: solid var(--ufo-green);
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
  opacity: 0;
  transition: opacity var(--transition-base);
}

.comment-form-checkbox input:checked+.comment-form-checkbox__mark {
  background: rgba(34, 197, 94, 0.2);
  border-color: var(--ufo-green);
}

.comment-form-checkbox input:checked+.comment-form-checkbox__mark::after {
  opacity: 1;
}

.comment-form-checkbox__text {
  font-size: 13px;
  color: var(--text-muted);
}

.comment-form-submit {
  width: 100%;
  display: flex;
  justify-content: flex-end;
  margin-top: 8px;
}

.comment-form-submit button {
  display: inline-flex;
  align-items: center;
  gap: 10px;
  padding: 14px 28px;
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.2), rgba(34, 197, 94, 0.1));
  border: 1px solid rgba(34, 197, 94, 0.4);
  border-radius: 12px;
  font-size: 15px;
  font-weight: 600;
  color: var(--text-primary);
  cursor: pointer;
  transition: all var(--transition-base);
}

.comment-form-submit button:hover {
  background: linear-gradient(135deg, rgba(34, 197, 94, 0.3), rgba(34, 197, 94, 0.15));
  border-color: var(--ufo-green);
  box-shadow: 0 0 30px -10px var(--ufo-green);
  transform: translateY(-2px);
}

.comment-form-submit button svg {
  transition: transform var(--transition-base);
}

.comment-form-submit button:hover svg {
  transform: translateX(4px);
}

.bi-panel--protocol { overflow: hidden; }

.bi-panel--protocol::after {
  content: '';
  position: absolute;
  top: -40%;
  right: -30%;
  width: 180px;
  height: 180px;
  border-radius: 50%;
  background: conic-gradient(from 0deg, transparent 0deg, rgba(var(--bi-green-rgb), 0.04) 40deg, transparent 80deg);
  animation: bi-proto-radar 10s linear infinite;
  pointer-events: none;
}

.bi-panel__header-badge {
  font-family: var(--bi-mono);
  font-size: 0.5rem;
  font-weight: 700;
  letter-spacing: 0.12em;
  padding: 0.2rem 0.55rem;
  border-radius: 100px;
  background: rgba(var(--bi-green-rgb), 0.1);
  border: 1px solid rgba(var(--bi-green-rgb), 0.2);
  color: var(--bi-green);
  text-transform: uppercase;
  animation: bi-badge-pulse 3s ease-in-out infinite;
}

.bi-protocol__rules {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  margin-bottom: 1rem;
}

.bi-protocol__rule {
  display: flex;
  align-items: flex-start;
  gap: 0.65rem;
  padding: 0.6rem 0.5rem;
  border-radius: 6px;
  transition: background 0.2s ease;
}

.bi-protocol__rule:hover {
  background: rgba(var(--bi-green-rgb), 0.03);
}

.bi-protocol__rule-icon {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 28px;
  height: 28px;
  flex-shrink: 0;
  border-radius: 6px;
  background: rgba(var(--bi-green-rgb), 0.06);
  border: 1px solid rgba(var(--bi-green-rgb), 0.1);
  color: var(--bi-green);
  transition: all 0.25s ease;
}

.bi-protocol__rule:hover .bi-protocol__rule-icon {
  background: rgba(var(--bi-green-rgb), 0.12);
  border-color: rgba(var(--bi-green-rgb), 0.25);
  box-shadow: 0 0 10px rgba(var(--bi-green-rgb), 0.1);
}

.bi-protocol__rule-body {
  display: flex;
  flex-direction: column;
  gap: 0.1rem;
  min-width: 0;
}

.bi-protocol__rule-title {
  font-family: var(--bi-mono);
  font-size: 0.7rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  color: var(--bi-text-80);
  transition: color 0.2s ease;
}

.bi-protocol__rule:hover .bi-protocol__rule-title {
  color: var(--bi-green);
}

.bi-protocol__rule-desc {
  font-size: 0.72rem;
  font-weight: 300;
  line-height: 1.45;
  color: var(--bi-text-30);
}



/* ── Sector filter pills (v4.0.1) ── */
.ba-pills{display:flex;flex-wrap:wrap;gap:8px;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid rgba(255,255,255,.04)}
.ba-pill{display:inline-flex;align-items:center;padding:6px 14px;border-radius:100px;font-family:var(--bufo-mono,'JetBrains Mono',monospace);font-size:.65rem;font-weight:600;letter-spacing:.06em;text-transform:uppercase;text-decoration:none;color:var(--bufo-text-4,rgba(245,247,255,.4));background:rgba(255,255,255,.03);border:1px solid rgba(255,255,255,.06);transition:all .2s ease}
.ba-pill:hover{color:var(--bufo-green,#22c55e);background:rgba(34,197,94,.06);border-color:rgba(34,197,94,.15)}
.ba-pill--active{color:var(--bufo-space,#030508);background:var(--bufo-green,#22c55e);border-color:var(--bufo-green,#22c55e);box-shadow:0 0 12px rgba(34,197,94,.25)}
.ba-pill--active:hover{color:var(--bufo-space,#030508);background:var(--bufo-green-bright,#4ade80);border-color:var(--bufo-green-bright,#4ade80)}
