*{box-sizing:border-box}body{margin:0;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;background:#f8fafc;color:#1e293b;line-height:1.5}#root{min-height:100vh}.container{max-width:640px;margin:0 auto;padding:0 1rem}.card{background:#fff;border-radius:8px;padding:1.5rem;box-shadow:0 1px 3px #00000014;margin-bottom:1.5rem}.invoice-portal-root{min-height:100vh;position:relative}.invoice-portal-hero-bg{position:fixed;top:0;right:0;bottom:0;left:0;z-index:0;min-height:100vh}.invoice-portal-hero-bg .hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .7s}.invoice-portal-hero-bg .hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000000bf,#00000073,#00000040)}.invoice-portal-form-panel{position:relative;z-index:1;display:flex;align-items:center;justify-content:center;min-height:100vh;padding:1.5rem}.invoice-portal-card-wrap{width:100%;max-width:480px}@media (min-width: 640px){.invoice-portal-card-wrap{max-width:600px}}@media (min-width: 768px){.invoice-portal-card-wrap{max-width:720px}}@media (min-width: 1024px){.invoice-portal-card-wrap{max-width:800px}}.invoice-portal-logo{display:flex;justify-content:center;margin-bottom:1.5rem}.invoice-portal-logo img{height:5rem;width:auto;object-fit:contain}@media (min-width: 640px){.invoice-portal-logo img{height:6rem}}.invoice-portal-card{background:#fff;border:1px solid #4b5563;border-radius:0;box-shadow:0 4px 24px #0000000f;padding:2rem;transition:box-shadow .3s}.invoice-portal-card:hover{box-shadow:0 8px 32px #00000014}.invoice-portal-title{font-size:1.25rem;font-weight:600;color:#111827;text-align:center;margin:0 0 .25rem;letter-spacing:-.025em}@media (min-width: 640px){.invoice-portal-title{font-size:1.5rem}}.invoice-portal-subtitle{font-size:.875rem;color:#6b7280;text-align:center;margin:0 0 1.5rem}.invoice-portal-form .form-group{margin-bottom:1rem}.invoice-portal-form .form-group label{display:block;font-weight:500;font-size:.875rem;margin-bottom:.25rem;color:#374151}.invoice-portal-form .form-group label .req{color:#dc2626;margin-left:.125rem}.invoice-portal-form .form-group input.placeholder-light::placeholder{color:#9ca3af}.invoice-portal-form .form-group input,.invoice-portal-form .form-group select,.invoice-portal-form .form-group textarea{width:100%;padding:.5rem .75rem;border:1px solid #e5e7eb;border-radius:.75rem;font-size:1rem}.invoice-portal-form .form-group input:focus,.invoice-portal-form .form-group select:focus,.invoice-portal-form .form-group textarea:focus{outline:none;border-color:#d1d5db;box-shadow:0 0 0 2px #11182714}.invoice-portal-form .form-group textarea{min-height:80px;resize:vertical}.invoice-portal-form .form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}@media (max-width: 600px){.invoice-portal-form .form-row{grid-template-columns:1fr}}.invoice-portal-form .mt-1{margin-top:.25rem}.invoice-portal-form .hp{position:absolute;left:-9999px;opacity:0;pointer-events:none}.invoice-portal-form .file-name{font-size:.875rem;color:#64748b;display:block;margin-top:.25rem}.invoice-portal-form .error{color:#dc2626;font-size:.875rem;margin-top:.25rem}.invoice-portal-form .submit-wrap{margin-top:1rem}.invoice-portal-form .btn{width:100%;padding:.75rem 1.5rem;font-size:1rem;font-weight:500;border:none;border-radius:.75rem;cursor:pointer;background:#111827;color:#fff;transition:background .2s,box-shadow .2s}.invoice-portal-form .btn:hover{background:#1f2937;box-shadow:0 4px 12px #11182733}.invoice-portal-form .btn:disabled{opacity:.6;cursor:not-allowed}.invoice-portal-hero .hero-slide{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;object-fit:cover;object-position:center;transition:opacity .7s}.invoice-portal-hero .hero-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:linear-gradient(to top,#000000bf,#0006,#0003)}.success-card{text-align:center;padding:2rem;max-width:420px;margin:0 auto}.success-card h2{color:#059669;margin:0 0 .5rem;font-size:1.5rem}.success-card p{color:#64748b;margin:0}
