/* MEDA-613 — specialty tiles. Observed (Figma Home 4163:9185): card 155×150, radius 10, gap 8, inset 16, 56×56 icon slot,
   label 16 semibold, count 14. Web choices: flexible height and width (never narrower than 155, long localized labels widen the tile),
   16/24 + 14/20 text, host --bk-* colours with light fallbacks, ≥48px targets, visible focus, left-aligned content (not centred).
   No global theme is defined here. Tile rules carry the extra attribute selector so they win over the host's generic
   `body[data-page] button` / `button` rules regardless of stylesheet order. */
.mb-specialty-rail { contain: inline-size; display: flex; gap: 8px; max-width: 100%; min-width: 0; overflow-x: auto; padding: 6px 4px 12px; margin: 0; scroll-padding: 4px; }
.mb-specialty-rail button.mb-specialty-tile[data-specialty] { flex: 0 0 auto; box-sizing: border-box; min-width: 155px; max-width: min(260px, 100%); min-height: 150px;
  border: 1px solid var(--tile-border, var(--bk-border, #74837a)); border-radius: 10px; padding: 16px 16px 12px;
  background: var(--tile-bg, var(--bk-surface, #fff)); color: var(--tile-text, var(--bk-fg, #323232)); font: inherit; text-align: left;
  display: flex; flex-direction: column; align-items: flex-start; justify-content: flex-start; gap: 8px; cursor: pointer; }
.mb-specialty-icon { display: flex; align-items: center; justify-content: flex-start; width: 56px; height: 56px; flex: 0 0 auto; }
.mb-specialty-icon img { display: block; max-width: none; }
.mb-specialty-label { font-weight: 600; font-size: 16px; line-height: 24px; overflow-wrap: break-word; max-width: 100%; text-align: left; }
.mb-specialty-count { font-weight: 400; font-size: 14px; line-height: 20px; color: var(--tile-muted, var(--bk-muted, #4d5b54)); }
.mb-specialty-rail button.mb-specialty-tile[data-specialty][aria-pressed="true"] { border: 2px solid var(--tile-accent, var(--bk-accent, #0e7443)); padding: 15px 15px 11px; }
.mb-specialty-rail button.mb-specialty-tile[data-specialty]:focus-visible { outline: 3px solid var(--tile-focus, var(--bk-focus, #1b2621)); outline-offset: 2px; }
@media (prefers-reduced-motion: no-preference) { .mb-specialty-rail { scroll-behavior: smooth; } }
