/* --- KODE CSS LENGKAP & FINAL UNTUK ADMIN & INVOICE --- */

/* --- ADMIN V4.2 STYLING (FINAL FIX) --- */
body.page-template-template-admin-order-php #primary { padding-top: 40px !important; padding-bottom: 40px !important; }
#orderForm { background-color: #f9f9f9; padding: 2em; border-radius: 8px; border: 1px solid #e0e0e0; }
.form-header { display: flex; justify-content: space-between; align-items: center; }
.form-row { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 1.5em; margin-bottom: 1.5em; }
.form-group { display: flex; flex-direction: column; }
.form-group label { margin-bottom: 8px; font-weight: bold; font-size: 0.9em; }
#orderForm input, #orderForm select, #orderForm textarea { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 4px; box-sizing: border-box; font-size: 1em; }
.item-grid { display: grid; grid-template-columns: 1fr 100px 150px; gap: 1em; margin-bottom: 1em; }
.invoice-item { background-color: #fff; padding: 1.5em; border-radius: 6px; border: 1px solid #ddd; margin-bottom: 1.5em; }
.form-actions { display: flex; justify-content: space-between; align-items: center; margin-top: 2em; }
.grand-total-display { font-size: 1.5em; font-weight: bold; }
hr.section-divider { margin: 3em 0; }
#addItemBtn, .remove-item-btn, .submit-order-btn { border: none; color: white; padding: 12px 20px; border-radius: 5px; cursor: pointer; font-size: 1em; outline: none; transition: transform 0.1s ease, box-shadow 0.2s ease; }
#addItemBtn { background-color: #f39c12; }
.remove-item-btn { background-color: #e74c3c; }
.submit-order-btn { background-color: #2c3e50; width: 100%; }
#addItemBtn:hover, .remove-item-btn:hover, .submit-order-btn:hover { box-shadow: 0 4px 10px rgba(0,0,0,0.1); }
#addItemBtn:active, .remove-item-btn:active, .submit-order-btn:active { transform: scale(0.98); box-shadow: none; }
.stats-container { display: grid; grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); gap: 20px; margin-bottom: 3em; }
.stat-card { background-color: #fff; padding: 20px; border-radius: 8px; border: 1px solid #e0e0e0; text-align: center; }
.stat-title { margin: 0 0 10px 0; font-size: 1em; color: #666; text-transform: uppercase; }
.stat-value { margin: 0; font-size: 2em; font-weight: bold; color: #2c3e50; }
.daftar-order-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 1em; }
.daftar-order-header h2 { margin: 0; }
#searchInput { padding: 8px 12px; border: 1px solid #ccc; border-radius: 4px; width: 250px; }
.table-wrapper { overflow-x: auto; }
#ordersTable { width: 100%; border-collapse: collapse; }
#ordersTable th, #ordersTable td { padding: 12px; border-bottom: 1px solid #e0e0e0; text-align: left; vertical-align: middle; }
#ordersTable th { background-color: #f9f9f9; }
.table-message { text-align: center; padding: 20px; }
.action-buttons { display: flex; gap: 8px; align-items: center; flex-wrap: wrap; }
.action-buttons button, .action-buttons a { padding: 6px 12px; border-radius: 4px; border: none; color: white !important; cursor: pointer; font-size: 0.9em; text-decoration: none; text-align: center; outline: none; transition: transform 0.15s ease, box-shadow 0.15s ease; }
.action-buttons button:hover, .action-buttons a:hover { transform: translateY(-2px); box-shadow: 0 4px 8px rgba(0,0,0,0.1); }
.action-buttons button:active, .action-buttons a:active { transform: translateY(0px); box-shadow: none; }
.btn-edit { background-color: #f39c12; }
.btn-delete { background-color: #e74c3c; }
.btn-invoice { background-color: #2ecc71; }
.btn-copy { background-color: #3498db; }
.btn-toggle-on { background-color: #27ae60; }
.btn-toggle-off { background-color: #7f8c8d; }
.status-badge { padding: 4px 10px; border-radius: 12px; font-size: 0.85em; font-weight: bold; color: white; text-transform: uppercase; }
.status-lunas { background-color: #27ae60; }
.status-belum-lunas { background-color: #e67e22; }
.pagination-container { display: flex; justify-content: flex-end; align-items: center; gap: 15px; margin-top: 20px; }
.pagination-container button { padding: 8px 16px; border: 1px solid #ccc; background-color: #fff; border-radius: 4px; cursor: pointer; }
.pagination-container button:disabled { cursor: not-allowed; opacity: 0.5; }

/* --- INVOICE V4.3 STYLING (FINAL) --- */
body.page-template-template-invoice-php .invoice-wrapper { background-color: #f4f6f8; padding: 40px 20px; font-family: 'Inter', sans-serif; font-size: 14px; color: #333; }
.invoice-container { max-width: 800px; margin: 0 auto; background-color: #ffffff; padding: 40px; border-radius: 8px; box-shadow: 0 4px 15px rgba(0,0,0,0.05); }
.invoice-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 40px; }
.invoice-logo img { max-height: 45px; }
.invoice-details { text-align: right; }
.invoice-details h1 { margin: 0; color: #1a202c; font-size: 24px; }
.invoice-details p { margin: 5px 0 0; color: #718096; font-size: 14px; }
.client-info { display: flex; justify-content: space-between; align-items: flex-start; border-top: 1px solid #e2e8f0; border-bottom: 1px solid #e2e8f0; padding: 20px; margin-bottom: 40px; }
.invoice-qrcode { line-height: 0; align-self: center; }
.items-table th { padding: 12px 10px; border-bottom: 2px solid #1a202c; color: #4a5568; font-size: 12px; text-transform: uppercase; text-align: left; }
.items-table .text-center { text-align: center; }
.items-table .text-right { text-align: right; }
.item-row td { padding: 15px 10px; border-bottom: 1px solid #e2e8f0; vertical-align: middle; }
.item-name { margin: 0; font-weight: 500; color: #1a202c; }
.item-description { margin: 4px 0 0; font-size: 13px; color: #718096; }
.summary-section { display: flex; justify-content: space-between; align-items: flex-start; padding: 0 10px; }
.payment-details { font-size: 14px; color: #4a5568; }
.payment-details strong { display: block; margin-bottom: 8px; }
.payment-details p { margin: 0; line-height: 1.8; }
.totals-summary { width: 45%; max-width: 280px; }
.total-row { display: flex; justify-content: space-between; padding: 8px 0; color: #4a5568; font-size: 14px; }
.total-row.grand-total { font-weight: bold; font-size: 16px; color: #1a202c; border-top: 2px solid #e2e8f0; margin-top: 0; padding-top: 15px; }
/* PERBAIKAN FINAL UNTUK STATUS PEMBAYARAN: HANYA TEKS BERWARNA */
.payment-status-badge { 
    background-color: transparent !important; /* Pastikan tidak ada background */
    text-align: center; 
    font-weight: bold; 
    text-transform: uppercase; 
    padding: 20px 0 10px 0; 
    font-size: 1.2em; 
}
.payment-status-badge.status-lunas { color: #27ae60 !important; } /* Warna Hijau */
.payment-status-badge.status-belum-lunas { color: #e67e22 !important; } /* Warna Oranye */

.invoice-footer { text-align: center; margin-top: 50px; padding-top: 20px; border-top: 1px solid #e2e8f0; color: #718096; }
.invoice-footer p { margin: 5px 0; line-height: 1.7; }
.footer-thankyou { font-style: italic; margin-bottom: 15px; }
.footer-tagline { font-size: 15px; color: #333; margin-bottom: 15px; }
.footer-parent, .footer-contact, .footer-links { font-size: 12px; }
.footer-links a { color: #555; text-decoration: none; }
.footer-links a:hover { text-decoration: underline; }
.print-pdf-button { display: block; width: 100%; max-width: 200px; margin: 30px auto 0 auto; background-color: #2c3e50; color: white; padding: 12px 20px; border: none; border-radius: 5px; cursor: pointer; font-size: 14px; text-align: center; }
@media print { .print-pdf-button { display: none !important; } .page-template-template-invoice-php .invoice-wrapper { padding: 0; background-color: #fff; } .page-template-template-invoice-php .invoice-container { box-shadow: none; padding: 0; max-width: 100%; } }