@import url('https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.0.0/css/all.min.css');
:root { --primary: #0056b3; --bg: #f4f6f9; }
body { font-family: sans-serif; background: var(--bg); margin: 0; display: flex; height: 100vh; }
.sidebar { width: 250px; background: var(--primary); color: white; display: flex; flex-direction: column; }
.sidebar h2 { text-align: center; padding: 20px; margin: 0; font-size: 1.2rem; }
.sidebar a { padding: 15px 20px; color: white; text-decoration: none; display: block; border-bottom: 1px solid rgba(255,255,255,0.1); }
.sidebar a:hover, .sidebar a.active { background: rgba(0,0,0,0.2); border-left: 5px solid #ffcc00; }
.content { flex: 1; padding: 20px; overflow-y: auto; }
.card { background: white; padding: 20px; border-radius: 8px; box-shadow: 0 2px 5px rgba(0,0,0,0.1); margin-bottom: 20px; }
table { width: 100%; border-collapse: collapse; margin-top: 10px; }
th, td { padding: 12px; border-bottom: 1px solid #ddd; text-align: left; }
th { background: #f8f9fa; }
.btn { padding: 8px 15px; text-decoration: none; color: white; border-radius: 4px; border: none; cursor: pointer; display: inline-block; }
.btn-primary { background: var(--primary); }
.btn-danger { background: #dc3545; }
.btn-success { background: #28a745; }
.form-group { margin-bottom: 15px; }
.form-control { width: 100%; padding: 10px; border: 1px solid #ddd; border-radius: 4px; box-sizing: border-box; }

/* Print Kwitansi 1/3 F4 */
@media print {
    body * { visibility: hidden; }
    #print-area, #print-area * { visibility: visible; }
    #print-area { position: absolute; left: 0; top: 0; width: 7cm; height: 21cm; border: none; }
    @page { size: 21cm 7cm; margin: 0; }
}
.kwitansi-box { padding: 10px; border: 1px solid #000; font-family: 'Times New Roman', serif; height: 100%; display: flex; flex-direction: column; justify-content: space-between; }