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

*, *::before, *::after { box-sizing: border-box; margin: 0; padding: 0; }
[hidden] { display: none !important; }

:root {
  --bg-primary:    #0a0e1a;
  --bg-secondary:  #0f1628;
  --bg-card:       #111827;
  --glass-bg:      rgba(255,255,255,0.04);
  --glass-border:  rgba(255,255,255,0.08);
  --glass-hover:   rgba(255,255,255,0.07);

  --text-primary:  #e8edf5;
  --text-secondary:#8b9bbf;
  --text-muted:    #4a5568;

  --accent-blue:   #4f8ef7;
  --accent-green:  #00c853;
  --accent-gold:   #ffd700;
  --accent-red:    #ff4757;
  --accent-orange: #ff6348;

  --update-glow:   #4f8ef7;

  --color-pt:      #e02020;
  --color-pl:      #3940c7;
  --color-mdb:     #f5c518;
  --color-uniao:   #00838f;
  --color-pp:      #e67e22;
  --color-psdb:    #2980b9;
  --color-psol:    #f1c40f;
  --color-novo:    #d35400;
  --color-psb:     #27ae60;
  --color-pdt:     #e74c3c;

  --radius-sm:  6px;
  --radius-md:  12px;
  --radius-lg:  18px;
  --shadow-card: 0 4px 24px rgba(0,0,0,0.4);
  --transition:  0.2s ease;
}

html { font-size: 16px; scroll-behavior: smooth; }

body {
  font-family: 'Inter', system-ui, sans-serif;
  background-color: var(--bg-primary);
  color: var(--text-primary);
  line-height: 1.5;
  min-height: 100vh;
  -webkit-font-smoothing: antialiased;
  overflow-x: hidden;
}

a { color: var(--accent-blue); text-decoration: none; }
a:hover { text-decoration: underline; }

h1 { font-size: 2rem;   font-weight: 700; }
h2 { font-size: 1.4rem; font-weight: 600; }
h3 { font-size: 1.1rem; font-weight: 600; }
h4 { font-size: 0.95rem; font-weight: 500; }

p  { color: var(--text-secondary); }

button {
  cursor: pointer;
  font-family: inherit;
  border: none;
  outline: none;
}

select {
  font-family: inherit;
  background: var(--glass-bg);
  border: 1px solid var(--glass-border);
  color: var(--text-primary);
  border-radius: var(--radius-sm);
  padding: 0.5rem 0.75rem;
  cursor: pointer;
  appearance: none;
  -webkit-appearance: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath fill='%238b9bbf' d='M1 1l5 5 5-5'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-position: right 10px center;
  padding-right: 2rem;
}

select:focus {
  border-color: var(--accent-blue);
  box-shadow: 0 0 0 2px rgba(79,142,247,0.2);
}

.mono { font-family: 'JetBrains Mono', monospace; }

::-webkit-scrollbar { width: 6px; height: 6px; }
::-webkit-scrollbar-track { background: var(--bg-primary); }
::-webkit-scrollbar-thumb { background: rgba(255,255,255,0.15); border-radius: 3px; }
::-webkit-scrollbar-thumb:hover { background: rgba(255,255,255,0.25); }
