html.auth-route .app-shell,html.account-route .app-shell{height:auto;min-height:100dvh;display:block;background:none}
html.auth-route .conversation,html.account-route .conversation{overflow:visible;scroll-behavior:auto}
html.auth-route .thread{max-width:600px;padding:40px 24px 80px}
html.auth-route .header-actions,html.auth-route .brand-note{display:none}
.auth-page{width:100%;display:block}.auth-card{max-width:440px;margin:0 auto;padding:32px;background:var(--panel);border:1px solid var(--line);border-radius:24px;display:flex;flex-direction:column;gap:18px}
.auth-card h1{font:400 32px/1.2 Georgia,serif;margin:0}.auth-card p{margin:0;line-height:1.55}.auth-card form{display:flex;flex-direction:column;gap:20px}.auth-card>a{font-size:14px;text-align:center;padding:6px;text-underline-offset:4px}.auth-card .eyebrow{font-size:11px}
.auth-card .account-field,.account-dialog .account-field{display:flex;flex-direction:column;gap:8px;position:relative;font-size:14px}
.auth-card input,.account-dialog input{width:100%;min-height:48px;font-size:16px;padding:12px 14px;border:1px solid var(--line-strong);border-radius:12px;color:var(--ink);background:var(--bg)}
.auth-card input[type=password],.auth-card input[name=password],.auth-card input[name=new-password]{padding-right:88px}.auth-card input[readonly]{color:var(--muted)}.password-toggle{position:absolute;right:7px;bottom:3px;min-height:42px;font-size:12px}
.auth-card .primary-button{width:100%;min-height:48px}.auth-card .account-feedback:empty{display:none}.auth-card .account-feedback{line-height:1.5;font-size:14px}.auth-card .account-feedback[role=alert]{color:var(--ink);padding:12px;border-left:2px solid var(--gold)}
.account-dialog{width:min(480px,calc(100vw - 32px));max-height:calc(100dvh - 32px);overflow:auto}.account-dialog form{display:grid;gap:18px}.account-dialog>img{display:block;margin:20px auto;border-radius:12px}.account-dialog .recovery-codes{display:block;overflow-wrap:anywhere;white-space:pre-wrap;user-select:text}.account-dialog>button{margin:6px 4px 6px 0}
@media(max-width:599px){html.auth-route .thread{padding:24px 16px 60px}.auth-card{padding:20px 0;border:0;background:none;border-radius:0}.auth-card h1{font-size:30px}html.auth-route .topbar{padding:16px}.account-dialog{width:100%;max-width:none;height:100dvh;max-height:100dvh;margin:0;border:0;border-radius:0;padding:28px 20px max(28px,env(safe-area-inset-bottom))}.account-dialog h2{padding-right:30px}.account-confirm{max-width:calc(100vw - 32px)}}

.google-button{display:flex;align-items:center;justify-content:center;gap:12px;width:100%;min-height:48px;padding:12px 16px;border:1px solid #747775;border-radius:12px;background:#fff;color:#1f1f1f;font:500 16px/20px Arial,sans-serif;cursor:pointer}.google-button>span:first-child{display:flex;flex:0 0 20px}.google-button:disabled{opacity:.65;cursor:wait}.google-button:focus-visible{outline:3px solid var(--gold);outline-offset:3px}.auth-divider{display:flex;align-items:center;gap:14px;color:var(--muted);font-size:13px}.auth-divider:before,.auth-divider:after{content:"";height:1px;background:var(--line);flex:1}[data-theme=dark] .google-button{background:#131314;color:#e3e3e3;border-color:#8e918f}.google-account-actions{display:flex;flex-wrap:wrap;gap:12px;align-items:center}.google-account-actions .google-button{width:auto;max-width:100%}

/* TRLG-028: the last-used tab occupies existing space above its control. */
.auth-last-control{display:block;position:relative;min-width:0;width:100%}
.auth-last-used{position:absolute;z-index:1;right:12px;bottom:calc(100% - 1px);max-width:calc(100% - 24px);padding:3px 8px 1px;border:1px solid var(--line-strong);border-bottom:0;border-radius:7px 7px 0 0;background:var(--bg);color:var(--ink);font:400 11px/1.35 system-ui,sans-serif;white-space:nowrap;pointer-events:none}
.auth-last-control:has(>.google-button)>.auth-last-used{border-color:#747775;background:#fff;color:#1f1f1f}
[data-theme=dark] .auth-last-control:has(>.google-button)>.auth-last-used{border-color:#8e918f;background:#131314;color:#e3e3e3}
