:root{--pay-surface: #f7f9fb;--pay-surface-low: #f2f4f6;--pay-surface-lowest: #ffffff;--pay-surface-high: #e6e8ea;--pay-surface-highest: #e0e3e5;--pay-primary: #00328a;--pay-primary-container: #0047bb;--pay-primary-fixed: #dbe1ff;--pay-on-primary: #ffffff;--pay-secondary-container: #d5e3fc;--pay-on-secondary-container: #57657a;--pay-on-surface: #191c1e;--pay-on-surface-variant: #434653;--pay-on-surface-muted: #6b7280;--pay-success: #059669;--pay-success-bg: #ecfdf5;--pay-error: #dc2626;--pay-error-bg: #fef2f2;--pay-tertiary: #6c1f00;--pay-outline-variant: rgba(195, 198, 214, .15);--pay-outline-ghost: rgba(195, 198, 214, .3);--pay-shadow-ambient: 0 12px 40px rgba(25, 28, 30, .06);--pay-shadow-card: 0 4px 24px rgba(25, 28, 30, .04);--pay-shadow-hover: 0 8px 32px rgba(25, 28, 30, .08);--pay-shadow-cta: 0 4px 20px rgba(0, 50, 138, .3);--pay-radius-sm: .25rem;--pay-radius-md: .375rem;--pay-radius-lg: .5rem;--pay-radius-xl: .75rem;--pay-radius-2xl: 1rem;--pay-font-display: "Manrope", "Inter", system-ui, sans-serif;--pay-font-body: "Inter", system-ui, -apple-system, sans-serif;--pay-transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--pay-transition-base: .25s cubic-bezier(.4, 0, .2, 1);--pay-transition-slow: .4s cubic-bezier(.4, 0, .2, 1);--pay-glass-bg: rgba(255, 255, 255, .8);--pay-glass-blur: 20px}.dark{--pay-surface: #0f172a;--pay-surface-low: #1e293b;--pay-surface-lowest: #1a2332;--pay-surface-high: #334155;--pay-surface-highest: #475569;--pay-primary: #93b4ff;--pay-primary-container: #4a7dff;--pay-primary-fixed: #1e3a5f;--pay-on-primary: #ffffff;--pay-secondary-container: #1e3a5f;--pay-on-secondary-container: #93b4ff;--pay-on-surface: #e2e8f0;--pay-on-surface-variant: #94a3b8;--pay-on-surface-muted: #64748b;--pay-success-bg: rgba(5, 150, 105, .15);--pay-error-bg: rgba(220, 38, 38, .15);--pay-outline-variant: rgba(148, 163, 184, .12);--pay-outline-ghost: rgba(148, 163, 184, .2);--pay-shadow-ambient: 0 12px 40px rgba(0, 0, 0, .25);--pay-shadow-card: 0 4px 24px rgba(0, 0, 0, .2);--pay-shadow-hover: 0 8px 32px rgba(0, 0, 0, .3);--pay-shadow-cta: 0 4px 20px rgba(74, 125, 255, .3);--pay-glass-bg: rgba(30, 41, 59, .8)}.payment-page{min-height:100%;width:100%;overflow-x:hidden;background-color:var(--pay-surface);color:var(--pay-on-surface);font-family:var(--pay-font-body);isolation:isolate;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.payment-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 2rem;background:#ffffffb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-bottom:1px solid var(--pay-outline-variant);position:sticky;top:0;z-index:50;height:4.5rem}.payment-header__brand{display:flex;align-items:center}.payment-header__logo{font-family:var(--pay-font-display);font-size:1.25rem;font-weight:800;background:linear-gradient(135deg,var(--pay-primary),var(--pay-primary-container));-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;letter-spacing:-.02em}.dark .payment-header__logo{background:linear-gradient(135deg,#93b4ff,#c4d7ff);-webkit-background-clip:text;background-clip:text}.payment-header__actions{display:flex;align-items:center;gap:.75rem}.payment-header__secure-badge{display:none}.payment-header__user-avatar{width:2rem;height:2rem;border-radius:50%;background:linear-gradient(135deg,#f0c4b0,#e8a990);display:flex;align-items:center;justify-content:center;font-size:.75rem;font-weight:700;color:#5a3e30}.payment-main{flex:1;display:flex;justify-content:center;padding:2.5rem 2rem}.payment-container{display:grid;grid-template-columns:1fr 380px;gap:2.5rem;max-width:1100px;width:100%;align-items:start}.payment-form-column{display:flex;flex-direction:column;gap:2rem}.payment-back-btn{display:inline-flex;align-items:center;gap:.375rem;padding:.5rem 1rem;background:var(--pay-surface-lowest);border:1px solid var(--pay-outline-ghost);border-radius:var(--pay-radius-md);font-size:.8125rem;font-weight:500;color:var(--pay-on-surface-variant);cursor:pointer;transition:all var(--pay-transition-fast);width:fit-content}.payment-back-btn:hover{background:var(--pay-surface-low);color:var(--pay-on-surface);box-shadow:var(--pay-shadow-card)}.payment-title-block{margin-bottom:.5rem}.payment-title{font-family:var(--pay-font-display);font-size:2rem;font-weight:800;color:var(--pay-primary);letter-spacing:-.03em;line-height:1.2;margin:0 0 .5rem}.dark .payment-title{color:var(--pay-on-surface)}.payment-subtitle{font-size:.9375rem;color:var(--pay-on-surface-variant);line-height:1.5;margin:0}.payment-section-label{font-family:var(--pay-font-display);font-size:1.125rem;font-weight:700;color:var(--pay-on-surface);margin:0;letter-spacing:-.01em}.payment-quick-pay{display:flex;flex-direction:column;gap:1rem}.payment-quick-pay__grid{display:flex;flex-wrap:wrap;gap:.625rem}.payment-quick-pay__btn{display:flex;align-items:center;justify-content:flex-start;gap:1rem;padding:.75rem 1.25rem;background:var(--pay-surface-low);border:1px solid var(--pay-outline-variant);border-radius:var(--pay-radius-lg);cursor:pointer;transition:all var(--pay-transition-base);color:var(--pay-on-surface);font-weight:700;font-size:.875rem;position:relative;text-align:left;min-width:160px}.payment-quick-pay__logo-container{width:24px;height:24px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.payment-quick-pay__img{max-width:100%;max-height:100%;object-fit:contain}.payment-quick-pay__btn[title]:after{content:attr(title);position:absolute;bottom:110%;left:50%;transform:translate(-50%) translateY(5px);background:var(--pay-on-surface);color:var(--pay-surface);padding:4px 8px;border-radius:4px;font-size:11px;white-space:nowrap;opacity:0;pointer-events:none;transition:all .2s ease;z-index:100}.payment-quick-pay__btn[title]:hover:after{opacity:1;transform:translate(-50%) translateY(0)}.payment-quick-pay__btn:hover{background:var(--pay-surface-low);border-color:var(--pay-primary);box-shadow:var(--pay-shadow-card);transform:translateY(-1px)}.payment-quick-pay__logo{font-size:1.125rem;line-height:1}.payment-quick-pay__label{letter-spacing:-.01em}.payment-card-section{background:var(--pay-surface-lowest);border-radius:var(--pay-radius-2xl);padding:1.75rem;box-shadow:var(--pay-shadow-card);display:flex;flex-direction:column;gap:1.5rem}.payment-card-section__header{display:flex;align-items:center;justify-content:space-between}.payment-method-toggle{display:flex;gap:.25rem;background:var(--pay-surface-low);border-radius:var(--pay-radius-md);padding:.1875rem}.payment-method-toggle__btn{display:flex;align-items:center;justify-content:center;width:2.25rem;height:2.25rem;border:none;border-radius:var(--pay-radius-sm);background:transparent;color:var(--pay-on-surface-muted);cursor:pointer;transition:all var(--pay-transition-fast)}.payment-method-toggle__btn.active{background:var(--pay-surface-lowest);color:var(--pay-primary);box-shadow:var(--pay-shadow-card)}.payment-method-toggle__btn:hover:not(.active){color:var(--pay-on-surface)}.payment-card-form{display:flex;flex-direction:column;gap:1.25rem}.payment-field{display:flex;flex-direction:column;gap:.375rem}.payment-field--half{flex:1;min-width:0}.payment-field-row{display:flex;gap:1rem}.payment-field__label{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--pay-on-surface-variant)}.payment-field__input-wrapper{position:relative;display:flex;align-items:center;background:var(--pay-surface-highest);border-radius:var(--pay-radius-md);border:2px solid transparent;transition:all var(--pay-transition-base);overflow:hidden}.payment-field__input-wrapper:focus-within{background:var(--pay-surface-lowest);border-bottom-color:var(--pay-primary);box-shadow:0 2px 0 0 var(--pay-primary)}.payment-field__input-wrapper.error{border-color:var(--pay-error);background:var(--pay-error-bg)}.payment-field__input-wrapper.valid{border-color:var(--pay-success)}.payment-field__input-wrapper.valid:focus-within{border-color:var(--pay-success);box-shadow:0 2px 0 0 var(--pay-success)}.payment-field__input{flex:1;padding:.75rem .875rem;background:transparent;border:none;outline:none;font-family:var(--pay-font-body);font-size:.9375rem;font-weight:500;color:var(--pay-on-surface);letter-spacing:.02em}.payment-field__input::placeholder{color:var(--pay-on-surface-muted);font-weight:400}.payment-field__input:disabled{opacity:.6;cursor:not-allowed}.payment-field__icons{display:flex;align-items:center;gap:.5rem;padding-right:.75rem}.payment-field__lock-icon{color:var(--pay-on-surface-muted)}.payment-field__cvv-toggle{display:flex;align-items:center;justify-content:center;padding:.5rem;margin-right:.25rem;background:none;border:none;color:var(--pay-on-surface-muted);cursor:pointer;transition:color var(--pay-transition-fast)}.payment-field__cvv-toggle:hover{color:var(--pay-on-surface)}.payment-field__error{display:flex;align-items:center;gap:.25rem;font-size:.75rem;font-weight:500;color:var(--pay-error)}.payment-card-brand{display:inline-flex;align-items:center;padding:.125rem .375rem;border-radius:var(--pay-radius-sm);font-size:.625rem;font-weight:800;letter-spacing:.05em;text-transform:uppercase}.payment-card-brand--visa{background:#1a1f71;color:#fff}.payment-card-brand--mastercard{background:linear-gradient(135deg,#eb001b,#f79e1b);color:#fff}.payment-card-brand--amex{background:#006fcf;color:#fff}.payment-card-brand--discover{background:#ff6000;color:#fff}.payment-save-card{display:flex;align-items:center;gap:.75rem;cursor:pointer;padding:.25rem 0}.payment-save-card__checkbox{width:1.25rem;height:1.25rem;border-radius:var(--pay-radius-sm);border:2px solid var(--pay-outline-ghost);display:flex;align-items:center;justify-content:center;transition:all var(--pay-transition-fast);color:var(--pay-on-primary);flex-shrink:0}.payment-save-card__checkbox.checked{background:var(--pay-primary);border-color:var(--pay-primary)}.payment-save-card__text{font-size:.8125rem;color:var(--pay-on-surface-variant)}.payment-bank-info{display:flex;flex-direction:column;align-items:center;gap:.75rem;padding:2.5rem 1.5rem;text-align:center}.payment-bank-info__icon{width:4rem;height:4rem;border-radius:50%;background:var(--pay-primary-fixed);display:flex;align-items:center;justify-content:center;color:var(--pay-primary)}.payment-bank-info h3{font-family:var(--pay-font-display);font-size:1.125rem;font-weight:700;margin:0}.payment-bank-info p{font-size:.875rem;color:var(--pay-on-surface-variant);line-height:1.6;margin:0;max-width:320px}.payment-summary-column{position:sticky;top:5rem;display:flex;flex-direction:column;gap:1rem}.payment-summary-card{background:var(--pay-surface-lowest);border-radius:var(--pay-radius-2xl);padding:1.75rem;box-shadow:var(--pay-shadow-card);border-left:3px solid var(--pay-primary);display:flex;flex-direction:column;gap:1.25rem}.payment-summary-card__title{font-family:var(--pay-font-display);font-size:1.25rem;font-weight:700;color:var(--pay-on-surface);margin:0;letter-spacing:-.01em}.payment-summary-card__items{display:flex;flex-direction:column;gap:1rem}.payment-summary-item{display:flex;align-items:center;justify-content:space-between}.payment-summary-item__left{display:flex;align-items:center;gap:.625rem}.payment-summary-item__icon{width:1.5rem;height:1.5rem;border-radius:50%;background:var(--pay-primary);color:var(--pay-on-primary);display:flex;align-items:center;justify-content:center;flex-shrink:0}.payment-summary-item__left span{font-size:.875rem;font-weight:500;color:var(--pay-on-surface)}.payment-summary-item__price{font-family:var(--pay-font-body);font-size:.9375rem;font-weight:600;color:var(--pay-on-surface);letter-spacing:-.01em}.payment-summary-card__fees{display:flex;flex-direction:column;gap:.625rem;padding-top:.75rem}.payment-summary-fee{display:flex;justify-content:space-between;font-size:.8125rem;color:var(--pay-on-surface-variant)}.payment-summary-fee span:last-child{font-weight:600;color:var(--pay-on-surface)}.payment-summary-card__total{padding-top:1rem;margin-top:.25rem}.payment-summary-total__label{margin-bottom:.25rem}.payment-summary-total__text{font-size:.6875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:var(--pay-on-surface-variant)}.payment-summary-total__amount-row{display:flex;align-items:center;justify-content:space-between}.payment-summary-total__amount{font-family:var(--pay-font-display);font-size:2rem;font-weight:800;color:var(--pay-on-surface);letter-spacing:-.03em}.payment-summary-total__currency{display:inline-flex;align-items:center;padding:.25rem .625rem;background:var(--pay-error-bg);color:var(--pay-error);font-size:.6875rem;font-weight:700;border-radius:var(--pay-radius-lg);text-transform:uppercase;letter-spacing:.04em}.payment-cta{display:flex;align-items:center;justify-content:center;gap:.625rem;width:100%;padding:1rem;background:linear-gradient(135deg,#00328a,#0047bb);color:#fff;border:none;border-radius:var(--pay-radius-lg);font-family:var(--pay-font-body);font-size:.9375rem;font-weight:700;cursor:pointer;transition:all var(--pay-transition-base);box-shadow:var(--pay-shadow-cta);letter-spacing:.01em}.payment-cta:hover:not(:disabled){box-shadow:0 6px 28px #00328a66;filter:brightness(1.05)}.payment-cta:disabled{opacity:.7;cursor:not-allowed}.payment-cta__spinner{animation:spin-cta 1s linear infinite}@keyframes spin-cta{to{transform:rotate(360deg)}}.payment-summary-security{display:none}.payment-security-notice{display:flex;gap:.75rem;padding:1rem 1.25rem;background:var(--pay-primary-fixed);border-radius:var(--pay-radius-xl);align-items:flex-start}.payment-security-notice__icon{color:var(--pay-primary);flex-shrink:0;margin-top:.125rem}.payment-security-notice p{font-size:.8125rem;line-height:1.55;color:var(--pay-on-surface-variant);margin:0}.payment-security-notice strong{color:var(--pay-on-surface)}.payment-footer{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:3rem 2rem;background:var(--pay-surface-low);border-top:1px solid var(--pay-outline-variant);gap:2rem;margin-top:auto;text-align:center}.payment-footer__left{display:flex;flex-direction:column;gap:.25rem}.payment-footer__brand{font-family:var(--pay-font-display);font-size:.875rem;font-weight:700;color:var(--pay-primary)}.dark .payment-footer__brand{color:var(--pay-on-surface)}.payment-footer__copy{font-size:.75rem;color:var(--pay-on-surface-muted)}.payment-footer__links{display:flex;gap:1.5rem;flex-wrap:wrap}.payment-footer__links a{font-size:.75rem;font-weight:500;color:var(--pay-on-surface-variant);text-decoration:none;transition:color var(--pay-transition-fast)}.payment-footer__links a:hover{color:var(--pay-primary)}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}@media(max-width:1024px){.payment-container{grid-template-columns:1fr;max-width:680px;margin:0 auto}.payment-summary-column{position:static;order:1;margin-top:1rem}.payment-main{padding:3rem 1.5rem}}@media(max-width:640px){.payment-header{padding:.75rem 1rem}.payment-header__secure-badge span{display:none}.payment-main{padding:1.25rem 1rem}.payment-container{gap:1.5rem}.payment-title{font-size:1.5rem}.payment-subtitle{font-size:.8125rem}.payment-quick-pay__grid{display:flex;flex-wrap:wrap;gap:.75rem;justify-content:center}.payment-quick-pay__btn{flex:1 1 calc(50% - .75rem);min-width:140px;padding:.75rem 1rem;font-size:.8125rem}.payment-card-section{padding:1.25rem;border-radius:var(--pay-radius-xl)}.payment-field-row{flex-direction:column;gap:1rem}.payment-summary-card{padding:1.25rem;border-radius:var(--pay-radius-xl)}.payment-summary-total__amount{font-size:1.625rem}.payment-footer{padding:2.5rem 1.5rem;gap:2rem}.payment-footer__links{gap:1.5rem;justify-content:center}}@media(max-width:380px){.payment-title{font-size:1.3rem}.payment-section-label{font-size:1rem}.payment-quick-pay__btn{padding:.5rem .75rem;font-size:.6875rem}.payment-field__input{padding:.625rem .75rem;font-size:.875rem}.payment-summary-total__amount{font-size:1.375rem}.payment-cta{padding:.875rem;font-size:.875rem}.payment-footer__links{flex-direction:row;gap:1.5rem;justify-content:center}}.payment-cta:before{content:"";position:absolute;top:0;left:-100%;width:200%;height:100%;background:linear-gradient(90deg,transparent,rgba(255,255,255,.08),transparent);animation:shimmer 3s infinite;pointer-events:none}.payment-cta{position:relative;overflow:hidden}@keyframes shimmer{0%{transform:translate(-50%)}to{transform:translate(50%)}}.payment-field__input:focus-visible,.payment-quick-pay__btn:focus-visible,.payment-method-toggle__btn:focus-visible,.payment-cta:focus-visible,.payment-back-btn:focus-visible{outline:2px solid var(--pay-primary);outline-offset:2px}.payment-field__input-wrapper{transition:all var(--pay-transition-base)}.payment-card-brand{animation:fade-in-brand .3s ease}@keyframes fade-in-brand{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}
