/* Public welcome and authentication never share the fixed application sidebar. */
body.entry-screen{overflow:auto;background:var(--bg)}
body.entry-screen #nav,body.entry-screen #tabbar,body.entry-screen>.sb-burger,body.entry-screen>.sb-backdrop{display:none!important}
body.entry-screen #view{width:100%!important;min-height:100dvh;height:auto;margin:0!important;padding:0!important}
.entry-header{height:84px;max-width:1200px;padding:20px 36px;margin:auto;display:flex;align-items:center;justify-content:space-between;gap:20px}
.entry-brand{display:inline-flex;align-items:center;gap:12px;color:var(--text);flex-shrink:0}
.entry-brand .botface{width:33px;height:27px}
.entry-brand b{font-size:calc(22px * var(--ui-font-scale, 1));font-weight:700;letter-spacing:-1px}
.entry-brand b span{font-weight:450;color:#87878c}
.entry-header nav{display:flex;align-items:center;gap:22px;font-size:calc(14px * var(--ui-font-scale, 1))}
.entry-nav-hint{color:var(--muted);font-size:calc(13px * var(--ui-font-scale, 1))}
.entry-link{color:var(--text);font-weight:500;white-space:nowrap}
.entry-link:hover{color:var(--primary)}
.entry-header .btn{padding:9px 20px;min-height:40px;font-size:calc(13px * var(--ui-font-scale, 1))}
.entry-body{min-height:calc(100dvh - 84px);display:flex;align-items:center;justify-content:center;padding:24px 20px 64px}
.entry-screen .auth-card{box-sizing:border-box;width:100%;max-width:420px;padding:32px;border:1px solid var(--border);border-radius:26px;background:#fff;box-shadow:0 12px 50px #00000004}
.auth-heading{margin-bottom:26px;text-align:center}
.auth-heading h1{font-size:calc(26px * var(--ui-font-scale, 1));font-weight:650;line-height:1.3;letter-spacing:-.7px;margin:0 0 9px}
.auth-heading p{font-size:calc(13px * var(--ui-font-scale, 1));color:var(--muted);line-height:1.6;margin:0}
.entry-screen .auth-card form{display:flex;flex-direction:column;gap:18px;margin:0}
.entry-screen .auth-card form.hidden{display:none}
.entry-screen .auth-card label{display:flex;flex-direction:column;gap:8px;font-size:calc(13px * var(--ui-font-scale, 1));line-height:1.5;color:var(--text)}
.entry-screen .auth-card .input{background:#fafafa;border:1px solid var(--border);border-radius:12px;min-height:46px;width:100%;font-size:calc(15px * var(--ui-font-scale, 1));padding:10px 13px}
.entry-screen .auth-card .input:focus{border-color:var(--primary);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary) 9%,transparent);outline:none}
.auth-password{position:relative;display:block}
.entry-screen .auth-password .input{padding-right:58px}
.password-toggle{position:absolute;right:6px;top:5px;height:36px;border:0;background:transparent;border-radius:9px;padding:0 9px;color:var(--muted);font-size:calc(12px * var(--ui-font-scale, 1));cursor:pointer}
.password-toggle:hover{color:var(--primary);background:var(--bg-soft)}
.entry-screen .auth-card .btn-block{margin-top:2px;min-height:46px;width:100%;font-size:calc(14px * var(--ui-font-scale, 1))}
.entry-screen .auth-card .auth-alt{font-size:calc(13px * var(--ui-font-scale, 1));text-align:center;color:var(--muted);margin:24px 0 0}
.auth-alt a{margin-left:5px;color:var(--primary);font-weight:500}
.auth-feedback{border-radius:10px;background:#fff2f4;color:#b93445;padding:10px 12px;margin:0 0 16px;font-size:calc(13px * var(--ui-font-scale, 1));line-height:1.5;overflow-wrap:anywhere}
.auth-optional{font-size:calc(12px * var(--ui-font-scale, 1));color:var(--muted)}
.auth-optional summary{cursor:pointer;padding:0 0 2px}
.auth-optional>div{display:flex;flex-direction:column;gap:15px;padding-top:15px}
.entry-screen .auth-card .seg{margin:0 0 22px}
.auth-test-note{font-size:calc(12px * var(--ui-font-scale, 1));color:var(--muted);margin:0}
.entry-home{max-width:1040px;margin:0 auto;padding:52px 30px 56px}
.entry-hero{text-align:center;margin:0 auto 56px;max-width:730px}
.entry-hero .welcome-face{margin:0 auto 26px}
.entry-hero .welcome-face .botface{width:64px;height:52px}
.entry-hero h1{font-size:calc(44px * var(--ui-font-scale, 1));line-height:1.25;letter-spacing:-1.4px;font-weight:650;margin:0 0 18px}
.entry-hero>p{font-size:calc(16px * var(--ui-font-scale, 1));line-height:1.8;color:var(--muted);margin:0 auto 28px;max-width:440px}
.entry-hero .btn-row{justify-content:center;gap:12px;margin:0}
.entry-hero .btn{padding:12px 27px;min-height:48px;font-size:calc(15px * var(--ui-font-scale, 1))}
.entry-features{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}
.entry-feature{border:1px solid var(--border);border-radius:22px;background:#fff;padding:25px}
.entry-feature>span{display:inline-flex;align-items:center;justify-content:center;width:39px;height:39px;border-radius:13px;background:var(--bg-soft);color:var(--text);margin-bottom:17px}
.entry-feature h2{font-size:calc(16px * var(--ui-font-scale, 1));font-weight:600;margin:0 0 9px}
.entry-feature p{font-size:calc(13px * var(--ui-font-scale, 1));line-height:1.8;color:var(--muted);margin:0}
.entry-footnote{text-align:center;color:var(--muted);font-size:calc(12px * var(--ui-font-scale, 1));margin:26px 0 0}
@media(max-height:700px) and (min-width:768px){.entry-header{height:64px;padding-top:12px;padding-bottom:12px}.entry-body{min-height:calc(100dvh - 64px);padding:16px 20px 32px}.entry-screen .auth-card{padding:25px 30px}.auth-heading{margin-bottom:22px}.entry-home{padding-top:26px}.entry-hero{margin-bottom:32px}.entry-hero h1{font-size:calc(37px * var(--ui-font-scale, 1))}}
@media(max-width:767.98px){
 .entry-header{height:72px;padding:18px 22px;gap:12px}.entry-header nav{gap:17px;font-size:calc(13px * var(--ui-font-scale, 1))}.entry-nav-hint{display:none}.entry-brand{gap:9px}.entry-brand b{font-size:calc(20px * var(--ui-font-scale, 1))}.entry-header .btn{padding:8px 16px;min-height:36px;font-size:calc(12px * var(--ui-font-scale, 1))}
 .entry-body{min-height:calc(100dvh - 72px);padding:24px 20px 48px;align-items:flex-start}.entry-screen .auth-card{padding:28px 23px;border-radius:23px;max-width:420px}.auth-heading h1{font-size:calc(25px * var(--ui-font-scale, 1))}.entry-screen .auth-card .input{font-size:calc(16px * var(--ui-font-scale, 1))}
 .entry-home{padding:34px 22px 36px}.entry-hero{margin-bottom:36px}.entry-hero h1{font-size:calc(33px * var(--ui-font-scale, 1));letter-spacing:-1px}.entry-hero>p{font-size:calc(14px * var(--ui-font-scale, 1));max-width:300px;margin-bottom:24px}.entry-hero .btn{font-size:calc(14px * var(--ui-font-scale, 1));padding:11px 22px}.entry-features{grid-template-columns:1fr;gap:12px}.entry-feature{padding:20px 22px;display:grid;grid-template-columns:40px 1fr;column-gap:16px}.entry-feature>span{grid-row:span 2;margin-bottom:0}.entry-feature h2{font-size:calc(15px * var(--ui-font-scale, 1));margin-bottom:5px}.entry-feature p{font-size:calc(12px * var(--ui-font-scale, 1))}.entry-footnote{line-height:1.7}
}
[data-theme=dark] .entry-screen .auth-card,[data-theme=dark] .entry-feature{background:#242427}
[data-theme=dark] .auth-feedback{background:#3b232a;color:#ffb6c1}

/* P123 approved option 14: brand surfaces only; bot avatars stay user-owned. */
.brand-logo{display:inline-block;object-fit:contain;flex-shrink:0;vertical-align:middle}
.entry-brand .brand-logo{width:36px;height:36px}
.welcome-face .brand-logo{width:76px;height:76px}
.shell-brand .brand-logo{width:28px;height:28px;margin-right:5px}
