/* Каталог моделей — Red Core Cyber Dragon */
.mdl-dock { display: flex; flex-direction: column; gap: 14px; padding: 18px 20px; background: rgba(18, 22, 32, 0.75); border: 1px solid rgba(255, 46, 91, 0.16); border-radius: 16px; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.04); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); margin-bottom: 20px; }
.mdl-dock__search-row { display: flex; gap: 10px; align-items: center; width: 100%; }
.mdl-search-box { flex: 1; min-width: 0; position: relative; display: flex; align-items: center; }
.mdl-search-icon { position: absolute; left: 14px; color: #FF2E5B; pointer-events: none; opacity: 0.9; display: grid; place-items: center; }
.mdl-search-input { width: 100%; height: 46px; padding: 0 38px 0 42px; background: rgba(10, 13, 20, 0.9); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; font-size: 14px; color: #FFFFFF; font-weight: 500; transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1); }
.mdl-search-input::-webkit-search-cancel-button,
.mdl-search-input::-webkit-search-decoration,
.mdl-search-input::-webkit-search-results-button,
.mdl-search-input::-webkit-search-results-decoration { -webkit-appearance: none; appearance: none; display: none; }
.mdl-search-input:focus { outline: none; border-color: #FF2E5B; box-shadow: 0 0 0 3px rgba(255, 46, 91, 0.22), 0 0 20px rgba(255, 46, 91, 0.18); background: rgba(14, 18, 28, 0.95); }
.mdl-search-clear { position: absolute; right: 12px; width: 22px; height: 22px; border-radius: 50%; border: none; background: rgba(255, 255, 255, 0.1); color: var(--text-muted); cursor: pointer; display: none; align-items: center; justify-content: center; font-size: 11px; line-height: 1; transition: all 0.15s ease; }
.mdl-search-clear.is-visible { display: flex; }
.mdl-search-clear:hover { background: rgba(255, 46, 91, 0.3); color: #FFF; }
.dk-saved-view { display: flex; gap: 8px; margin: -6px 0 16px; }
.dk-saved-view button:disabled { display: none; }
.dk-saved-view button:not(:disabled) { height: 28px; padding: 0 12px; font-size: 12px; border-radius: 8px; background: rgba(255, 46, 91, 0.08); border: 1px solid rgba(255, 46, 91, 0.3); color: #FFA07A; cursor: pointer; transition: all 0.2s ease; }
.dk-saved-view button:not(:disabled):hover { background: rgba(255, 46, 91, 0.2); color: #FFFFFF; }
.mdl-sort-box { flex: none; position: relative; }
.mdl-sort-wrap { position: relative; display: flex; align-items: center; }
.mdl-sort-icon { position: absolute; left: 12px; color: var(--text-muted); pointer-events: none; font-size: 13px; }
.mdl-sort-select { height: 46px; padding: 0 32px 0 28px; background: rgba(10, 13, 20, 0.9); border: 1px solid rgba(255, 255, 255, 0.1); border-radius: 12px; font-size: 13px; color: #E2E8F0; cursor: pointer; transition: all 0.2s ease; }
.mdl-sort-select:hover, .mdl-sort-select:focus { border-color: rgba(255, 46, 91, 0.5); outline: none; }
.mdl-reset-btn { flex: none; height: 46px; padding: 0 16px; border-radius: 12px; font-size: 13px; font-weight: 500; color: var(--text-muted); border: 1px solid rgba(255, 255, 255, 0.1); background: rgba(255, 255, 255, 0.03); display: inline-flex; align-items: center; gap: 6px; cursor: pointer; text-decoration: none; transition: all 0.2s ease; }
.mdl-reset-btn:hover { border-color: rgba(255, 46, 91, 0.6); color: #FF5376; background: rgba(255, 46, 91, 0.08); }
.mdl-dock__providers { display: flex; flex-direction: column; gap: 8px; }
.mdl-section-label { font-size: 11px; text-transform: uppercase; letter-spacing: 0.08em; font-weight: 700; color: #FF2E5B; display: flex; align-items: center; gap: 6px; }
.mdl-provs-bar { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.mdl-prov-tab { display: inline-flex; align-items: center; gap: 8px; height: 36px; padding: 0 14px; border-radius: 10px; background: rgba(10, 13, 20, 0.7); border: 1px solid rgba(255, 255, 255, 0.08); color: #CBD5E1; font-size: 13px; font-weight: 500; text-decoration: none; cursor: pointer; transition: all 0.2s cubic-bezier(0.16, 1, 0.3, 1); }
.mdl-prov-tab img, .mdl-prov-tab svg, .provider-pill-icon { width: 17px; height: 17px; object-fit: contain; flex: none; filter: drop-shadow(0 1px 3px rgba(0,0,0,0.5)); }
.mdl-prov-all-icon { font-size: 13px; color: #FF2E5B; }
.mdl-prov-tab .mdl-prov-count { font-size: 11px; padding: 1px 6px; border-radius: 6px; background: rgba(255, 255, 255, 0.06); color: var(--text-muted); font-family: var(--font-mono); }
.mdl-prov-tab:hover { border-color: rgba(255, 46, 91, 0.45); background: rgba(255, 46, 91, 0.06); color: #FFFFFF; transform: translateY(-1px); }
.mdl-prov-tab.is-active { background: linear-gradient(135deg, rgba(255, 46, 91, 0.95) 0%, rgba(220, 20, 60, 0.95) 100%); border-color: #FF2E5B; color: #FFFFFF; font-weight: 600; box-shadow: 0 4px 16px rgba(255, 46, 91, 0.35); }
.mdl-prov-tab.is-active .mdl-prov-all-icon { color: #FFFFFF; }
.mdl-prov-tab.is-active .mdl-prov-count { background: rgba(0, 0, 0, 0.3); color: #FFFFFF; }
.mdl-dock__meta-row { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; gap: 10px; padding-top: 4px; border-top: 1px solid rgba(255, 255, 255, 0.05); }
.mdl-presets-bar { display: flex; flex-wrap: wrap; gap: 6px; align-items: center; }
.mdl-preset-tab { display: inline-flex; align-items: center; height: 28px; padding: 0 11px; border-radius: 8px; background: rgba(255, 255, 255, 0.04); border: 1px solid rgba(255, 255, 255, 0.08); font-size: 12px; color: var(--text-muted); text-decoration: none; cursor: pointer; transition: all 0.15s ease; }
.mdl-preset-tab:hover { border-color: rgba(255, 255, 255, 0.25); color: #FFF; background: rgba(255, 255, 255, 0.08); }
.mdl-preset-tab.is-active { border-color: #FF2E5B; color: #FFA07A; background: rgba(255, 46, 91, 0.14); font-weight: 600; box-shadow: 0 0 10px rgba(255, 46, 91, 0.2); }
.mdl-count-wrap { font-size: 12.5px; color: var(--text-muted); font-weight: 500; }
.mdl-count { color: #CBD5E1; }
.mdl-advanced-details { margin-top: 2px; border-top: 1px solid rgba(255, 255, 255, 0.06); padding-top: 8px; }
.mdl-advanced-summary { display: flex; align-items: center; gap: 8px; font-size: 12px; color: var(--text-dim); cursor: pointer; user-select: none; transition: color 0.2s ease; }
.mdl-advanced-summary:hover { color: #E2E8F0; }
.mdl-advanced-arrow { transition: transform 0.2s ease; font-size: 10px; opacity: 0.95; margin-left: auto; }
details[open] .mdl-advanced-arrow { transform: rotate(180deg); }
.mdl-advanced-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(180px, 1fr)); gap: 12px; padding: 12px 0 4px; }
@media (max-width: 768px) {
  .mdl-dock__search-row { flex-wrap: wrap; }
  .mdl-search-box { width: 100%; flex: 1 1 100%; }
  .mdl-sort-box { flex: 1; }
  .mdl-sort-select { width: 100%; }
  .mdl-dock__meta-row { flex-direction: column; align-items: flex-start; }
}
.mdl-grid { display: grid; grid-template-columns: repeat(2, minmax(0, 1fr)); gap: 16px; }
@media (max-width: 860px) { .mdl-grid { grid-template-columns: 1fr; } }
.mdl-card { display: flex; flex-direction: column; gap: 14px; padding: 18px 20px; background: rgba(18, 22, 32, 0.75); border: 1px solid rgba(255, 46, 91, 0.16); border-radius: 16px; box-shadow: 0 8px 30px rgba(0, 0, 0, 0.35), inset 0 1px 0 rgba(255, 255, 255, 0.04); backdrop-filter: blur(16px); -webkit-backdrop-filter: blur(16px); transition: all 0.25s cubic-bezier(0.16, 1, 0.3, 1); }
.mdl-card[hidden] { display: none; }
.mdl-card:hover { border-color: rgba(255, 46, 91, .45); box-shadow: 0 16px 40px rgba(0, 0, 0, 0.7), 0 0 24px rgba(255, 46, 91, .25); transform: translateY(-2px); }
.mdl-card__head { display: flex; gap: 12px; align-items: center; min-width: 0; }
.mdl-logo { flex: none; width: 40px; height: 40px; border-radius: 10px; display: grid; place-items: center; background: rgba(255, 46, 91, 0.08); border: 1px solid rgba(255, 46, 91, 0.22); box-shadow: 0 2px 8px rgba(0, 0, 0, 0.25); }
.mdl-logo svg, .mdl-logo img { width: 24px; height: 24px; object-fit: contain; }
.mdl-card__title { flex: 1; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.mdl-card__name { margin: 0; font-size: 14px; font-weight: 600; color: #FFFFFF; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; font-family: var(--font-mono); letter-spacing: -0.01em; }
.mdl-card__cluster { font-size: 12px; color: var(--text-muted, #94A3B8); overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mdl-prices { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; margin: 0; padding: 12px 14px; background: rgba(10, 13, 20, 0.55); border: 1px solid rgba(255, 255, 255, 0.06); border-radius: 12px; }
.mdl-price-col { display: flex; flex-direction: column; gap: 3px; min-width: 0; }
.mdl-prices dt { color: var(--text-muted, #94A3B8); font-size: 11px; text-transform: uppercase; letter-spacing: .06em; font-weight: 600; margin: 0; }
.mdl-prices dd, .mdl-price-val { margin: 0; font-size: 20px; font-weight: 700; color: #FFA07A; font-family: var(--font-mono); letter-spacing: -.02em; line-height: 1.2; }
.mdl-cache { font-size: 12px; }
.mdl-chips { display: flex; flex-wrap: wrap; gap: 6px; min-height: 22px; }
.mdl-card__foot { display: flex; align-items: center; gap: 8px; margin-top: auto; padding-top: 4px; }
.mdl-card__foot .dk-btn--primary { flex: 1; justify-content: center; font-weight: 600; }
@media (max-width: 480px) {
  .mdl-card { padding: 14px; }
  .mdl-prices dd, .mdl-price-val { font-size: 17px; }
  .mdl-card__foot { flex-wrap: wrap; }
  .mdl-card__foot .dk-btn--primary { width: 100%; flex: 1 1 100%; }
  .mdl-card__foot .dk-btn--ghost:not(.dk-btn--icon) { flex: 1; }
}
.dk-badge--cyan { color: #38bdf8; background: color-mix(in srgb, #38bdf8 14%, transparent); border-color: color-mix(in srgb, #38bdf8 32%, transparent); }
.dk-badge--ok { color: #34d399; background: rgba(255, 255, 255, 0.05); border-color: rgba(52, 211, 153, 0.28); }
[data-theme="light"] .dk-badge--ok { color: #065f46; background: rgba(0, 0, 0, 0.04); border-color: rgba(5, 150, 105, 0.28); }
.mdl-d-table { width: 100%; border-collapse: collapse; font-size: 13px; }
.mdl-d-table th { text-align: left; color: var(--text-muted); font-weight: 500; padding: 8px 0; width: 46%; }
.mdl-d-table td { padding: 8px 0; text-align: right; } .mdl-d-table tr { border-bottom: 1px solid rgba(255, 255, 255, 0.06); }

/* окно «Все детали тарифа» */
dialog.mdl-dialog { width: min(820px, calc(100vw - 24px)); }
@media (max-width: 560px) {
  /* models.css грузится после obsidian.css, поэтому правило выше перебивало полноэкранное
     окно: по краям просвечивала нижняя навигация Mini App, а футер упирался в safe-area. */
  dialog.mdl-dialog { width: 100vw; max-width: 100vw; height: 100dvh; max-height: 100dvh; border-radius: 0; margin: 0; }
  dialog.mdl-dialog .dk-modal__head { padding-top: calc(16px + env(safe-area-inset-top)); }
  dialog.mdl-dialog .dk-modal__body { padding-bottom: calc(20px + env(safe-area-inset-bottom)); }
  dialog.mdl-dialog .dk-modal__foot { padding-bottom: calc(14px + env(safe-area-inset-bottom)); }
}
.mdl-d-hero { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 8px; padding: 14px 16px; border: 1px solid var(--border); border-radius: 12px; background: var(--bg2); }
.mdl-d-hero code { margin-left: 6px; font-size: 12px; }
.mdl-d-tabs { align-self: start; }
.mdl-ov-card { border: 1px solid var(--border); border-radius: 12px; background: var(--bg2); padding: 6px 16px; }
.mdl-ov-row { display: flex; justify-content: space-between; gap: 16px; padding: 10px 0; border-bottom: 1px solid var(--border-light); font-size: 14px; }
.mdl-ov-row:last-child { border-bottom: 0; } .mdl-ov-row > span:first-child { color: var(--text-muted); } .mdl-ov-row > span:last-child { text-align: right; overflow-wrap: anywhere; }
.mdl-perf-head { display: flex; flex-wrap: wrap; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.mdl-perf-head h3 { margin: 0 0 4px; font-size: 16px; } .mdl-perf-head p { margin: 0; font-size: 13px; } .mdl-perf-head .dk-select { width: 160px; }
.mdl-perf-kpi { grid-template-columns: repeat(4, minmax(0, 1fr)); margin-bottom: 14px; }
@media (max-width: 640px) { .mdl-perf-kpi { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
.mdl-chart { display: block; width: 100%; height: auto; } .mdl-ax { fill: var(--text-dim); font: 400 10px var(--font-mono); }
.mdl-chart-wrap { padding: 12px; } .mdl-legend { display: flex; justify-content: center; gap: 18px; font-size: 12px; color: var(--text-muted); }
.mdl-legend i { display: inline-block; width: 10px; height: 10px; border-radius: 3px; margin-right: 6px; }
.mdl-api-box { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 14px 16px; margin-bottom: 10px; border: 1px solid var(--border); border-radius: 12px; background: var(--bg2); }
.mdl-api-box > div { min-width: 0; } .mdl-api-box code { display: block; margin-top: 6px; font-size: 14px; overflow-wrap: anywhere; }
.mdl-curl { margin: 0 0 10px; padding: 14px; background: var(--bg2); border: 1px solid var(--border); border-radius: 10px; overflow-x: auto; font-size: 12.5px; line-height: 1.7; }
.mdl-perf-kpi .dk-kpi__value { font-size: 20px; }

/* Light Theme Overrides for Models Catalog (WCAG AA) */
[data-theme="light"] .mdl-dock {
  background: var(--bg-card, rgba(255, 255, 255, 0.95));
  border-color: rgba(0, 0, 0, 0.12);
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.06);
}
[data-theme="light"] .mdl-search-input {
  background: #FFFFFF;
  border-color: rgba(0, 0, 0, 0.15);
  color: #141416;
}
[data-theme="light"] .mdl-sort-select {
  background: #FFFFFF;
  border-color: rgba(0, 0, 0, 0.15);
  color: #141416;
}
[data-theme="light"] .mdl-reset-btn {
  background: #FFFFFF;
  border-color: rgba(0, 0, 0, 0.15);
  color: var(--text-muted, #4b5568);
}
[data-theme="light"] .mdl-prov-tab:not(.is-active) {
  background: #FFFFFF;
  border-color: rgba(0, 0, 0, 0.12);
  color: #064e3b;
}
[data-theme="light"] .mdl-prov-tab.is-active {
  background: linear-gradient(135deg, rgba(255, 46, 91, 0.95) 0%, rgba(220, 20, 60, 0.95) 100%) !important;
  background-color: #B91C1C !important;
  color: #FFFFFF !important;
}
[data-theme="light"] .mdl-prov-tab.is-active .mdl-prov-all-icon {
  color: #FFFFFF;
}
[data-theme="light"] .mdl-prov-tab:not(.is-active) .mdl-prov-all-icon {
  color: #C21840;
}
[data-theme="light"] .mdl-prov-tab:not(.is-active) .mdl-prov-count {
  background: rgba(0, 0, 0, 0.06);
  color: var(--text-muted, #4b5568);
}
[data-theme="light"] .mdl-prov-tab.is-active .mdl-prov-count {
  background: rgba(0, 0, 0, 0.35);
  color: #FFFFFF;
}
[data-theme="light"] .mdl-preset-tab:not(.is-active) {
  background: #FFFFFF;
  border-color: rgba(0, 0, 0, 0.12);
  color: #064e3b;
}
[data-theme="light"] .mdl-preset-tab.is-active {
  background: rgba(194, 24, 64, 0.12);
  border-color: rgba(194, 24, 64, 0.35);
  color: #C21840;
}
[data-theme="light"] .mdl-count {
  color: var(--text, #141416);
}
[data-theme="light"] .mdl-card__title h3,
[data-theme="light"] .mdl-card__title h3.dk-mono {
  color: #141416;
}
[data-theme="light"] .mdl-prices dd,
[data-theme="light"] .mdl-prices dd.dk-mono {
  color: #C21840;
}
[data-theme="light"] .mdl-advanced-summary {
  color: var(--text-muted, #4b5568);
}
[data-theme="light"] .mdl-advanced-arrow,
[data-theme="light"] .mdl-advanced-icon {
  color: var(--text-muted, #4b5568);
}
[data-theme="light"] .mdl-advanced-grid label {
  color: var(--text-muted, #4b5568);
}
[data-theme="light"] .mdl-card {
  background: var(--bg-card, #FFFFFF);
  border-color: rgba(0, 0, 0, 0.12);
  box-shadow: 0 4px 16px rgba(0, 0, 0, 0.05);
}
[data-theme="light"] .mdl-logo {
  background: rgba(225, 29, 72, 0.06);
  border-color: rgba(225, 29, 72, 0.2);
}
[data-theme="light"] .mdl-card__name {
  color: #141416;
}
[data-theme="light"] .mdl-card__cluster {
  color: #4b5568;
}
[data-theme="light"] .mdl-prices {
  background: #F8FAFC;
  border-color: rgba(0, 0, 0, 0.08);
}
[data-theme="light"] .mdl-prices dt {
  color: #4b5568;
}
[data-theme="light"] .mdl-price-val {
  color: #C21840;
}
[data-theme="light"] .dk-badge--cyan {
  color: #0284c7;
  background: rgba(2, 132, 199, 0.1);
  border-color: rgba(2, 132, 199, 0.3);
}


/* Интеграции в окне модели: переключатель сниппетов и блоки кода */
.mdl-snip-tabs { display: flex; flex-wrap: wrap; gap: 6px; margin-bottom: 10px; }
.mdl-snip-tabs .dk-btn { font-size: 12px; }
.mdl-snip pre { white-space: pre; tab-size: 2; }

/* Pricing keeps its own cards and controls; only the details affordance is shared. */
.model-card[data-model-details-card] { cursor: pointer; }
.model-card[data-model-details-card]:focus-visible { outline: 2px solid var(--accent, #FF2E5B); outline-offset: 4px; }
.model-card [data-model-details] { margin-top: 12px; }

/* Compact, progressively enhanced public discovery. Disclosures stay native. */
.mdl-head { display: block; margin-bottom: 14px; }
.mdl-head > div, .mdl-head p { max-width: 76ch; }
.mdl-head code { overflow-wrap: anywhere; }
.mdl-links { margin-top: 6px; }
.mdl-links .dk-head__actions { margin: 8px 0; }
.mdl-links summary, .mdl-vendors summary, .mdl-advanced-summary,
.pricing-counts summary, .pricing-catalog summary {
  min-height: 44px; box-sizing: border-box; padding: 10px 0;
  color: var(--text, #E2E8F0); cursor: pointer; line-height: 1.5;
}
.mdl-links summary, .mdl-vendors summary, .pricing-counts summary,
.pricing-catalog summary { display: list-item; list-style-position: inside; }
.mdl-vendors summary > span, .pricing-catalog summary > span { margin-left: 8px; overflow-wrap: anywhere; }
.mdl-vendors { border-top: 1px solid var(--border, rgba(255,255,255,.1)); }
.mdl-vendors .mdl-provs-bar { padding: 8px 0; }
.mdl-dock { gap: 4px; padding: 12px 16px; margin-bottom: 16px; }
.mdl-dock__search-row { display: grid; grid-template-columns: minmax(0, 1fr) minmax(220px, auto); }
.mdl-sort-box, .mdl-sort-wrap, .mdl-sort-select { width: 100%; min-width: 0; }
.mdl-search-input { font-size: 16px; }
.mdl-search-clear { right: 1px; height: 44px; width: 36px; border-radius: 8px; }
.mdl-count-wrap, .pricing-results { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 4px 12px; }
.mdl-count-wrap .mdl-reset-btn { height: auto; min-height: 44px; padding: 8px 0; border: 0; background: transparent; }
.mdl-advanced-details { margin: 0; padding: 0; }
.mdl-advanced-summary { font-size: 13px; }
.mdl-advanced-details .mdl-presets-bar { padding-top: 8px; }
.mdl-prov-tab, .mdl-preset-tab { height: auto; min-height: 44px; box-sizing: border-box; white-space: normal; }
.mdl-advanced-grid .dk-field, .mdl-advanced-grid select { min-width: 0; max-width: 100%; }
.mdl-advanced-grid input[type="checkbox"] { min-width: 24px; min-height: 24px; }
.mdl-advanced-grid .dk-check { min-height: 44px; }
.mdl-links summary:focus-visible, .mdl-vendors summary:focus-visible, .mdl-advanced-summary:focus-visible,
.pricing-counts summary:focus-visible, .pricing-catalog summary:focus-visible,
.mdl-dock a:focus-visible, .mdl-search-clear:focus-visible, .pricing-catalog button:focus-visible,
.pricing-catalog select:focus-visible, .mdl-sort-select:focus-visible {
  outline: 2px solid var(--accent, #f43f5e); outline-offset: 3px;
}
.pricing-intro { margin-bottom: 12px; }
.pricing-intro h1 { margin: 0 0 8px; }
.pricing-intro p { margin: 0; color: var(--text-muted); max-width: 76ch; }
.pricing-counts { margin-top: 4px; }
.pricing-counts__badges { display: flex; flex-wrap: wrap; gap: 8px; margin: 4px 0 8px; }
.pricing-catalog .ms-toolbar { display: grid; grid-template-columns: minmax(0, 1fr) minmax(250px, auto); gap: 10px; margin: 0; }
.pricing-catalog #msSearch, .pricing-catalog #msSort, .pricing-catalog #msTier {
  width: 100%; min-width: 0; max-width: 100%; min-height: 46px; box-sizing: border-box; font-size: 14px;
}
.pricing-catalog #msSearch { font-size: 16px; }
.pricing-catalog .vendor-filter__box { padding: 0 12px; margin-bottom: 4px; }
.pricing-more-filters { margin-bottom: 12px; border-bottom: 1px solid var(--border, rgba(255,255,255,.1)); }
.pricing-filter-options { display: flex; flex-wrap: wrap; gap: 8px; padding: 8px 0 12px; }
.pricing-catalog .vendor-chip, .pricing-catalog .filter-chip, .pricing-results button,
.pricing-catalog .btn-icon-copy, .pricing-catalog .cmp-btn, .pricing-catalog [data-model-details] { min-height: 44px; }
.pricing-catalog .btn-icon-copy, .pricing-catalog .cmp-btn { min-width: 44px; }
.pricing-catalog .vendor-chip { line-height: 1.35; white-space: normal; }
.pricing-catalog .model-card { min-width: 0; }
.pricing-catalog .model-price { overflow-wrap: anywhere; flex-wrap: wrap; gap: 6px 12px; }
.pricing-catalog .model-card .svc-h b { min-width: 0; overflow-wrap: anywhere; }
[data-theme="light"] .pricing-catalog .vendor-chip.is-active { color: #9f1239; }
[data-theme="light"] .pricing-catalog .vendor-chip.is-active .vendor-count { color: #9f1239; }
@media (max-width: 768px) {
  .mdl-dock__search-row, .pricing-catalog .ms-toolbar { grid-template-columns: minmax(0, 1fr); }
  .mdl-dock { padding: 10px 12px; }
  .mdl-search-input { padding-left: 36px; }
  .mdl-search-icon { left: 11px; }
  .mdl-advanced-grid { grid-template-columns: minmax(0, 1fr); }
  .mdl-head p, .pricing-intro p { font-size: 14px; line-height: 1.5; }
}
@media (prefers-reduced-motion: reduce) {
  .mdl-card, .mdl-prov-tab, .mdl-preset-tab, .mdl-search-input, .mdl-advanced-arrow { transition: none; }
  .mdl-card:hover, .mdl-prov-tab:hover { transform: none; }
}
