.charge-view-modal{background:var(--color-bg-primary);border-radius:var(--radius-lg);width:600px;max-width:90vw;box-shadow:var(--shadow-xl);flex-direction:column;max-height:85vh;animation:.2s ease-out modalSlideIn;display:flex;position:relative}.charge-view-content{padding:var(--spacing-lg);flex:1;overflow-y:auto}.charge-view-info{margin-bottom:var(--spacing-md);padding-bottom:var(--spacing-md);border-bottom:1px solid var(--color-border);color:var(--color-text-secondary);font-size:var(--font-sm);justify-content:space-between;display:flex}.charge-view-table{margin-bottom:var(--spacing-lg);border:1px solid var(--color-border);border-radius:var(--radius-md);overflow:hidden}.charge-view-header{background:var(--color-bg-secondary);padding:var(--spacing-sm)var(--spacing-md);font-weight:var(--font-medium);font-size:var(--font-sm);color:var(--color-text-secondary);border-bottom:1px solid var(--color-border);display:flex}.charge-view-row{padding:var(--spacing-sm)var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:var(--font-sm);align-items:center;display:flex}.charge-view-row:last-child{border-bottom:none}.col-name{font-weight:var(--font-medium);flex:1}.col-qty{text-align:center;width:60px}.col-price{text-align:right;width:80px;color:var(--color-text-secondary)}.col-subtotal{text-align:right;width:90px;font-weight:var(--font-medium)}.charge-view-total{padding:var(--spacing-md);text-align:right;background:var(--color-bg-secondary);border-top:1px solid var(--color-border);font-size:var(--font-base)}.total-amount{font-size:var(--font-lg);font-weight:var(--font-bold);color:var(--color-text-primary);margin-left:var(--spacing-sm)}.charge-view-payment{padding:var(--spacing-md);background:var(--color-bg-tertiary);border-radius:var(--radius-md);justify-content:space-between;align-items:center;display:flex}.payment-info{gap:var(--spacing-lg);font-size:var(--font-sm);align-items:baseline;display:flex}.paid{color:var(--color-success);font-weight:var(--font-medium)}.remaining{color:var(--color-error);font-weight:var(--font-bold)}.charge-view-empty,.charge-view-loading{padding:var(--spacing-xl);text-align:center;color:var(--color-text-tertiary)}@keyframes modalSlideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}