#userLoginGate{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:#07111fd9;backdrop-filter:blur(5px)}#userLoginGate[hidden]{display:none}.userLoginCard{width:min(390px,100%);padding:26px;background:#fff;box-shadow:0 24px 70px #0006}.userLoginBrand{display:flex;align-items:center;gap:10px;padding-bottom:18px;border-bottom:1px solid #e2e8f0}.userLoginBrand .avatar{width:42px;height:42px;font-size:13px}.userLoginBrand strong,.userLoginBrand small{display:block}.userLoginBrand small{color:#64748b;font-size:10px;margin-top:2px}.userLoginCard h2{margin:20px 0 3px;font-size:21px;color:#10233e}.userLoginCard>p{margin:0 0 15px;color:#64748b;font-size:12px}.userLoginCard form{display:grid;gap:12px}.userLoginCard label{display:grid;gap:5px;color:#42566d;font-size:10px;font-weight:800}.userLoginCard .btn{width:100%;margin-top:4px}.userLoginMessage{padding:8px 10px;margin:0 0 12px;background:#fff7ed;color:#c2410c;border-left:3px solid #f59e0b;font-size:11px}.userLoginNote{display:block;margin-top:15px;color:#718096;font-size:10px;line-height:1.45}#signOutButton{color:#c2410c}
.sessionSignOutAction{margin-top:auto!important;color:#fecaca!important;background:#3f1219!important;border-left-color:#fb7185!important}.sessionSignOutAction svg{color:#fda4af!important}

/* Compact profile drawer, matched to the demo's access view. */
#modal:has(.profileAccess){justify-content:flex-end;padding:84px 28px 28px}#modal:has(.profileAccess) .dialog{width:min(525px,calc(100vw - 36px));margin:0;border-radius:0;max-height:calc(100vh - 112px)}
#modal:has(.profileAccess) .dialoghead{display:none}.profileAccess{display:flex;flex-direction:column;max-height:calc(100vh - 112px);background:#f7fbff}.profileAccessHero{min-height:0;display:block;padding:14px 18px 16px;background:linear-gradient(135deg,#102d3f,#0c455c);color:#eaf7ff}.profileHeroTitle{display:flex;align-items:center;gap:9px}.profileHeroTitle p{margin:0;flex:1;font-size:14px;font-weight:800;letter-spacing:.3px}.profileShield{display:inline-flex;color:#4dd6ff}.profileClose{color:#fff;border:0;background:#ffffff22;font-size:24px;line-height:30px;width:32px;height:32px;cursor:pointer}.profileIdentity{display:flex;align-items:center;gap:12px;padding-top:14px}.profileAvatar{width:56px;height:56px;display:grid;place-items:center;background:#7c5cff;border:3px solid #aa9cff;font-size:26px;font-weight:800;color:#fff}.profileIdentity h3{margin:0 0 4px;color:#fff;font-size:20px}.profileIdentity b{display:inline-block;padding:3px 9px;background:#26bce9;color:#06324b;font-size:11px}.profileIdentity small{margin-left:8px;color:#b8d6e7}.profileAccessBody{padding:13px 18px 16px;overflow:auto}.profileAccessBody h4{margin:0;color:#657991;font-size:12px}.accessSummary{display:block;margin:5px 0 12px;color:#009b62;font-size:13px}.accessTabs{display:flex;border-bottom:1px solid #d7e1eb}.accessTabs button{border:0;background:transparent;padding:8px 10px;color:#657991;font-weight:700;font-size:12px;cursor:pointer}.accessTabs button.active{color:#10233e;background:#edf3fa;border-bottom:2px solid #2563eb}.accessSearch{display:flex;align-items:center;gap:7px;margin:13px 0 10px;padding:0 10px;border:1px solid #d3dfec;background:#f8fbff;color:#8ba0b5}.accessSearch input{border:0;background:transparent;outline:0;width:100%;padding:9px 0;font-size:12px}.accessRows{border:1px solid #e0e8f0}.accessRow{display:flex;align-items:center;gap:11px;padding:10px;border-bottom:1px solid #e5edf4;background:#fff}.accessRow:last-child{border-bottom:0}.accessRow strong{font-size:13px;flex:1;color:#182d48}.accessIcon{width:30px;height:30px;display:grid;place-items:center;color:#06a75e;background:#eafaf1}.accessBadge{padding:4px 9px;font-weight:800;font-size:11px}.accessBadge.allowed{color:#078a52;background:#dff8ea;border:1px solid #b3eccd}.accessBadge.restricted{color:#c24141;background:#fff0f0;border:1px solid #ffd3d3}.profileAccessFooter{margin:0;min-height:0;position:static;display:flex;align-items:center;justify-content:space-between;padding:10px 18px;background:#fff;border-top:1px solid #dce6f0;color:#718096;font-size:11px}.profileAccessFooter .btn{padding:8px 11px}@media(max-width:640px){#modal:has(.profileAccess){padding:18px}.profileIdentity h3{font-size:17px}.accessTabs button{padding:8px 6px;font-size:10px}.accessBadge{padding:3px 5px;font-size:9px}}
