:root {
    --app-ink: #1b130d;
    --app-muted: #7c6f66;
    --app-primary: #e2511f;
    --app-primary-dark: #c23f12;
    --app-soft: #fff5ec;
    --app-bg: #fbfaf9;
    --app-border: #efe4da;
    --app-success: #168447;
    --app-success-soft: #eaf8ef;
}

body {
    background: var(--app-bg);
    color: var(--app-ink);
    font-family: "Plus Jakarta Sans", "Segoe UI", sans-serif;
}

.app-navbar {
    min-height: 66px;
    background: rgba(255, 255, 255, .96);
    border-bottom: 1px solid var(--app-border);
    box-shadow: 0 8px 30px rgba(52, 29, 16, .05);
    backdrop-filter: blur(12px);
}

.app-navbar-inner {
    max-width: 1480px;
    margin: 0 auto;
    padding: 7px 22px;
}

.app-brand {
    display: inline-flex;
    align-items: center;
    gap: 10px;
    color: var(--app-ink);
    line-height: 1.05;
}

.app-brand:hover,
.app-brand:focus {
    color: var(--app-primary-dark);
}

.app-brand-logo {
    width: 43px;
    height: 43px;
    object-fit: contain;
}

.app-brand strong {
    display: block;
    font-size: 1rem;
    font-weight: 800;
    letter-spacing: -.02em;
}

.app-brand small {
    display: block;
    margin-top: 4px;
    color: var(--app-muted);
    font-size: .72rem;
    font-weight: 600;
}

.app-menu-button {
    display: inline-flex;
    align-items: center;
    gap: 9px;
    min-height: 44px;
    padding: 9px 16px;
    border: 1px solid var(--app-border);
    border-radius: 12px;
    background: #fff;
    color: var(--app-ink);
    font-weight: 800;
}

.app-menu-button:hover,
.app-menu-button:focus,
.app-menu-button.show {
    border-color: #f2b89f;
    background: var(--app-soft);
    color: var(--app-primary-dark);
}

.app-menu-dropdown {
    width: min(310px, calc(100vw - 24px));
    padding: 9px;
    border: 1px solid var(--app-border);
    border-radius: 16px;
    box-shadow: 0 22px 55px rgba(55, 28, 13, .16);
}

.app-menu-dropdown .dropdown-item {
    display: grid;
    grid-template-columns: 28px 1fr;
    align-items: center;
    min-height: 46px;
    padding: 9px 12px;
    border-radius: 10px;
    color: var(--app-ink);
    font-weight: 700;
}

.app-menu-dropdown .dropdown-item i {
    color: var(--app-primary);
    text-align: center;
}

.app-menu-dropdown .dropdown-item:hover,
.app-menu-dropdown .dropdown-item:focus,
.app-menu-dropdown .dropdown-item.active {
    background: var(--app-soft);
    color: var(--app-primary-dark);
}

.app-menu-dropdown .dropdown-item.text-danger i {
    color: inherit;
}

.app-container {
    max-width: 1440px;
    margin: 0 auto;
    padding: 24px;
}

.app-title {
    color: var(--app-ink);
    font-size: clamp(1.6rem, 3vw, 2.3rem);
    font-weight: 800;
    letter-spacing: -.035em;
}

.app-card {
    background: #fff;
    border: 1px solid var(--app-border);
    border-radius: 18px;
    box-shadow: 0 12px 36px rgba(52, 29, 16, .05);
    padding: 20px;
}

.btn-primary {
    background: var(--app-primary);
    border-color: var(--app-primary);
}

.btn-primary:hover,
.btn-primary:focus {
    background: var(--app-primary-dark);
    border-color: var(--app-primary-dark);
}

.table thead th {
    background: var(--app-ink);
    color: #fff;
    white-space: nowrap;
}

@media (max-width: 767.98px) {
    .app-navbar-inner {
        padding-inline: 12px;
    }
    .app-brand small {
        display: none;
    }
    .app-container {
        padding: 14px;
    }
}
