/**
 * Atelier Nusa — readable type scale
 * Banyak UI pakai text-xs / 10–11px → dinaikkan agar nyaman dibaca.
 * Load terakhir (setelah contrast + liquid). Tanpa Vite rebuild.
 */

html {
    font-size: 17px; /* default browser 16px → sedikit lebih besar */
}

@media (min-width: 1280px) {
    html {
        font-size: 18px;
    }
}

body.studio-bg,
.studio-bg {
    font-size: 1rem;
    line-height: 1.55;
    -webkit-font-smoothing: antialiased;
}

/* ---------- Bump Tailwind tiny utilities ---------- */
.studio-bg .text-\[10px\],
.studio-bg .text-\[11px\] {
    font-size: 0.8125rem !important; /* ~13–14px */
    line-height: 1.4 !important;
    letter-spacing: 0.02em;
}

.studio-bg .text-xs {
    font-size: 0.9rem !important; /* ~15–16px */
    line-height: 1.45 !important;
}

.studio-bg .text-sm {
    font-size: 1rem !important; /* ~17–18px */
    line-height: 1.5 !important;
}

.studio-bg .text-base {
    font-size: 1.0625rem !important;
    line-height: 1.55 !important;
}

.studio-bg .text-lg {
    font-size: 1.2rem !important;
}

.studio-bg .text-xl {
    font-size: 1.35rem !important;
}

.studio-bg .text-2xl {
    font-size: 1.55rem !important;
}

.studio-bg .text-3xl {
    font-size: 1.85rem !important;
}

.studio-bg .text-4xl {
    font-size: 2.15rem !important;
}

/* ---------- Components ---------- */
.studio-bg .form-label,
.studio-bg label.form-label {
    font-size: 0.8125rem !important;
    letter-spacing: 0.06em !important;
    margin-bottom: 0.4rem !important;
}

.studio-bg .form-input,
.studio-bg input:not([type="checkbox"]):not([type="radio"]):not([type="range"]):not([type="file"]),
.studio-bg textarea,
.studio-bg select {
    font-size: 1rem !important;
    line-height: 1.45 !important;
    padding: 0.7rem 0.95rem !important;
    min-height: 2.65rem;
}

.studio-bg textarea {
    min-height: 5rem;
}

.studio-bg .btn-primary,
.studio-bg .btn-secondary {
    font-size: 0.8125rem !important;
    letter-spacing: 0.06em !important;
    padding: 0.7rem 1.1rem !important;
    line-height: 1.25 !important;
}

.studio-bg .btn-ghost,
.studio-bg .btn-danger {
    font-size: 0.875rem !important;
    padding: 0.45rem 0.75rem !important;
}

.studio-bg .nav-link {
    font-size: 0.975rem !important;
    padding: 0.7rem 0.85rem !important;
    line-height: 1.35 !important;
}

.studio-bg .kpi-label {
    font-size: 0.8rem !important;
    letter-spacing: 0.1em !important;
}

.studio-bg .kpi-value {
    font-size: 1.65rem !important;
    line-height: 1.15 !important;
}

@media (min-width: 640px) {
    .studio-bg .kpi-value {
        font-size: 1.9rem !important;
    }
}

.studio-bg .table-dark {
    font-size: 0.975rem !important;
}

.studio-bg .table-dark th {
    font-size: 0.8rem !important;
    letter-spacing: 0.05em !important;
    padding: 0.85rem 1rem !important;
}

.studio-bg .table-dark td {
    font-size: 0.975rem !important;
    padding: 0.85rem 1rem !important;
    line-height: 1.45 !important;
}

.studio-bg .chip-yes,
.studio-bg .chip-no {
    font-size: 0.875rem !important;
    min-width: 3.25rem !important;
    padding: 0.35rem 0.55rem !important;
}

.studio-bg .flash-ok,
.studio-bg .flash-err {
    font-size: 0.975rem !important;
    line-height: 1.5 !important;
    padding: 0.9rem 1.1rem !important;
}

/* Header page title */
.studio-bg header .text-base {
    font-size: 1.125rem !important;
}

.studio-bg header .text-xs {
    font-size: 0.875rem !important;
}

/* Sidebar section labels */
.studio-bg aside .text-\[10px\] {
    font-size: 0.75rem !important;
    letter-spacing: 0.12em !important;
}

/* Guide / long prose */
.studio-bg main p,
.studio-bg main li,
.studio-bg main dd {
    line-height: 1.6;
}

/* Motion toggle label di header */
.studio-bg [data-motion-label] {
    font-size: 0.8rem !important;
    text-transform: none !important;
    letter-spacing: 0.01em !important;
}
