.unit-card {
            background: white;
            border: 1px solid var(--border-color);
            border-radius: 20px;
            overflow: hidden;
            box-shadow: var(--shadow-sm);
            margin-bottom: 14px;
            transition: var(--transition-spring);
        }

        .unit-card.selected {
            border-color: var(--accent-blue);
            box-shadow: 0 0 0 2px rgba(37, 99, 235, 0.15), var(--shadow-sm);
        }

        .unit-card-header {
            padding: 16px 16px 12px 16px;
            display: flex;
            justify-content: space-between;
            align-items: flex-start;
            gap: 12px;
        }

        .unit-icon-wrap {
            width: 52px;
            height: 52px;
            border-radius: 14px;
            background: linear-gradient(135deg, #fdf2f2, #fee2e2);
            display: flex;
            align-items: center;
            justify-content: center;
            font-size: 22px;
            color: var(--primary-red);
            flex-shrink: 0;
        }

        .unit-info { flex: 1; }
        .unit-model { font-size: 15px; font-weight: 900; color: var(--text-dark); margin-bottom: 3px; }
        .unit-meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 5px; }
        .meta-chip { font-size: 10px; font-weight: 700; padding: 3px 8px; border-radius: 999px; background: #f1f5f9; color: var(--text-muted); border: 1px solid var(--border-color); }

        .unit-badge { font-size: 10px; font-weight: 800; padding: 5px 12px; border-radius: 999px; white-space: nowrap; }
        .badge-avail { background: #dcfce7; color: #166534; }
        .badge-limited { background: #fee2e2; color: #991b1b; }

        .unit-divider { height: 1px; background: #f1f5f9; margin: 0 16px; }

        .unit-actions {
            padding: 12px 16px;
            display: flex;
            gap: 10px;
        }

        .btn-select-unit {
            flex: 1; padding: 10px; border-radius: 12px; font-size: 12px; font-weight: 800; text-align: center; cursor: pointer; transition: 0.2s;
            background: #f8fafc; border: 1px solid var(--border-color); color: var(--text-muted);
        }
        .btn-select-unit.selected-btn {
            background: rgba(37, 99, 235, 0.1); border-color: rgba(37, 99, 235, 0.2); color: var(--primary-blue);
        }

        .selected-banner {
            position: sticky; top: 18px; z-index: 10;
            background: linear-gradient(135deg, var(--primary-blue), #1e40af);
            border-radius: 16px; padding: 14px 18px; display: flex; align-items: center; gap: 12px; margin-bottom: 20px;
            display: none; box-shadow: 0 10px 20px rgba(37,99,235,0.2);
        }
        .selected-banner.show { display: flex; }
        .selected-banner-icon { width: 40px; height: 40px; background: rgba(255, 255, 255, 0.2); border-radius: 12px; display: flex; align-items: center; justify-content: center; color: white; font-size: 17px; }
        .selected-banner-text { flex: 1; }
        .selected-banner-text p { font-size: 11px; font-weight: 600; color: rgba(255, 255, 255, 0.7); margin: 0 0 2px 0; }
        .selected-banner-text h4 { font-size: 14px; font-weight: 800; color: white; margin: 0; }

        /* Modal Input */
        .modal-overlay {
            position: fixed; top: 0; left: 0; width: 100%; height: 100%;
            background: rgba(15, 23, 42, 0.6); backdrop-filter: blur(4px); z-index: 11000;
            display: flex; align-items: flex-end; justify-content: center; opacity: 0; visibility: hidden; transition: all 0.3s ease;
        }
        .modal-overlay.show { opacity: 1; visibility: visible; }
        .modal-sheet {
            background: #ffffff; border-radius: 24px 24px 0 0; width: 100%; max-width: 414px; padding: 24px; box-sizing: border-box;
            transform: translateY(100%); transition: transform 0.3s ease; box-shadow: 0 -10px 25px -5px rgba(0, 0, 0, 0.1); max-height: 90vh; overflow-y: auto;
        }
        .modal-overlay.show .modal-sheet { transform: translateY(0); }

        .form-group { margin-bottom: 16px; display: flex; flex-direction: column; gap: 6px; }
        .form-group label { font-size: 11px; font-weight: 800; color: var(--text-dark); text-transform: uppercase; }
        .form-control { width: 100%; padding: 10px 14px; border: 1px solid #cbd5e1; border-radius: 10px; font-size: 13px; box-sizing: border-box; }
        .form-control:focus { border-color: var(--primary-blue); outline: none; box-shadow: 0 0 0 3px rgba(13, 45, 94, 0.1); }

        /* Riwayat List */
        .td-card { background: white; border-radius: 12px; padding: 16px; margin-bottom: 16px; box-shadow: 0 4px 12px rgba(0,0,0,0.05); border: 1px solid var(--border-color); }
        .td-header { display: flex; justify-content: space-between; align-items: center; margin-bottom: 12px; padding-bottom: 12px; border-bottom: 1px solid var(--border-color); }
        .td-row { display: flex; justify-content: space-between; margin-bottom: 8px; font-size: 12px; }
        .td-row span:first-child { color: var(--text-muted); }
        .td-row span:last-child { font-weight: 700; color: var(--text-dark); text-align: right; }

        .status-badge { display: inline-block; padding: 4px 10px; border-radius: 20px; font-size: 11px; font-weight: 700; }
        .status-pending { background: #fffbeb; color: #b45309; border: 1px solid #fef3c7; }
        .status-approved { background: #dcfce7; color: #15803d; border: 1px solid #bbf7d0; }
        .status-rejected { background: #fee2e2; color: #b91c1c; border: 1px solid #fecaca; }
