/* Approved independent login homepage, scoped away from discovery/business pages. */
.entry-password-links{display:flex;justify-content:space-between;gap:12px;margin-top:12px}
.entry-home .entry-password-links button{border:0;background:none;color:#4f35c8;font-size:12px;min-height:44px;padding:0}
.entry-reset-title{font-size:18px;color:#28252d;margin:0}
body.entry-home-mode { background:#FAF8F5; }
body.entry-home-mode .desktop-brand { display:none; }
body.entry-home-mode .app-shell { width:min(100%,430px); background:#FAF8F5; box-shadow:none; }
.entry-home.login-screen { padding:44px 24px 30px; background:#FAF8F5; min-height:100vh; color:#28252D; font:15px/1.6 -apple-system,BlinkMacSystemFont,"PingFang SC","Microsoft YaHei",sans-serif; }
.entry-home button,.entry-home input { font:inherit; }
.entry-brand { display:flex; align-items:center; justify-content:center; gap:12px; }
.entry-brand img { width:104px; height:52px; object-fit:contain; }
.entry-brand div { color:#514B5E; font-size:12px; line-height:18px; }
.entry-intro { margin:24px 0 24px; text-align:center; }
.entry-intro h1 { margin:0 0 8px; font-size:26px; line-height:1.4; font-weight:700; letter-spacing:0; }
.entry-intro p { margin:0; font-size:15px; color:#655E6C; }
.entry-panel { border:1px solid #EEE6DF; background:white; border-radius:24px; padding:20px; }
.entry-tabs { display:flex; border-bottom:1px solid #EEE6DF; gap:12px; margin-bottom:24px; }
.entry-tabs button { flex:1; min-height:48px; border:0; background:none; color:#655E6C; font-size:15px; white-space:nowrap; padding:0 0 12px; position:relative; border-radius:0; }
.entry-tabs button[aria-selected=true] { color:#4F35C8; font-weight:600; }
.entry-tabs button[aria-selected=true]:after { content:""; position:absolute; bottom:-1px; left:20%; right:20%; height:3px; background:#6C4CF1; border-radius:3px; }
.entry-label { display:block; color:#514B5E; font-size:14px; margin:16px 0 8px; }
.entry-input { display:flex; border:1px solid #A79EAD; border-radius:12px; height:52px; align-items:center; }
.entry-input>span { padding:0 12px; border-right:1px solid #D8D1DC; font-size:15px; }
.entry-input input { width:100%; min-width:0; height:50px; border:0; background:transparent; padding:12px; color:#28252D; outline:none; font-size:15px; border-radius:12px; }
.entry-input input::placeholder { color:#736B79; }
.entry-input:focus-within { outline:2px solid #6C4CF1; outline-offset:2px; }
.entry-home .entry-get-code { white-space:nowrap; flex-shrink:0; height:44px; border:0; background:transparent; color:#4F35C8; font-size:14px; font-weight:600; padding:0 12px; }
.entry-legal { margin:22px 0 14px; display:flex; gap:8px; align-items:flex-start; color:#655E6C; font-size:12px; line-height:20px; text-align:left; }
.entry-legal input { appearance:none; width:18px; height:18px; flex-shrink:0; border:1px solid #817987; border-radius:4px; margin:2px 0; cursor:pointer; }
.entry-legal input:checked { background:#6C4CF1; border-color:#6C4CF1; box-shadow:inset 0 0 0 3px white; }
.entry-legal button { color:#4F35C8; background:none; padding:0; border:0; font-size:inherit; line-height:inherit; }
.entry-home .entry-primary { width:100%; height:52px; border:0; border-radius:12px; background:#FF8A34; color:#34261E; font-weight:700; font-size:16px; box-shadow:none; }
.entry-home button:disabled { opacity:.6; cursor:not-allowed; }
.entry-helper { font-size:12px; color:#655E6C; text-align:center; margin:12px 0 0; }
.entry-notice { min-height:24px; font-size:12px; color:#8B3A08; margin:10px 0 0; }
.entry-footer { text-align:center; margin:30px 0 0; font-size:12px; color:#655E6C; }
.entry-scan { text-align:center; }
.entry-scan h2 { font-size:16px; margin:4px 0 16px; }
.entry-qr-pending,.entry-scan .web-scan-qr-shell { width:184px; height:184px; margin:0 auto; border:1px solid #D7CFDC; border-radius:16px; background:#FAF8F5; padding:12px; }
.entry-qr-pending { display:grid; place-content:center; gap:6px; color:#655E6C; font-size:12px; }
.entry-qr-pending strong { font-size:16px; color:#514B5E; }
.entry-scan .web-scan-qr { width:100%; height:100%; object-fit:contain; }
.entry-scan .web-scan-instruction b,.entry-scan .web-scan-instruction small { color:#655E6C; font-size:12px; }
.entry-scan .web-scan-fallback-toggle { min-height:44px; font-size:12px; }
.entry-home .invite-login-card { margin:0 0 20px; }
@media(max-width:375px) { .entry-home.login-screen { padding:32px 16px 24px; } .entry-panel { padding:16px; } .entry-home .entry-get-code { padding:0 9px; } }
@media(min-width:800px) { .entry-home.login-screen { padding-top:72px; } }
