.paiement-section{width:100%}.paiement-header{margin-bottom:1.5rem}.paiement-header h3{color:var(--design-text-primary);margin:0 0 .5rem;font-size:1.1rem;font-weight:600}.paiement-subtitle{color:var(--design-text-secondary);margin:0;font-size:.9rem}.paiement-summary{background:var(--design-background-light);border-radius:var(--design-radius);border:1px solid var(--design-border);margin-bottom:1.5rem;padding:1.25rem}.summary-item{border-bottom:1px solid var(--design-border);justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.summary-item:last-child{border-bottom:none}.summary-advance{color:var(--design-success)}.summary-total{border-top:2px solid var(--design-border);margin-top:.5rem;padding-top:1rem;font-weight:600}.summary-amount{font-weight:600}.total-amount{color:var(--design-success);font-size:1.2rem}.summary-note{border-radius:var(--design-radius);color:#1e3a8a;background:#f0f9ff;align-items:flex-start;gap:.5rem;margin-top:1rem;padding:.75rem;font-size:.85rem;display:flex}.note-icon{flex-shrink:0;font-size:1rem}.form-group{margin-bottom:1.5rem;position:relative}.form-group label{color:var(--design-text-primary);text-transform:uppercase;letter-spacing:.5px;margin-bottom:.75rem;font-size:.85rem;font-weight:600;display:block}.form-group input{border:1px solid var(--design-border);border-radius:var(--design-radius);width:100%;color:var(--design-text-primary);background:#fff;padding:1rem 1.25rem;font-family:Inter,-apple-system,BlinkMacSystemFont,sans-serif;font-size:1rem;transition:all .3s cubic-bezier(.4,0,.2,1);box-shadow:0 1px 2px rgba(0,0,0,.05)}.form-group input::placeholder{color:var(--design-gray-400);font-weight:400}.form-group input:focus{border-color:var(--design-primary);outline:none;transform:translateY(-1px);box-shadow:0 0 0 3px rgba(102,126,234,.1)}.form-group input:hover:not(:focus){border-color:var(--design-border-hover)}.form-group input.error{border-color:var(--design-danger);background:#fef2f2;box-shadow:0 0 0 3px rgba(239,68,68,.1)}.form-group input.error:focus{border-color:var(--design-danger);box-shadow:0 0 0 3px rgba(239,68,68,.1)}.input-with-icon{position:relative}.input-with-icon input{padding-left:3rem}.card-number-input{letter-spacing:.5px;font-family:Courier New,monospace}.input-group-row{grid-template-columns:1fr 1fr;gap:1.5rem;display:grid}.input-group{flex:1}@keyframes inputFocus{0%{box-shadow:0 0 rgba(102,126,234,0)}to{box-shadow:0 0 0 3px rgba(102,126,234,.1)}}.form-group input::placeholder{color:#94a3b8;opacity:.7;transition:opacity .2s}.form-group input:focus::placeholder{opacity:.5}.card-details-grid{grid-template-columns:1fr 1fr;gap:1.5rem;margin-top:1.5rem;display:grid}.card-details-grid .form-group{margin-bottom:0}.card-type-indicator{opacity:.6;background-position:50%;background-repeat:no-repeat;background-size:contain;width:32px;height:24px;position:absolute;top:2.5rem;right:1.25rem}@keyframes validCheck{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}.input-valid:after{content:"✓";color:var(--design-success);font-size:.9rem;font-weight:700;animation:.3s validCheck;position:absolute;top:2.5rem;right:1rem}input:-webkit-autofill{transition:background-color 5000s ease-in-out;-webkit-text-fill-color:var(--design-text-primary)!important;-webkit-box-shadow:inset 0 0 0 1000px #fff!important}input:-webkit-autofill:hover{transition:background-color 5000s ease-in-out;-webkit-text-fill-color:var(--design-text-primary)!important;-webkit-box-shadow:inset 0 0 0 1000px #fff!important}input:-webkit-autofill:focus{transition:background-color 5000s ease-in-out;-webkit-text-fill-color:var(--design-text-primary)!important;-webkit-box-shadow:inset 0 0 0 1000px #fff!important}@keyframes pulse{0%{opacity:1}50%{opacity:.5}to{opacity:1}}.btn-primary.processing{animation:1.5s ease-in-out infinite pulse;position:relative}.btn-primary.processing:after{content:"";border-radius:var(--design-radius);background:rgba(255,255,255,.2);position:absolute;top:0;bottom:0;left:0;right:0}.error-message{color:var(--design-danger);align-items:center;gap:.375rem;margin-top:.5rem;font-size:.8rem;font-weight:500;animation:.3s slideIn;display:flex}.error-message:before{content:"⚠";font-size:.9rem}@keyframes slideIn{0%{opacity:0;transform:translateY(-5px)}to{opacity:1;transform:translateY(0)}}.cvv-help{background:var(--design-gray-200);width:20px;height:20px;color:var(--design-gray-600);cursor:help;border-radius:50%;justify-content:center;align-items:center;font-size:.75rem;transition:all .2s;display:flex;position:absolute;top:2.5rem;right:1rem}.cvv-help:hover{background:var(--design-gray-300);color:var(--design-text-primary)}.cvv-tooltip{background:var(--design-gray-900);color:#fff;border-radius:var(--design-radius);z-index:100;opacity:0;visibility:hidden;width:200px;box-shadow:var(--design-shadow-lg);margin-top:.5rem;padding:.75rem;font-size:.75rem;transition:all .3s;position:absolute;top:100%;right:0}.cvv-help:hover .cvv-tooltip{opacity:1;visibility:visible}.auto-advance-timer{border-radius:var(--design-radius);color:#fff;background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);margin-top:1.5rem;padding:1rem;animation:2s ease-in-out infinite pulseTimer}@keyframes pulseTimer{0%,to{box-shadow:0 4px 12px rgba(102,126,234,.3)}50%{box-shadow:0 4px 20px rgba(102,126,234,.5)}}.timer-header{align-items:center;gap:.5rem;margin-bottom:.75rem;display:flex}.timer-icon{font-size:1.2rem;animation:1.5s ease-in-out infinite pulseIcon}@keyframes pulseIcon{0%,to{transform:scale(1)}50%{transform:scale(1.1)}}.timer-text{font-size:.9rem;font-weight:500}.timer-text strong{background:rgba(255,255,255,.2);border-radius:4px;margin-left:.25rem;padding:.25rem .5rem;font-size:1.1rem;font-weight:700}.timer-bar{background:rgba(255,255,255,.2);border-radius:3px;height:6px;margin:.5rem 0;overflow:hidden}.timer-progress{background:#fff;border-radius:3px;height:100%;transition:width 1s linear}.timer-warning{border-radius:var(--design-radius);background:rgba(255,255,255,.1);align-items:center;gap:.5rem;margin-top:.75rem;padding:.75rem;font-size:.85rem;animation:1s ease-in-out infinite flashWarning;display:flex}@keyframes flashWarning{0%,to{opacity:1}50%{opacity:.7}}.warning-icon{flex-shrink:0;font-size:1rem}.security-banner{border-radius:var(--design-radius);background:#f0f9ff;border:1px solid #bae6fd;align-items:center;gap:.75rem;margin-top:1.5rem;padding:1rem;display:flex}.security-icon{flex-shrink:0;font-size:1.5rem}.security-text{flex:1}.security-text strong{color:#1e3a8a;margin-bottom:.25rem;font-size:.9rem;display:block}.security-text small{color:#4b5563;font-size:.8rem;line-height:1.4}.cvv-container{position:relative}.form-group input:valid:not(:placeholder-shown):not(.error){border-color:var(--design-success);background-color:#f0fdf4}.form-group input:invalid:not(:placeholder-shown):not(.error){border-color:var(--design-danger);background-color:#fef2f2}@keyframes successPulse{0%{box-shadow:0 0 rgba(34,197,94,.7)}70%{box-shadow:0 0 0 10px rgba(34,197,94,0)}to{box-shadow:0 0 rgba(34,197,94,0)}}.input-success{animation:1.5s successPulse}.paiement-actions{gap:.75rem;margin:2rem 0 1.5rem;display:flex}.paiement-actions .btn-primary{background:linear-gradient(135deg,var(--design-primary)0%,var(--design-primary-dark)100%);border-radius:var(--design-radius);color:#fff;cursor:pointer;border:none;flex:2;padding:1rem 1.5rem;font-size:1rem;font-weight:600;transition:all .3s;position:relative;overflow:hidden}.paiement-actions .btn-primary:before{content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);width:100%;height:100%;transition:left .5s;position:absolute;top:0;left:-100%}.paiement-actions .btn-primary:hover:before{left:100%}.paiement-actions .btn-primary:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 8px 25px rgba(102,126,234,.3)}.paiement-actions .btn-primary:active:not(:disabled){transform:translateY(0)}.paiement-actions .btn-outline{border:2px solid var(--design-border);border-radius:var(--design-radius);color:var(--design-text-secondary);cursor:pointer;background:0 0;flex:1;padding:1rem 1.5rem;font-size:1rem;font-weight:500;transition:all .3s}.paiement-actions .btn-outline:hover:not(:disabled){border-color:var(--design-primary);color:var(--design-primary);background:var(--design-background-hover)}.paiement-methods{margin-bottom:1.5rem}.method-tabs{gap:.5rem;margin-bottom:1rem;padding-bottom:.5rem;display:flex;overflow-x:auto}.method-tab{border:1px solid var(--design-border);border-radius:var(--design-radius);color:var(--design-text-secondary);cursor:pointer;text-align:center;white-space:nowrap;background:#fff;flex:1;padding:.75rem 1rem;font-size:.9rem;font-weight:500;transition:all .2s}.method-tab:hover{border-color:var(--design-primary);background:var(--design-background-hover)}.method-tab.active{border-color:var(--design-primary);color:var(--design-primary);background:#f0f9ff;font-weight:600}.method-content{border:1px solid var(--design-border);border-radius:var(--design-radius);background:#fff;overflow:hidden}.card-payment,.cesu-payment,.ecesu-payment{padding:1.5rem}.cesu-warning,.ecesu-warning{border-left:3px solid var(--design-warning);border-radius:var(--design-radius);background:#fef3c7;align-items:flex-start;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex}.warning-icon{color:var(--design-warning);flex-shrink:0;font-size:1.2rem}.cesu-balance{margin-bottom:1.5rem}.cesu-balance h4{color:var(--design-text-primary);margin:0 0 1rem;font-size:1rem}.cesu-total{background:var(--design-background-light);border-radius:var(--design-radius);border:1px solid var(--design-border);justify-content:space-between;align-items:center;padding:1rem;display:flex}.cesu-amount{color:var(--design-success);font-size:1.2rem;font-weight:700}.empty-cesu{text-align:center;color:var(--design-text-secondary);padding:2rem;font-style:italic}.cesu-tickets-list{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.cesu-ticket{border:1px solid var(--design-border);border-radius:var(--design-radius);cursor:pointer;align-items:center;gap:.75rem;padding:1rem;transition:all .2s;display:flex}.cesu-ticket:hover{border-color:var(--design-primary);background:var(--design-background-hover)}.cesu-ticket.selected{border-color:var(--design-primary);background:#f0f9ff}.ticket-checkbox{flex-shrink:0}.checkbox{border:2px solid var(--design-border);border-radius:4px;width:20px;height:20px;position:relative}.checkbox.checked{border-color:var(--design-primary);background:var(--design-primary)}.checkbox.checked:after{content:"✓";color:#fff;font-size:12px;font-weight:700;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.ticket-info{flex:1;justify-content:space-between;align-items:center;display:flex}.ticket-number{color:var(--design-text-primary);font-family:monospace;font-size:.9rem}.ticket-amount{color:var(--design-success);font-weight:600}.btn-add-cesu{border:2px dashed var(--design-border);border-radius:var(--design-radius);width:100%;color:var(--design-text-secondary);cursor:pointer;background:0 0;justify-content:center;align-items:center;gap:.5rem;padding:.875rem 1rem;font-size:.9rem;transition:all .2s;display:flex}.btn-add-cesu:hover{border-color:var(--design-primary);color:var(--design-primary);background:var(--design-background-hover)}.cesu-form{background:var(--design-background-light);border-radius:var(--design-radius);border:1px solid var(--design-border);margin-top:1.5rem;padding:1.5rem}.cesu-form h5{color:var(--design-text-primary);margin:0 0 1rem;font-size:.95rem}.cesu-form .form-group{margin-bottom:1rem}.cesu-form .form-group label{color:var(--design-text-primary);margin-bottom:.5rem;font-size:.9rem;font-weight:600;display:block}.cesu-form .form-group input{border:1px solid var(--design-border);border-radius:var(--design-radius);width:100%;color:var(--design-text-primary);transition:var(--design-transition);padding:.75rem 1rem;font-size:.95rem}.cesu-form .form-group input:focus{border-color:var(--design-primary);box-shadow:0 0 0 3px var(--design-focus-ring);outline:none}.cesu-form .form-group small{color:var(--design-text-secondary);margin-top:.375rem;font-size:.8rem;line-height:1.4;display:block}.form-actions{gap:.75rem;margin-top:1.5rem;display:flex}.form-actions button{flex:1}.ecesu-instructions{font-size:.9rem;line-height:1.6}.ecesu-instructions ol{margin:1rem 0;padding-left:1.5rem}.ecesu-instructions li{margin-bottom:1rem}.ecesu-providers{margin:.5rem 0 1rem;padding-left:0;list-style-type:none}.ecesu-providers li{margin-bottom:.5rem;font-size:.85rem}.ecesu-providers a{color:var(--design-primary);text-decoration:none}.ecesu-providers a:hover{text-decoration:underline}.provider-code,.reference-code{background:var(--design-background-light);border:1px solid var(--design-border);border-radius:var(--design-radius);margin:.5rem;padding:.5rem 1rem;font-family:monospace;font-size:.95rem;display:inline-block}.ecesu-note{border-radius:var(--design-radius);color:#1e3a8a;background:#f0f9ff;align-items:flex-start;gap:.5rem;margin-top:1.5rem;padding:1rem;font-size:.85rem;display:flex}.security-info{text-align:center;border-top:1px solid var(--design-border);margin-top:1.5rem;padding-top:1.5rem}.security-badges{flex-wrap:wrap;justify-content:center;gap:1rem;margin-bottom:.75rem;display:flex}.security-badge{background:var(--design-background-light);border:1px solid var(--design-border);border-radius:var(--design-radius-2xl);color:var(--design-text-secondary);align-items:center;gap:.25rem;padding:.375rem .75rem;font-size:.75rem;display:inline-flex}.security-note{color:var(--design-text-secondary);margin:0;font-size:.8rem;line-height:1.4}.error-message{color:var(--design-danger);margin-top:.375rem;font-size:.8rem;font-weight:500}.global-error{text-align:center;border-radius:var(--design-radius);background:#fef2f2;border:1px solid #fecaca;padding:.75rem}@keyframes spin{to{transform:rotate(360deg)}}@media (max-width:768px){.method-tabs{flex-direction:column}.card-details-grid{grid-template-columns:1fr}.paiement-actions{flex-direction:column}.security-badges{flex-direction:column;align-items:center}}@media (max-width:480px){.form-group input{padding:.75rem .875rem;font-size:16px}.form-group label{font-size:.8rem}}.paiement-actions-single{text-align:center;margin:2rem 0 1.5rem}.btn-payment-submit{background:linear-gradient(135deg,var(--design-primary)0%,var(--design-primary-dark)100%);border-radius:var(--design-radius);color:#fff;cursor:pointer;border:none;width:100%;padding:1.2rem 1.5rem;font-size:1.1rem;font-weight:700;transition:all .3s;position:relative;overflow:hidden;box-shadow:0 4px 15px rgba(102,126,234,.3)}.btn-payment-submit:before{content:"";background:linear-gradient(90deg,transparent,rgba(255,255,255,.2),transparent);width:100%;height:100%;transition:left .7s;position:absolute;top:0;left:-100%}.btn-payment-submit:hover:before{left:100%}.btn-payment-submit:hover:not(:disabled){transform:translateY(-3px);box-shadow:0 8px 25px rgba(102,126,234,.4)}.btn-payment-submit:active:not(:disabled){transform:translateY(-1px)}.btn-payment-submit:disabled{opacity:.7;cursor:not-allowed;box-shadow:none!important;transform:none!important}.paiement-actions{display:none}.virement-payment{width:100%}.rib-section{border-radius:var(--design-radius);border:1px solid var(--design-border);background:#fff;padding:1.5rem}.rib-section h4{color:var(--design-text-primary);align-items:center;gap:.5rem;margin:0 0 1.5rem;font-size:1.1rem;display:flex}.rib-details{flex-direction:column;gap:.75rem;margin-bottom:1.5rem;display:flex}.rib-row{background:var(--design-background-light);border-radius:var(--design-radius);border:1px solid var(--design-border);align-items:center;gap:1rem;padding:.75rem;display:flex}.rib-label{color:var(--design-text-secondary);flex-shrink:0;min-width:150px;font-size:.9rem;font-weight:600}.rib-value{color:var(--design-text-primary);word-break:break-all;flex:1;font-family:monospace;font-size:.9rem}.rib-iban{color:var(--design-primary);font-size:1rem;font-weight:600}.btn-copy{background:var(--design-background-light);border:1px solid var(--design-border);border-radius:var(--design-radius);color:var(--design-text-secondary);cursor:pointer;transition:var(--design-transition);flex-shrink:0;padding:.375rem .75rem;font-size:.85rem}.btn-copy:hover{background:var(--design-background-hover);border-color:var(--design-primary);color:var(--design-primary)}.btn-copy.copied{background:var(--design-success);border-color:var(--design-success);color:#fff}.rib-important{border-radius:var(--design-radius);border-left:4px solid var(--design-warning);background:#fef3c7;align-items:flex-start;gap:.75rem;margin-bottom:1.5rem;padding:1rem;display:flex}.important-icon{flex-shrink:0;margin-top:.125rem;font-size:1.2rem}.important-text{color:#92400e;flex:1;font-size:.9rem;line-height:1.4}.virement-instructions{border-top:1px solid var(--design-border);margin-top:1.5rem;padding-top:1.5rem}.virement-instructions h5{color:var(--design-text-primary);margin:0 0 1rem;font-size:1rem}.virement-instructions ol{color:var(--design-text-secondary);margin:0 0 1rem;padding-left:1.5rem;line-height:1.6}.virement-instructions li{margin-bottom:.5rem;font-size:.9rem}.paiement-actions{border-top:1px solid var(--design-border);gap:.75rem;margin-top:1.5rem;padding-top:1.5rem;display:flex}.paiement-actions .btn-outline,.paiement-actions .btn-primary{flex:1;padding:.875rem 1.25rem;font-size:.95rem}.spinner{border:2px solid rgba(255,255,255,.3);border-top-color:#fff;border-radius:50%;width:1rem;height:1rem;margin-right:.5rem;animation:.8s linear infinite spin;display:inline-block}.rib-info-small{background:var(--design-background-light);border-radius:var(--design-radius);border:1px solid var(--design-border);margin-top:.5rem;padding:.75rem;font-size:.85rem}.rib-info-small div{margin-bottom:.25rem}.rib-info-small strong{color:var(--design-text-secondary);min-width:60px;display:inline-block}.confirmation-virement-message{border-radius:var(--design-radius);background:linear-gradient(135deg,#f0f9ff 0%,#e6f7ff 100%);border:1px solid #bae6fd;margin-top:1.5rem;padding:1.5rem}.confirmation-virement-message h4{color:#0369a1;align-items:center;gap:.5rem;margin-top:0;margin-bottom:1rem;display:flex}.rib-details-compact{border-radius:var(--design-radius);background:rgba(255,255,255,.7);border:1px solid #bae6fd;margin:1rem 0;padding:1rem}.rib-details-compact div{margin-bottom:.5rem;font-size:.9rem}.rib-details-compact strong{color:#0369a1;min-width:80px;display:inline-block}.rib-important{border-radius:var(--design-radius);border-left:3px solid var(--design-warning);color:#92400e;background:#fef3c7;margin-top:1rem;padding:1rem;font-size:.9rem}@media (max-width:768px){.rib-row{flex-direction:column;align-items:flex-start;gap:.5rem}.rib-label{min-width:auto}.btn-copy{align-self:flex-end}.paiement-actions{flex-direction:column}}@media (max-width:480px){.rib-section{padding:1rem}.virement-instructions ol{padding-left:1rem}}.payment-methods-manager{margin:1rem 0}.existing-payment-methods{flex-direction:column;gap:.75rem;margin-bottom:1rem;display:flex}.payment-method-card{border:1px solid var(--design-border);cursor:pointer;background:#fff;border-radius:8px;padding:1rem;transition:all .2s}.payment-method-card:hover{border-color:var(--design-primary);box-shadow:0 2px 8px rgba(0,0,0,.1)}.payment-method-card.selected{border-color:var(--design-primary);background:var(--design-primary-light)}.payment-method-card.default{border-left:4px solid var(--design-success)}.payment-method-header{justify-content:space-between;align-items:center;margin-bottom:.5rem;display:flex}.method-type{color:var(--design-text);font-weight:600}.default-badge{background:var(--design-success);color:#fff;border-radius:4px;padding:.25rem .5rem;font-size:.75rem;font-weight:500}.payment-method-details{margin-bottom:.75rem}.method-display{color:var(--design-text);margin-bottom:.25rem;font-size:.9rem;font-weight:500}.method-name{color:var(--design-text-secondary);margin-bottom:.25rem;font-size:.85rem}.method-expiry,.method-amount{color:var(--design-text-secondary);font-size:.8rem}.payment-method-actions{justify-content:flex-end;gap:.5rem;display:flex}.btn-action{cursor:pointer;background:0 0;border:none;border-radius:4px;padding:.25rem;font-size:1rem;transition:background-color .2s}.btn-action:hover{background:var(--design-background)}.btn-edit:hover{color:var(--design-primary)}.btn-delete:hover{color:var(--design-danger)}.btn-default:hover{color:var(--design-warning)}.btn-add-payment-method{background:var(--design-background);border:1px dashed var(--design-border);width:100%;color:var(--design-primary);cursor:pointer;border-radius:8px;padding:.75rem;font-weight:500;transition:all .2s}.btn-add-payment-method:hover{background:var(--design-primary-light);border-color:var(--design-primary)}.payment-method-form{background:var(--design-background);border:1px solid var(--design-border);border-radius:8px;margin-top:1rem;padding:1.5rem}.payment-method-form h4{color:var(--design-text);margin:0 0 1rem}.checkbox-group{align-items:center;margin:1rem 0;display:flex}.checkbox-group label{cursor:pointer;align-items:center;gap:.5rem;display:flex}.checkbox-group input[type=checkbox]{width:auto;margin:0}.existing-methods-section{margin-bottom:1.5rem}.btn-use-existing-method{background:var(--design-background);border:1px solid var(--design-border);width:100%;color:var(--design-primary);cursor:pointer;text-align:left;border-radius:8px;padding:.75rem;font-weight:500;transition:all .2s}.btn-use-existing-method:hover{background:var(--design-primary-light);border-color:var(--design-primary)}.existing-methods-list{border:1px solid var(--design-border);background:#fff;border-radius:8px;max-height:300px;margin-top:.5rem;padding:1rem;overflow-y:auto}.btn-add-new-card{border:1px dashed var(--design-border);width:100%;color:var(--design-text-secondary);cursor:pointer;background:0 0;border-radius:4px;margin-top:.75rem;padding:.5rem;font-size:.85rem;transition:all .2s}.btn-add-new-card:hover{border-color:var(--design-primary);color:var(--design-primary)}.loading-payment-methods{text-align:center;color:var(--design-text-secondary);padding:2rem}.no-payment-methods{text-align:center;color:var(--design-text-secondary);background:var(--design-background);border-radius:8px;padding:2rem}.alert{border-radius:6px;margin-bottom:1rem;padding:.75rem 1rem;font-size:.9rem}.alert-error{background:var(--design-danger-light);color:var(--design-danger);border:1px solid var(--design-danger)}@media (max-width:768px){.payment-method-card{padding:.75rem}.payment-method-actions{flex-wrap:wrap}.btn-action{padding:.5rem;font-size:1.1rem}}
