/* One current lockup for headers, footers, auth and workspace sidebars. */
#app .workspace-shell #workspace-navigation > div:first-child { display:none !important; }
#app .brand.brand-current { display:grid !important; grid-template-columns:auto minmax(0,1fr); align-items:center; justify-content:start; justify-items:start; column-gap:9px; row-gap:3px; width:max-content; min-width:0; max-width:100%; text-decoration:none; }
#app .brand.brand-current .brand-mark-image { grid-column:1; grid-row:1; width:44px; height:40px; }
#app .brand.brand-current .brand-wordmark { grid-column:2; grid-row:1; font-size:24px; font-weight:800; letter-spacing:-.035em; }
#app .brand-current .brand-service-line { display:block; grid-column:1 / -1; grid-row:2; max-width:236px; color:var(--text); font-size:10px; font-weight:500; line-height:1.45; letter-spacing:0; white-space:normal; overflow-wrap:normal; }
#app .brand-current .brand-service-line > span { display:block; white-space:nowrap; }
#app .dr-v2 .brand-current .brand-service-line { color:var(--dr-ink); }
#app .side .brand-current .brand-service-line { max-width:175px; }
#app .auth-logo .brand.brand-current { width:max-content !important; max-width:100%; }
#app :is(.auth-logo,.footer-brand) .brand.brand-current .brand-mark-image { width:52px; height:48px; }
#app :is(.auth-logo,.footer-brand) .brand.brand-current .brand-wordmark { font-size:28px; }
#app .footer .brand.brand-current { margin-bottom:12px; }
@media (max-width:1100px) {
  #app .topbar .brand-current .brand-service-line { max-width:145px; }
}
body.preview-mobile #app .topbar .brand-current .brand-service-line { max-width:145px; }
@media (max-width:360px) {
  #app .topbar .brand-current .brand-service-line { max-width:132px; }
}

/* Shared compact lockup: a stronger mark, quieter two-line service copy. */
:is(body[data-layout="compact"], body.preview-mobile) #app .shell.dr-v2 > :is(.public-topbar,.workspace-header) .brand-current .brand-mark-image { width:34px; height:32px; }
:is(body[data-layout="compact"], body.preview-mobile) #app .shell.dr-v2 > :is(.public-topbar,.workspace-header) .brand-current .brand-wordmark { font-size:19px; }
:is(body[data-layout="compact"], body.preview-mobile) #app .shell.dr-v2 > :is(.public-topbar,.workspace-header) .brand-current .brand-service-line { font-size:9px; line-height:1.4; max-width:145px; }

/* One theme action everywhere. Only the icon changes; focus and form state stay. */
#app .theme-mode-control.theme-single-control {
  display:inline-flex; width:44px; min-width:44px; height:44px;
  padding:0; border:0; border-radius:12px; background:transparent;
}
#app .theme-single-control > .theme-switch {
  position:relative; display:inline-grid; place-items:center; overflow:hidden;
  width:44px; min-width:44px; height:44px; min-height:44px; padding:0;
  border:1px solid #ded5b9; border-radius:12px; color:#795600; background:#fff8e5;
  box-shadow:none; transition:background-color .22s ease-out,border-color .22s ease-out,color .22s ease-out;
}
#app .theme-single-control > .theme-switch[data-theme-mode="dark"] { color:#dbdeff; border-color:#414861; background:#242b42; }
#app .theme-switch > span { position:absolute; display:grid; place-items:center; inset:0; pointer-events:none; transition:opacity .22s ease-out,transform .28s cubic-bezier(.16,1,.3,1); }
#app .theme-switch-sun { opacity:1; transform:rotate(0) scale(1); }
#app .theme-switch-moon { opacity:0; transform:rotate(-60deg) scale(.65); }
#app .theme-switch[data-theme-mode="dark"] .theme-switch-sun { opacity:0; transform:rotate(60deg) scale(.65); }
#app .theme-switch[data-theme-mode="dark"] .theme-switch-moon { opacity:1; transform:rotate(0) scale(1); }
#app .theme-single-control > .theme-switch:focus-visible { outline:2px solid var(--primary,#d90e31); outline-offset:3px; }
#app .theme-single-control > .theme-switch:active { transform:scale(.95); }
:is(body[data-layout="compact"], body.preview-mobile) #app .shell.dr-v2 > :is(.public-topbar,.workspace-header) .utility-theme { min-width:44px; }
@media (prefers-reduced-motion:reduce) {
  #app .theme-single-control > .theme-switch, #app .theme-switch > span { transition:none; }
  #app .theme-single-control > .theme-switch:active { transform:none; }
}
