.credit-purchase-modal .modal-dialog{max-width:800px}.credit-purchase-modal .modal-content{border-radius:1rem;border:none;box-shadow:0 10px 40px #00000026}.credit-purchase-modal .modal-header{border-bottom:1px solid #e9ecef;padding:1.5rem 1.5rem 1rem}.credit-purchase-modal .modal-body{padding:1.5rem}.credit-purchase-modal .modal-footer{border-top:1px solid #e9ecef;padding:1rem 1.5rem 1.5rem}.package-selection .package-card{border:2px solid #e9ecef;border-radius:.75rem;transition:all .2s ease;cursor:pointer;height:100%}.package-selection .package-card:hover{border-color:#0d6efd;transform:translateY(-2px);box-shadow:0 4px 12px #0d6efd26}.package-selection .package-card.selected{border-color:#0d6efd;background-color:#f8f9ff;box-shadow:0 4px 12px #0d6efd33}.package-selection .package-card.selected:before{content:"✓";position:absolute;top:.5rem;right:.5rem;background-color:#0d6efd;color:#fff;border-radius:50%;width:1.5rem;height:1.5rem;display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700}.package-card{position:relative}.package-name h5{margin-bottom:.5rem;color:#212529;font-weight:600}.package-credits{margin:1rem 0}.package-credits .credits-amount{font-size:2rem;font-weight:700;color:#0d6efd;line-height:1}.package-price{margin:1rem 0}.package-price .price-amount{font-size:1.5rem;font-weight:600;color:#212529;line-height:1}.package-bonus{margin-top:.75rem}.payment-step .payment-summary{border-radius:.5rem}.payment-step .payment-summary .card{border:none}.card-element-container{margin-bottom:1rem}.card-element-wrapper{padding:.75rem;border:1px solid #ced4da;border-radius:.375rem;background-color:#fff;transition:border-color .15s ease-in-out,box-shadow .15s ease-in-out}.card-element-wrapper:focus-within{border-color:#86b7fe;box-shadow:0 0 0 .25rem #0d6efd40}.card-element-wrapper .StripeElement{width:100%}.card-element-wrapper .StripeElement--focus{outline:none}.payment-security-info{text-align:center}.success-step .success-icon{font-size:3rem}.success-step .success-checkmark{font-size:4rem;animation:success-bounce .6s ease-out}.success-step .purchase-details{margin-top:1.5rem}.success-step .purchase-details .card{border:none}.success-step .purchase-details .row{margin-bottom:.5rem}.success-step .purchase-details .row:last-child{margin-bottom:0;font-weight:600;border-top:1px solid #dee2e6;padding-top:.5rem;margin-top:.5rem}@keyframes success-bounce{0%{transform:scale(0)}50%{transform:scale(1.2)}to{transform:scale(1)}}.package-selection .spinner-border{width:2rem;height:2rem}@media (max-width: 768px){.credit-purchase-modal .modal-dialog{margin:1rem;max-width:calc(100% - 2rem)}.credit-purchase-modal .modal-body{padding:1rem}.credit-purchase-modal .modal-header,.credit-purchase-modal .modal-footer{padding-left:1rem;padding-right:1rem}.package-credits .credits-amount{font-size:1.5rem}.package-price .price-amount{font-size:1.25rem}.success-step .success-checkmark{font-size:3rem}}@media (max-width: 576px){.package-selection .row.g-3{--bs-gutter-x: .5rem}.package-card .card-body{padding:1rem .75rem}.package-credits .credits-amount{font-size:1.25rem}.package-price .price-amount{font-size:1.125rem}}@media (prefers-contrast: high){.package-card,.package-card.selected{border-width:3px}.card-element-wrapper{border-width:2px}}@media (prefers-reduced-motion: reduce){.package-card{transition:none}.package-card:hover{transform:none}.success-step .success-checkmark{animation:none}}@media (prefers-color-scheme: dark){.credit-purchase-modal .modal-content{background-color:#212529;color:#fff}.package-card{background-color:#343a40;border-color:#495057;color:#fff}.package-card.selected{background-color:#1e3a5f;border-color:#0d6efd}.card-element-wrapper{background-color:#343a40;border-color:#495057;color:#fff}}.package-card:focus{outline:2px solid #0d6efd;outline-offset:2px}.card-element-wrapper:focus-within{outline:2px solid #0d6efd;outline-offset:2px}.alert.alert-danger{border-radius:.5rem;border:none;background-color:#f8d7da;color:#721c24}.credit-purchase-modal .btn{border-radius:.5rem;font-weight:500;padding:.75rem 1.5rem}.credit-purchase-modal .btn-primary{background-color:#0d6efd;border-color:#0d6efd}.credit-purchase-modal .btn-primary:hover{background-color:#0b5ed7;border-color:#0a58ca}.credit-purchase-modal .btn-secondary{background-color:#6c757d;border-color:#6c757d}.badge.bg-success{background-color:#198754!important}.badge.bg-warning{background-color:#ffc107!important}.card.bg-light{background-color:#f8f9fa!important;border:1px solid #e9ecef}.text-muted{color:#6c757d!important}.fw-bold{font-weight:700!important}.fw-semibold{font-weight:600!important}.credit-balance{display:inline-flex;align-items:center;gap:.5rem;position:relative}.credit-balance.loading{opacity:.7}.credit-balance.error{padding:.25rem .5rem;margin:0;font-size:.75rem}.credit-badge{display:flex;align-items:center;gap:.25rem;padding:.375rem .75rem;font-size:.875rem;font-weight:600;transition:all .2s ease;-webkit-user-select:none;user-select:none}.credit-badge:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.credit-badge:active{transform:translateY(0)}.balance-icon{font-size:1rem;line-height:1}.balance-amount{font-family:openSansSemiBold,monospace;letter-spacing:.025em}.balance-details{display:flex;flex-direction:column;align-items:flex-end;margin-left:.25rem}.reserved-amount{font-size:.7rem;opacity:.8;font-weight:400}.credit-balance.small .credit-badge{padding:.25rem .5rem;font-size:.75rem}.credit-balance.small .balance-icon{font-size:.875rem}.credit-balance.large .credit-badge{padding:.5rem 1rem;font-size:1rem}.credit-balance.large .balance-icon{font-size:1.25rem}.credit-balance.critical .credit-badge{animation:pulse-critical 2s infinite}.credit-balance.low .credit-badge{animation:pulse-warning 3s infinite}.balance-warning{position:absolute;top:100%;left:50%;transform:translate(-50%);margin-top:.25rem;padding:.125rem .375rem;border-radius:.25rem;font-size:.625rem;font-weight:500;white-space:nowrap;z-index:10}.balance-warning.critical{background-color:#dc3545;color:#fff}.balance-warning.low{background-color:#ffc107;color:#212529}@keyframes pulse-critical{0%,to{opacity:1}50%{opacity:.7}}@keyframes pulse-warning{0%,to{opacity:1}50%{opacity:.85}}@media (max-width: 768px){.credit-balance{font-size:.875rem}.credit-badge{padding:.25rem .5rem;font-size:.75rem}.balance-icon{font-size:.875rem}.balance-details{display:none}.balance-warning{font-size:.5rem;padding:.0625rem .25rem}}@media (max-width: 480px){.credit-balance{font-size:.75rem}.credit-badge{padding:.1875rem .375rem;font-size:.6875rem}.balance-icon{font-size:.75rem}}@media (prefers-contrast: high){.credit-badge{border:2px solid currentColor}.balance-warning{border:1px solid currentColor}}@media (prefers-reduced-motion: reduce){.credit-badge{transition:none}.credit-badge:hover{transform:none}.credit-balance.critical .credit-badge,.credit-balance.low .credit-badge{animation:none}}@media (prefers-color-scheme: dark){.credit-balance.error{background-color:#2d1b1b;border-color:#5c2e2e;color:#f8d7da}}.credit-badge:focus{outline:2px solid #0d6efd;outline-offset:2px}.credit-balance.loading .spinner-border{width:1rem;height:1rem;border-width:.125rem}.tooltip .tooltip-inner{text-align:left;max-width:200px}.navbar .credit-balance{margin-left:1rem}
