.auth-shell{--auth-panel: var(--tenant-header, #071a33);--auth-accent: var(--tenant-accent, #29c9ef);--auth-field-h: 48px;min-height:100vh;min-height:100dvh;display:grid;grid-template-columns:minmax(380px,44fr) 56fr;background:var(--surface);color:var(--ink)}.auth-shell-wide{grid-template-columns:minmax(340px,34fr) 66fr}.auth-brand{position:sticky;top:0;align-self:start;height:100vh;height:100dvh;overflow:hidden;color:#e9f1fb;background:radial-gradient(120% 70% at 0% 0%,color-mix(in srgb,var(--teal) 55%,transparent),transparent 60%),radial-gradient(90% 60% at 100% 100%,color-mix(in srgb,var(--auth-accent) 22%,transparent),transparent 65%),var(--auth-panel)}.auth-brand-art{position:absolute;top:0;right:0;bottom:0;left:0;color:#fff;pointer-events:none;-webkit-mask-image:linear-gradient(180deg,transparent 0%,transparent 62%,#000 92%);mask-image:linear-gradient(180deg,transparent 0%,transparent 62%,#000 92%);opacity:.7}.auth-brand-art svg{width:100%;height:100%}.auth-edge{stroke:#ffffff24;stroke-width:2;fill:none}.auth-lane{stroke:var(--auth-accent);stroke-opacity:.45;stroke-width:6;stroke-dasharray:26 34;fill:none;animation:auth-lane 2.4s linear infinite}@keyframes auth-lane{to{stroke-dashoffset:-60}}@media(prefers-reduced-motion:reduce){.auth-lane{animation:none}}.auth-brand-inner{position:relative;z-index:1;height:100%;overflow-y:auto;display:flex;flex-direction:column;gap:40px;padding:40px clamp(32px,4.5vw,64px)}.auth-brand-logo .brand.tenant-brand{padding:6px 10px;border-radius:10px;background:#fff}.auth-brand-logo .brand.undivo-brand .undivo-wordmark{color:#fff}.auth-brand-copy{margin:auto 0;max-width:460px}.auth-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;font-size:12px;font-weight:700;letter-spacing:.12em;text-transform:uppercase;color:var(--auth-accent)}.auth-eyebrow:before{content:"";width:20px;height:2px;border-radius:2px;background:currentColor}.auth-display{margin:0 0 16px;color:#fff;font-size:clamp(30px,2.6vw,40px);line-height:1.15;letter-spacing:-.03em;font-weight:700}.auth-lead{margin:0 0 32px;font-size:16px;line-height:1.6;color:#c4d3e6}.auth-features{list-style:none;margin:0;padding:0;display:grid;gap:20px}.auth-features li{display:grid;grid-template-columns:40px 1fr;gap:14px;align-items:start}.auth-feature-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:#ffffff14;border:1px solid #ffffff1f;color:var(--auth-accent)}.auth-features strong{display:block;margin:1px 0 3px;color:#fff;font-size:15px;font-weight:650}.auth-features li>span:last-child>span{display:block;font-size:14px;line-height:1.5;color:#b5c6db}.auth-trust{display:flex;flex-wrap:wrap;align-items:center;gap:8px;margin:0;font-size:13px;color:#a9bcd3}.auth-trust>span:not([aria-hidden]){display:inline-flex;align-items:center;gap:6px;white-space:nowrap}.auth-trust svg{color:var(--auth-accent)}.auth-main{min-width:0;display:flex;flex-direction:column;background:var(--canvas, var(--surface))}.auth-topbar{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:20px clamp(20px,4vw,48px)}.auth-back{display:inline-flex;align-items:center;gap:8px;min-height:36px;padding:0 12px 0 8px;margin-left:-8px;border-radius:8px;font-size:14px;font-weight:600;color:var(--muted);text-decoration:none}.auth-back:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 6%,transparent)}.auth-mobile-logo{display:none}.auth-content{flex:1;display:grid;place-items:center;padding:16px clamp(20px,4vw,48px) 40px}.auth-content-inner{width:100%;max-width:420px}.auth-shell-wide .auth-content{place-items:start center}.auth-shell-wide .auth-content-inner{max-width:760px}.auth-footer{display:flex;flex-wrap:wrap;justify-content:space-between;gap:12px;padding:20px clamp(20px,4vw,48px);font-size:13px;color:var(--muted)}.auth-footer nav{display:flex;gap:20px}.auth-footer a{color:inherit;text-decoration:none}.auth-footer a:hover{color:var(--ink);text-decoration:underline}.auth-heading{margin-bottom:28px}.auth-heading h1{margin:0 0 8px;font-size:28px;line-height:1.2;letter-spacing:-.025em;font-weight:700;color:var(--ink)}.auth-heading p{margin:0;font-size:15px;line-height:1.55;color:var(--muted)}.auth-form{display:grid;gap:20px}.auth-field{display:grid;gap:8px;min-width:0}.auth-label-row{display:flex;align-items:baseline;justify-content:space-between;gap:12px}.auth-field label,.auth-label{font-size:14px;font-weight:600;color:var(--ink)}.auth-optional{font-weight:500;color:var(--muted)}.auth-input{position:relative;display:flex;align-items:center}.auth-input>svg{position:absolute;left:14px;color:var(--muted);pointer-events:none}.auth-input input,.auth-field select,.auth-field textarea,.auth-field>input{width:100%;min-height:var(--auth-field-h);padding:0 14px;border:1px solid var(--border);border-radius:10px;background:var(--surface);color:var(--ink);font:inherit;font-size:16px;transition:border-color .15s,box-shadow .15s}.auth-field textarea{min-height:112px;padding:12px 14px;resize:vertical;line-height:1.5}.auth-input>svg+input{padding-left:44px}.auth-input input:has(+.auth-input-action){padding-right:52px}.auth-input input:hover,.auth-field select:hover,.auth-field textarea:hover,.auth-field>input:hover{border-color:color-mix(in srgb,var(--ink) 30%,var(--border))}.auth-input input:focus,.auth-field select:focus,.auth-field textarea:focus,.auth-field>input:focus{outline:none;border-color:var(--teal);box-shadow:0 0 0 3px color-mix(in srgb,var(--teal) 22%,transparent)}.auth-field.has-error input,.auth-field.has-error select,.auth-field.has-error textarea{border-color:#c92a2a}.auth-input-action{position:absolute;right:6px;display:grid;place-items:center;width:36px;height:36px;border:0;border-radius:8px;background:transparent;color:var(--muted);cursor:pointer}.auth-input-action:hover{color:var(--ink);background:color-mix(in srgb,var(--ink) 7%,transparent)}.auth-input-action:focus-visible,.auth-link-button:focus-visible,.auth-submit:focus-visible,.auth-option:focus-visible,.auth-back:focus-visible{outline:2px solid var(--teal);outline-offset:2px}.auth-hint{margin:0;font-size:13px;line-height:1.5;color:var(--muted)}.auth-error{margin:0;font-size:13px;line-height:1.5;color:#c92a2a}:root[data-theme=dark] .auth-error{color:#ff8a8a}.auth-link-button{padding:0;border:0;background:none;font:inherit;font-size:13px;font-weight:600;color:var(--teal);cursor:pointer;border-radius:4px}.auth-link-button:hover{text-decoration:underline}.auth-submit{display:inline-flex;align-items:center;justify-content:center;gap:8px;width:100%;min-height:48px;padding:0 20px;border:0;border-radius:10px;background:var(--teal);color:#fff;font:inherit;font-size:16px;font-weight:650;cursor:pointer;box-shadow:0 1px 2px #0b1f3a24;transition:background .15s,transform .15s}:root[data-theme=dark] .auth-submit{color:#071a33}.auth-submit:hover:not(:disabled){background:var(--teal-dark)}.auth-submit:active:not(:disabled){transform:translateY(1px)}.auth-submit:disabled{opacity:.6;cursor:not-allowed}.auth-submit-secondary{background:transparent;color:var(--ink);border:1px solid var(--border);box-shadow:none}:root[data-theme=dark] .auth-submit-secondary{color:var(--ink)}.auth-submit-secondary:hover:not(:disabled){background:color-mix(in srgb,var(--ink) 5%,transparent)}.auth-spin{animation:auth-spin .9s linear infinite}@keyframes auth-spin{to{transform:rotate(360deg)}}.auth-alert{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border-radius:10px;border:1px solid #f1c0c0;background:#fdf1f1;color:#8a1f1f;font-size:14px;line-height:1.5}.auth-alert svg{flex-shrink:0;margin-top:2px}.auth-alert p{margin:0}.auth-alert-info{border-color:color-mix(in srgb,var(--teal) 30%,var(--border));background:color-mix(in srgb,var(--teal) 7%,var(--surface));color:var(--ink)}.auth-alert-info svg{color:var(--teal)}:root[data-theme=dark] .auth-alert:not(.auth-alert-info){border-color:#6b2a2a;background:#2a1414;color:#ffc9c9}.auth-divider{display:flex;align-items:center;gap:12px;margin:28px 0 20px;font-size:12px;font-weight:600;letter-spacing:.08em;text-transform:uppercase;color:var(--muted)}.auth-divider:before,.auth-divider:after{content:"";flex:1;height:1px;background:var(--border)}.auth-options{display:grid;gap:12px}.auth-option{display:grid;grid-template-columns:40px 1fr 20px;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--border);border-radius:12px;background:var(--surface);color:var(--ink);text-decoration:none;transition:border-color .15s,box-shadow .15s,transform .15s}.auth-option:hover{border-color:color-mix(in srgb,var(--teal) 45%,var(--border));box-shadow:0 6px 20px #0b1f3a12;transform:translateY(-1px)}.auth-option-icon{display:grid;place-items:center;width:40px;height:40px;border-radius:10px;background:color-mix(in srgb,var(--teal) 10%,transparent);color:var(--teal)}.auth-option strong{display:block;font-size:15px;font-weight:650}.auth-option small{display:block;margin-top:2px;font-size:13px;line-height:1.45;color:var(--muted)}.auth-option>svg{color:var(--muted)}.auth-help{margin-top:4px;padding:14px 16px;border-radius:10px;background:color-mix(in srgb,var(--ink) 4%,transparent);font-size:14px;line-height:1.55;color:var(--ink)}.auth-help p{margin:0}.auth-help p+p{margin-top:6px}.auth-help a{color:var(--teal);font-weight:600}.auth-signed-in{display:grid;gap:12px;padding:20px;border:1px solid var(--border);border-radius:12px;background:var(--surface)}.auth-signed-in p{margin:0;font-size:15px}@media(max-width:1080px){.auth-shell,.auth-shell-wide{grid-template-columns:1fr}.auth-brand{display:none}.auth-mobile-logo{display:block}.auth-back{order:0}.auth-topbar{border-bottom:1px solid var(--border);background:var(--surface)}.auth-content{place-items:start center;padding-top:40px}}@media(max-width:600px){.auth-back span,.auth-back{font-size:0;gap:0}.auth-back svg{width:20px;height:20px}.auth-back{width:40px;min-height:40px;padding:0;justify-content:center}.auth-content{padding:28px 16px 32px}.auth-heading h1{font-size:24px}.auth-footer{justify-content:center;padding:16px}}.tenant-auth{--ta-navy: var(--tenant-header, #061f37);--ta-primary: var(--teal);--ta-amber: var(--tenant-accent, #f9b233);--ta-amber-strong: var(--tenant-accent-strong, #ee7b22);--ta-on-amber: var(--tenant-on-accent, #061f37);--ta-amber-soft: var(--tenant-accent-soft, #ffe2a8);--ta-btn-from: var(--tenant-button-from, #ffc247);--ta-btn-hover-from: var(--tenant-button-hover-from, #ffb52e);--ta-btn-hover-to: var(--tenant-button-hover-to, #e06d14);--ta-hero-glow: var(--tenant-hero-glow, #0e4a7b);--ta-page: #f4f7fb;--ta-line: #dde5ef;--ta-card-shadow: 0 1px 2px #061f370f, 0 24px 60px -28px #061f3766;--auth-field-h: 48px;min-height:100vh;min-height:100dvh;display:flex;flex-direction:column;background:var(--ta-page);color:var(--ink)}:root[data-theme=dark] .tenant-auth{--ta-page: #0a1422;--ta-line: #22324a;--ta-card-shadow: 0 1px 2px #0006, 0 24px 60px -28px #000c}.tenant-auth-wrap{width:100%;max-width:1200px;margin:0 auto;padding:0 32px}.tenant-auth-skip{position:absolute;left:16px;top:-60px;z-index:100;padding:10px 16px;border-radius:8px;background:var(--ta-navy);color:#fff;font-weight:600}.tenant-auth-skip:focus{top:12px}.tenant-auth-header{position:sticky;top:0;z-index:50;background:color-mix(in srgb,var(--surface) 94%,transparent);-webkit-backdrop-filter:saturate(180%) blur(16px);backdrop-filter:saturate(180%) blur(16px);border-bottom:1px solid var(--ta-line)}.tenant-auth-header-inner{display:flex;align-items:center;gap:32px;height:76px}.tenant-auth-header .brand.tenant-brand{display:inline-flex;flex:none;border-radius:8px}.tenant-auth-header .tenant-brand-logo{width:auto;height:44px}:root[data-theme=dark] .tenant-auth-header .brand.tenant-brand{padding:4px 8px;background:#fff}:root[data-theme=dark] .tenant-auth-header .tenant-brand-logo{height:38px}.tenant-auth-nav{display:flex;gap:4px;margin-right:auto}.tenant-auth-nav a{padding:8px 12px;border-radius:8px;color:var(--ink);font-size:15px;font-weight:600;text-decoration:none}.tenant-auth-nav a:hover{background:color-mix(in srgb,var(--ta-primary) 8%,transparent);color:var(--ta-primary)}.tenant-auth-header-actions{display:flex;align-items:center;gap:12px;margin-left:auto}.tenant-auth-phone{display:inline-flex;align-items:center;gap:10px;padding:6px 14px 6px 8px;border:1px solid var(--ta-line);border-radius:999px;color:var(--ink);font-size:15px;font-weight:700;font-variant-numeric:tabular-nums;text-decoration:none}.tenant-auth-phone>svg{box-sizing:content-box;padding:7px;border-radius:50%;background:var(--ta-amber);color:var(--ta-on-amber)}.tenant-auth-phone small{display:block;font-size:11px;font-weight:600;letter-spacing:.04em;text-transform:uppercase;color:var(--muted)}.tenant-auth-phone:hover{border-color:color-mix(in srgb,var(--ta-amber) 70%,var(--ta-line))}.tenant-auth-main{flex:1}.tenant-auth-main:focus{outline:none}.tenant-auth-hero{position:relative;overflow:hidden;padding:64px 0 168px;color:#fff;background:radial-gradient(70% 120% at 0% 0%,color-mix(in srgb,var(--ta-primary) 70%,transparent),transparent 70%),linear-gradient(180deg,var(--ta-navy),color-mix(in srgb,var(--ta-navy) 80%,var(--ta-primary)))}:root[data-theme=dark] .tenant-auth-hero{background:radial-gradient(70% 120% at 0% 0%,color-mix(in srgb,var(--ta-hero-glow) 60%,transparent),transparent 70%),linear-gradient(180deg,#04111f,#071b30)}.tenant-auth-hero:after{content:"";position:absolute;left:0;right:0;bottom:0;height:4px;background:linear-gradient(90deg,var(--ta-amber),var(--ta-amber-strong))}.tenant-auth-hero-art{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}.ta-glow-stop{stop-color:var(--ta-amber)}.tenant-auth-hero-art svg{width:100%;height:100%}.ta-edge{fill:none;stroke:#ffffff40;stroke-width:2}.ta-lane{fill:none;stroke:var(--ta-amber);stroke-width:5;stroke-dasharray:18 26;opacity:.9;animation:ta-drive 1.6s linear infinite}.ta-horizon{stroke:#ffffff1f;stroke-width:1}.ta-grid path{stroke:#ffffff0d;stroke-width:1}@keyframes ta-drive{to{stroke-dashoffset:-44}}@media(prefers-reduced-motion:reduce){.ta-lane{animation:none}}.tenant-auth-hero-copy{position:relative;max-width:1200px}.tenant-auth-eyebrow{display:inline-flex;align-items:center;gap:8px;margin:0 0 16px;padding:6px 12px;border:1px solid #ffffff2e;border-radius:999px;background:#ffffff12;font-size:13px;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--ta-amber-soft)}.tenant-auth-eyebrow:before{content:"";width:8px;height:8px;border-radius:50%;background:var(--ta-amber)}.tenant-auth-display{max-width:640px;margin:0;font-family:"Manrope",var(--font-head, system-ui),sans-serif;font-size:clamp(30px,3.4vw,44px);font-weight:800;line-height:1.12;letter-spacing:-.025em}.tenant-auth-lead{max-width:560px;margin:16px 0 0;font-size:17px;line-height:1.6;color:#c9d8ea}.tenant-auth-stage{position:relative;z-index:2;display:grid;grid-template-columns:minmax(0,1fr) minmax(0,480px);gap:64px;margin-top:-136px}.tenant-auth-card{position:relative;border:1px solid var(--ta-line);border-radius:18px;background:var(--surface);box-shadow:var(--ta-card-shadow);overflow:hidden}.tenant-auth-card:before{content:"";display:block;height:4px;background:linear-gradient(90deg,var(--ta-primary),var(--ta-amber))}.tenant-auth-card-body{padding:32px 36px 28px}.tenant-auth-card-foot{display:flex;align-items:center;justify-content:center;gap:8px;margin:0;padding:14px 24px;border-top:1px solid var(--ta-line);background:color-mix(in srgb,var(--ta-page) 60%,var(--surface));font-size:13px;color:var(--muted)}.tenant-auth-switch{display:grid;grid-template-columns:1fr 1fr;gap:4px;margin:24px 36px 0;padding:4px;border-radius:12px;background:color-mix(in srgb,var(--ta-primary) 7%,var(--ta-page))}.tenant-auth-switch a{--ta-tab-ink: color-mix(in srgb, var(--ink) 80%, var(--muted));display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:40px;border-radius:9px;color:var(--ta-tab-ink);font-size:14px;font-weight:650;text-decoration:none;transition:background .15s,color .15s}.tenant-auth-switch a:hover{color:var(--ink)}.tenant-auth-switch a[aria-current=page]{background:var(--surface);color:var(--ta-primary);box-shadow:0 1px 2px #061f3724,0 2px 8px -4px #061f3740}.tenant-auth-switch a:focus-visible{outline:2px solid var(--ta-primary);outline-offset:1px}.tenant-auth .auth-heading h1{font-family:"Manrope",var(--font-head, system-ui),sans-serif;font-size:26px;font-weight:800}.tenant-auth .auth-submit:not(.auth-submit-secondary){background:linear-gradient(120deg,var(--ta-btn-from),var(--ta-amber-strong));color:var(--ta-on-amber);font-weight:750;box-shadow:0 1px 2px #061f3724,0 10px 24px -14px var(--ta-amber-strong)}.tenant-auth .auth-submit:not(.auth-submit-secondary):hover:not(:disabled){background:linear-gradient(120deg,var(--ta-btn-hover-from),var(--ta-btn-hover-to))}:root[data-theme=dark] .tenant-auth .auth-submit:not(.auth-submit-secondary){color:var(--ta-on-amber)}.tenant-auth .auth-submit:focus-visible{outline:3px solid var(--ta-primary);outline-offset:2px}.tenant-auth .auth-option{border-radius:12px}.tenant-auth .auth-option-icon{background:color-mix(in srgb,var(--ta-amber) 18%,transparent);color:color-mix(in srgb,var(--ta-amber-strong) 60%,var(--ink))}.tenant-auth-features{align-self:start;padding-top:176px;padding-bottom:72px;max-width:520px}.tenant-auth-features h2{margin:0 0 20px;font-family:"Manrope",var(--font-head, system-ui),sans-serif;font-size:22px;font-weight:800;letter-spacing:-.015em;color:var(--ink)}.tenant-auth-features ul{list-style:none;display:grid;gap:12px;margin:0;padding:0}.tenant-auth-features li{display:grid;grid-template-columns:44px 1fr;gap:16px;align-items:start;padding:18px 20px;border:1px solid var(--ta-line);border-radius:14px;background:var(--surface)}.tenant-auth-feature-icon{display:grid;place-items:center;width:44px;height:44px;border-radius:12px;background:color-mix(in srgb,var(--ta-primary) 10%,transparent);color:var(--ta-primary)}.tenant-auth-features li strong{display:block;margin-bottom:2px;font-family:"Manrope",var(--font-head, system-ui),sans-serif;font-size:16px;color:var(--ink)}.tenant-auth-features li>span:last-child>span{display:block;font-size:15px;line-height:1.55;color:var(--muted)}.tenant-auth-help{margin:20px 0 0;font-size:15px;line-height:1.6;color:var(--muted)}.tenant-auth-help a{color:var(--ta-primary);font-weight:650}.tenant-auth-bottom .tenant-auth-features{max-width:none;padding-top:48px}.tenant-auth-bottom .tenant-auth-features ul{grid-template-columns:repeat(3,minmax(0,1fr))}.tenant-auth-footer{background:var(--ta-navy);color:#b9c9dc}:root[data-theme=dark] .tenant-auth-footer{background:#04101d}.tenant-auth-footer-inner{display:flex;align-items:center;justify-content:space-between;gap:24px;padding-top:24px;padding-bottom:24px;font-size:14px}.tenant-auth-footer-brand{display:flex;align-items:center;gap:10px;margin:0}.tenant-auth-footer-brand svg{flex:none;color:var(--ta-amber)}.tenant-auth-footer nav{display:flex;flex-wrap:wrap;gap:4px 20px}.tenant-auth-footer a{display:inline-flex;align-items:center;gap:4px;color:#fff;font-weight:600;text-decoration:none}.tenant-auth-footer a:hover{color:var(--tenant-accent-soft, #ffd27a)}.tenant-auth-wide .tenant-auth-stage{grid-template-columns:minmax(0,1fr) 320px;gap:24px;justify-content:stretch;align-items:start}.tenant-auth-wide .tenant-auth-hero{padding-bottom:156px}.tenant-auth-aside{position:sticky;top:100px;border-radius:18px;background:var(--ta-navy);overflow:hidden}:root[data-theme=dark] .tenant-auth-aside{background:#0d1d31;border:1px solid var(--ta-line)}.tenant-auth-aside .appt-aside{margin:0;border:0;background:transparent}@media(max-width:1080px){.tenant-auth-nav{display:none}.tenant-auth-stage{grid-template-columns:minmax(0,520px);justify-content:center;gap:0}.tenant-auth-stage>.tenant-auth-features{order:2;max-width:none;padding-top:48px}.tenant-auth-bottom .tenant-auth-features ul{grid-template-columns:1fr}.tenant-auth-hero-copy{text-align:center}.tenant-auth-display,.tenant-auth-lead{margin-left:auto;margin-right:auto}.tenant-auth-wide .tenant-auth-stage{grid-template-columns:minmax(0,1fr)}.tenant-auth-wide .tenant-auth-aside{position:static;order:-1}}@media(max-width:720px){.tenant-auth-wrap{padding:0 16px}.tenant-auth-header-inner{height:64px;gap:12px}.tenant-auth-header .tenant-brand-logo{height:36px}.tenant-auth-phone{padding:4px}.tenant-auth-phone>span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}.tenant-auth-hero{padding:36px 0 120px}.tenant-auth-wide .tenant-auth-hero{padding-bottom:112px}.tenant-auth-eyebrow{font-size:12px}.tenant-auth-lead{font-size:16px}.tenant-auth-stage{margin-top:-96px}.tenant-auth-card-body{padding:24px 20px 20px}.tenant-auth-switch{margin:20px 20px 0}.tenant-auth-stage>.tenant-auth-features,.tenant-auth-bottom .tenant-auth-features{padding-top:36px;padding-bottom:48px}.tenant-auth-features li{padding:16px}.tenant-auth-footer-inner{flex-direction:column;align-items:flex-start}}
