.lavaegg-auth { --auth-accent:#d84304; --auth-accent-hover:#ba3500; --auth-text:#141414; --auth-muted:#5d6066; --auth-line:#9299a1; font-family:Arial,Helvetica,sans-serif; color:var(--auth-text); background:#fff; min-height:100vh; }
.lavaegg-auth *, .lavaegg-auth *::before, .lavaegg-auth *::after { box-sizing:border-box; }
.lavaegg-auth [hidden] { display:none !important; }
.lavaegg-auth button, .lavaegg-auth input { font-family:inherit; }
.lavaegg-auth button, .lavaegg-auth a { -webkit-tap-highlight-color:transparent; }
.lavaegg-auth button { cursor:pointer; }
.lavaegg-auth button:disabled { cursor:wait; opacity:.65; }
.lavaegg-auth a { text-decoration:none; color:inherit; }
.lavaegg-auth :focus-visible { outline:3px solid #2575ce; outline-offset:4px; }
.auth-header { display:flex; align-items:center; justify-content:space-between; padding:24px 62px; min-height:94px; }
.auth-brand { display:flex; align-items:center; gap:13px; font-size:35px; font-weight:700; letter-spacing:-1px; }
.auth-brand img { width:43px; height:48px; object-fit:contain; }
.auth-back { display:flex; align-items:center; gap:15px; font-size:22px; }
.auth-back img { width:25px; height:25px; }
.auth-main { width:min(592px,calc(100% - 40px)); margin:43px auto 0; }
.auth-content { text-align:center; }
.auth-context { margin:0 0 19px; display:flex; align-items:center; justify-content:center; gap:16px; color:var(--auth-accent); font-size:23px; line-height:30px; }
.auth-context img { width:32px; height:32px; filter:invert(29%) sepia(98%) saturate(3337%) hue-rotate(14deg) brightness(91%) contrast(106%); }
.auth-content h1 { font-size:62px; letter-spacing:-2px; line-height:1.12; margin:0; font-weight:700; }
.auth-subtitle { color:var(--auth-muted); font-size:25px; line-height:1.4; margin:10px -36px 0; }
.auth-form-area { margin-top:33px; }
.auth-google { width:100%; height:62px; display:flex; align-items:center; justify-content:center; gap:22px; border:1px solid #747775; border-radius:7px; background:#fff; color:#1f1f1f; font-size:26px !important; font-weight:500; }
.auth-google img { width:32px; height:32px; object-fit:contain; }
.auth-google:hover { background:#f7f8f8; }
.auth-google:active { background:#eef0f1; }
.auth-divider { display:flex; align-items:center; gap:21px; margin:25px 0 24px; color:var(--auth-muted); font-size:20px; line-height:26px; }
.auth-divider::before, .auth-divider::after { content:""; flex:1; border-top:1px solid #b8bec4; }
.auth-form-area form { text-align:left; }
.auth-label { display:block; font-size:22px; line-height:27px; font-weight:600; margin-bottom:6px; }
.auth-input { width:100%; height:54px; border:1.2px solid var(--auth-line); border-radius:7px; background:#fff; color:var(--auth-text); padding:10px 16px; font-size:23px !important; box-shadow:inset 0 1px 2px #00000006; }
.auth-input:hover { border-color:#5f666e; }
.auth-password-group { margin-top:18px; }
.auth-password-field { position:relative; }
.auth-password-field .auth-input { padding-right:59px; }
.auth-visibility { border:0; background:transparent; position:absolute; right:5px; top:5px; width:44px; height:44px; display:grid; place-items:center; border-radius:5px; }
.auth-visibility img { width:26px; height:26px; opacity:.65; }
.auth-visibility:hover { background:#f1f2f3; }
.auth-link { color:var(--auth-accent) !important; border:0; padding:0; background:none; font-size:inherit; line-height:inherit; }
.auth-link:hover { text-decoration:underline; color:var(--auth-accent-hover) !important; }
.auth-forgot { display:block; margin:13px 0 0 auto; font-size:20px !important; line-height:27px; }
.auth-status { font-size:17px; line-height:1.5; margin:20px 0 -20px; padding:12px 14px; border-radius:6px; background:#f3f6f8; color:#303841; overflow-wrap:anywhere; }
.auth-status[data-tone="error"] { background:#fff2ee; color:#9e280a; }
.auth-submit { margin-top:42px; width:100%; height:60px; border:1px solid #d33c03; background:var(--auth-accent); border-radius:8px; color:#fff; font-size:25px !important; font-weight:700; box-shadow:0 1px 2px #00000006; }
.auth-submit:hover { background:var(--auth-accent-hover); }
.auth-submit:active { transform:translateY(1px); }
.auth-create-prompt, .auth-return-prompt { font-size:22px; line-height:29px; margin:30px 0 0; }
.auth-create-prompt .auth-link { font-weight:600; margin-left:4px; }
.auth-footer { display:flex; align-items:center; justify-content:center; gap:15px; margin-top:48px; padding-bottom:30px; color:#50535a; font-size:18px; line-height:24px; }
.auth-footer a:hover { text-decoration:underline; }
.auth-signed-in { margin:25px 0 0; }
.auth-continue { display:flex; align-items:center; justify-content:center; text-decoration:none !important; }
.auth-identity { margin:24px 0; }
.lavaegg-identity { display:flex; align-items:center; justify-content:center; gap:14px; text-align:left; min-width:0; }
.identity-avatar { display:block; flex:none; width:52px; height:52px; }
.identity-avatar img { width:52px; height:52px; object-fit:cover; border-radius:50%; }
.identity-no-photo { opacity:.55; }
.identity-details { display:flex; flex-direction:column; gap:5px; min-width:0; }
.identity-name { font-size:19px; line-height:24px; overflow-wrap:anywhere; }
.identity-identifier { font-size:15px; line-height:21px; color:var(--auth-muted,#5d6066); overflow-wrap:anywhere; }
.lavaegg-auth[data-auth-screen="recover-password"] .auth-form-area { margin-top:38px; }
@media(max-width:700px) {
 .auth-header { min-height:78px; padding:18px 20px; gap:18px; }
 .auth-brand { font-size:26px; gap:9px; letter-spacing:-.7px; }
 .auth-brand img { width:30px; height:36px; }
 .auth-back { font-size:15px; gap:6px; }
 .auth-back img { width:20px; height:20px; }
 .auth-main { width:calc(100% - 40px); max-width:460px; margin-top:35px; }
 .auth-context { font-size:17px; line-height:25px; gap:10px; margin-bottom:19px; }
 .auth-context img { width:27px; height:27px; }
 .auth-content h1 { font-size:43px; letter-spacing:-1.3px; }
 .auth-subtitle { font-size:18px; line-height:1.45; margin:11px 0 0; }
 .auth-form-area { margin-top:27px; }
 .auth-google { height:54px; font-size:19px !important; gap:14px; }
 .auth-google img { width:26px; height:26px; }
 .auth-divider { font-size:15px; gap:16px; margin:22px 0; line-height:22px; }
 .auth-label { font-size:17px; line-height:24px; }
 .auth-input { height:52px; font-size:18px !important; padding:10px 13px; }
 .auth-password-group { margin-top:17px; }
 .auth-visibility { top:4px; }
 .auth-forgot { font-size:16px !important; line-height:24px; margin-top:12px; }
 .auth-submit { margin-top:31px; height:54px; font-size:19px !important; }
 .auth-create-prompt, .auth-return-prompt { font-size:16px; line-height:25px; margin-top:26px; }
 .auth-footer { margin-top:38px; font-size:15px; }
 .auth-status { font-size:15px; margin-bottom:-10px; }
}
@media(max-width:350px) {
 .auth-header { padding:16px; gap:8px; }
 .auth-brand { font-size:23px; gap:6px; }
 .auth-back { font-size:13px; }
 .auth-main { width:calc(100% - 32px); margin-top:26px; }
 .auth-context { font-size:15px; gap:8px; }
 .auth-content h1 { font-size:39px; }
 .auth-subtitle { font-size:17px; }
}
