.protected-tariff-actions { flex-wrap: wrap; margin-top: 1.25rem; }
.protected-tariff-actions button { cursor: pointer; font-family: inherit; }
.catalog:has(.protected-tariff-actions) .catalog-book img { height: auto; }
.tariff-dialog { width: min(32rem, calc(100vw - 2rem)); max-height: calc(100dvh - 2rem); overflow: auto; border: 1px solid #DCE2DB; border-radius: 1rem; padding: 2rem; color: #17201C; background: #F4F6F2; font-family: Commissioner, sans-serif; box-shadow: 0 1.5rem 5rem #17201c33; }
.tariff-dialog::backdrop { background: #17201c99; }
.tariff-dialog h2 { font-family: 'Red Hat Display', sans-serif; font-size: 1.6rem; margin: 0 0 1.5rem; }
.tariff-dialog label { display: block; margin-bottom: .6rem; font-weight: 600; }
.tariff-dialog input { width: 100%; padding: .85rem; border: 1px solid #AFB7BF; border-radius: .35rem; font: inherit; background: white; }
.tariff-dialog input:focus-visible { outline: 3px solid #637A19; outline-offset: 3px; }
.tariff-dialog #tariff-error { color: #913423; min-height: 1.5em; margin: 1rem 0; }
.tariff-dialog-actions { display: flex; flex-wrap: wrap; gap: 1.25rem; align-items: center; }
.tariff-dialog-actions button { font-family: inherit; cursor: pointer; }
.tariff-dialog-actions .text-link { border: 0; border-bottom: 1px solid currentColor; border-radius: 0; background: transparent; }
.tariff-dialog button:disabled { opacity: .65; cursor: wait; }
@media (max-width: 480px) { .tariff-dialog { padding: 1.35rem; } .protected-tariff-actions { align-items: stretch; flex-direction: column; } }

/* Compact catalogue cover on phones; keep desktop composition. */
@media (max-width: 700px) {
  .catalog:has(.protected-tariff-actions) .catalog-object { min-height: 340px; }
  .catalog:has(.protected-tariff-actions) .catalog-book {
    width: min(220px, 65%);
    height: auto;
    min-height: 0;
    aspect-ratio: 3 / 4;
    padding: 1.4rem;
  }
  .catalog:has(.protected-tariff-actions) .catalog-book img { height: auto; object-fit: contain; }
  .catalog:has(.protected-tariff-actions) .catalog-book div { gap: .4rem; flex-direction: column; align-items: flex-start; }
  .catalog:has(.protected-tariff-actions) .catalog-book small {
    min-width: 0;
    max-width: none;
    font-size: .65rem;
    overflow-wrap: normal;
  }
  .catalog:has(.protected-tariff-actions) .catalog-book strong { font-size: 2.1rem; flex-shrink: 0; align-self: flex-end; }
}
