@import url('./aero.css');

/* aero2 — liquid glass sky
   aeroviewer-inspired: ultra-thin urbanist, near-transparent glass panes,
   dark outline + inner white rim on panels.
*/

:root {
  --bg-raised:  rgba(255, 255, 255, 0.20);
  --bg-float:   rgba(255, 255, 255, 0.38);
  --bg-hover:   rgba(255, 255, 255, 0.55);
  --bg-deep:    rgba(180, 218, 255, 0.35);
  --bg-base:    hsl(211, 85%, 88%);
  --bg-void:    hsl(210, 80%, 68%);

  --surf-t:     rgba(255, 255, 255, 0.12);
  --surf-b:     rgba(200, 230, 255, 0.06);
  --surf-btn-t: rgba(255, 255, 255, 0.72);
  --surf-btn-b: rgba(178, 222, 255, 0.38);

  --text-primary:   rgba(8, 28, 58, 0.92);
  --text-secondary: rgba(15, 45, 80, 0.70);
  --text-muted:     rgba(30, 65, 110, 0.52);
  --text-inverse:   #ffffff;
  --text-link:      #0058c4;

  --blue-t:    #36b6e8;
  --blue-b:    #0c8acc;
  --blue-lit:  #62d0f8;
  --blue-dim:  #005e9e;

  --secondary-t:    #38c898;
  --secondary-b:    #189e70;
  --secondary-lit:  #58e0b8;
  --secondary-glow: rgba(30, 170, 120, 0.22);

  --danger-t:  #e83838;
  --danger-b:  #b81818;
  --success-t: #30b858;
  --success-b: #188438;
  --warn-t:    #e88c18;
  --warn-b:    #b46408;

  --border-hi:  rgba(255, 255, 255, 0.90);
  --border-lo:  rgba(0, 0, 0, 0.13);
  --border-mid: rgba(0, 0, 0, 0.07);

  --shadow-sm:    0 2px 12px rgba(0, 20, 60, 0.08);
  --shadow-md:    0 0 12px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 30, 80, 0.06);
  --shadow-lg:    0 20px 60px rgba(0, 45, 100, 0.18), 0 5px 18px rgba(0, 45, 100, 0.09);
  --shadow-inset: inset 0 2px 10px rgba(0, 45, 100, 0.07), inset 0 1px 0 rgba(255, 255, 255, 0.65);
  --bevel-hi:     inset 0 1px 0 rgba(255, 255, 255, 0.92);
  --bevel-lo:     inset 0 -1px 0 rgba(0, 0, 0, 0.06);

  --radius-sm:   3px;
  --radius-md:   6px;
  --radius-lg:   10px;
  --radius-xl:   15px;
  --radius-pill: 999px;

  --font-sans:    'Cirka', system-ui, sans-serif;
  --font-display: 'Migra', system-ui, sans-serif;
  --font-mono:    'JetBrains Mono', 'Cascadia Code', monospace;
}

/* ── sky backdrop ──────────────────────────────────────────────────── */
html { min-height: 100%; }

body {
  background:
    radial-gradient(ellipse 58% 40% at 82% -8%,  rgba(255, 255, 255, 0.65) 0%, transparent 58%),
    radial-gradient(ellipse 52% 42% at -12% 112%, rgba(155, 215, 255, 0.45) 0%, transparent 58%),
    radial-gradient(ellipse 30% 20% at 84% 1%,   rgba(255, 252, 218, 0.94) 0%, transparent 45%),
    linear-gradient(
      180deg,
      hsl(216, 100%, 97%) 0%,
      hsl(213, 90%,  90%) 16%,
      hsl(211, 82%,  83%) 38%,
      hsl(209, 77%,  73%) 62%,
      hsl(206, 80%,  63%) 82%,
      hsl(204, 83%,  56%) 100%
    );
  background-attachment: fixed;
  font-weight: 300;
  letter-spacing: 0.015em;
}

/* ── liquid glass panels ───────────────────────────────────────────── */
.panel {
  background: rgba(255, 255, 255, 0.10);
  border: 2px solid rgba(0, 0, 0, 0.12) !important;
  border-radius: var(--radius-xl) !important;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.18), inset 0 0 2px 0px rgba(255, 255, 255, 0.85);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.panel--raised {
  background: rgba(255, 255, 255, 0.18);
  border: 2px solid rgba(0, 0, 0, 0.10) !important;
  box-shadow: 0 0 16px rgba(0, 0, 0, 0.22), inset 0 0 2px 0px rgba(255, 255, 255, 0.90);
  backdrop-filter: blur(14px);
  -webkit-backdrop-filter: blur(14px);
}

.panel--inset {
  background: rgba(180, 215, 255, 0.10);
  border: 2px solid rgba(0, 0, 0, 0.08) !important;
  box-shadow: inset 0 2px 10px rgba(0, 30, 80, 0.08), inset 0 0 0 1px rgba(0, 0, 0, 0.05);
  backdrop-filter: blur(6px);
  -webkit-backdrop-filter: blur(6px);
}

/* ── glass inputs ──────────────────────────────────────────────────── */
.input {
  background: rgba(255, 255, 255, 0.35);
  border-color: rgba(0, 0, 0, 0.12);
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

/* ── glass buttons ─────────────────────────────────────────────────── */
.btn {
  backdrop-filter: blur(8px);
  -webkit-backdrop-filter: blur(8px);
}

.btn--ghost:hover { color: var(--text-secondary); filter: brightness(1.12); }

/* ── airy letter-spacing + gold titles ────────────────────────────── */
h1, h2, h3, h4,
.panel__header,
.modal__title {
  color: rgba(6, 22, 50, 0.90);
  letter-spacing: 0.02em;
}

h5, h6 {
  letter-spacing: 0.02em;
}

/* ── scrollbar ─────────────────────────────────────────────────────── */
::-webkit-scrollbar       { width: 8px; height: 8px; }
::-webkit-scrollbar-track { background: rgba(180, 220, 255, 0.18); }
::-webkit-scrollbar-thumb {
  background: rgba(100, 168, 228, 0.42);
  border-radius: 999px;
  border: 1px solid rgba(255, 255, 255, 0.35);
}
::-webkit-scrollbar-thumb:hover { background: rgba(80, 148, 215, 0.65); }

.badge { border-radius: 8px; }
.hl-tag  { color: #004a80; }
.hl-attr { color: #7a4200; }
.hl-val  { color: #1a6518; }
.hl-cmt  { color: #507090; }
