.access-gate{max-width:550px;margin:55px auto 75px;padding:46px;background:white;border:1px solid var(--line);border-radius:18px;text-align:center}.gate-brand{font-size:10px;letter-spacing:2px;color:#8b9e88}.access-gate h1{font-size:29px;letter-spacing:-1.3px;margin:24px 0 17px}.access-gate>p{font-size:13px;color:#7c8d76;line-height:1.9}.gate-features{display:flex;justify-content:center;gap:10px;margin:28px 0}.gate-features span{background:#eff3eb;color:#6a815d;padding:8px 13px;font-size:11px;border-radius:6px}.access-gate .muted{font-size:11px;margin-top:22px}.is-guest .sidebar nav,.is-guest .sidebar-note,.is-guest .sidebar-bottom,.is-guest .workspace-label{visibility:hidden}.is-guest #resetBtn{display:none}.signup{margin-top:24px;border-top:1px solid var(--line);padding-top:20px}.signup summary{font-size:12px;color:var(--green);cursor:pointer}.profile-note{padding:13px 16px;background:#eff3eb;border-radius:8px;font-size:11px;line-height:1.8;color:#72816b;margin:20px 0 8px}input[readonly]{background:#f1f4ee;color:#5c7055;border-color:#e1e7db}#logoutBtn{font-size:11px;color:#72816b;text-decoration:underline}.account-name{max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media(max-width:700px){.is-guest .sidebar nav{display:none}.access-gate{margin:20px auto;padding:30px 20px}.access-gate h1{font-size:24px}.gate-features{gap:7px}.gate-features span{padding:8px 10px}.account-name{max-width:105px}.demo-chip{display:none}#logoutBtn{font-size:10px}}
.top-actions #logoutBtn{white-space:nowrap}
/* Keep the login dialog and its focus ring inside narrow or zoomed viewports. */
#loginDialog{width:min(480px,calc(100vw - 24px));max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);min-width:0;margin:auto;padding:clamp(16px,4vw,28px);overflow:auto;overscroll-behavior:contain;scrollbar-gutter:stable}
#loginDialog .modal-head{gap:12px;align-items:flex-start;padding-bottom:12px;min-width:0}
#loginDialog .modal-head h2{min-width:0;overflow-wrap:anywhere;line-height:1.4}
#loginDialog .close{flex:0 0 40px;width:40px;height:40px;display:grid;place-items:center;padding:0;line-height:1;border-radius:8px;outline-offset:-3px}
#loginDialog>a.full{display:flex;justify-content:center;align-items:center;width:100%;min-height:48px;margin:12px 0 0;white-space:normal;text-align:center;line-height:1.5}
#loginDialog>.muted,#loginDialog>.form-foot{line-height:1.75;overflow-wrap:anywhere}
#loginDialog input,#loginDialog select,#loginDialog form{min-width:0;max-width:100%}
@media(max-width:380px){#loginDialog .modal-head h2{font-size:20px}#loginDialog .form-grid{grid-template-columns:minmax(0,1fr)}}
.member-card{padding:18px 0;border-bottom:1px solid var(--line)}.member-heading{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.member-role{font-size:11px;border-radius:20px;padding:3px 10px;background:#edf2e8;color:#173e35}.member-card p{font-size:12px;line-height:1.8;overflow-wrap:anywhere;color:#72816b}.member-actions{display:flex;flex-wrap:wrap;gap:8px;align-items:center}.member-actions button{margin:0}.member-danger{color:#a53629!important;border-color:#e1c8c1!important}
@media(max-width:700px){.topbar{height:auto;min-height:55px;flex-wrap:wrap;gap:9px;padding-block:10px}.breadcrumb{white-space:nowrap;flex-shrink:0}.top-actions{margin-left:auto;min-width:0;flex-wrap:nowrap}.login-btn{white-space:nowrap;min-width:0}.account-name{min-width:0;flex-shrink:1}.login-btn .avatar{flex-shrink:0}}

@media(max-width:700px){.sidebar nav{overflow-x:auto;flex-wrap:nowrap;scrollbar-width:thin}.sidebar nav a{flex-shrink:0;white-space:nowrap}}
