*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--navy: #0A1628;--gold: #B8944A;--gold-pale: #FDF9F1;--gray-50: #F9FAFB;--gray-100: #F3F4F6;--gray-200: #E5E7EB;--gray-400: #9CA3AF;--gray-600: #4B5563;--green: #16A34A;--sans: "Sora", system-ui, sans-serif}body{font-family:var(--sans);background:#f8f7f4;color:var(--navy);-webkit-font-smoothing:antialiased}.client-app{min-height:100vh;display:flex;flex-direction:column}.client-page{flex:1;padding:1.25rem;max-width:520px;margin:0 auto;width:100%}.page-title{font-size:1.6rem;font-weight:700;color:var(--navy);letter-spacing:-.02em}.page-sub{font-size:.85rem;color:var(--gray-400);font-weight:300;margin-top:3px}.client-card{background:#fff;border:1px solid var(--gray-200);border-radius:14px;padding:1.25rem;box-shadow:0 1px 4px #0000000a}.client-stat{background:#fff;border:1px solid var(--gray-200);border-radius:12px;padding:1rem;text-align:center}.stat-num{font-size:1.5rem;font-weight:700;color:var(--navy)}.stat-lbl{font-size:.72rem;color:var(--gray-400);font-weight:300;margin-top:2px;letter-spacing:.04em;text-transform:uppercase}.client-btn-outline{display:block;width:100%;padding:.9rem;border:1.5px solid var(--gray-200);border-radius:8px;background:#fff;color:var(--navy);font-weight:600;font-size:.88rem;cursor:pointer;font-family:inherit;text-align:center}.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;padding:1.5rem;background:#f8f7f4}.login-card{background:#fff;border-radius:20px;padding:2.5rem;width:100%;max-width:400px;box-shadow:0 4px 24px #00000014}.login-logo{font-family:Georgia,serif;font-size:2rem;font-weight:700;color:var(--navy);text-align:center;letter-spacing:-.03em;margin-bottom:.25rem}.login-logo span{color:var(--gold)}.login-sub{text-align:center;font-size:.82rem;color:var(--gray-400);font-weight:300;margin-bottom:2rem}.form-group{margin-bottom:1rem}.form-label{display:block;font-size:.82rem;font-weight:600;color:var(--navy);margin-bottom:.4rem;letter-spacing:.01em}.form-input{width:100%;padding:.75rem 1rem;border:1.5px solid var(--gray-200);border-radius:8px;font-size:.92rem;font-family:inherit;color:var(--navy);background:#fff;outline:none;transition:border-color .2s}.form-input:focus{border-color:var(--gold)}.loading{display:flex;align-items:center;justify-content:center;min-height:100vh}.spinner{width:32px;height:32px;border:3px solid var(--gray-200);border-top-color:var(--gold);border-radius:50%;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}
