body{background-color:#f8f9fa;height:100vh;margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;overflow:hidden}.payment-wrapper{flex-direction:column;height:100vh;display:flex;overflow:hidden}.payment-header{color:#fff;z-index:10;background:linear-gradient(135deg,#fafafa 0%,#1f2937 100%);flex-shrink:0;padding:1.5rem 0;box-shadow:0 2px 4px #0000001a}.branding{align-items:center;gap:.75rem;display:flex}.brand-logo{justify-content:center;align-items:center;display:flex}.brand-name{letter-spacing:-.02em;font-size:1.5rem;font-weight:700}.payment-main{flex:1;min-height:0;padding:2rem 0;overflow:hidden auto}.payment-container{background:#fff;border:1px solid #e5e7eb;border-radius:12px;max-width:1200px;margin:0 auto;padding:2rem;box-shadow:0 4px 6px #0000001a,0 2px 4px #0000000f}.invoice-header{margin-bottom:0;padding-bottom:0}.invoice-amount{color:#28a745;font-size:2rem;font-weight:700}.card-logos{flex-wrap:wrap;align-items:center;gap:.75rem;margin-bottom:.5rem;display:flex}.card-logo{color:#495057;opacity:1;cursor:default;font-size:1.75rem;transition:opacity .2s,filter .2s,transform .2s,color .2s}.card-logo-inactive{opacity:.3;filter:grayscale();color:#adb5bd}.card-logo-active{opacity:1;filter:none;color:#2563eb;transform:scale(1.15)}.card-input-container{color:#212529;background-color:#fff;background-clip:padding-box;width:100%;height:calc(1.5em + .75rem + 2px);min-height:calc(1.5em + .75rem + 2px);padding:0;font-size:1rem;font-weight:400;line-height:1.5;display:block;position:relative;overflow:hidden}.card-input-container:focus-within{color:#212529;background-color:#fff;border-color:#86b7fe;outline:0;box-shadow:0 0 0 .25rem #0d6efd40}.card-input-container iframe{display:block;position:absolute;inset:0;scrollbar-width:none!important;-ms-overflow-style:none!important;border:none!important;border-radius:0!important;width:100%!important;height:100%!important;margin:0!important;padding:0!important;overflow:hidden!important}.card-input-container iframe::-webkit-scrollbar{width:0!important;height:0!important;display:none!important}.card-input-container iframe[scrolling]{overflow:hidden!important}.card-input-iframe{border:none;border-radius:0;width:100%;height:40px;padding:0}#loading-lock{color:#007bff}#loading-lock.success{color:#297431}.loading-spinner{border:2px solid #f3f3f3;border-top-color:#007bff;border-radius:50%;width:1rem;height:1rem;animation:1s linear infinite spin;display:inline-block}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.success-message{text-align:center;padding:2rem}.success-icon{color:#28a745;margin-bottom:1rem;font-size:4rem}.error-message{text-align:center;padding:2rem}.error-icon{color:#dc3545;margin-bottom:1rem;font-size:4rem}.payment-method-tabs .nav-link{cursor:pointer;color:#495057}.payment-method-tabs .nav-link.active{color:#0d6efd;font-weight:600}.payment-method-panel{margin-bottom:.5rem}.payment-footer{color:#e5e7eb;z-index:10;background-color:#1f2937;flex-shrink:0;padding:2rem 0}.footer-content{text-align:center;flex-direction:column;align-items:center;gap:.75rem;display:flex}.footer-brand{color:#fff;letter-spacing:-.02em;font-size:1.25rem;font-weight:700}.footer-text{color:#9ca3af;font-size:.875rem}.footer-security{color:#9ca3af;align-items:center;gap:.5rem;margin-top:.5rem;font-size:.875rem;display:flex}.footer-security i,.footer-security svg{color:#10b981}.tenant-badge{background:linear-gradient(135deg,#f0f9ff 0%,#e0f2fe 100%);border:1px solid #bae6fd;border-radius:8px;align-items:center;gap:.5rem;margin-bottom:1.5rem;padding:.75rem 1rem;display:flex}.tenant-label{color:#64748b;font-size:.875rem;font-weight:500}.tenant-name{color:#1e40af;font-size:.875rem;font-weight:600}.invoice-header{text-align:center;margin-bottom:0;padding-bottom:0}.tenant-logo-container{justify-content:center;align-items:center;margin-bottom:1.5rem;display:flex}.tenant-logo{object-fit:contain;width:auto;max-width:300px;height:auto;max-height:60px}.invoice-header h2{color:#1f2937;margin-bottom:.5rem;font-weight:600}.invoice-amount{color:#2563eb;margin:.5rem 0;font-size:2.5rem;font-weight:700}.invoice-description{white-space:pre-line;text-align:left;word-wrap:break-word;max-width:100%}.invoice-details{background-color:#f8f9fa;border-radius:8px;margin-top:0;padding:0;overflow:hidden}.invoice-details-toggle{text-align:left;color:#495057;cursor:pointer;background-color:#e9ecef;border:none;align-items:center;gap:.5rem;width:100%;padding:.75rem 1rem;font-weight:600;transition:background-color .2s;display:flex}.invoice-details-toggle:hover{background-color:#dee2e6}.invoice-details-toggle:focus{outline-offset:-2px;outline:2px solid #2563eb}.toggle-icon{font-size:.75rem;transition:transform .2s}.toggle-text{flex:1}.invoice-details-content{max-height:0;padding:1.5rem;transition:max-height .3s,padding .3s;overflow:hidden}.invoice-details-content.collapse:not(.show){max-height:0;padding:0 1.5rem;display:block}.invoice-details-content.collapse.show,.invoice-details-content:not(.collapse){max-height:2000px;padding:1.5rem;display:block}.invoice-details table{margin-bottom:0}.invoice-details thead th{color:#495057;border-bottom:2px solid #dee2e6;font-weight:600}.invoice-details tfoot{border-top:2px solid #dee2e6}.invoice-details tfoot tr.table-active{background-color:#e9ecef}.multi-invoice-list{flex-direction:column;gap:.75rem;display:flex}.multi-invoice-row{cursor:pointer;background:#fff;border:1px solid #dee2e6;border-radius:8px;align-items:center;gap:.75rem;padding:.75rem;display:flex}.multi-invoice-row:has(input:disabled){cursor:default}.multi-invoice-info{flex-direction:column;flex:1;min-width:0;display:flex}.multi-invoice-title{color:#212529;font-weight:600}.multi-invoice-date{color:#6c757d;font-size:.85rem}.multi-invoice-amount{white-space:nowrap;font-weight:600}.multi-invoice-summary{border-top:1px solid #dee2e6;flex-direction:column;gap:.5rem;margin-top:1rem;padding-top:1rem;display:flex}.multi-invoice-summary-row{justify-content:space-between;gap:1rem;display:flex}.multi-invoice-summary-total{border-top:1px solid #dee2e6;margin-top:.25rem;padding-top:.5rem}.receipt-badge{color:#fff;background:linear-gradient(135deg,#10b981 0%,#059669 100%);border-radius:20px;align-items:center;gap:.5rem;margin-bottom:1rem;padding:.5rem 1rem;font-size:.875rem;font-weight:600;display:inline-flex}.receipt-icon{font-size:1rem;font-weight:700}.receipt-details{background-color:#f8f9fa;border-radius:8px;margin-top:1.5rem;padding:1.5rem}.receipt-details h5{color:#1f2937;margin-bottom:1rem;font-weight:600}.receipt-info{flex-direction:column;gap:.75rem;display:flex}.receipt-row{border-bottom:1px solid #e5e7eb;justify-content:space-between;align-items:center;padding:.5rem 0;display:flex}.receipt-row:last-child{border-bottom:none}.receipt-label{color:#6b7280;font-weight:500}.receipt-value{color:#1f2937;text-align:right;font-weight:600}.receipt-status-paid{color:#10b981;font-weight:700}.btn-primary{background:linear-gradient(135deg,#2563eb 0%,#1e40af 100%);border:none;padding:.75rem 2rem;font-weight:600;transition:all .2s}.btn-primary:hover{background:linear-gradient(135deg,#1e40af 0%,#1e3a8a 100%);transform:translateY(-1px);box-shadow:0 4px 6px #2563eb4d}.btn-primary:active{transform:translateY(0)}.landing-hero{background:linear-gradient(145deg,#fff 0%,#f5f9ff 100%)}.landing-eyebrow{color:#1e3a8a;text-transform:uppercase;letter-spacing:.04em;background-color:#dbeafe;border-radius:999px;margin-bottom:.75rem;padding:.25rem .75rem;font-size:.85rem;font-weight:700;display:inline-block}.landing-title{color:#111827;margin-bottom:.75rem;font-size:clamp(2rem,4vw,3rem);font-weight:800}.landing-subtitle{color:#374151;max-width:760px;margin-bottom:1.75rem;font-size:1.05rem}.landing-cta{margin-bottom:1.25rem;display:block}.landing-cta .btn{width:100%}.landing-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem;display:grid}.landing-card{background:#fff;border:1px solid #dbeafe;border-radius:10px;align-items:flex-start;gap:.75rem;padding:1rem;display:flex}.landing-card-icon{color:#1d4ed8;flex-shrink:0;justify-content:center;align-items:flex-start;width:3.5rem;min-width:3.5rem;margin-top:.15rem;display:flex}.landing-card-content{flex:1}.landing-card h2{color:#1f2937;margin:0 0 .5rem;font-size:1.05rem}.landing-card p{color:#4b5563;margin:0}@media (width<=768px){.payment-container{margin:1rem;padding:1.5rem}.payment-header{padding:1rem 0}.brand-name{font-size:1.25rem}.invoice-amount{font-size:2rem}.landing-grid{grid-template-columns:1fr}.footer-content{padding:0 1rem}}
