:root{--lv-primary:#ff2d55;--lv-primary-dark:color-mix(in srgb,var(--lv-primary) 80%,#000);--lv-primary-light:color-mix(in srgb,var(--lv-primary) 15%,#fff);--lv-font:system-ui,-apple-system,sans-serif;--lv-radius:0.75rem;--lv-bg:#fff;--lv-surface:#f9fafb;--lv-border:#e5e7eb;--lv-text:#111827;--lv-text-muted:#6b7280;--lv-success:#10b981;--lv-error:#ef4444}*,:after,:before{box-sizing:border-box;margin:0;padding:0}body{font-family:var(--lv-font);background:var(--lv-bg);color:var(--lv-text);-webkit-font-smoothing:antialiased}.lv-root{min-height:100dvh;align-items:center;justify-content:center;padding:1.5rem;font-family:var(--lv-font)}.lv-card,.lv-root{display:flex;flex-direction:column;background:var(--lv-bg)}.lv-card{width:100%;max-width:24rem;border-radius:var(--lv-radius);padding:2rem;gap:1.5rem}.lv-title{font-size:1.5rem;font-weight:700;color:var(--lv-text);line-height:1.25}.lv-subtitle{font-size:.9375rem;color:var(--lv-text-muted);line-height:1.5}.lv-btn-primary{width:100%;padding:.8125rem 1.25rem;border-radius:var(--lv-radius);background:var(--lv-primary);color:#fff;font-size:1rem;font-weight:600;border:none;cursor:pointer;transition:background .15s;display:flex;align-items:center;justify-content:center;gap:.5rem}.lv-btn-primary:hover:not(:disabled){background:var(--lv-primary-dark)}.lv-btn-primary:disabled{opacity:.6;cursor:not-allowed}.lv-btn-secondary{width:100%;padding:.8125rem 1.25rem;border-radius:var(--lv-radius);background:transparent;color:var(--lv-text);font-size:1rem;font-weight:600;border:1.5px solid var(--lv-border);cursor:pointer;transition:background .15s}.lv-btn-secondary:hover:not(:disabled){background:var(--lv-surface)}.lv-input{width:100%;padding:.75rem 1rem;border-radius:var(--lv-radius);border:1.5px solid var(--lv-border);font-size:1rem;color:var(--lv-text);background:var(--lv-bg);transition:border-color .15s;outline:none}.lv-input:focus{border-color:var(--lv-primary)}.lv-input::placeholder{color:var(--lv-text-muted)}.lv-error-msg{font-size:.875rem;color:var(--lv-error);padding:.75rem 1rem;background:color-mix(in srgb,var(--lv-error) 10%,#fff);border-radius:.5rem}.lv-otp-grid{display:grid;grid-template-columns:repeat(6,1fr);grid-gap:.5rem;gap:.5rem}.lv-otp-digit{width:100%;aspect-ratio:1;text-align:center;font-size:1.25rem;font-weight:700;border:1.5px solid var(--lv-border);border-radius:.5rem;background:var(--lv-surface);color:var(--lv-text);outline:none;transition:border-color .15s}.lv-otp-digit:focus{border-color:var(--lv-primary);background:var(--lv-bg)}.lv-link{color:var(--lv-primary);font-size:.875rem;cursor:pointer;background:none;border:none;text-align:center;text-decoration:underline}.lv-badge-success{display:inline-flex;align-items:center;gap:.375rem;padding:.375rem .75rem;background:color-mix(in srgb,var(--lv-success) 15%,#fff);color:var(--lv-success);border-radius:999px;font-size:.875rem;font-weight:600}.lv-divider{height:1px;background:var(--lv-border)}.lv-spinner{width:1.25rem;height:1.25rem;border:2px solid hsla(0,0%,100%,.4);border-top-color:#fff;border-radius:50%;animation:lv-spin .6s linear infinite}@keyframes lv-spin{to{transform:rotate(1turn)}}.lv-phone-input{display:flex;gap:.5rem;align-items:stretch}.lv-phone-local{flex:1 1}.lv-country-picker{position:relative}.lv-country-trigger{display:flex;align-items:center;gap:.375rem;padding:.75rem .875rem;border-radius:var(--lv-radius);border:1.5px solid var(--lv-border);background:var(--lv-bg);color:var(--lv-text);cursor:pointer;font-size:1rem;font-weight:500;transition:border-color .15s;height:100%;min-height:2.875rem}.lv-country-trigger:hover:not(:disabled){border-color:var(--lv-primary)}.lv-country-trigger:disabled{opacity:.5;cursor:not-allowed}.lv-country-flag{font-size:1.25rem;line-height:1}.lv-country-dial{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;color:var(--lv-text-muted)}.lv-country-caret{font-size:.75rem;color:var(--lv-text-muted);margin-left:.125rem}.lv-country-dropdown{position:absolute;top:calc(100% + .375rem);left:0;z-index:50;width:min(20rem,90vw);background:var(--lv-bg);border:1.5px solid var(--lv-border);border-radius:var(--lv-radius);box-shadow:0 10px 30px rgba(0,0,0,.12);display:flex;flex-direction:column;overflow:hidden}.lv-country-search{border:none;border-bottom:1.5px solid var(--lv-border);border-radius:0}.lv-country-search:focus{border-color:var(--lv-border);border-bottom-color:var(--lv-primary)}.lv-country-list{list-style:none;margin:0;padding:.25rem 0;max-height:16rem;overflow-y:auto}.lv-country-item{display:grid;grid-template-columns:auto 1fr auto;align-items:center;grid-gap:.625rem;gap:.625rem;padding:.625rem .875rem;cursor:pointer;font-size:.9375rem}.lv-country-item.is-highlighted,.lv-country-item:hover{background:var(--lv-surface)}.lv-country-item.is-selected{color:var(--lv-primary);font-weight:600}.lv-country-name{color:var(--lv-text)}.lv-country-empty{padding:1rem;text-align:center;color:var(--lv-text-muted);font-size:.9375rem}.lv-modal-overlay{position:fixed;inset:0;background:rgba(17,24,39,.45);display:flex;align-items:center;justify-content:center;padding:1rem;z-index:100}.lv-modal{background:var(--lv-bg);padding:1.75rem;max-width:24rem;display:flex;flex-direction:column;gap:1rem;box-shadow:0 20px 50px rgba(0,0,0,.2)}.lv-modal,.lv-textarea{border-radius:var(--lv-radius);width:100%}.lv-textarea{padding:.75rem 1rem;border:1.5px solid var(--lv-border);font-size:.9375rem;color:var(--lv-text);font-family:inherit;resize:vertical;min-height:6rem;outline:none;transition:border-color .15s}.lv-textarea:focus{border-color:var(--lv-primary)}.lv-partner-card{background:var(--lv-surface);border:1.5px solid var(--lv-border);border-radius:var(--lv-radius);padding:1.25rem;display:flex;flex-direction:column;gap:.375rem}.lv-partner-name{font-size:1.125rem;font-weight:600;color:var(--lv-text)}.lv-partner-phone{font-size:.9375rem;color:var(--lv-text-muted);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.lv-partner-meta{font-size:.8125rem;color:var(--lv-text-muted);margin-top:.25rem}.lv-field{display:flex;flex-direction:column;gap:.375rem}.lv-label{font-size:.8125rem;font-weight:600;color:var(--lv-text-muted)}.lv-row-2{display:grid;grid-template-columns:1fr 1fr;grid-gap:.625rem;gap:.625rem}.lv-info-banner{padding:.75rem 1rem;background:var(--lv-primary-light);color:var(--lv-text);border-radius:var(--lv-radius);border:1px solid color-mix(in srgb,var(--lv-primary) 30%,transparent);font-size:.875rem;line-height:1.4}