/* === SUNFLEX Theme – site_assets_themed === */
:root {
  --brand-primary: #344860;
  --brand-primary-dark: #2C3B4B;
  --brand-primary-light: #3F5874;
  --brand-accent: #D4AF37;
  --brand-accent-dark: #B9941F;
  --bg: #0F1117;
  --surface: #161A23;
  --border: #2A2E36;
  --text: #FFFFFF;
  --text-muted: #C7CBD1;
  --muted: #A3ADB9;
  --black-soft: #0B0D12;
  --white: #FFFFFF;
  --success: #2ECC71;
  --warning: #F1C40F;
  --error: #E74C3C;
  --focus-ring: rgba(212,175,55,0.45);
}
/* Base tokens */
html, body {
  background-color: var(--bg);
  color: var(--text);
}
a {
  color: var(--brand-accent);
}
a:hover {
  color: var(--brand-accent-dark);
}
.button-primary, .btn-primary {
  background: var(--brand-primary);
  color: var(--white);
  border-color: var(--brand-primary-dark);
}
.button-primary:hover, .btn-primary:hover {
  background: var(--brand-primary-dark);
  border-color: var(--brand-primary-dark);
}
.button-accent, .btn-accent {
  background: var(--brand-accent);
  color: var(--black-soft);
  border-color: var(--brand-accent-dark);
}
.button-accent:hover, .btn-accent:hover {
  background: var(--brand-accent-dark);
  color: var(--black-soft);
}
.card, .panel, .widget {
  background: var(--surface);
  border: 1px solid var(--border);
  color: var(--text);
}
input, select, textarea {
  background: var(--surface);
  color: var(--text);
  border: 1px solid var(--border);
}
input:focus, select:focus, textarea:focus, .btn:focus {
  outline: 2px solid var(--focus-ring);
  outline-offset: 2px;
}
hr { border-color: var(--border); }
.text-muted, .muted { color: var(--text-muted); }
.success { color: var(--success); }
.warning { color: var(--warning); }
.error { color: var(--error); }