.brand-logo-pair { display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; max-width: 160px; }
.brand-logo-pair img { display: block; width: auto; height: 38px; max-width: 160px; object-fit: contain; border-radius: 6px; background: #fff; }
.brand-logo-pair .brand-logo-dark { display: none; }
:root[data-dv-theme="dark"] .brand-logo-pair .brand-logo-light { display: none; }
:root[data-dv-theme="dark"] .brand-logo-pair .brand-logo-dark { display: block; }
.brand-logo-placeholder { width: 38px; height: 38px; display: grid; place-items: center; border: 1px solid var(--dv-border); border-radius: 8px; color: var(--dv-muted); }
.dv-login-brand .brand-logo-pair img { height: 88px; max-width: min(280px,80vw); }
.dv-brand > span:last-child { min-width: 0; }
.dv-brand strong, .dv-brand small { max-width: 220px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
[data-brand-navigation="brand"] .dv-topbar { border-bottom: 3px solid var(--dv-red); }
[data-brand-login="brand"] .dv-login-card { border-top: 4px solid var(--dv-red); }
.brand-login-background { position: fixed; inset: 0; width: 100%; height: 100%; object-fit: cover; z-index: -1; opacity: .15; pointer-events: none; }
.brand-appearance-grid { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 16px; }
.brand-appearance-editor label { display: block; margin-bottom: 6px; font-weight: 600; }
.brand-appearance-editor input:not([type="hidden"]), .brand-appearance-editor select { width: 100%; max-width: 100%; }
.brand-appearance-editor input[type="color"] { height: 42px; }
.brand-upload-card { padding: 16px; border: 1px solid var(--dv-border); border-radius: 12px; }
.brand-upload-card img { width: 100%; height: 90px; object-fit: contain; background: #efefef; }
.brand-preview-frame { width: 100%; min-height: 720px; border: 1px solid var(--dv-border); border-radius: 12px; background: white; }
.brand-appearance-status { min-height: 2em; }
.brand-local-preview { min-height: 24px; padding: 4px 12px; background: #e9edf0; color: #4f5960; font-size: 11px; text-align: center; line-height: 16px; }
@media (max-width: 600px) {
  .brand-appearance-grid { grid-template-columns: 1fr; }
  .brand-logo-pair img { max-width: 82px; height: 34px; }
  .dv-brand strong { max-width: 138px; font-size: 15px; }
}
