.checkout-page{margin:0 auto;max-width:1200px}.checkout-page .error-message{display:none}.checkout-page .checkout-header{margin-bottom:2rem}.checkout-page .checkout-header .checkout-title{align-items:center;color:#2d3748;display:flex;flex-wrap:nowrap;font-size:2.5rem;font-weight:700;gap:.5rem;justify-content:center;margin-bottom:.5rem}.checkout-page .checkout-header .checkout-title .checkout-logo{flex-shrink:1;height:2.5rem;max-width:calc(100vw - 6rem);width:auto}.checkout-page .checkout-header .checkout-title .text-primary{color:#667eea!important;flex-shrink:0;font-size:.85em;font-weight:800;line-height:1;position:relative;top:-.4em;vertical-align:super}@supports (background-clip:text) or (-webkit-background-clip:text){.checkout-page .checkout-header .checkout-title .text-primary{-webkit-text-fill-color:transparent;background:linear-gradient(45deg,red,#ccbc27);background-clip:text;-webkit-background-clip:text}}@media (max-width:768px){.checkout-page .checkout-header .checkout-title{font-size:2rem;gap:.25rem}.checkout-page .checkout-header .checkout-title .checkout-logo{height:2rem;max-width:calc(100vw - 5rem)}}@media (max-width:480px){.checkout-page .checkout-header .checkout-title{font-size:1.75rem}.checkout-page .checkout-header .checkout-title .checkout-logo{height:1.75rem;max-width:calc(100vw - 4rem)}}.checkout-page .checkout-header .checkout-subtitle{color:#4a5568;font-size:1.125rem;margin:0}.checkout-page .checkout-section{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 2px 8px rgba(0,0,0,.04);margin-bottom:2rem;padding:1.5rem}.checkout-page .checkout-section .section-title{border-bottom:2px solid #f7fafc;color:#2d3748;font-size:1.25rem;font-weight:600;margin-bottom:1rem;padding-bottom:.75rem}.checkout-page .user-logged-in{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;display:flex;padding:1.5rem}.checkout-page .user-logged-in .user-avatar{margin-right:1rem}.checkout-page .user-logged-in .user-avatar i{color:#6c757d;font-size:3rem}.checkout-page .user-logged-in .user-details{flex:1}.checkout-page .user-logged-in .user-details .user-status{color:#2d3748;font-weight:600;margin-bottom:.5rem}.checkout-page .user-logged-in .user-details .user-email{color:#4a5568;font-size:1rem;margin-bottom:.75rem}.checkout-page .auth-interface .auth-toggle .toggle-buttons{background:#f8f9fa;border-radius:8px;display:flex;padding:.25rem}.checkout-page .auth-interface .auth-toggle .toggle-buttons .btn-toggle{background:transparent;border:none;border-radius:6px;color:#4a5568;cursor:pointer;flex:1;font-size:.875rem;font-weight:600;padding:.75rem 1rem;transition:all .3s ease}.checkout-page .auth-interface .auth-toggle .toggle-buttons .btn-toggle.active{background:#fff;box-shadow:0 2px 4px rgba(0,0,0,.1);color:#dc3545}.checkout-page .auth-interface .auth-toggle .toggle-buttons .btn-toggle:hover:not(.active){background:hsla(0,0%,100%,.5)}.checkout-page .auth-interface .auth-form .auth-description{color:#4a5568;line-height:1.5;margin-bottom:1.5rem}.checkout-page .auth-interface .auth-form .auth-description a{color:#dc3545;text-decoration:none}.checkout-page .auth-interface .auth-form .auth-description a:hover{text-decoration:underline}.checkout-page .auth-interface .auth-form .password-input{position:relative}.checkout-page .auth-interface .auth-form .password-input .password-toggle{background:none;border:none;color:#6c757d;cursor:pointer;padding:.25rem;position:absolute;right:.75rem;top:50%;transform:translateY(-50%)}.checkout-page .auth-interface .auth-form .password-input .password-toggle:hover{color:#495057}.checkout-page .auth-interface .auth-form .login-error{background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:.375rem;color:#721c24;font-size:.875rem;margin-top:1rem;padding:.75rem 1rem}.checkout-page .auth-interface .auth-form .auth-actions{align-items:center;display:flex;justify-content:space-between;margin-top:1.5rem}.checkout-page .auth-interface .auth-form .auth-actions .forgot-password{color:#dc3545;font-size:.875rem;text-decoration:underline}.checkout-page .auth-interface .auth-form .auth-actions .forgot-password:hover{color:#c82333}.checkout-page .auth-interface .auth-form .auth-actions .btn{background:#dc3545;border:none;font-weight:600;padding:.75rem 2rem}.checkout-page .auth-interface .auth-form .auth-actions .btn:hover{background:#c82333}.checkout-page .auth-interface .auth-form .auth-separator{margin:2rem 0;position:relative;text-align:center}.checkout-page .auth-interface .auth-form .auth-separator:before{background:#e2e8f0;content:"";height:1px;left:0;position:absolute;right:0;top:50%}.checkout-page .auth-interface .auth-form .auth-separator span{background:#fff;color:#6c757d;font-size:.875rem;padding:0 1rem}.checkout-page .auth-interface .auth-form .social-login{display:flex;gap:1rem;margin-bottom:1.5rem}@media (max-width:768px){.checkout-page .auth-interface .auth-form .social-login{flex-direction:column}}.checkout-page .auth-interface .auth-form .social-login .btn{align-items:center;background:#fff;border:1px solid #dee2e6;color:#495057;display:flex;flex:1;font-size:.875rem;font-weight:500;gap:.5rem;justify-content:center;padding:.75rem 1rem}.checkout-page .auth-interface .auth-form .social-login .btn.btn-google:hover{background:#f8f9fa;border-color:#dc3545}.checkout-page .auth-interface .auth-form .social-login .btn.btn-facebook:hover{background:#f8f9fa;border-color:#1877f2}.checkout-page .auth-interface .auth-form .social-login .btn.btn-facebook i{color:#1877f2}.checkout-page .auth-interface .auth-form .terms-notice{text-align:center}.checkout-page .auth-interface .auth-form .terms-notice small{color:#6c757d;line-height:1.4}.checkout-page .auth-interface .auth-form .terms-notice small a{color:#dc3545;text-decoration:underline}.checkout-page .auth-interface .auth-form .terms-notice small a:hover{color:#c82333}.checkout-page .subscription-info .subscription-card{background:linear-gradient(45deg,red,#ccbc27);border-radius:12px;box-shadow:0 4px 12px rgba(255,0,0,.15);padding:2px}.checkout-page .subscription-info .subscription-card .subscription-content{background:#fff;border-radius:10px;padding:1.5rem}.checkout-page .subscription-info .subscription-card .subscription-header{margin-bottom:1rem;text-align:center}.checkout-page .subscription-info .subscription-card .subscription-header h4{color:#2d3748;font-weight:600;margin-bottom:.75rem}.checkout-page .subscription-info .subscription-card .subscription-header .subscription-price{align-items:baseline;display:flex;justify-content:center;margin-bottom:.5rem}.checkout-page .subscription-info .subscription-card .subscription-header .subscription-price .currency{color:#667eea;font-size:1.125rem;font-weight:600;margin-right:.25rem}.checkout-page .subscription-info .subscription-card .subscription-header .subscription-price .amount{color:#2d3748;font-size:2rem;font-weight:700}.checkout-page .subscription-info .subscription-card .subscription-header .subscription-price .period{color:#4a5568;font-size:1rem;font-weight:400;margin-left:.25rem}@media (max-width:768px){.checkout-page .subscription-info .subscription-card .subscription-header .subscription-price{align-items:center;flex-direction:column;gap:.25rem}.checkout-page .subscription-info .subscription-card .subscription-header .subscription-price .period{font-size:.9rem;margin-left:0}}.checkout-page .subscription-info .subscription-card .subscription-header .price-bgn{color:#4a5568;font-size:.95rem}.checkout-page .subscription-info .subscription-card .subscription-features ul{display:grid;gap:.5rem;grid-template-columns:repeat(2,1fr);list-style:none;margin:0;padding:0}@media (max-width:768px){.checkout-page .subscription-info .subscription-card .subscription-features ul{grid-template-columns:1fr}}.checkout-page .subscription-info .subscription-card .subscription-features ul li{align-items:center;color:#4a5568;display:flex;font-size:.875rem}.checkout-page .subscription-info .subscription-card .subscription-features ul li i{color:#48bb78;font-size:.8rem;margin-right:.5rem}.checkout-page .payment-methods .payment-option{background:#f8f9fa;border:2px solid #667eea;border-radius:12px;box-shadow:0 0 0 3px rgba(102,126,234,.1)}.checkout-page .payment-methods .payment-option .payment-method-info{align-items:flex-start;display:flex;padding:1.5rem}.checkout-page .payment-methods .payment-option .payment-icon{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;display:flex;flex-shrink:0;height:50px;justify-content:center;margin-right:1rem;width:50px}.checkout-page .payment-methods .payment-option .payment-icon i{color:#fff;font-size:1.25rem}.checkout-page .payment-methods .payment-option .payment-details{flex:1}.checkout-page .payment-methods .payment-option .payment-details h5{color:#2d3748;font-size:1.1rem;font-weight:600;margin-bottom:.5rem}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:.75rem}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list .payment-option-item{align-items:center;background:#f8f9fa;border:1px solid #e9ecef;border-radius:4px;color:#495057;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list .payment-option-item i{font-size:1.1rem}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list .payment-option-item i.fa-cc-visa{color:#1a1f71}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list .payment-option-item i.fa-cc-mastercard{color:#eb001b}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list .payment-option-item i.fa-apple-pay{color:#000}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list .payment-option-item i.fa-google-pay{color:#4285f4}.checkout-page .payment-methods .payment-option .payment-details .payment-options-list .payment-option-item .revolut-logo{border-radius:2px;height:1.2rem;object-fit:cover;width:1.2rem}.checkout-page .payment-methods .payment-option .payment-details p{color:#4a5568;font-size:.9rem;line-height:1.5;margin:0}.checkout-page .form-check .form-check-input{margin-right:.75rem;margin-top:.25rem}.checkout-page .form-check .form-check-input:checked{background-color:#667eea;border-color:#667eea}.checkout-page .form-check .form-check-label{color:#2d3748;line-height:1.5}.checkout-page .form-check .form-check-label strong{font-weight:600}.checkout-page .form-check .form-check-label small{color:#4a5568;display:block;margin-top:.25rem}.checkout-page .form-check .form-check-label a{color:#667eea;text-decoration:none}.checkout-page .form-check .form-check-label a:hover{color:#764ba2;text-decoration:underline}.checkout-page .form-group input:user-invalid{border-color:#d33232}.checkout-page .form-group input:user-invalid+.error-message{color:#d33232;display:block}.checkout-page .form-group input:valid{border-color:#40af4c}.checkout-page .form-group .form-control{background:#fff;border:2px solid #e2e8f0;border-radius:8px;font-size:1rem;padding:.75rem 1rem;transition:all .3s ease}.checkout-page .form-group .form-control::placeholder{color:#a0aec0}.checkout-page .form-group .form-control:focus{border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,.1);outline:none}.checkout-page .form-group .form-control[type=select-one]{appearance:none;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23667eea' d='m2 0-2 2h4zm0 5 2-2h-4z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;padding-right:2.5rem}.checkout-page .form-group .form-help,.checkout-page .form-group .form-text,.checkout-page .form-help{color:#4a5568;font-size:.875rem;line-height:1.4;margin-top:.5rem}.checkout-page .form-error,.checkout-page .invalid-feedback{color:#dc3545;display:block;font-size:.875rem;margin-top:.25rem;width:100%}.checkout-page .form-control.is-invalid{border-color:#dc3545;box-shadow:0 0 0 3px rgba(220,53,69,.1)}.checkout-page .company-billing-fields{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:8px;margin-top:1rem;padding:1.5rem;transition:all .3s ease-out}.checkout-page .company-billing-fields .form-group{margin-bottom:1rem}.checkout-page .company-billing-fields .form-group:last-child{margin-bottom:0}.checkout-page .company-billing-fields .form-label{color:#2d3748;font-weight:600;margin-bottom:.5rem}.checkout-page .company-billing-fields .form-label:after{color:#dc3545;content:" *";font-weight:400}.checkout-page .company-billing-fields .form-label[for*=company_vat]:after{display:none}.checkout-page .company-billing-fields textarea.form-control{min-height:80px;resize:vertical}.checkout-page select.form-control{appearance:none;background-image:url("data:image/svg+xml;charset=utf8,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 4 5'%3E%3Cpath fill='%23667eea' d='m2 0-2 2h4zm0 5 2-2h-4z'/%3E%3C/svg%3E");background-position:right .75rem center;background-repeat:no-repeat;background-size:16px 12px;cursor:pointer;padding-right:2.5rem}.checkout-page select.form-control option{background:#fff;color:#2d3748;padding:.5rem}.checkout-page select.form-control:invalid{color:#a0aec0}.checkout-page .checkout-btn{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;font-size:1.125rem;font-weight:600;padding:1rem 2rem;transition:all .3s ease}.checkout-page .checkout-btn:hover:not(:disabled):not(.loading){box-shadow:0 8px 25px rgba(102,126,234,.3);transform:translateY(-2px)}.checkout-page .checkout-btn:focus:not(:disabled){box-shadow:0 0 0 3px rgba(102,126,234,.25)}.checkout-page .checkout-btn.loading,.checkout-page .checkout-btn:disabled{cursor:not-allowed;opacity:.7;pointer-events:none;transform:none}.checkout-page .checkout-btn.loading:hover,.checkout-page .checkout-btn:disabled:hover{box-shadow:none;transform:none}.checkout-page .checkout-btn.loading{animation:loadingPulse 2s ease-in-out infinite}.checkout-page .checkout-btn.loading .fa-spinner{animation:spin 1s linear infinite}.order-summary{background:#fff;border:1px solid #e2e8f0;border-radius:12px;box-shadow:0 4px 12px rgba(0,0,0,.05);padding:1.5rem;position:sticky;top:2rem}.order-summary h4{border-bottom:2px solid #f7fafc;color:#2d3748;font-weight:600;margin-bottom:1.5rem;padding-bottom:.75rem}.order-summary .summary-item{align-items:center;color:#4a5568;display:flex;justify-content:space-between;margin-bottom:1rem}.order-summary .summary-item span:first-child{flex:1}.order-summary .summary-item span:last-child{color:#2d3748;font-weight:500}.order-summary .price-display{align-items:flex-end;display:flex;flex-direction:column;gap:.125rem}.order-summary .price-display .price-bgn,.order-summary .price-display .price-eur{color:#2d3748;font-size:1rem;font-weight:500;line-height:1.2}.order-summary .price-display .price-bgn{color:#4a5568}.order-summary .price-display strong.price-bgn,.order-summary .price-display strong.price-eur{color:#2d3748;font-weight:700}.order-summary hr{border:none;border-top:1px solid #e2e8f0;margin:1.5rem 0}.order-summary .summary-total{align-items:center;display:flex;font-size:1.125rem;justify-content:space-between;margin-bottom:.5rem}.order-summary .summary-total span{color:#2d3748}.order-summary .summary-total .price-display .price-bgn,.order-summary .summary-total .price-display .price-eur{font-size:1.125rem;font-weight:700}.order-summary .price-note{color:#4a5568;margin-bottom:1.5rem;text-align:right}.order-summary .security-note{text-align:center}.order-summary .security-note .security-icons{align-items:center;display:flex;gap:1rem;justify-content:center;margin-bottom:.75rem}.order-summary .security-note .security-icons i{color:#4a5568;font-size:1.5rem}.order-summary .security-note .security-icons i.fas{color:#48bb78}.order-summary .security-note p{color:#4a5568;margin:0}@media (max-width:768px){.checkout-page .checkout-section{padding:1rem}.checkout-page .subscription-options .subscription-card .subscription-features ul{grid-template-columns:1fr}.checkout-page .payment-methods .payment-option .payment-method-info{flex-direction:column;text-align:center}.checkout-page .payment-methods .payment-option .payment-method-info .payment-icon{align-self:center;margin-bottom:1rem;margin-right:0}.checkout-page .order-summary{margin-top:2rem;position:relative;top:auto}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes loadingPulse{0%,to{opacity:.7}50%{opacity:.9}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.checkout-section{animation:fadeInUp .5s ease-out;animation-fill-mode:both}.checkout-section:first-child{animation-delay:.1s}.checkout-section:nth-child(2){animation-delay:.2s}.checkout-section:nth-child(3){animation-delay:.3s}.checkout-section:nth-child(4){animation-delay:.4s}.checkout-section:nth-child(5){animation-delay:.5s}.checkout-section:nth-child(6){animation-delay:.6s}.order-summary{animation:fadeInUp .6s ease-out;animation-delay:.3s;animation-fill-mode:both}