/* Official Dreamerr identity, scoped independently from client themes. */
html:not(.google-auth-enabled) .login-divider, html:not(.google-auth-enabled) .sso-buttons-group { display:none !important; }
.agency-login-logo, .agency-nav-logo, .agency-sidebar-logo, .agency-receipt-logo { display:block; object-fit:contain; height:auto; }
.agency-nav-logo { width:154px; max-width:100%; filter:brightness(0); }
.agency-sidebar-logo { width:150px; max-width:100%; filter:brightness(0); }
.agency-brand-ready .feed-header-left { display:flex; flex-direction:column; align-items:flex-start; gap:12px; min-width:0; }
.agency-brand-ready .feed-header { padding-top:24px; padding-bottom:20px; align-items:flex-start; }
.agency-brand-ready .agency-sidebar-label { font-size:.59rem; font-weight:600; letter-spacing:.12em; color:#77737f; white-space:normal; }
.agency-receipt-logo { width:170px; filter:brightness(0); margin-bottom:10px; }
body.client-brand-active .brand-badge > .agency-nav-logo { display:none; }
body.agency-client-fallback #workspaceClientLogo { filter:brightness(0); padding:5px; }
body.agency-client-fallback #workspaceClientLogoWrap { background:#f2edf9; border-radius:8px; }
body.agency-client-fallback #boardHeroBrandLogo { width:42px; height:42px; padding:6px; background:#f2edf9; filter:brightness(0); object-fit:contain; border:0; }
body:not(.client-brand-active) .workspace-client-brand { display:none !important; }
body:not(.client-brand-active) .brand-badge { display:flex; min-width:0; }

/* Keep the login in agency colors, even when signing out of a branded client. */
.agency-brand-ready .login-overlay {
  --workspace-accent:#7549b4;
  --workspace-accent-soft:#f1eafa;
  --workspace-accent-contrast:#fff;
  background:#111115 !important;
  padding:clamp(24px,5vw,80px) !important;
  overflow-x:hidden;
}
.agency-brand-ready .login-portal-wrapper {
  grid-template-columns:minmax(0,1.22fr) minmax(320px,.88fr);
  width:100%; max-width:1160px; min-height:calc(100dvh - 160px);
  padding:0; gap:clamp(40px,8vw,110px); margin:auto;
}
.agency-brand-ready .login-hero-pane { max-width:none; min-width:0; padding:0; gap:0; text-align:left; align-items:stretch; }
.agency-brand-ready .login-brand-capsule { margin:0 0 clamp(46px,7vh,86px); align-self:flex-start; }
.agency-login-logo { width:235px; max-width:70vw; }
.agency-login-eyebrow { margin:0 0 21px; color:#a4a0ae; font-size:.6rem; font-weight:600; letter-spacing:.15em; line-height:1.6; }
.agency-brand-ready .login-hero-headline h1 { margin:0 0 24px; max-width:650px; font-size:clamp(2.5rem,4.35vw,4.3rem); line-height:1.08; font-weight:600; letter-spacing:-.065em; color:#fff; }
.agency-login-headline-main, .agency-login-headline-accent { display:block; }
.agency-login-headline-accent { color:#c8acff; }
.agency-login-intro { max-width:380px; margin:0; font-size:.94rem; line-height:1.8; color:#b7b3c0; }
.agency-brand-ready .login-features-list { display:none; }
.agency-particle-art { position:relative; width:100%; height:245px; margin-top:12px; isolation:isolate; overflow:hidden; contain:layout paint; }
.agency-particle-canvas { position:absolute; inset:0; width:100%; height:100%; pointer-events:none; }
.agency-login-note { margin:21px 0 0; padding-top:19px; border-top:1px solid #2b2832; font-size:.62rem; line-height:1.6; color:#88818f; }
.agency-brand-ready .login-card-pod { justify-self:end; width:100%; max-width:435px; min-width:0; padding:clamp(26px,3vw,40px); gap:22px; border:1px solid #fff !important; border-radius:16px; box-shadow:none !important; }
.agency-brand-ready .login-pod-header { gap:9px; margin-bottom:8px; }
.agency-brand-ready .pod-title { font-weight:650; font-size:1.6rem; letter-spacing:-.045em; }
.agency-brand-ready .pod-subtitle { line-height:1.7; font-size:.79rem; }
.agency-brand-ready .login-form { gap:18px; }
.agency-brand-ready .login-overlay .input-with-icon { min-height:48px; border-color:#dedbe3 !important; border-radius:8px; }
.agency-brand-ready .login-overlay .input-with-icon input { min-height:46px; font-size:.87rem; }
.agency-brand-ready .login-overlay .form-group-luxury { gap:8px; }
.agency-brand-ready .login-overlay .form-group-luxury label { font-size:.74rem; }
.agency-brand-ready .login-overlay .btn-toggle-password { min-width:40px; min-height:40px; right:4px; }
.agency-brand-ready .login-overlay .btn-toggle-password:focus-visible { outline:2px solid #7549b4; outline-offset:-4px; border-radius:5px; }
.agency-brand-ready .login-overlay .btn-enter-studio { min-height:48px; margin-top:6px; background:#18151e !important; border-color:#18151e !important; color:#fff !important; font-size:.84rem; }
.agency-brand-ready .login-overlay .btn-enter-studio:disabled { opacity:.65; cursor:wait; }
.agency-brand-ready .login-overlay .btn-sso { min-height:48px; background:#fff !important; color:#1f1f1f !important; border:1px solid #dadce0 !important; box-shadow:none !important; border-radius:8px; font-size:.84rem; font-weight:600; transform:none !important; transition:background-color .16s ease, border-color .16s ease; }
.agency-brand-ready .login-overlay .btn-sso:hover:not(:disabled) { background:#f2f3f5 !important; border-color:#b7bbc1 !important; }
.agency-brand-ready .login-overlay .btn-sso:active:not(:disabled) { background:#e8eaed !important; }
.agency-brand-ready .login-overlay .btn-sso:disabled { background:#f5f5f5 !important; color:#555 !important; opacity:1; cursor:wait; }
.agency-brand-ready .login-overlay .btn-sso svg { width:20px; height:20px; flex-shrink:0; }
.agency-brand-ready .login-overlay :is(a,button):focus-visible { outline:2px solid #7549b4; outline-offset:3px; }
.agency-brand-ready .login-form-options { gap:12px; flex-wrap:wrap; align-items:center; }
.agency-brand-ready .login-form-options .checkbox-label { font-size:.71rem; min-height:32px; }
.agency-brand-ready .login-form-options .forgot-link { font-size:.69rem; padding:7px 0; }
.agency-brand-ready .login-overlay .forgot-link, .agency-brand-ready .login-overlay .request-access-link { color:#6f469f !important; }
.agency-brand-ready .login-footer-action { flex-wrap:wrap; font-size:.73rem; line-height:1.6; }
.agency-login-footer { margin:3px 0 0; padding-top:19px; border-top:1px solid #efedf1; text-align:center; color:#9b96a2; font-size:.59rem; letter-spacing:.01em; }

@media(max-width:1100px) {
  .agency-brand-ready .login-portal-wrapper { grid-template-columns:minmax(0,1fr) minmax(310px,.95fr); gap:42px; min-height:calc(100dvh - 96px); }
  .agency-brand-ready .login-brand-capsule { margin-bottom:50px; }
  .agency-particle-art { height:210px; }
  body:not(.client-brand-active) .agency-nav-logo { width:128px; }
}
@media(max-width:800px) {
  .agency-brand-ready .login-overlay { padding:30px 24px !important; }
  .agency-brand-ready .login-portal-wrapper { display:grid; grid-template-columns:1fr; max-width:470px; min-height:0; gap:27px; padding:0; }
  .agency-brand-ready .login-hero-pane { margin:0; }
  .agency-brand-ready .login-brand-capsule { margin-bottom:30px; }
  .agency-login-logo { width:192px; }
  .agency-login-eyebrow { margin-bottom:14px; font-size:.54rem; }
  .agency-brand-ready .login-hero-headline h1 { font-size:clamp(2rem,7.8vw,3.1rem); margin-bottom:14px; }
  .agency-login-intro { max-width:350px; font-size:.82rem; line-height:1.7; }
  .agency-particle-art { height:145px; margin-top:0; }
  .agency-login-note { display:none; }
  .agency-brand-ready .login-card-pod { max-width:none; padding:28px; border-radius:12px; }
}
@media(max-width:480px) {
  .agency-brand-ready .login-overlay { padding:25px 18px !important; }
  .agency-brand-ready .login-card-pod { padding:25px 21px; gap:19px; }
  .agency-brand-ready .login-brand-capsule { margin-bottom:26px; }
  .agency-login-logo { width:178px; }
  .agency-brand-ready .login-hero-headline h1 { font-size:2.1rem; }
  .agency-particle-art { height:130px; }
  .agency-brand-ready .pod-title { font-size:1.4rem; }
  body:not(.client-brand-active) .brand-badge { display:none; }
}
@media(prefers-reduced-motion:reduce) {
  .agency-brand-ready .login-overlay *, .agency-brand-ready .login-overlay *::before, .agency-brand-ready .login-overlay *::after { animation:none !important; transition:none !important; }
}
@media print {
  .agency-receipt-logo { width:160px; filter:brightness(0) !important; }
}
