.brand-header .brand-name {
  font-weight: 600;
  letter-spacing: -0.025em;
  line-height: 1.25;
}
.brand-header .brand-logo {
  object-fit: contain;
  flex-shrink: 0;
}
.brand-header.compact {
  font-size: 0.94rem;
}
.brand-footer {
  color: var(--muted);
  font-size: 0.79rem;
  line-height: 1.5;
  white-space: nowrap;
}
.branding-editor {
  display: grid;
  grid-template-columns: minmax(240px, 0.82fr) minmax(360px, 1.18fr);
  gap: 24px;
  align-items: start;
}
.branding-editor h3,
.branding-editor h4 {
  font-size: 0.95rem;
  font-weight: 600;
  margin: 0 0 10px;
}
.branding-form,
.branding-preview-pane {
  min-width: 0;
}
.branding-section {
  border: 0;
  border-top: 1px solid var(--line);
  margin: 20px 0 0;
  padding: 20px 0 0;
  min-width: 0;
}
.branding-section legend {
  font-size: 0.95rem;
  font-weight: 600;
  padding: 0 8px 0 0;
}
.branding-usage {
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.5;
  margin: 6px 0 14px;
}
.branding-color-field {
  display: flex;
  align-items: start;
  gap: 10px;
}
.branding-color-field .field {
  flex: 1;
  min-width: 0;
}
.branding-editor
  .branding-color-field
  input.branding-color-swatch[type="color"] {
  width: 42px;
  min-height: 44px;
  height: 44px;
  flex: 0 0 42px;
  padding: 3px;
  margin-top: 25px;
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 8px;
}
.branding-asset {
  padding: 14px 0;
  border-top: 1px solid var(--line);
}
.branding-asset-row {
  display: flex;
  gap: 12px;
  align-items: center;
}
.branding-asset-image {
  width: 58px;
  height: 58px;
  padding: 8px;
  object-fit: contain;
  border: 1px solid var(--line);
  border-radius: 10px;
  background: var(--surface-alt);
}
.branding-asset .branding-asset-image.brand-mark {
  background: var(--brand-primary, #560c30);
  color: var(--brand-ink, #fff);
}
.branding-file-control {
  min-width: 0;
  flex: 1;
}
.branding-file-control input {
  max-width: 100%;
  font-size: 0.8rem;
}
.branding-file-control input[type="file"] {
  display: block;
  width: 100%;
  min-width: 0;
  box-sizing: border-box;
}
.branding-file-control [data-asset-status] { display: block; margin-top: 5px; overflow-wrap: anywhere; }
.branding-asset .actions {
  margin-top: 10px;
}
.branding-actions {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
  margin-top: 20px;
}
.branding-status {
  font-size: 0.82rem;
  line-height: 1.5;
  color: var(--muted);
  min-height: 1.5em;
  margin: 12px 0 0;
}
.branding-status.error {
  color: var(--danger);
}
.branding-preview-pane {
  position: sticky;
  top: 24px;
}
.branding-preview-controls {
  display: flex;
  gap: 10px;
  flex-wrap: wrap;
  align-items: end;
  margin-bottom: 12px;
}
.branding-preview-controls .field {
  flex: 1;
  min-width: 120px;
  margin: 0;
}
.branding-scene-tabs {
  display: flex;
  flex-wrap: wrap;
  gap: 5px;
  margin-bottom: 14px;
}
.branding-scene-tabs .button {
  padding: 7px 10px;
  min-height: 34px;
  font-size: 0.78rem;
  background: var(--surface-alt);
  color: var(--muted);
  border: 1px solid transparent;
  box-shadow: none;
}
.branding-scene-tabs .button[aria-selected="true"] {
  color: var(--primary);
  background: var(--primary-soft);
}
.branding-comparison {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 12px;
}
.branding-comparison.single {
  grid-template-columns: minmax(0, 1fr);
}
.branding-preview-label {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 8px;
  margin: 0 0 7px;
  font-size: 0.78rem;
  color: var(--muted);
}
.branding-preview-label strong {
  font-weight: 550;
}
.branding-preview-frame {
  border: 1px solid var(--line);
  border-radius: 12px;
  overflow: hidden;
  container-type: inline-size;
}
.branding-preview-scene {
  --canvas: #faf7fb;
  --surface: #fff;
  --surface-alt: #f7f5f8;
  --ink: #29232a;
  --muted: #716674;
  --line: #e8e1e9;
  --success: #25735c;
  color: var(--ink);
  background: var(--canvas);
  min-height: 355px;
  padding: 20px 16px;
  display: flex;
  flex-direction: column;
  gap: 18px;
}
.branding-preview-scene[data-brand-theme="dark"] {
  --canvas: #181519;
  --surface: #211d22;
  --surface-alt: #2a242b;
  --ink: #f3edf4;
  --muted: #bcb0bf;
  --line: #3c323e;
  --success: #90d4b7;
}
.branding-preview-content {
  background: var(--surface);
  border: 1px solid var(--line);
  border-radius: 12px;
  padding: 17px 14px;
  margin: auto 0;
}
.branding-preview-content h2 {
  font-size: 1.17rem;
  margin-bottom: 8px;
}
.branding-preview-content p {
  font-size: 0.8rem;
  margin: 0 0 14px;
  color: var(--muted);
}
.branding-preview-scene .field {
  margin-bottom: 11px;
}
.branding-preview-scene .field label {
  font-size: 0.76rem;
}
.branding-preview-scene input {
  background: var(--surface);
  color: var(--ink);
  border-color: var(--line);
  padding: 9px 10px;
  font-size: 0.8rem;
}
.branding-preview-scene .button {
  min-height: 35px;
  font-size: 0.79rem;
  padding: 8px 11px;
}
.branding-preview-scene .brand-footer {
  margin-top: auto;
  font-size: 0.69rem;
  text-align: center;
  white-space: normal;
  overflow-wrap: anywhere;
}
.branding-preview-nav {
  display: flex;
  flex-wrap: wrap;
  gap: 8px;
  font-size: 0.75rem;
  color: var(--muted);
}
.branding-preview-nav span:first-child {
  color: var(--primary);
}
.branding-preview-tab {
  display: flex;
  align-items: center;
  gap: 7px;
  background: var(--surface-alt);
  border: 1px solid var(--line);
  border-radius: 9px 9px 0 0;
  padding: 10px 12px;
  font-size: 0.76rem;
  min-width: 0;
}
.branding-preview-tab img {
  width: 16px;
  height: 16px;
  object-fit: contain;
}
.branding-preview-tab span {
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
}
.branding-preview-address {
  font-size: 0.71rem;
  color: var(--muted);
  background: var(--surface);
  padding: 8px 12px;
  border: 1px solid var(--line);
  border-top: 0;
}
.branding-app-icons {
  display: flex;
  flex-wrap: wrap;
  gap: 20px;
  justify-content: center;
  align-items: start;
  padding: 20px 0;
}
.branding-app-icon {
  width: 110px;
  text-align: center;
  font-size: 0.78rem;
  overflow-wrap: anywhere;
}
.branding-app-icon img {
  display: block;
  width: 62px;
  height: 62px;
  margin: 0 auto 8px;
  object-fit: contain;
  border-radius: 14px;
}
.branding-asset-image.branding-fullbleed-icon {
  padding: 0;
  object-fit: cover;
  background: transparent;
}
.branding-asset [data-asset-preview] {
  position: relative;
  flex: 0 0 58px;
  width: 58px;
  min-width: 0;
}
.branding-fullbleed-icon[aria-busy="true"],
.branding-fullbleed-icon[data-preview-failed="true"] {
  opacity: 0;
}
.branding-asset [data-asset-preview]:has(.branding-fullbleed-icon[aria-busy="true"])::after,
.branding-icon-mask:has(.branding-fullbleed-icon[aria-busy="true"])::after {
  content: "";
  position: absolute;
  inset: calc(50% - 8px);
  width: 16px;
  height: 16px;
  border: 1.5px solid var(--line);
  border-top-color: var(--primary);
  border-radius: 50%;
  animation: branding-icon-loading 0.8s linear infinite;
}
@keyframes branding-icon-loading {
  to { transform: rotate(360deg); }
}
@media (prefers-reduced-motion: reduce) {
  .branding-asset [data-asset-preview]::after,
  .branding-icon-mask::after {
    animation: none;
  }
}
.branding-icon-mask {
  position: relative;
  width: 62px;
  height: 62px;
  margin: 0 auto 8px;
  overflow: hidden;
  border-radius: 14px;
}
.branding-icon-mask.circle {
  border-radius: 50%;
}
.branding-icon-mask .branding-fullbleed-icon {
  width: 100%;
  height: 100%;
  margin: 0;
  border-radius: 0;
  object-fit: cover;
}
.branding-icon-safezone {
  position: absolute;
  inset: 10%;
  border: 1px dashed rgba(255, 255, 255, 0.85);
  border-radius: 50%;
  pointer-events: none;
}
.branding-trim-control {
  display: flex;
  align-items: center;
  gap: 9px;
  font-size: 0.85rem;
}
.branding-trim-control input[type="checkbox"] {
  width: auto;
  min-height: 0;
  margin: 0;
}
.branding-app-icon small {
  display: block;
  margin-top: 5px;
  color: var(--muted);
  font-size: 0.68rem;
}
.branding-preview-frame.mobile {
  width: min(100%, 360px);
  margin-inline: auto;
}
.branding-preview-note {
  margin: 12px 0 0;
  color: var(--muted);
  font-size: 0.78rem;
  line-height: 1.5;
}
.branding-demo-result {
  margin-top: 12px;
  min-height: 26px;
}
@media (max-width: 1150px) {
  .branding-editor {
    grid-template-columns: minmax(240px, 1fr) minmax(300px, 1fr);
  }
  .branding-comparison {
    grid-template-columns: minmax(0, 1fr);
  }
}
@media (max-width: 850px) {
  .branding-editor {
    grid-template-columns: minmax(0, 1fr);
  }
  .branding-preview-pane {
    position: static;
  }
  .brand-footer {
    white-space: normal;
    overflow-wrap: anywhere;
  }
}

/* Shared brand and loader geometry also applies to the live authentication shell. */
.brand-header { min-width: 0; max-width: 100%; }
.brand-header .brand-copy { overflow-wrap: anywhere; }
.brand-header.brand-full-logo { min-width: 0; }
.brand-header.brand-full-logo img.brand-lockup {
  display: block;
  width: min(100%, var(--brand-lockup-desktop-width, 220px));
  height: auto;
  max-width: 100%;
  max-height: var(--brand-lockup-desktop-height, 42px);
  min-width: 0;
  object-fit: contain;
  border-radius: 0;
  flex-shrink: 1;
}
.brand-header.brand-collapsed-icon { justify-content: center; }
.brand-header.brand-collapsed-hidden { display: none; }
.boot {
  --loading-logo-size: 88px;
  --loading-title-size: 24px;
  --loading-status-size: 14px;
  padding: 28px 20px;
  text-align: center;
}
.boot .boot-logo {
  display: flex;
  align-items: center;
  justify-content: center;
  width: min(100%, var(--loading-logo-max-width, 440px));
  height: auto;
  flex-shrink: 0;
}
.boot .boot-logo img {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: var(--loading-logo-size);
  object-fit: contain;
}
.boot[data-loading-theme="light"] .boot-logo .boot-logo-light { display: block; }
.boot[data-loading-theme="light"] .boot-logo .boot-logo-dark { display: none; }
.boot[data-loading-theme="dark"] .boot-logo .boot-logo-light { display: none; }
.boot[data-loading-theme="dark"] .boot-logo .boot-logo-dark { display: block; }
.boot [data-boot-title] {
  font-size: var(--loading-title-size);
  font-family: var(--loading-title-font);
  line-height: 1.3;
  overflow-wrap: anywhere;
  max-width: 100%;
  margin: 24px 0 12px;
}
.boot .boot-status {
  font-family: var(--loading-status-font);
  font-size: var(--loading-status-size);
  line-height: 1.5;
  max-width: 100%;
  margin: 0;
}
.boot [data-boot-message] { min-width: 0; overflow-wrap: anywhere; }
.boot > .button { margin-top: 20px; }
.branding-preview-scene .appearance-loading-preview {
  min-height: 320px;
  width: 100%;
  padding: 24px 10px;
  flex: 1;
}
.brand-header.brand-full-logo[data-brand-viewport="mobile"] img.brand-lockup {
  width: min(100%, var(--brand-lockup-mobile-width, 175px));
  max-height: var(--brand-lockup-mobile-height, 38px);
  min-width: 0;
}
.branding-setting-grid {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(min(140px, 100%), 1fr));
  gap: 12px;
  min-width: 0;
}
.branding-setting-grid .field { min-width: 0; }
.branding-locale-section { margin-top: 14px; padding-top: 14px; border-top: 1px solid var(--line); }
.branding-locale-section > summary, .branding-locale-overrides > summary {
  cursor: pointer;
  color: var(--ink);
  font-size: .86rem;
  padding: 6px 0;
  margin-bottom: 8px;
}
.branding-locale-overrides { padding: 2px 0 12px; }
.branding-locale-overrides > summary { color: var(--muted); font-size: .78rem; }
.branding-font-list { display: grid; gap: 16px; margin-top: 18px; }
.branding-font-entry { padding: 14px 0; border-top: 1px solid var(--line); min-width: 0; }
.branding-font-entry > p { margin: 6px 0; }
.branding-font-sample { font-size: 1rem; line-height: 1.5; overflow-wrap: anywhere; }
.branding-font-references { overflow-wrap: anywhere; }
.branding-preview-slogan { font-size: 1.1rem; line-height: 1.5; margin: 0; overflow-wrap: anywhere; }
.branding-sidebar-comparison { display: flex; gap: 16px; align-items: stretch; min-width: 0; }
.branding-sidebar-expanded { flex: 1; min-width: 0; padding: 12px 10px; background: var(--surface); border: 1px solid var(--line); border-radius: 10px; }
.branding-sidebar-collapsed { flex: 0 0 58px; display: flex; flex-direction: column; align-items: center; gap: 24px; padding: 12px 8px; background: var(--surface); border: 1px solid var(--line); border-radius: 10px; }
.branding-sidebar-expanded > p { margin-top: 16px; }
.branding-asset[data-asset-kind*="full_brand"] .branding-asset-image { width: 140px; max-width: 35vw; height: 58px; }
.branding-asset[data-asset-kind*="full_brand"] [data-asset-preview] { flex-basis: min(140px, 35vw); width: min(140px, 35vw); }
.branding-app-icon img, .branding-icon-mask { border-radius: 0; }
.branding-icon-mask.circle { border-radius: 50%; }
.branding-preview-scene .appearance-loading-preview .boot-logo img { max-height: var(--loading-logo-size); }
@media (max-width: 450px) {
  .brand-header.brand-full-logo:not([data-brand-viewport="desktop"]) img.brand-lockup {
    width: min(100%, var(--brand-lockup-mobile-width, 175px));
    max-height: var(--brand-lockup-mobile-height, 38px);
  }
  .branding-preview-scene { padding: 16px 12px; }
  .branding-asset-row { align-items: flex-start; }
}

.branding-size-controls { margin-top: 18px; padding-top: 16px; border-top: 1px solid var(--line); min-width: 0; }
.branding-size-controls input[type="range"] { width: 100%; padding: 0; min-height: 32px; accent-color: var(--primary); }
.branding-size-controls .branding-sizing-inherit { display: flex; align-items: center; gap: 10px; margin: 12px 0 16px; font-size: .82rem; }
.branding-size-controls .branding-sizing-inherit input { width: 16px; min-height: 16px; height: 16px; accent-color: var(--primary); }
.branding-size-result { font-variant-numeric: tabular-nums; margin: 8px 0 0; color: var(--muted); font-size: .78rem; line-height: 1.5; overflow-wrap: anywhere; }
.branding-asset-feedback { margin: 8px 0 0; font-size: .78rem; line-height: 1.5; overflow-wrap: anywhere; }
.branding-asset-feedback:empty { display: none; }
.branding-asset-feedback[data-error="true"] { color: var(--danger, #a42d38); }
.branding-asset-feedback .technical-details { margin-top: 6px; }
.branding-asset-limit { margin: 5px 0 0; color: var(--muted); font-size: .74rem; line-height: 1.4; }

/* Placement cards use the same renderers and theme tokens as published pages. */
.branding-placement-cards { display: grid; gap: 16px; min-width: 0; }
.branding-placement-card { border: 1px solid var(--line); border-radius: 12px; padding: 16px; min-width: 0; }
.branding-placement-card h5 { font-size: .95rem; margin: 0 0 14px; }
.branding-placement-card .branding-sizing-inherit { display: flex; gap: 10px; align-items: center; margin: 10px 0 16px; font-size: .82rem; }
.branding-placement-card .branding-sizing-inherit input { width: 16px; height: 16px; min-height: 16px; }
.branding-placement-scale { display: grid; grid-template-columns: minmax(0,1fr) 100px; gap: 12px; align-items: end; }
.branding-placement-scale input[type="range"] { width: 100%; padding: 0; min-height: 40px; accent-color: var(--primary); }
.branding-placement-previews { display: grid; grid-template-columns: repeat(2,minmax(0,1fr)); gap: 10px; min-width: 0; }
.branding-placement-preview { padding: 12px; min-width: 0; background: var(--surface,#fff); border: 1px solid var(--line); border-radius: 8px; overflow: hidden; }
.branding-placement-preview .brand-header { width: 100%; }
.branding-placement-preview[data-brand-theme="dark"] { background: #211d22; color: #f2ecf3; --surface:#211d22; --ink:#f2ecf3; --muted:#c4b9c7; --line:#514655; }
.branding-placement-preview .appearance-loading-preview { min-height: 0; padding: 10px 0; gap: 10px; }
.branding-placement-preview .appearance-loading-preview [data-boot-title] { font-size: min(var(--loading-title-size),20px); }
.branding-placement-preview .appearance-loading-preview .boot-status { flex-wrap: wrap; font-size: 12px; }
.branding-placement-preview .boot-logo { max-width:100%; margin-inline:auto; }
.branding-placement-preview .boot-logo img { max-width:100%; }
.branding-advanced-sizing { margin-top:16px; }
.branding-advanced-sizing > summary { cursor:pointer; font-size:.85rem; padding:8px 0; }
.branding-asset[data-asset-kind*="sidebar_logo"] .branding-asset-image { width:140px; max-width:35vw; height:58px; }
@media(max-width:450px) { .branding-placement-previews { grid-template-columns:minmax(0,1fr); } .branding-placement-card { padding:12px; } }

.branding-login-preview-header { min-width:0; width:100%; gap:12px; }
.branding-login-preview-header .auth-toolbar { gap:8px; }
.branding-login-preview-header .branding-preview-language { margin:0; min-width:95px; max-width:120px; }
.branding-login-preview-header .branding-preview-language .field-label:empty { display:none; }
.branding-preview-frame.mobile .branding-login-preview-header { grid-template-columns:minmax(0,1fr); }
.branding-preview-frame.mobile .branding-login-preview-header .auth-toolbar { justify-self:end; }
@container (max-width: 640px) {
  .branding-login-preview-header { grid-template-columns:minmax(0,1fr); }
  .branding-login-preview-header .auth-toolbar { justify-self:end; max-width:100%; }
}

/* Resource cards follow the same row order, including optional dark artwork. */
.branding-asset-group-title { margin:24px 0 12px; font-size:1rem; }
.branding-asset-grid { display:grid; grid-template-columns:minmax(0,1fr); gap:16px; }
.branding-asset-grid .branding-asset { margin:0; padding:16px; border:1px solid var(--line); border-radius:10px; min-width:0; }
.branding-asset-row { flex-direction:column; align-items:stretch; gap:14px; }
.branding-asset [data-asset-preview] { display:flex; align-items:center; min-height:96px; width:100%!important; flex-basis:auto!important; padding:12px; border:1px solid var(--line); border-radius:8px; overflow:hidden; background:#fff; }
.branding-asset [data-asset-preview][data-brand-theme=dark] { background:#211d22; color:#f2ecf3; --ink:#f2ecf3; --muted:#c4b9c7; --surface:#211d22; --line:#514655; }
.branding-asset [data-asset-preview] .brand-header { min-width:0; width:100%; }
.branding-asset .branding-file-control { width:100%; min-width:0; }
.branding-asset input[type=file] { display:block; width:100%; min-width:0; max-width:100%; }
.branding-asset .branding-asset-image { max-width:100%; object-fit:contain; }
.branding-asset .actions { margin-top:12px; }
@container (min-width:720px) { .branding-asset-grid { grid-template-columns:repeat(2,minmax(0,1fr)); } }

.branding-preview-pane { top:calc(var(--page-chrome-height,64px) + 16px); }

/* Authentication previews keep their real viewport before a visual-only scale. */
.branding-auth-viewport { width:100%; min-width:0; position:relative; overflow:hidden; background:var(--canvas); }
.branding-auth-iframe { display:block; border:0; transform-origin:0 0; max-width:none; overflow:auto; background:var(--canvas); }
.branding-auth-preview { min-width:0; }
.branding-preview-enlarge { margin:8px 10px; }
.branding-expanded-preview { width:min(1360px,96vw); max-width:96vw; max-height:96dvh; padding:16px; }
.branding-expanded-preview > .actions { margin:0 0 12px; }
.branding-expanded-preview .branding-auth-viewport { max-height:calc(92dvh - 66px); overflow:auto; }
.branding-draft-notice:empty { display:none; }
.branding-draft-notice { padding:12px; margin-block:16px; border:1px solid var(--line); border-radius:8px; }
.branding-draft-notice .button + .button { margin-inline-start:8px; }
.branding-draft-storage { margin-block:12px; }
.branding-comparison:has(.branding-auth-preview) { grid-template-columns:minmax(0,1fr); }
.branding-auth-viewport[data-auth-preview-viewport="mobile"] { max-width:390px; margin-inline:auto; }

.branding-auth-feedback:empty { display:none; }
.branding-auth-feedback { margin:10px; padding:12px; color:#29232a; background:#fff; --success:#25735c; --success-soft:#edf6f1; --success-line:#bdcebf; border-radius:8px; }
.branding-auth-feedback[data-brand-theme="dark"] { color:#f3edf4; background:#211d22; --success:#90d4b7; --success-soft:#253a30; --success-line:#496151; }

/* Preview controls remain reachable on short screens; draft is the default view. */
.branding-preview-pane { max-height: calc(100dvh - 108px); overflow: auto; overscroll-behavior: contain; scrollbar-gutter: stable; }
.branding-preview-pane > h3 { margin-block: 0 8px; }
.branding-preview-controls { gap: 8px; }
.branding-asset [data-asset-preview], .branding-asset.dark-preview [data-asset-preview], .branding-asset-image { background-color: #e4e1e5; background-image: conic-gradient(#faf9fb 25%, transparent 0 50%, #faf9fb 0 75%, transparent 0); background-size: 16px 16px; }
[data-theme="dark"] .branding-asset [data-asset-preview], [data-theme="dark"] .branding-asset-image { background-color: #39363b; background-image: conic-gradient(#29262c 25%, transparent 0 50%, #29262c 0 75%, transparent 0); }
@media (max-width: 1050px), (max-height: 600px) { .branding-preview-pane { position: static; max-height: none; } .branding-editor { grid-template-columns: minmax(0,1fr); } .branding-preview-pane { order:-1; } }
.branding-asset [data-asset-preview][data-brand-theme=dark] { background-color:#39363b; background-image:conic-gradient(#29262c 25%, transparent 0 50%, #29262c 0 75%, transparent 0); background-size:16px 16px; }

/* Resource sources remain separate rows on narrow viewports. */
.branding-asset > .field, .branding-asset > .button, .branding-asset > .branding-usage { margin-block-start:12px; max-width:100%; }
.branding-asset > .field input[type="url"] { min-width:0; width:100%; }
.branding-resource-dialog { width:min(640px,calc(100vw - 32px)); max-height:calc(100dvh - 32px); overflow:auto; }
.branding-resource-list { display:grid; gap:12px; margin-block:12px; }
.branding-resource-choice { display:grid; grid-template-columns:64px minmax(0,1fr) auto; gap:8px 12px; align-items:center; padding-block:10px; border-block-end:1px solid var(--line); }
.branding-resource-choice > img { grid-row:span 2; }
.branding-resource-choice > p { margin:0; overflow-wrap:anywhere; }
.branding-resource-choice > small { grid-column:2; }
.branding-resource-choice > .button { grid-column:3; grid-row:1 / span 2; }
@media (max-width:480px) { .branding-resource-choice { grid-template-columns:48px minmax(0,1fr); }.branding-resource-choice > .button { grid-column:2;grid-row:auto;justify-self:start; } }
