body {
    background-color: #f4f6f9;
    font-family: 'Segoe UI', Roboto, Arial, sans-serif;
}

.sidebar {
    width: 230px;
    min-height: calc(100vh - 56px);
}

@media (min-width: 768px) {
    .sidebar { position: sticky; top: 56px; height: calc(100vh - 56px); }
}

.sidebar-link {
    display: block;
    padding: 8px 12px;
    border-radius: 6px;
    color: #333;
    text-decoration: none;
    margin-bottom: 2px;
}
.sidebar-link:hover { background: #e9ecef; }
.sidebar-link.active { background: #0d6efd; color: #fff; }

.card { border: none; box-shadow: 0 1px 3px rgba(0,0,0,.08); border-radius: 10px; }

.stat-card { border-radius: 12px; color: #fff; padding: 20px; }
.stat-card h3 { font-size: 1.8rem; margin: 0; }
.stat-card p { margin: 0; opacity: .9; }

#productTable input.qty-input {
    max-width: 90px;
}

@media (max-width: 576px) {
    .table-responsive-card thead { display: none; }
    .table-responsive-card tr {
        display: block;
        margin-bottom: 10px;
        border: 1px solid #dee2e6;
        border-radius: 8px;
        padding: 8px;
    }
    .table-responsive-card td {
        display: flex;
        justify-content: space-between;
        border: none !important;
        padding: 4px 6px;
    }
    .table-responsive-card td::before {
        content: attr(data-label);
        font-weight: 600;
        color: #666;
        margin-right: 10px;
    }
}

.print-only { display: none; }
@media print {
    .no-print { display: none !important; }
    .print-only { display: block !important; }
}
