@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk:wght@400;500;600;700&display=swap");

:root {
  --gc-bg: #f6f2ea;
  --gc-panel: #ffffff;
  --gc-ink: #1a1a1a;
  --gc-muted: #6e6e6e;
  --gc-accent: #0b5d4b;
  --gc-accent-strong: #0f7b62;
  --gc-accent-soft: #e6f5f0;
  --gc-border: #e6e0d6;
  --gc-danger: #b73a3a;
  --gc-warning: #d17b23;
  --gc-shadow: 0 18px 40px rgba(26, 26, 26, 0.08);
}

body {
  font-family: "Space Grotesk", "Segoe UI", sans-serif;
  color: var(--gc-ink);
  background: radial-gradient(
    circle at 12% 18%,
    #f4fbf8 0%,
    #f6f2ea 40%,
    #fefcf6 100%
  );
}

a {
  color: var(--gc-accent);
}

a:hover {
  color: var(--gc-accent-strong);
}

.card {
  border: 1px solid var(--gc-border);
  border-radius: 14px;
  box-shadow: var(--gc-shadow);
}

.card-header {
  border-bottom: 1px solid var(--gc-border);
}

.btn-primary {
  background: linear-gradient(
    135deg,
    var(--gc-accent) 0%,
    var(--gc-accent-strong) 100%
  );
  border-color: transparent;
}

.btn-primary:hover,
.btn-primary:focus,
.btn-primary:active {
  background: linear-gradient(
    135deg,
    var(--gc-accent-strong) 0%,
    #118f72 100%
  );
  border-color: transparent;
}

.btn-outline-primary {
  color: var(--gc-accent);
  border-color: rgba(11, 93, 75, 0.35);
}

.btn-outline-primary:hover,
.btn-outline-primary:focus {
  background: var(--gc-accent-soft);
  color: var(--gc-accent);
  border-color: rgba(11, 93, 75, 0.45);
}

.form-control,
.form-select {
  border-color: var(--gc-border);
}

.form-control:focus,
.form-select:focus {
  border-color: rgba(11, 93, 75, 0.45);
  box-shadow: 0 0 0 0.2rem rgba(11, 93, 75, 0.12);
}

.badge.bg-primary,
.bg-primary {
  background-color: var(--gc-accent) !important;
}

.table thead th {
  border-bottom: 1px solid var(--gc-border);
}

.itbi-page .card {
  border-radius: 16px;
}

.itbi-page .card-header {
  background: linear-gradient(
    135deg,
    var(--gc-accent) 0%,
    var(--gc-accent-strong) 100%
  ) !important;
  color: #fff !important;
}

.itbi-page .info-box {
  background: #f4fbf8;
  border-left: 4px solid var(--gc-accent);
}

.itbi-page .section-title {
  color: var(--gc-accent);
  border-bottom-color: var(--gc-border);
}

.itbi-page .code-badge {
  background: #fff;
  border: 1px solid var(--gc-border);
}

.itbi-page .badge-pill {
  border-radius: 999px;
}
