
/* ===== Адаптивность ===== */
@media (max-width: 1024px) {
  .container {
    padding: 0 20px;
  }

  .nav {
    gap: 16px;
  }
  
}

@media (max-width: 974px) {
  .content {
    flex: 1 1 0;
    margin-left: 0;
    min-width: 0;
  }
}

@media (max-width: 768px) {
  .header-top {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }

  .header {
    margin-bottom: 1rem;
  }

  .content, .content2 {
    margin-left: 0;
    max-width: 100%;
    flex: 1 1 100%;
    min-width: 0;
  }

  .form-group.flex-align {
    flex-direction: column;
  }

  h1, h2 {
    font-size: 22px;
    text-align: left;
    margin-bottom: 1rem;
  }

  .nav {
    flex-direction: row;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-start;
    gap: 0.5rem;
    width: 100%;
  }

  .history {
    width: 100%;
    max-height: min(45vh, 320px);
  }

  .breadcrumb .container {
    padding: 0 10px;
  }

  .breadcrumb a {
    font-size: 14px;
  }

  body {
    font-size: 16px;
  }
}

@media (max-width: 480px) {
  main {
    padding-bottom: 2rem;
    padding-bottom: calc(2rem + env(safe-area-inset-bottom, 0));
  }

  .btn, .submit-button_v4 {
    padding: 12px 16px;
    font-size: 16px;
  }

  h1, h2, h3 {
    font-size: 1.2em;
  }
}

.table-container {
  overflow-x: auto; /* Enables horizontal scroll when content overflows */
  -webkit-overflow-scrolling: touch; /* Smooth scrolling on iOS */
  max-width: 100%; /* Prevents the container from exceeding parent width */
  position: relative; /* Helps contain overflow */
}

table {
  width: max-content; /* или min-width: 100%; если хотите адаптацию */
  border-collapse: collapse;
}

th, td {
  padding: 12px;
  border: 1px solid #ddd;
  white-space: nowrap; /* предотвращает перенос строк */
}

@media (max-width: 1000px) {
  .lk-password .btn.success {
    width: 100%;
  }
}
@media (max-width: 800px) {
  .lk-password .pwd-row {
    grid-template-columns: 1fr;
    gap: 10px;
  }
  .lk-password label {
    margin-top: 6px;
  }
  .lk-password .btn.success {
    margin-top: 4px;
  }
}

/* ===== Responsive: content blocks (Адаптивность контента) ===== */
@media (max-width: 900px) {
  .content .lk-topbar {
    padding: 15px 14px;
  }
  .content .lk-subscription {
    min-height: 190px;
  }
  .content .lk-subscription .sub-topbar {
    padding: 10px 12px;
  }
  .content .lk-subscription .sub-bottombar {
    padding: 10px 12px;
  }
  .content .seg .seg-btn {
    padding: 6px 10px;
  }
}
@media (max-width: 720px) {
  /* Topbar (верхняя панель на узком экране) */
  .content .lk-topbar {
    flex-direction: column;
    align-items: flex-start;
    gap: 6px;
  }
  /* Subscription banner (баннер подписки на узком экране) */
  .content .lk-subscription .sub-topbar {
    flex-direction: column;
    align-items: flex-start;
    gap: 4px;
  }
  .content .lk-subscription .sub-bottombar {
    flex-direction: column;
    align-items: stretch;
    gap: 10px;
  }
  .content .lk-subscription .sub-bottom-left {
    flex-wrap: wrap;
    gap: 8px;
  }
  .content .lk-subscription .sub-bottom-right {
    align-self: flex-start;
  }
  .content .cc,
  .content .auto-status {
    max-width: 100%;
  }
  /* Top-up (пополнение) */
  .content .lk-topup .topup-label {
    flex: 1 1 100%;
    max-width: none;
  }
  .content .lk-topup .input.money,
  .content .lk-topup .topup-btn {
    width: 100%;
    min-width: 0;
  }
  .content .lk-topup .wallet {
    margin-left: 0;
    width: 100%;
    order: 4;
  }
  .content .lk-topup .topup-label {
    order: 1;
  }
  .content .lk-topup .input.money {
    order: 2;
  }
  .content .lk-topup .topup-btn {
    order: 3;
  }
  /* Spend (расходы) */
  .content .lk-spend .spend-head {
    flex-wrap: wrap;
  }
  .content .lk-spend .dates {
    width: 100%;
    order: 2;
  }
  .content .lk-spend .spent-total {
    width: 100%;
    order: 3;
    margin-left: 0;
  }
}
@media (max-width: 560px) {
  /* Chart compaction (сжатие графика) */
  .content .chart-inner {
    min-width: 520px;
    height: 200px;
  }
  .content .bar {
    width: 14px;
  }
  .content .bar .m {
    display: none;
  }
  /* Payments spacing (отступы списка платежей) */
  .content .payments-list li {
    padding: 12px 0;
  }

  /* Pagination responsive styles */
  .pagination {
    flex-direction: column;
    gap: 12px;
    text-align: center;
  }

  .pagination-link {
    max-width: 200px;
    justify-content: center;
    margin: 0 auto;
  }
}

  @media (max-width:700px){
    .mt-tariff-grid{grid-template-columns:1fr}
    .mt-form-inline{grid-template-columns:1fr}
  }
  
  @media (max-width:700px){
.mt-tariff-grid{grid-template-columns:1fr}
.mt-form-inline{grid-template-columns:1fr}
}
.mt-hidden{display:none !important}
.mt-auth-body{padding:18px 22px;background:#f5f9fc; border-radius: 10px;}
.mt-actions{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-top:12px}
.mt-form-row{display:grid;grid-template-columns:1fr auto;gap:12px}

    /* ===== Price page responsive (new grid cards) ===== */
    @media (max-width: 768px) {
      .price-grid {
        grid-template-columns: 1fr;
      }
      .price-page h1 {
        font-size: 1.4rem;
      }
    }



    @media (max-width: 720px){
      .full, .app-layout {
        flex-wrap: wrap;
      }

      .full > .sidebar,
      .app-layout > .sidebar {
        flex: 1 1 100%;
        width: 100%;
        position: static;
        max-height: none;
      }
    }


/* Чуть плотнее на средних ширинах */
@media (max-width: 900px){
  .model-tabs{
    gap: .5rem;
    margin: 1rem 0 1.25rem;
  }
}

/* Мобилка: один ряд + горизонтальный скролл */
@media (max-width: 640px){
  .model-tabs{
    flex-wrap: nowrap;
    justify-content: flex-start;
    overflow-x: auto;
    overflow-y: hidden;
    -webkit-overflow-scrolling: touch;
    scroll-snap-type: x proximity;
    padding: .25rem .25rem .5rem;
    gap: .5rem;
  }

  .model-tabs button{
    flex: 0 0 auto;
    scroll-snap-align: start;
  }

  /* аккуратная полоса прокрутки (не обязателен, но выглядит опрятно) */
  .model-tabs::-webkit-scrollbar{ height: 6px; }
  .model-tabs::-webkit-scrollbar-track{ background: transparent; }
  .model-tabs::-webkit-scrollbar-thumb{
    background: rgba(0,0,0,.14);
    border-radius: 999px;
  }
}