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

/* ── Base ─────────────────────────────────────────── */
body { font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', sans-serif; }

/* ── Navigation brand ────────────────────────────── */
nav .font-bold,
nav .text-brand.text-lg,
nav .text-brand.font-bold {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 1.25rem !important;
    letter-spacing: 0.1em !important;
    font-weight: 800 !important;
}

/* ── Section / card headings ─────────────────────── */
h2.text-xl, h2.text-2xl, h2.text-lg,
h3.font-bold, h3.font-semibold,
.font-bold.text-base,
.font-bold.text-sm.uppercase,
.text-xs.font-semibold.uppercase,
.text-xs.font-semibold.text-gray-400 {
    font-family: 'Barlow Condensed', sans-serif !important;
    letter-spacing: 0.05em !important;
}

/* ── Tab nav labels ──────────────────────────────── */
div[class*="fixed bottom"] .text-xs,
div[class*="sticky bottom"] .text-xs {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.05em !important;
    font-size: 0.6rem !important;
}

/* ── All money / number values ───────────────────── */
.font-mono,
[class*="font-bold"][class*="text-white"]:not(nav *):not(button),
td .font-semibold, td .font-bold,
.text-green-400, .text-red-400, .text-yellow-400, .text-blue-400,
#res-offer, #res-max-buy, #res-mercury, #res-b2c, #res-b2b {
    font-family: 'JetBrains Mono', monospace !important;
    letter-spacing: -0.02em !important;
}

/* ── Calculator price highlight ──────────────────── */
#res-offer {
    font-size: 2.5rem !important;
    font-weight: 700 !important;
    line-height: 1 !important;
    color: #4ade80 !important;
    text-shadow: 0 0 24px rgba(74,222,128,0.28) !important;
}
#res-max-buy {
    font-size: 1.4rem !important;
    font-weight: 600 !important;
    color: #fbbf24 !important;
}

/* ── Calculator selection buttons ────────────────── */
button.gen-btn, button.carrier-btn, button.grade-btn {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    font-size: 1rem !important;
    letter-spacing: 0.05em !important;
    text-transform: uppercase !important;
}
button.gen-btn.bg-brand,
button.carrier-btn.bg-brand,
button.grade-btn.bg-brand {
    background: rgba(22,163,74,0.15) !important;
    border: 1px solid #22c55e !important;
    color: #4ade80 !important;
    box-shadow: 0 0 0 1px #22c55e, 0 0 14px rgba(34,197,94,0.18) !important;
}

/* ── Table improvements ──────────────────────────── */
table { border-collapse: separate; border-spacing: 0; }
thead th {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.12em !important;
    font-size: 0.65rem !important;
    text-transform: uppercase !important;
}
tbody td { font-size: 0.85rem !important; }

/* ── Status badges ───────────────────────────────── */
.rounded-full.text-xs,
.rounded.text-xs,
.px-2.py-0\.5.text-xs.rounded-full {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 700 !important;
    letter-spacing: 0.06em !important;
}

/* ── Form labels ─────────────────────────────────── */
label.text-xs, .text-xs.text-gray-400 {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 600 !important;
    letter-spacing: 0.08em !important;
}

/* ── Verdict title ───────────────────────────────── */
#verdict-title {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-size: 1.4rem !important;
    font-weight: 800 !important;
    letter-spacing: 0.08em !important;
    text-transform: uppercase !important;
}

/* ── KPI / stat numbers in dashboard ────────────── */
.text-2xl.font-bold,
.text-3xl.font-bold,
.text-4xl.font-bold {
    font-family: 'JetBrains Mono', monospace !important;
    letter-spacing: -0.03em !important;
}

/* ── Page titles ─────────────────────────────────── */
h1.text-xl, h1.text-2xl, h1.text-3xl {
    font-family: 'Barlow Condensed', sans-serif !important;
    font-weight: 800 !important;
    letter-spacing: 0.03em !important;
}

/* ── Mobile UX ───────────────────────────────────── */
/* Prevent iOS Safari from zooming in on input focus */
@media (max-width: 768px) {
    input[type="text"],
    input[type="number"],
    input[type="email"],
    input[type="password"],
    input[type="tel"],
    input[type="date"],
    input[type="search"],
    select,
    textarea {
        font-size: 16px !important;
    }
}

/* Minimum tap target for small buttons */
@media (max-width: 640px) {
    button, a[role="button"], [type="submit"], [type="button"] {
        min-height: 36px;
    }
    /* Period filter / pill buttons */
    .px-2\.5.py-1, .px-2.py-1 {
        padding-top: 0.375rem !important;
        padding-bottom: 0.375rem !important;
    }
    /* Card section spacing */
    .space-y-5 > * + * { margin-top: 1.25rem !important; }
}
