/* v15 — brand logo + name (sidebar, mobile bar, login, Administration card) */
.brand-mark.has-logo, .login-mark.has-logo { background: none !important; box-shadow: none; width: auto; min-width: 32px; max-width: 46px; padding: 0; }
.brand-mark.has-logo img { display: block; height: 32px; width: auto; max-width: 46px; object-fit: contain; border-radius: 8px; }
.login-mark.has-logo { max-width: 120px; height: auto; margin: 0 auto 14px; }
.login-mark.has-logo img { display: block; height: 52px; width: auto; max-width: 120px; object-fit: contain; margin: 0 auto; }
.brand-text { white-space: normal; line-height: 1.2; font-size: .92rem; }
html.sb-mini .brand-mark.has-logo img { height: 30px; max-width: 40px; }

.bl-card { display: flex; flex-wrap: wrap; align-items: center; gap: 16px; }
.bl-prev { width: 72px; height: 72px; flex: none; display: grid; place-items: center; border-radius: 14px;
  background: var(--surface-2); border: 1px dashed var(--border); overflow: hidden; }
.bl-prev img { max-width: 64px; max-height: 64px; object-fit: contain; }
.bl-prev span { font-weight: 700; color: var(--text-soft); }
.bl-form { display: flex; flex-wrap: wrap; align-items: center; gap: 10px; flex: 1; min-width: 240px; }
.bl-form input[type=file] { font: inherit; font-size: .84rem; color: var(--text-soft); max-width: 100%; }
.bl-note { width: 100%; margin: 0; font-size: .78rem; color: var(--text-soft); }
