/* HotMinds Brand Kit — .NET Core MVC + Bootstrap 5 */

/* --- Font self-host --- */
@font-face { font-family:"Cabinet Grotesk"; src:url("../fonts/cabinet-grotesk-700.woff2") format("woff2"); font-weight:700; font-display:swap; }
@font-face { font-family:"Cabinet Grotesk"; src:url("../fonts/cabinet-grotesk-500.woff2") format("woff2"); font-weight:500; font-display:swap; }
@font-face { font-family:"Satoshi"; src:url("../fonts/satoshi-400.woff2") format("woff2"); font-weight:400; font-display:swap; }
@font-face { font-family:"Satoshi"; src:url("../fonts/satoshi-500.woff2") format("woff2"); font-weight:500; font-display:swap; }
@font-face { font-family:"Satoshi"; src:url("../fonts/satoshi-700.woff2") format("woff2"); font-weight:700; font-display:swap; }
@font-face { font-family:"Satoshi"; src:url("../fonts/satoshi-900.woff2") format("woff2"); font-weight:900; font-display:swap; }
@font-face { font-family:"JetBrains Mono"; src:url("../fonts/jetbrains-mono-400.woff2") format("woff2"); font-weight:400; font-display:swap; }
@font-face { font-family:"JetBrains Mono"; src:url("../fonts/jetbrains-mono-500.woff2") format("woff2"); font-weight:500; font-display:swap; }

/* --- Token palette --- */
:root {
  --lime: #BFDD2E; --lime-ink: #0B1304; --purple: #6C5CE7;
  --ink: #0A0A0F; --paper: #F4F4EE; --ink-soft: #9097A8; --paper-soft: #4B4F5A;
  --ok: #3FA34D; --warn: #E0A12B; --error: #D6453A; --info: #6C5CE7;

  /* semantici — dark di default */
  --bg: var(--ink); --fg: #F4F4EE; --muted: var(--ink-soft); --accent: var(--lime);

  /* override Bootstrap 5 */
  --bs-body-bg: var(--bg); --bs-body-color: var(--fg);
  --bs-primary: #BFDD2E; --bs-primary-rgb: 191,221,46;
  --bs-font-sans-serif: "Satoshi", system-ui, sans-serif;
  --bs-font-monospace: "JetBrains Mono", ui-monospace, monospace;
}

[data-bs-theme="light"] {
  --bg: var(--paper); --fg: #0A0A0F; --muted: var(--paper-soft); --accent: var(--lime);
  --bs-body-bg: var(--bg); --bs-body-color: var(--fg);
}

/* --- Base --- */
body { background: var(--bg); color: var(--fg); font-family: var(--bs-font-sans-serif); }
h1, h2 { font-family: "Cabinet Grotesk", "SF Pro Display", "Helvetica Neue", sans-serif; }
code, pre, .font-mono { font-family: "JetBrains Mono", ui-monospace, monospace; }

/* --- CTA lime --- */
.btn-primary { background: var(--lime); color: var(--lime-ink); border-color: var(--lime); }
.btn-primary:hover, .btn-primary:focus { background: #a8c226; border-color: #a8c226; color: var(--lime-ink); }

/* --- Focus ring purple --- */
a:focus-visible, button:focus-visible, .form-control:focus, .form-select:focus {
  outline: 2px solid var(--purple);
  outline-offset: 2px;
  box-shadow: none;
}

/* --- Muted text --- */
.text-muted { color: var(--muted) !important; }

/* --- Form labels e testi che Bootstrap non propaga al tema --- */
.form-label, .form-text, .form-check-label, legend { color: var(--fg); }
.form-control, .form-select {
    background-color: color-mix(in srgb, var(--bg) 80%, var(--fg) 20%);
    color: var(--fg);
    border-color: color-mix(in srgb, var(--fg) 30%, transparent);
}
.form-control::placeholder { color: var(--muted); }
.form-control:focus, .form-select:focus {
    background-color: color-mix(in srgb, var(--bg) 80%, var(--fg) 20%);
    color: var(--fg);
}
