/* === Responsive Design === */

/* Large Desktop (1200px and below) */
@media (max-width: 1200px) {
  .container {
    max-width: 100%;
    padding: 0 4%;
  }
  
  .woocommerce-MyAccount-navigation {
      flex: 0 0 230px;
  }
  
  .woocommerce-MyAccount-content {
      max-width: calc(100% - 260px);
  }
}

/* Tablet Styles (769px - 1024px) */
@media (max-width: 1024px) and (min-width: 769px) {
  .container {
    grid-template-columns: 220px 1fr 220px;
    gap: 20px;
  }
  
  .header-main {
    flex-wrap: wrap;
    gap: 15px;
  }
  
  .header-center {
    order: 3;
    flex: 1 0 100%;
    margin-top: 10px;
  }
  
  .search-filters-row {
    justify-content: flex-start;
  }
  
  .filter-input {
    flex: 0 1 calc(20% - 5px);
    max-width: calc(20% - 5px);
  }
  
  /* My Account Tablet */
  .woocommerce-account-wrapper {
      gap: 25px;
  }
  
  .woocommerce-MyAccount-navigation {
      flex: 0 0 200px;
      padding: 20px;
  }
  
  .woocommerce-MyAccount-content {
      max-width: calc(100% - 225px);
      padding: 25px;
  }
  
  .woocommerce-MyAccount-navigation a {
      padding: 10px 0;
      font-size: 13px;
      gap: 10px;
  }
  
  .woocommerce-MyAccount-navigation i {
      width: 16px;
      font-size: 14px;
  }
  
  /* Compact navigation for tablet */
  .woocommerce-MyAccount-navigation ul {
      display: grid;
      grid-template-columns: 1fr;
      gap: 5px;
  }
  
  .woocommerce-MyAccount-navigation li {
      border-bottom: 1px solid #f0f0f0;
  }
  
  .woocommerce-MyAccount-navigation a {
      background: #f8f9fa;
      border-radius: 6px;
      padding: 12px 15px;
      transform: none;
  }
  
  .woocommerce-MyAccount-navigation a:hover {
      transform: translateY(-2px);
      background: #8b4513;
      color: white;
  }
  
  .woocommerce-MyAccount-navigation a:hover i {
      color: white;
  }
  
  /* Подборки по годам на планшетах */
  .years-collections-grid {
      grid-template-columns: repeat(3, 1fr);
  }
}

/* Small Tablet (900px and below) */
@media (max-width: 900px) {
  .container {
    grid-template-columns: 1fr;
    grid-template-areas: 
      "main"
      "left"
      "right";
    padding: 0 4%;
  }
  
  .sidebar-left {
    grid-area: left;
    position: static;
  }
  
  .main-content {
    grid-area: main;
  }
  
  .sidebar-right {
    grid-area: right;
    position: static;
  }
  
  .carousel-section {
    padding: 25px;
    margin: 30px 0;
  }
  
  .section-title {
    font-size: 1.7em;
  }
  
  .products-grid {
    grid-template-columns: repeat(2, 1fr);
  }
}

/* Mobile Styles (768px and below) */
@media (max-width: 768px) {
  .container {
    padding: 0 3%;
    gap: 20px;
  }
  
  .header-main {
    flex-wrap: wrap;
    gap: 15px;
    padding: 0 3%;
    gap: 10px;
  }

  .header-left {
    width: 100%;
    justify-content: space-between;
  }
  
  .nav-container {
    padding: 0 3%;
  }
  
  .mobile-menu-toggle {
    display: flex;
  }
  
  .top-contacts {
    display: none;
  }
  
  .primary-menu {
    gap: 15px;
    padding: 10px 0;
  }
  
  .primary-menu a {
    font-size: 14px;
    padding: 10px 0;
  }
  
  .card {
    padding: 20px;
  }
  
  .product-card {
    padding: 10px;
    margin: 0px;
  }
  
  .swiper-slide-next,
  .swiper-slide-active {
    margin-right: 0px;
    padding: 5px;
  }
  
  .product-image img {
    height: 200px;
  }
  
  .swiper-button-next,
  .swiper-button-prev {
    width: 45px;
    height: 45px;
  }
  
  .swiper-button-next:after,
  .swiper-button-prev:after {
    font-size: 18px;
  }
  
  /* Мобильная версия фильтров */
  .search-inputs {
    gap: 12px;
  }
  
  .search-main-row {
    flex-direction: column;
    gap: 10px;
  }
  
  .search-field,
  .catalog-select {
    width: 100%;
    max-width: 100%;
  }
  
  .search-filters-row {
    flex-direction: column;
    gap: 8px;
  }
  
  .filter-input {
    flex: 1;
    max-width: 100%;
    width: 100%;
  }
  
  .search-submit {
    width: 100%;
    margin-top: 5px;
    padding: 12px;
    font-size: 16px;
  }
  
  /* Скрываем обычную навигацию в мобильной версии */
  .nav {
    display: none;
  }
  
  /* My Account Mobile */
  .woocommerce-account-wrapper {
      flex-direction: column;
      gap: 20px;
  }
  
  .woocommerce-MyAccount-navigation,
  .woocommerce-MyAccount-content {
      padding: 20px;
      width: 100%;
      max-width: 100%;
  }
  
  .woocommerce-MyAccount-navigation {
      flex: none;
  }
  
  .woocommerce-MyAccount-content {
      flex: none;
  }
  
  .woocommerce-MyAccount-navigation ul {
      display: grid;
      grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));
      gap: 10px;
  }
  
  .woocommerce-MyAccount-navigation li {
      border-bottom: none;
      border-right: 1px solid #f0f0f0;
  }
  
  .woocommerce-MyAccount-navigation li:last-child {
      border-right: none;
  }
  
  .woocommerce-MyAccount-navigation a {
      padding: 12px 15px;
      text-align: center;
      justify-content: center;
      border-radius: 6px;
      background: #f8f9fa;
      transform: none;
  }
  
  .woocommerce-MyAccount-navigation a:hover {
      transform: translateY(-2px);
      background: #8b4513;
      color: white;
  }
  
  .woocommerce-MyAccount-navigation a:hover i {
      color: white;
  }
  
  .addresses-grid,
  .woocommerce .col2-set,
  .woocommerce-page .col2-set {
    grid-template-columns: 1fr !important;
    gap: 20px !important;
  }
  
  .woocommerce-Address-title {
    flex-direction: column;
    align-items: flex-start;
    gap: 10px;
  }
  
  .woocommerce-Address-title .edit {
    align-self: stretch;
    text-align: center;
  }
  
  .woocommerce-orders-table {
    display: block;
    overflow-x: auto;
  }

  /* Наборы марок */
  .stamp-sets-grid {
      grid-template-columns: repeat(auto-fit, minmax(140px, 1fr));
      gap: 6px;
      padding: 8px;
  }

  .stamp-set-block {
      padding: 10px 12px;
      min-height: 45px;
      max-height: 45px;
  }

  .set-title {
      font-size: 13px;
  }

  .set-count {
      font-size: 10px;
  }
  
  /* Подборки по годам на мобильных */
  .years-collections-grid {
      grid-template-columns: repeat(3, 1fr);
      gap: 10px;
      padding: 12px 8px;
  }
  
  .year-collection-link {
      padding: 6px 3px;
  }
  
  .year-number {
      font-size: 15px;
  }
  
  .year-count {
      font-size: 10px;
  }
  
  .product-actions {
      flex-direction: column;
      gap: 6px;
  }
  
  .add-to-cart-btn,
  .quick-order-btn,
  .details-btn {
      padding: 10px 12px;
      font-size: 13px;
  }
  
  /* Виджет последних записей */
  .recent-post-item {
      padding: 12px;
  }
  
  .recent-post-title {
      font-size: 13px;
  }
  
  .recent-post-date {
      font-size: 11px;
  }
}

/* Small Mobile (480px and below) */
@media (max-width: 480px) {
  .section-title {
    font-size: 1.5em;
  }
  
  .products-grid {
    grid-template-columns: 1fr;
  }
  
  .header-left {
    gap: 10px;
  }
  
  .logo a,
  .site-title {
    font-size: 20px;
  }
  
  .logo img {
    height: 40px;
  }
  
  .search-field {
    font-size: 13px;
  }
  
  .mobile-menu {
    width: 100%;
  }
  
  .carousel-section {
    padding: 20px;
    margin: 20px 0;
  }
  
  .primary-menu {
    gap: 12px;
  }
  
  .primary-menu a {
    font-size: 13px;
  }
  
  /* My Account Small Mobile */
  .woocommerce-MyAccount-navigation,
  .woocommerce-MyAccount-content {
    padding: 15px;
  }
  
  .woocommerce-MyAccount-navigation a {
    padding: 10px 0;
    font-size: 14px;
  }
  
  .woocommerce-orders-table th,
  .woocommerce-orders-table td {
    padding: 8px 10px;
    font-size: 13px;
  }
  
  .woocommerce-Address {
    padding: 15px;
  }
  
  .woocommerce-Address-title h2 {
    font-size: 1.1em;
  }
  
  /* Stack navigation items on very small screens */
  .woocommerce-MyAccount-navigation ul {
    grid-template-columns: 1fr;
  }
  
  .woocommerce-MyAccount-navigation li {
    border-right: none;
    border-bottom: 1px solid #f0f0f0;
  }
  
  .woocommerce-MyAccount-navigation a {
    justify-content: flex-start;
    text-align: left;
    background: transparent;
  }
  
  .woocommerce-MyAccount-navigation a:hover {
    background: transparent;
    color: #8b4513;
    transform: translateX(5px);
  }
  
  /* Наборы марок на маленьких экранах */
  .stamp-sets-grid {
      grid-template-columns: 1fr 1fr;
      gap: 5px;
  }
  
  .stamp-set-block {
      min-height: 40px;
      max-height: 40px;
      padding: 8px 10px;
  }
  
  .set-title {
      font-size: 12px;
  }
  
  .set-count {
      font-size: 9px;
  }
  
  /* Подборки по годам на маленьких экранах */
  .years-collections-grid {
      grid-template-columns: repeat(4, 1fr);
      gap: 8px;
  }

  .year-number {
      font-size: 14px;
  }
}

/* Extra Small Mobile (360px and below) */
@media (max-width: 360px) {
  .header-main {
    padding: 0 2%;
  }
  
  .nav-container {
    padding: 0 2%;
  }
  
  .primary-menu a {
    font-size: 12px;
    padding: 8px 0;
  }
  
  .container {
    padding: 0 2%;
  }
  
  .filter-input {
    font-size: 12px;
    padding: 6px 8px;
  }
  
  .woocommerce-MyAccount-navigation,
  .woocommerce-MyAccount-content {
    padding: 12px;
  }
  
  /* Подборки по годам на очень маленьких экранах */
  .years-collections-grid {
      grid-template-columns: repeat(3, 1fr);
      gap: 6px;
  }
  
  .year-number {
      font-size: 13px;
  }
  
  .year-count {
      font-size: 9px;
  }
}

/* Модальные окна и специальные элементы */
@media (max-width: 768px) {
  .quick-order-modal-content {
      margin: 10% auto;
      width: 95%;
      padding: 25px 20px;
  }
  
  .quick-order-modal-content h3 {
      font-size: 1.3em;
      margin-bottom: 15px;
  }
  
  .cart-link {
      padding: 6px 10px;
  }
  
  .cart-link i {
      font-size: 16px;
      margin-right: 6px;
  }
  
  .cart-count {
      width: 18px;
      height: 18px;
      font-size: 10px;
  }
}

@media (max-width: 480px) {
  .product-actions {
      flex-direction: column;
  }
  
  .quick-order-modal-content {
      margin: 5% auto;
      padding: 20px 15px;
  }
  
  .quick-order-form {
      gap: 12px;
  }
  
  .quick-order-form input,
  .quick-order-form textarea {
      padding: 10px 12px;
      font-size: 13px;
  }
  
  .quick-order-submit {
      padding: 12px 15px;
      font-size: 15px;
  }
  
  .single-quick-order {
      padding: 12px 20px !important;
      font-size: 15px !important;
  }
}

/* Специфические стили для каруселей на мобильных */
.carousel-section{
  padding:10px 5px;
  margin: 20px 0px;
}

.product-title{
  align-self: center;
}

/* Welcome card mobile styles */
.welcome-card-mobile {
    display: none;
}

@media (max-width: 900px) {
    .welcome-card-mobile {
        display: flex !important;
        align-self: stretch;
        flex-direction: column;
        order: 1;
        background: #fff;
        padding: 25px 20px;
        border-radius: 8px;
        box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        border: 1px solid #d1d5db;
        margin-bottom: 20px;
        text-align: center;
        background: linear-gradient(135deg, #f8f9fa, #e9ecef);
        position: relative;
        overflow: hidden;
    }

    .welcome-card-mobile h1 {
        color: #2c3e50;
        font-size: 1.8em;
        font-weight: 700;
        margin-bottom: 15px;
        line-height: 1.3;
        text-shadow: 0 1px 2px rgba(0,0,0,0.1);
        font-family: 'Georgia', serif;
    }

    .welcome-card-mobile p {
        color: #666;
        font-size: 1.1em;
        line-height: 1.5;
        margin: 0;
        font-weight: 400;
    }

    .welcome-card {
        display: none;
    }
    
    .details-btn{
        display: none !important;
    }
}

/* Стили для пустого состояния */
.recent-posts-with-date:empty::before {
    content: "Записей пока нет";
    text-align: center;
    color: #6b7280;
    font-style: italic;
    padding: 20px;
}

/* Убираем стандартные стили ссылок */
.recent-post-item:focus {
    outline: 2px solid #8b4513;
    outline-offset: 2px;
}