:root {
    --aca-green: #1f6b3a;
    --aca-green-dark: #154928;
    --aca-gold: #c4a35a;
    --aca-ink: #1d1d1d;
    --aca-paper: #f7f4ee;
}

body {
    background: var(--aca-paper);
    color: var(--aca-ink);
    min-height: 100vh;
}

.site-header,
.admin-header {
    background: var(--aca-green-dark);
    color: #fff;
    padding: 16px 0;
}

.site-header a,
.admin-header a {
    color: #fff;
    text-decoration: none;
}

.site-header a:hover,
.admin-header a:hover {
    color: var(--aca-gold);
}

.brand {
    display: flex;
    flex-direction: column;
    line-height: 1.2;
}

.brand-kicker {
    font-size: 12px;
    letter-spacing: 0.08em;
    text-transform: uppercase;
    color: #d9c48a;
}

.brand-title {
    font-size: 1.25rem;
    font-weight: 700;
}

.cart-link .badge {
    background: var(--aca-gold);
    color: #1d1d1d;
}

.site-main {
    min-height: calc(100vh - 160px);
}

.site-footer {
    padding: 24px 0;
    color: #666;
    font-size: 14px;
}

.product-card,
.panel {
    background: #fff;
    border: 0;
    border-radius: 12px;
    box-shadow: 0 8px 24px rgba(31, 47, 30, 0.06);
}

.product-card .card-body {
    display: flex;
    flex-direction: column;
}

.price {
    color: var(--aca-green);
    font-size: 1.25rem;
    font-weight: 700;
}

.btn-aca {
    background: var(--aca-green);
    border-color: var(--aca-green);
    color: #fff;
}

.btn-aca:hover {
    background: var(--aca-green-dark);
    border-color: var(--aca-green-dark);
    color: #fff;
}

.req {
    color: #b42318;
}

.status-pending { color: #9a6700; }
.status-completed { color: #1f6b3a; }
.status-failed, .status-cancelled { color: #b42318; }

.hero {
    padding: 12px 0 28px;
}

.hero h1 {
    font-weight: 700;
}

.bill-ref {
    font-family: ui-monospace, Consolas, monospace;
    background: #f3efe4;
    padding: 2px 8px;
    border-radius: 4px;
}
