/*
  Kisan Sahakar — global mobile / small-screen responsive layer.
  Loaded from Site.Master on all public pages. Pair with Bootstrap 5 breakpoints.
*/

/* ── Base ─────────────────────────────────────────────────────── */
@media (max-width: 767.98px) {
  html,
  body.ks-body {
    max-width: 100%;
  }

  body.ks-body .container,
  body.ks-body .container-fluid.ks-shell {
    padding-left: 0.85rem;
    padding-right: 0.85rem;
    max-width: 100%;
  }

  body.ks-body .section-padding {
    padding: 2.5rem 0;
  }

  body.ks-body .modal-dialog {
    margin: 0.65rem;
  }

  body.ks-body .modal-content {
    border-radius: 16px;
  }
}

/* ── Header / nav ───────────────────────────────────────────── */
@media (max-width: 575.98px) {
  .ks-top-strip-meta {
    white-space: normal !important;
    text-align: center;
    line-height: 1.35;
    font-size: 0.72rem;
  }

  .ks-top-strip-meta .mx-2 {
    display: none;
  }

  .ks-top-strip-meta .fa-envelope + *,
  .ks-top-strip-meta {
    word-break: break-word;
  }

  .ks-header-profile-name {
    display: none;
  }

  .ks-header-cart-text {
    display: none !important;
  }

  .ks-header-login,
  .ks-header-register {
    font-size: 0.82rem;
    padding-left: 0.65rem !important;
    padding-right: 0.65rem !important;
  }

  .ks-brand-emblem img,
  .ks-nav-saas .navbar-brand img {
    max-height: 2.1rem;
    width: auto;
  }
}

@media (max-width: 991.98px) {
  .ks-top-strip-meta a {
    display: inline-block;
    max-width: 9rem;
    overflow: hidden;
    text-overflow: ellipsis;
    vertical-align: bottom;
  }
}

/* ── Footer ───────────────────────────────────────────────────── */
@media (max-width: 767.98px) {
  body.ks-body .ks-site-footer .ks-footer-main {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem;
  }

  body.ks-body .ks-footer-heading {
    margin-top: 0.5rem;
  }
}

/* ── Home & marketing ─────────────────────────────────────────── */
@media (max-width: 767.98px) {
  .home-hero-saas {
    padding: 1.75rem 0 2.5rem !important;
  }

  .home-hero-saas .home-hero-title {
    font-size: 1.65rem !important;
  }

  .ks-page-hero-inner {
    padding: 1.35rem 0 1.65rem;
  }

  .ks-card-soft:hover {
    transform: none;
  }
}

/* ── Auth / OTP ───────────────────────────────────────────────── */
@media (max-width: 575.98px) {
  .ks-otp-boxes {
    gap: 0.45rem !important;
  }

  .ks-otp-boxes input {
    width: 2.75rem !important;
    height: 2.75rem !important;
    font-size: 1.15rem !important;
  }

  .auth-login-visual-frame {
    min-height: 10rem !important;
    max-height: 12rem !important;
  }

  .auth-login-panel-inner {
    padding: 1rem 0.85rem 1.25rem !important;
  }

  .auth-login-card {
    padding: 1.15rem 1rem !important;
  }
}

/* ── Tables & wide content ─────────────────────────────────────── */
@media (max-width: 991.98px) {
  .table-responsive,
  .modern-table-wrap,
  .ks-table-scroll {
    display: block;
    width: 100%;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
  }

  .modern-table {
    min-width: 640px;
  }
}

/* ── Register / forms (shared patterns) ───────────────────────── */
@media (max-width: 767.98px) {
  .rk-step-panel,
  .fpo-form-panel,
  .register-card {
    padding: 1rem !important;
  }

  .row.g-3 > [class*="col-"],
  .row.g-4 > [class*="col-"] {
    min-width: 0;
  }
}

/* ── Utility: full-width buttons on small screens ─────────────── */
@media (max-width: 575.98px) {
  .ks-mobile-stack-actions {
    display: flex;
    flex-direction: column;
    gap: 0.5rem;
  }

  .ks-mobile-stack-actions .btn,
  .ks-mobile-stack-actions a.btn {
    width: 100%;
  }
}
