:root {
    --btm-orange: #f97316;
    --btm-orange-dark: #c2410c;
    --btm-ink: #1f2937;
    --btm-muted: #6b7280;
    --btm-surface: #fff7ed;
}

body {
    background: #f8fafc;
    color: var(--btm-ink);
}

.btm-sidebar {
    background: linear-gradient(180deg, #9a3412 0%, #c2410c 52%, #ea580c 100%);
    min-height: 100vh;
}

.btm-brand {
    color: #fff;
    font-size: 1.15rem;
    font-weight: 800;
    letter-spacing: .02em;
}

.btm-nav-link {
    border-radius: .7rem;
    color: rgba(255, 255, 255, .82);
    display: block;
    margin-bottom: .35rem;
    padding: .72rem .9rem;
    text-decoration: none;
}

.btm-nav-link:hover,
.btm-nav-link.active {
    background: rgba(255, 255, 255, .16);
    color: #fff;
}

.btm-card {
    border: 0;
    border-radius: 1rem;
    box-shadow: 0 8px 28px rgba(15, 23, 42, .06);
}

.btm-stat {
    border-left: 4px solid var(--btm-orange);
}

.btn-btm {
    background: var(--btm-orange);
    border-color: var(--btm-orange);
    color: #fff;
}

.btn-btm:hover,
.btn-btm:focus {
    background: var(--btm-orange-dark);
    border-color: var(--btm-orange-dark);
    color: #fff;
}

.text-btm {
    color: var(--btm-orange-dark);
}

.badge-soft-success {
    background: #dcfce7;
    color: #166534;
}

.badge-soft-danger {
    background: #fee2e2;
    color: #991b1b;
}

.badge-soft-warning {
    background: #ffedd5;
    color: #9a3412;
}

.table > :not(caption) > * > * {
    padding: .85rem .75rem;
    vertical-align: middle;
}

.form-control:focus,
.form-select:focus {
    border-color: #fb923c;
    box-shadow: 0 0 0 .25rem rgba(249, 115, 22, .15);
}

@media (min-width: 992px) {
    .btm-main {
        min-height: 100vh;
    }
}
