/* Shared visual language, restricted to the signed-out mobile applications. */
body.mobile-auth{--auth-ink:#173a32;--auth-paper:#fffdf7;--auth-line:#c9d3c7;--auth-sun:#f2c94c;background:#f7f2e6;color:var(--auth-ink);padding:0 0 env(safe-area-inset-bottom);min-height:100svh;font-family:var(--sans,Arial,sans-serif)}
.mobile-auth *{box-sizing:border-box}
.mobile-auth .app-header,.mobile-auth .team-header{position:static;width:100%;max-width:520px;margin:auto;padding:calc(16px + env(safe-area-inset-top)) 20px 16px;background:transparent;color:var(--auth-ink);border:0;border-bottom:1px solid var(--auth-line);border-radius:0;transform:none}
.mobile-auth .app-brand,.mobile-auth .team-brand{font:600 1.35rem/1.15 var(--serif,Georgia,serif);color:var(--auth-ink);gap:10px}
.mobile-auth .app-brand img,.mobile-auth .team-brand img{width:44px;height:44px;background:var(--auth-paper)}
.mobile-auth .app-brand small,.mobile-auth .team-brand small{font:400 .8rem/1.5 var(--sans,Arial,sans-serif);color:#526459;margin:3px 0 0}
.mobile-auth .app-help,.mobile-auth .team-help{width:44px;height:44px;flex-shrink:0;border:1px solid var(--auth-line);color:var(--auth-ink);background:var(--auth-paper)}
body.mobile-auth>main,body.mobile-auth>.eq-auth{width:100%;max-width:520px;min-height:0;margin:0 auto;padding:26px 20px 12px}
.mobile-auth .family-auth-shell.family-auth-branded{display:flex;flex-direction:column;width:100%;max-width:none;min-height:0;margin:0;padding:0;gap:22px;background:transparent;border:0;box-shadow:none}
.mobile-auth .family-auth-intro,.mobile-auth .mobile-auth-intro{margin:0;padding:0 4px;background:transparent;border:0;border-radius:0;color:var(--auth-ink)}
.mobile-auth .family-auth-intro:before,.mobile-auth .family-auth-intro:after{display:none}
.mobile-auth .family-auth-intro h1,.mobile-auth .mobile-auth-intro h1{font:500 clamp(2rem,8.5vw,2.7rem)/1.05 var(--serif,Georgia,serif);letter-spacing:-.035em;color:var(--auth-ink);margin:10px 0 14px}
.mobile-auth .family-auth-intro h1 em,.mobile-auth .mobile-auth-intro h1 em{color:var(--auth-ink);font-style:italic;background:linear-gradient(transparent 72%,#f2c94c 72%,#f2c94c 92%,transparent 92%)}
.mobile-auth .family-auth-intro>p:last-of-type,.mobile-auth .mobile-auth-intro>p:last-child{font-size:.95rem;line-height:1.55;color:#526459;margin:0;max-width:38ch}
.mobile-auth .family-auth-intro>ol,.mobile-auth .family-auth-intro>.family-guide-button{display:none}
.mobile-auth .family-eyebrow,.mobile-auth .eq-eyebrow{color:#486052;font:700 .7rem/1.5 var(--sans,Arial,sans-serif);letter-spacing:.12em;text-transform:uppercase;margin:0 0 6px}
.mobile-auth .family-auth-card,.mobile-auth .eq-auth>.eq-card.accent{width:100%;min-width:0;margin:0;padding:24px;background:var(--auth-paper);border:1px solid var(--auth-line);border-top:4px solid var(--auth-sun);border-radius:6px 24px 6px 24px;box-shadow:0 8px 24px #173a3206;color:var(--auth-ink)}
.mobile-auth .eq-auth>.eq-card.accent{margin-top:22px}
.mobile-auth .family-auth-card h2,.mobile-auth .eq-auth>.eq-card h2{font:500 1.65rem/1.2 var(--serif,Georgia,serif);color:var(--auth-ink);margin:6px 0 18px;letter-spacing:-.02em}
.mobile-auth .family-auth-card p,.mobile-auth .eq-card p{font-size:.9rem;line-height:1.6}
.mobile-auth .family-login-steps,.mobile-auth .mobile-auth-steps{list-style:none;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:0;margin:0 0 22px;background:transparent;border:0}
.mobile-auth .family-login-steps li,.mobile-auth .mobile-auth-steps li{padding:8px 5px;border:0;border-bottom:2px solid #dce2d8;background:transparent;color:#5c695f;font:500 .75rem/1.4 var(--sans,Arial,sans-serif);text-align:center;border-radius:0}
.mobile-auth .family-login-steps li[aria-current],.mobile-auth .mobile-auth-steps li[aria-current]{background:#f7edbd;color:var(--auth-ink);border-color:#97731b;border-radius:6px 6px 0 0}
.mobile-auth .family-form,.mobile-auth .eq-form{display:grid;gap:16px;margin:18px 0 0}
.mobile-auth .family-form label,.mobile-auth .eq-form label{display:grid;gap:7px;font:600 .875rem/1.4 var(--sans,Arial,sans-serif);color:var(--auth-ink)}
.mobile-auth .family-form input,.mobile-auth .eq-form input{width:100%;min-width:0;max-width:100%;min-height:50px;padding:12px;border:1px solid #aab9ab;border-radius:10px;background:#fff;color:var(--auth-ink);font:400 16px/1.4 var(--sans,Arial,sans-serif);box-shadow:none}
.mobile-auth input[autocomplete=one-time-code]{text-align:center;font-size:1.5rem;letter-spacing:.22em}
.mobile-auth .family-button,.mobile-auth .eq-button{display:flex;align-items:center;justify-content:center;width:100%;min-height:50px;padding:12px 14px;border:1px solid #aab9ab;border-radius:10px;background:transparent;color:var(--auth-ink);font:600 .875rem/1.4 var(--sans,Arial,sans-serif);letter-spacing:0;text-transform:none;text-decoration:none;text-align:center;white-space:normal;box-shadow:none}
.mobile-auth .family-form button.family-button,.mobile-auth .eq-form button.primary{background:var(--auth-ink);border-color:var(--auth-ink);color:var(--auth-paper)}
.mobile-auth .family-button:hover,.mobile-auth .eq-button:hover{transform:none;background:#edf1e5}
.mobile-auth .family-form button.family-button:hover,.mobile-auth .eq-form button.primary:hover{background:#2d5142}
.mobile-auth a:focus-visible,.mobile-auth button:focus-visible,.mobile-auth input:focus-visible{outline:3px solid #8c6814;outline-offset:3px}
.mobile-auth .family-login-links{display:flex;justify-content:space-between;gap:8px;flex-wrap:wrap;margin-top:16px}
.mobile-auth .family-login-links a,.mobile-auth .family-switch a,.mobile-auth .eq-card>p>a:not(.eq-button){display:inline-flex;align-items:center;min-height:44px;font-size:.83rem;color:var(--auth-ink);text-underline-offset:3px}
.mobile-auth .family-message,.mobile-auth .eq-notice{overflow-wrap:anywhere;border-radius:10px}
.mobile-auth .family-message.error,.mobile-auth .eq-notice.error{background:#fff0e9;color:#852e24;border:1px solid #ddaa9a}
.mobile-auth .eq-card.team-install,.mobile-auth .app-install{margin:22px 0 0;padding:18px;background:transparent;border:1px dashed #aab9ab;border-radius:14px;box-shadow:none}
.mobile-auth .eq-card.team-install h2{font-size:1.15rem;margin:0 0 8px}
.mobile-auth .team-footer,.mobile-auth .family-footer{max-width:520px;margin:auto;padding:18px 20px 24px;color:#526459;background:transparent;font-size:.8rem}
.mobile-auth .mobile-auth-help{margin:0;text-align:center;font-size:.85rem}.mobile-auth .mobile-auth-help a{display:inline-flex;align-items:center;min-height:44px;text-underline-offset:3px}
.mobile-auth [hidden]{display:none!important}
@media(max-width:360px){body.mobile-auth>main,body.mobile-auth>.eq-auth{padding:22px 14px 12px}.mobile-auth .family-auth-card,.mobile-auth .eq-auth>.eq-card.accent{padding:20px 16px}.mobile-auth .family-login-links{flex-direction:column}}
