/* polish.css v1 — волна 202: полировка дизайна (безопасный слой поверх) */
:root { --polish-ease: cubic-bezier(.4, 0, .2, 1); }

/* Доступность: видимый фокус */
:focus-visible { outline: 2px solid #2f6fed; outline-offset: 2px; border-radius: 4px; }

/* Кнопки: плавные переходы и подъём */
.btn { transition: transform .12s var(--polish-ease), box-shadow .12s var(--polish-ease), background .12s var(--polish-ease); }
.btn:hover { box-shadow: 0 4px 14px rgba(15, 36, 56, .14); }
.btn:active { transform: translateY(1px); }

/* Панели: единый радиус */
.panel { border-radius: 12px; }

/* Таблицы: читаемость */
table { border-collapse: collapse; }
table th { font-weight: 600; }
tbody tr:nth-child(even) { background: rgba(15, 36, 56, .028); }
tbody tr:hover { background: rgba(47, 111, 237, .05); }

/* Формы: единый радиус и фокус */
input[type="text"], input[type="email"], input[type="tel"], input[type="number"], input[type="password"], input[type="search"], textarea, select { border-radius: 8px; transition: border-color .12s var(--polish-ease), box-shadow .12s var(--polish-ease); }
input:focus, textarea:focus, select:focus { box-shadow: 0 0 0 3px rgba(47, 111, 237, .15); }

/* Ссылки в тексте */
p a:not(.btn) { text-underline-offset: 2px; }

/* Плавная прокрутка с уважением к настройкам */
html { scroll-behavior: smooth; }
@media (prefers-reduced-motion: reduce) {
  html { scroll-behavior: auto; }
  .btn, .panel { transition: none; }
}

/* Мобильная полировка: тап-зоны и читаемость */
@media (max-width: 640px) {
  .btn { min-height: 44px; }
  table { font-size: 13px; }
  table td, table th { padding: 8px 6px; }
  h1 { line-height: 1.25; }
  h2 { line-height: 1.3; }
  p { line-height: 1.55; }
}

/* Печать */
@media print {
  .btn, nav { display: none !important; }
  body { background: #fff; color: #111; }
}
/* v2 добавления */
table, .price, .num, .sum { font-variant-numeric: tabular-nums; }
h1, h2 { letter-spacing: -0.01em; }
input::placeholder, textarea::placeholder { opacity: .55; }
::-webkit-scrollbar { width: 10px; height: 10px; }
::-webkit-scrollbar-thumb { background: rgba(15, 36, 56, .25); border-radius: 8px; }
::-webkit-scrollbar-thumb:hover { background: rgba(15, 36, 56, .4); }
footer { border-top: 1px solid rgba(15, 36, 56, .12); }
img { max-width: 100%; height: auto; }
::selection { background: rgba(47, 111, 237, .18); }
