:root {
  --primary-color: #2c583b;
  --secondary-color: #4a6cf7;
  --dark-color: #222;
  --gray-color: #666;
  --light-gray: #f8f9fa;
  --border-color: #eee;
  --primary: #d82e2e;
  --primary-light: rgba(216, 46, 46, 0.1);
  --primary-dark: #b82525;
  --dark: #222;
  --gray: #666;
  --light-gray: #f8f9fa;
  --border: #eee;
  --success: #4CAF50;
  --processing: #2196F3;
  --shipped: #FF9800;
  --cancelled: #F44336;
  --return: #9C27B0;
  --error: #f44336;
  --success: #4CAF50;
  --warning: #FF9800;
  --shadow: 0 5px 30px rgba(0, 0, 0, 0.05);
}

.wide-auth-container { width: 100%; max-width: 1920px; margin: 0 auto; background: #f8f9fa;}
.auth-grid { display: grid; grid-template-columns: repeat(auto-fit, minmax(400px, 1fr)); gap: 30px; max-width: 900px; margin: 0 auto; padding: 30px 0;}
.auth-grid-register {display: grid;grid-template-columns: repeat(auto-fit, minmax(400px, 1fr));gap: 30px;max-width: 450px;margin: 0 auto; padding: 30px 0;}
.account-dashboard-container {background: #f8f9fa;padding-bottom: 60px;}
.account-edit-address-container {background: #f8f9fa;padding-bottom: 60px;}
.account-address-list-container {background: #f8f9fa;padding-bottom: 60px;}


/*************
   Auth Grid 
*************/

.auth-card {background: white;border-radius: 12px;padding: 40px;box-shadow: var(--shadow);transition: transform 0.3s, box-shadow 0.3s;}
.auth-card-header {margin-bottom: 30px;}
.auth-title {font-size: 24px;font-weight: 700;color: var(--dark-color);margin-bottom: 10px;}


/*************
  login.tpl
*************/

/* Auth Form */
.auth-form {display: flex;flex-direction: column;}
.form-group {margin-bottom: 15px;position: relative;}
.form-group.floating label {position: absolute;top: 15px;left: 15px;color: var(--gray-color);pointer-events: none;transition: all 0.3s;background: white;
padding: 0 5px;}
.form-group.floating input:focus ~ label,
.form-group.floating input:not(:placeholder-shown) ~ label {top: -10px;font-size: 12px;color: var(--primary-color);}
.form-control {width: 100%;padding: 15px;border: 1px solid var(--border-color);border-radius: 8px;font-size: 15px;transition: border-color 0.3s;}
.form-control:focus {border-color: var(--primary-color);outline: none;box-shadow: 0 0 0 2px rgba(216, 46, 46, 0.1);}
.forgot-password {display: block;text-align: right;font-size: 13px;color: var(--gray-color);margin-top: 5px;text-decoration: none;transition: color 0.3s;}
.forgot-password:hover {color: var(--primary-color);}
.form-options {display: flex;justify-content: space-between;align-items: center;margin-bottom: 20px;}
.remember-me {display: flex;align-items: center;}
.remember-me input {margin-right: 8px;}
.remember-me label {font-size: 14px;color: var(--gray-color);cursor: pointer;}
.btn-auth-primary {background: var(--primary-color);color: white;border: none;padding: 15px;border-radius: 8px;font-size: 13px;font-weight: 600;
cursor: pointer;transition: background 0.3s;/*margin-bottom: 20px;*/}
.btn-auth-primary:hover {background: #b82525;}
.btn-auth-outline {display: block;text-align: center;background: transparent;color: var(--primary-color);border: 1px solid var(--primary-color);
padding: 15px;border-radius: 8px;font-size: 16px;font-weight: 600;cursor: pointer;transition: all 0.3s;text-decoration: none;margin-top: 20px;}
.btn-auth-outline:hover {background: rgba(216, 46, 46, 0.05);}

/* Divider */
.auth-divider {display: flex;align-items: center;margin: 20px 0;color: var(--gray-color);font-size: 13px;}
.auth-divider::before,
.auth-divider::after {content: "";flex: 1;border-bottom: 1px solid var(--border-color);}
.auth-divider::before {margin-right: 10px;}
.auth-divider::after {margin-left: 10px;}

/* Social Auth */
.social-auth {display: grid;grid-template-columns: 1fr 1fr;gap: 10px;}
.social-btn {display: flex;align-items: center;justify-content: center;gap: 8px;padding: 12px;border-radius: 8px;font-size: 14px;font-weight: 500;
cursor: pointer;transition: all 0.3s;border: 1px solid var(--border-color);background: white;}
.social-btn:hover {background: #f5f5f5;}
.social-btn.google {color: #4285F4;}
.social-btn.facebook {color: #1877F2;}

/* Benefits List */
.auth-benefits {list-style: none;padding: 0;margin: 0 0 25px 0;}
.benefit-item {display: flex;align-items: center;gap: 10px;padding: 8px 0;color: var(--dark-color);font-size: 15px;}

/* Agreement */
.auth-agreement {font-size: 12px;color: var(--gray-color);text-align: center;margin-top: 20px;line-height: 1.5;}
.auth-agreement a {color: var(--primary-color);text-decoration: none;}
.auth-agreement a:hover {text-decoration: underline;}

/* Responsive */
@media (max-width: 991px) {
  .auth-grid {grid-template-columns: 1fr;max-width: 500px;}
  .auth-grid-register {grid-template-columns: 1fr;max-width: 500px;}
}

@media (max-width: 575px) {
  .auth-card {padding: 30px 20px;}
  .social-auth {grid-template-columns: 1fr;}
}

/****************
  register.tpl
****************/

.agree-checkbox {display: flex;align-items: center;font-size: 13px;color: #666;cursor: pointer;margin: 20px 0;}
.checkbox-item {display: flex;align-items: center;}
.checkbox-item input[type="checkbox"] {margin-right: 8px;}
.text-danger {color: var(--error);font-size: 13px;margin-top: 5px;}
.text-link {color: var(--primary-color);text-decoration: none;}
.text-link:hover {text-decoration: underline;}
.spinner-border {display: inline-block;width: 1rem;height: 1rem;vertical-align: text-bottom;border: 0.2em solid currentColor;
border-right-color: transparent;border-radius: 50%;animation: spinner-border .75s linear infinite;}

@keyframes spinner-border {
  to { transform: rotate(360deg); }
}

@media (max-width: 991px) {
  .auth-grid {grid-template-columns: 1fr;max-width: 500px;}
}

@media (max-width: 575px) {
  .auth-card {padding: 30px 20px;}
  .social-auth {grid-template-columns: 1fr;}
}


/*****************************
  forgotten.tpl / reset.tpl
******************************/ 
.auth-grid-size{max-width: 500px;}
.auth-card {background: #fff;border-radius: 12px;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.08);padding: 2rem;}
.auth-card-header {text-align: center;margin-bottom: 1.5rem;}
.auth-title {font-size: 1.8rem;font-weight: 600;color: #2d3748;margin-bottom: 0.5rem;}
.auth-subtitle {color: #718096;font-size: 1.2rem;line-height: 1.5;margin-bottom: 0;margin: 0;}
.auth-form {margin-top: 1.5rem;}
.auth-fieldset {border: none;padding: 0;margin: 0 0 1.5rem 0;}
.auth-legend {font-size: 1.1rem;font-weight: 600;color: #2d3748;margin-bottom: 1rem;padding: 0;width: 100%;border-bottom: 1px solid #e2e8f0;
padding-bottom: 0.5rem;}
.form-group {margin-bottom: 1.5rem;}
.form-group.floating {position: relative;}
.form-group.floating label {position: absolute;top: 12px;left: 12px;color: #a0aec0;font-size: 14px;font-weight: 400;pointer-events: none;
transition: all 0.2s ease;}
.form-group.floating input:focus ~ label,
.form-group.floating input:not(:placeholder-shown) ~ label {top: -10px;left: 10px;font-size: 12px;background: white;padding: 0 4px;
color: var(--primary-color, #4a90e2);}
.form-control {width: 100%;padding: 12px;border: 2px solid #e2e8f0;border-radius: 8px;font-size: 14px;transition: all 0.3s ease;}
.form-control:focus {outline: none;border-color: var(--primary-color, #4a90e2);box-shadow: 0 0 0 3px rgba(74, 144, 226, 0.1);}
.form-control.is-invalid {border-color: #e53e3e;}
.text-danger {color: #e53e3e;font-size: 12px;margin-top: 4px;}
.form-buttons {display: flex;justify-content: space-between;align-items: center;margin-top: 2rem;gap: 1rem;}
.form-buttons-forgotten {display: flex;justify-content: space-between;align-items: center;gap: 1rem;}
.btn-auth-secondary {background: #f7fafc;color: #4a5568;border: 1px solid #e2e8f0;padding: 12px 24px;border-radius: 8px;font-weight: 600;
cursor: pointer;transition: all 0.3s ease;text-decoration: none;display: inline-flex;align-items: center;gap: 8px;}
.btn-auth-secondary:hover {background: #edf2f7;transform: translateY(-1px);}
.btn-auth-primary {background: var(--primary-color, #4a90e2);color: white;border: none;padding: 12px 24px;border-radius: 8px;font-weight: 600;
cursor: pointer;transition: all 0.3s ease;/*display: inline-flex;*/align-items: center;gap: 8px;}
.auth-help-text {margin-top: 3rem;padding: 1rem;background: #f7fafc;border-radius: 8px;border-left: 4px solid var(--primary-color, #4a90e2);}
.auth-help-text p {margin: 0;color: #4a5568;display: flex;align-items: flex-start;gap: 8px;}
.auth-help-text i {color: var(--primary-color, #4a90e2);margin-top: 2px;}

@keyframes slideIn {
  from {transform: translateX(100%);opacity: 0;}
  to {transform: translateX(0);opacity: 1;}
}

@media (max-width: 768px) {
  .auth-card {padding: 1.5rem;}
  .form-buttons-forgotten {flex-direction: column-reverse;}
  .btn-auth-primary,
  .btn-auth-secondary {width: 100%;justify-content: center;}
  .auth-help-text {padding: 0.75rem;}
}

.fa-spin {animation: fa-spin 2s infinite linear;}

@keyframes fa-spin {
  0% { transform: rotate(0deg); }
  100% { transform: rotate(360deg); }
}

/****************
  account.tpl
****************/

/* Alert */
.modern-alert {display: flex;align-items: center;padding: 15px 20px;border-radius: 8px;background: #f6ffed;border: 1px solid #b7eb8f;margin-bottom: 20px;}
.modern-alert svg {margin-right: 12px;}

/* Account Summary */
.account-summary-card {background: white;border-radius: 12px;padding: 25px;margin-bottom: 25px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);}
.user {display: flex;align-items: center;margin-bottom: 20px;}
.avatar {width: 50px;height: 50px;background-color: var(--primary);color: white;border-radius: 50%;display: flex;align-items: center;justify-content: center;
font-weight: bold;font-size: 20px;margin-right: 15px;}
.user h3 {font-size: 20px;font-weight: 600;color: var(--dark);margin: 0;}
.summary-stats {display: grid;grid-template-columns: repeat(auto-fit, minmax(150px, 1fr));gap: 15px;}
.stat-item {display: flex;align-items: center;padding: 15px;background: var(--light-gray);border-radius: 8px;}
.stat-item svg {margin-right: 10px;}
.stat-value {font-size: 18px;font-weight: 700;color: var(--dark);display: block;}
.stat-label {font-size: 13px;color: var(--gray);display: block;}

/* Orders Section */
.orders-section {background: white;border-radius: 12px;padding: 25px;margin-bottom: 25px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);}
.section-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 20px;}
.orders-filter {margin-left: 15px;}
.filter-select {cursor: pointer;}
.order-list {display: grid;gap: 15px;margin-top: 20px;}
.order-item {display: grid;grid-template-columns: 2fr 4fr 2fr;align-items: center;gap: 15px;padding: 15px;border-radius: 8px;background: var(--light-gray);}
.order-main-info {display: flex;flex-direction: column;}
.order-secondary-info {display: flex;align-items: center;gap: 50px;}
.order-id {font-weight: 600;color: var(--dark);margin-bottom: 5px;}
.order-date {font-size: 14px;color: var(--gray);}
.order-status {padding: 5px 10px;border-radius: 4px;font-size: 13px;font-weight: 500;text-align: center;white-space: nowrap;width: 220px;}
.status-active {background: var(--processing);color: white;}
.status-completed {background: var(--success);color: white;}
.status-canceled {background: var(--cancelled);color: white;}
.status-return {background: var(--return);color: white;}
.order-total {font-size: 14px;color: var(--gray);white-space: nowrap;}
.order-details-btn {padding: 8px 15px;border: none;border-radius: 6px;font-size: 13px;cursor: pointer;
background-color: var(--primary);color: white;display: flex;align-items: center;justify-content: center;gap: 8px;margin-left: auto;}
.order-details-btn:hover {background: #b82525;}
.no-orders {text-align: center;padding: 30px;color: var(--gray);}

/* Order Details */
.order-details-container {grid-column: 1 / -1;padding: 15px;background: white;border-radius: 8px;margin-top: 10px;border: 1px solid var(--border);}
.order-products-list {margin-bottom: 15px;}
.order-product-item {display: flex;align-items: flex-start;padding: 10px 0;border-bottom: 1px solid var(--border);}
.order-product-item .product-image {width: 80px;height: 80px;object-fit: contain;margin-right: 15px;border: 1px solid var(--border);border-radius: 4px;}
.product-name-wrapper {display: flex;justify-content: space-between;align-items: flex-start;margin-bottom: 5px;}
.review-btn {display: inline-flex;align-items: center;padding: 6px 12px;background-color: var(--primary);color: white;border-radius: 4px;font-size: 13px;
text-decoration: none;}
.review-btn:hover {background-color: #b82525;}
.review-btn svg {margin-left: 5px;}
.product-meta {display: flex;gap: 100px;font-size: 13px;color: var(--gray);margin-bottom: 5px;}
.product-options {margin-top: 5px;font-size: 12px;color: #777;}
.order-payment-shipping {display: grid;grid-template-columns: 1fr 1fr;gap: 15px;padding-top: 10px;border-top: 1px solid var(--border);}

/* Стили для переключателя подписки */
.subscription-control {display: flex;align-items: center;gap: 15px;margin: 20px 0;padding: 15px;background: #f9f9f9;border-radius: 8px;}
.subscription-label {font-weight: 500;min-width: 200px;}
.switch {position: relative;display: inline-block;width: 60px;height: 34px;}
.switch input {opacity: 0;width: 0;height: 0;}
.slider {position: absolute;cursor: pointer;top: 0;left: 0;right: 0;bottom: 0;background-color: #ccc;transition: .4s;border-radius: 34px;}
.slider:before {position: absolute;content: "";height: 26px;width: 26px;left: 4px;bottom: 4px;background-color: white;transition: .4s;border-radius: 50%;}
input:checked + .slider {background-color: #D82E2E;}
input:checked + .slider:before {transform: translateX(26px);}
.subscription-status-text {font-weight: 500;color: #333;}

@media (max-width: 768px) {
  .subscription-control {flex-direction: column;align-items: flex-start;}
}

/* Pagination */
.pagination-wrapper {grid-column: 1 / -1;margin-top: 20px;}
.pagination {display: flex;justify-content: center;align-items: center;gap: 8px;flex-wrap: wrap;}
.page-link {display: flex;align-items: center;justify-content: center;width: 40px;height: 40px;border-radius: 6px;background: #f5f5f5;color: #666;
text-decoration: none;font-weight: 500;transition: all 0.3s;}
.page-link:hover, .page-link.active {background: var(--primary);color: white;}
.page-link.prev, .page-link.next {width: auto;padding: 0 15px;}

@media (max-width: 992px) {
  .order-item {
    grid-template-columns: 1fr 1fr;
    grid-template-areas: 
      "main main"
      "secondary action";
    padding: 10px;  
  }
  
  .order-main-info {grid-area: main;}
  .order-secondary-info {grid-area: secondary;}
  .order-details-btn {grid-area: action;justify-self: end;width: 100%;}
}

@media (max-width: 768px) {
  .order-item {
    grid-template-columns: 1fr;
    grid-template-areas: 
      "main"
      "secondary"
      "action";
  }
  
  .order-payment-shipping {grid-template-columns: 1fr;}
  .section-header {flex-direction: column;align-items: flex-start;}
  .orders-filter {margin-left: 0;margin-top: 10px;width: 100%;}
  .filter-select {width: 100%;}
}

@media (max-width: 480px) {
  .page-link {width: 35px;height: 35px;font-size: 14px;}
  .page-link.prev, .page-link.next {padding: 0 10px;}
  .product-name-wrapper {flex-direction: column;}
  .review-btn {margin-top: 8px;}
  .product-meta {/*flex-direction: column;*/gap: 5px;}
}

/* Account Sections */
.account-sections-grid {display: grid;grid-template-columns: repeat(auto-fit, minmax(300px, 1fr));gap: 25px;margin-bottom: 40px;}
.account-section-card {background: white;border-radius: 12px;padding: 25px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);}
.section-header svg {margin-right: 12px;}
.section-header h2, .section-header h3 {font-size: 18px;font-weight: 600;color: var(--dark);margin: 0;}
.account-links-list {list-style: none;padding: 0;margin: 0;}
.account-links-list li {border-bottom: 1px solid var(--border);}
.account-links-list a {display: flex;align-items: center;justify-content: space-between;padding: 12px 0;color: var(--gray);text-decoration: none;}
.account-links-list a:hover {color: var(--primary);}

/* Notification Preferences */
.notification-preferences {margin-top: 15px;}

/* Recommendations Section */
.recommendations-section {background: white;border-radius: 12px;padding: 25px;margin-bottom: 25px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);
grid-column: 1 / -1;}
.recommendations-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(200px, 1fr));gap: 20px;}
/*.product-card { background: white; border-radius: 8px; overflow: hidden; box-shadow: 0 2px 10px rgba(0, 0, 0, 0.05); transition: transform 0.3s; 
display: flex;flex-direction: column;position: relative;}
.product-card:hover {transform: translateY(-5px);}*/
.product-image-wrapper {height: 160px;display: flex;align-items: center;justify-content: center;padding: 15px;background: #f9f9f9;position: relative;}
/*.product-image {max-width: 100%;max-height: 100%;object-fit: contain;}*/
.remove-from-wishlist {position: absolute;top: 10px;right: 10px;width: 30px;height: 30px;border: none;border-radius: 50%;background: white;
box-shadow: 0 2px 5px rgba(0,0,0,0.1);cursor: pointer;display: flex;align-items: center;justify-content: center;opacity: 0;transition: opacity 0.3s;z-index: 10;}
.product-card:hover .remove-from-wishlist {opacity: 1;}
.remove-from-wishlist:hover {background: #ffebee;}
.product-title-ac {font-size: 14px;font-weight: 500;margin: 0 0 10px 0;color: var(--dark);display: -webkit-box;-webkit-line-clamp: 2;-webkit-box-orient: vertical;
text-overflow: ellipsis;min-height: 40px;line-height: 1.3;-webkit-line-clamp: 2;-webkit-box-orient: vertical;overflow: hidden;}
.price {font-size: 14px;font-weight: 600;color: #000;margin-bottom: 15px;}
.btn-quick-add { width: 100%;padding: 8px; background: #2c583b; color: white; border: none; border-radius: 4px; font-size: 13px; cursor: 
pointer; margin-top: auto;}
.btn-quick-add:hover {background: #d9a147;}
.empty-wishlist {grid-column: 1 / -1;text-align: center;padding: 40px;color: #666;}
/*.product-card.removing {opacity: 0.5;pointer-events: none;}*/

/* Responsive */
@media (max-width: 991px) {
  .account-sections-grid {grid-template-columns: 1fr 1fr;}
  .recommendations-grid {grid-template-columns: repeat(auto-fill, minmax(180px, 1fr));}
}

@media (max-width: 767px) {
  .account-sections-grid {grid-template-columns: 1fr;}
  .account-summary-card,
  .orders-section {padding: 10px;padding-top: 20px;padding-bottom: 20px;}
  .order-secondary-info{gap: 10px;}
  .summary-stats {grid-template-columns: 1fr 1fr;}
  .recommendations-grid {grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));}
}

@media (max-width: 575px) {
  .account-section-card {padding: 20px 15px;}
  .recommendations-grid {grid-template-columns: 1fr 1fr;}
  .product-title-ac {font-size: 13px;}
  /*.price {font-size: 15px;}*/
  .summary-stats {grid-template-columns: 1fr;}
}

/* Стили для уведомлений */
.ajax-notification {position: fixed;top: 20px;right: 20px;padding: 15px 20px;border-radius: 8px;color: white;font-weight: 500;z-index: 10000;
box-shadow: 0 4px 12px rgba(0,0,0,0.15);transform: translateX(100%);opacity: 0;transition: all 0.3s ease;}
.ajax-notification.success {background: #4CAF50;transform: translateX(0);opacity: 1;}
.ajax-notification.error {background: #F44336;transform: translateX(0);opacity: 1;}
.ajax-notification.show {transform: translateX(0);opacity: 1;}

/*********************
  address_form.tpl
*********************/

/* Form Header */
.form-header {margin-bottom: 30px;}
.form-header h1 {font-size: 28px;font-weight: 600;color: var(--dark);margin: 0;}

/* Address Form */
.address-form {background: white;border-radius: 12px;padding: 30px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);}
.form-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));gap: 20px;margin-bottom: 30px;}
/*.form-group.required label:after {content: '*';color: var(--error);margin-left: 4px;}*/
select.form-control {
  appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 16px;
}

.error-message {color: var(--error);font-size: 13px;margin-top: 5px;}
.switch-label {margin-left: 15px;font-weight: 500;}

/* File Upload */
.btn-upload {display: inline-flex;align-items: center;padding: 10px 15px;background-color: var(--primary);color: white;border-radius: 6px;font-size: 14px;
border: none;cursor: pointer;transition: all 0.3s;gap: 8px;}
.btn-upload:hover {background-color: var(--primary-dark);}

/* Date Time Picker */
.date-time-group {display: flex;position: relative;}
.date-time-group .form-control {padding-right: 40px;}
.btn-calendar {position: absolute;right: 1px;top: 1px;height: calc(100% - 2px);width: 40px;background: none;border: none;
border-left: 1px solid var(--border);cursor: pointer;display: flex;align-items: center;justify-content: center;color: var(--gray);border-radius: 0 6px 6px 0;}
.btn-calendar:hover {color: var(--primary);}

/* Form Buttons */
.form-buttons {display: flex;justify-content: flex-end;margin-top: 30px;flex-wrap: wrap;gap: 15px;}
.btn-back {display: inline-flex;align-items: center;padding: 12px 24px;background-color: white;color: var(--gray);border: 1px solid var(--border);
border-radius: 6px;font-weight: 500;text-decoration: none;transition: all 0.3s;gap: 8px;}
.btn-back:hover {border-color: var(--primary);color: var(--primary);}

.btn-submit {display: inline-flex;align-items: center;padding: 12px 24px;background-color: var(--primary);color: white;border: none;
border-radius: 6px;font-weight: 500;cursor: pointer;transition: all 0.3s;gap: 8px;box-shadow: 0 4px 12px rgba(216, 46, 46, 0.2);}
.btn-submit:hover {background-color: var(--primary-dark);transform: translateY(-2px);box-shadow: 0 6px 16px rgba(216, 46, 46, 0.3);}

/* Responsive */
@media (max-width: 767px) {
  .address-form {padding: 20px;}
  .form-header h1 {font-size: 24px;}
  .form-buttons {flex-direction: column-reverse;}
  .btn-back, .btn-submit {width: 100%;justify-content: center;}
}

@media (max-width: 575px) {
  .form-grid {grid-template-columns: 1fr;}
  .switch {margin-left: 0;margin-top: 10px;display: block;}
  .switch-label {margin-left: 0;display: block;margin-top: 10px;}
}

/*********************
  address_list.tpl
*********************/

/* Глобальные уведомления в правом верхнем углу */
.global-notifications {position: fixed;top: 20px;right: 20px;z-index: 9999;max-width: 400px;width: 100%;}
.top-right-alert {margin-bottom: 15px;animation: slideInRight 0.3s ease-out forwards;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);display: flex;
align-items: flex-start;padding: 16px 20px;border-radius: 8px;position: relative;}

@keyframes slideInRight {
  from {transform: translateX(100%);opacity: 0;}
  to {transform: translateX(0);opacity: 1;}
}

.top-right-alert.hide {animation: slideOutRight 0.3s ease-out forwards;}

@keyframes slideOutRight {
  from {transform: translateX(0);opacity: 1;}
  to {transform: translateX(100%);opacity: 0;}
}

.top-right-alert.alert-success {background: #F6FFED;border: 1px solid #B7EB8F;}
.top-right-alert.alert-warning {background: #FFF9E6;border: 1px solid #FFE58F;}
.top-right-alert svg {margin-right: 16px;flex-shrink: 0;}
.notification-content {flex-grow: 1;}
.notification-message {font-size: 14px;line-height: 1.5;color: #4E4E4E;}
.notification-close {background: none;border: none;padding: 0;margin-left: 16px;cursor: pointer;opacity: 0.7;transition: opacity 0.2s;flex-shrink: 0;}
.notification-close:hover {opacity: 1;}

/* Header */
.address-list-header {display: flex;justify-content: space-between;align-items: center;margin-bottom: 25px;flex-wrap: wrap;gap: 15px;}
.address-list-header h2 {font-size: 24px;font-weight: 600;color: var(--dark);margin: 0;}

/* New Address Button */
.btn-new-address {display: inline-flex;align-items: center;padding: 12px 24px;background-color: var(--primary);color: white;
border-radius: 8px;font-weight: 600;text-decoration: none;transition: all 0.3s ease;gap: 10px;box-shadow: 0 4px 12px rgba(216, 46, 46, 0.2);}
.btn-new-address:hover {background-color: var(--primary-dark);transform: translateY(-2px);box-shadow: 0 6px 16px rgba(216, 46, 46, 0.3);}
.btn-new-address svg {transition: transform 0.3s ease;}
.btn-new-address:hover svg {transform: scale(1.1);}

/* Address Grid */
.address-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(300px, 1fr));gap: 20px;margin-bottom: 30px;}
.address-card {background: white;border-radius: 12px;padding: 20px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);transition: transform 0.3s, box-shadow 0.3s;}
.address-card:hover {transform: translateY(-5px);box-shadow: 0 8px 25px rgba(0, 0, 0, 0.1);}
.address-content {margin-bottom: 15px;line-height: 1.6;color: var(--gray);}
.address-actions {display: flex;gap: 10px;border-top: 1px solid var(--border);padding-top: 15px;}
.btn-edit, .btn-delete {display: inline-flex;align-items: center;padding: 8px 12px;border-radius: 4px;font-size: 14px;text-decoration: none;gap: 6px;
transition: all 0.3s;}
.btn-edit {color: var(--primary);background-color: var(--primary-light);}
.btn-edit:hover {background-color: rgba(216, 46, 46, 0.2);}
.btn-delete {color: var(--gray);background-color: #f5f5f5;}
.btn-delete:hover {color: #d82e2e;background-color: rgba(216, 46, 46, 0.1);}

/* No Addresses */
.no-addresses {text-align: center;padding: 40px 20px;background: white;border-radius: 12px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);}
.no-addresses svg {margin-bottom: 15px;}
.no-addresses p {font-size: 16px;color: var(--gray);margin: 0;}

/* Responsive */
@media (max-width: 767px) {
  .address-grid {grid-template-columns: 1fr;}
  .address-list-header {flex-direction: column;align-items: flex-start;}
  .btn-new-address {width: 100%;justify-content: center;}
  .global-notifications {max-width: calc(100% - 40px);right: 20px;left: 20px;}
}

@media (max-width: 575px) {
  .address-actions {flex-direction: column;}
  .btn-edit, .btn-delete {justify-content: center;}
}

/******************
   download.tpl
******************/
/* Стили для списка загрузок */
.downloads-section {background: white;border-radius: 12px;padding: 25px;margin-bottom: 25px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);}
.downloads-list {display: grid;gap: 15px;}
.download-item {display: grid;grid-template-columns: 60px 2fr 4fr 2fr;align-items: center;gap: 15px;padding: 15px;border-radius: 8px;
background: var(--light-gray);}
.download-preview {width: 50px;height: 50px;display: flex;align-items: center;justify-content: center;}
.file-thumbnail {width: 50px;height: 50px;background-size: cover;background-position: center;border-radius: 4px;border: 1px solid var(--border);}
.file-icon {color: var(--gray);}
.download-main-info {display: flex;flex-direction: column;}
.download-name {font-weight: 600;color: var(--dark);margin-bottom: 5px;word-break: break-word;}
.download-date {font-size: 14px;color: var(--gray);}
.download-secondary-info {display: flex;align-items: center;gap: 50px;}
.download-order-id {font-size: 14px;color: var(--gray);white-space: nowrap;}
.download-size {font-size: 14px;color: var(--gray);}
.download-btn {padding: 8px 15px;border: none;border-radius: 6px;font-size: 13px;cursor: pointer;background-color: var(--primary);color: white;
display: flex;align-items: center;justify-content: center;gap: 8px;margin-left: auto;text-decoration: none;white-space: nowrap;}
.download-btn:hover {background: #b82525;color: white;}
.download-btn svg {margin-right: 5px;}
.no-downloads {text-align: center;padding: 30px;color: var(--gray);}
.btn-continue {display: inline-block;padding: 10px 20px;background-color: var(--primary);color: white;border-radius: 6px;text-decoration: none;
transition: background-color 0.3s;}
.btn-continue:hover {background-color: #b82525;color: white;}
/* Адаптивные стили */
   @media (max-width: 768px) {
     .download-item {grid-template-columns: 50px 1fr;grid-template-areas:
                "preview main"
                "preview secondary"
                "action action";
        }
        .download-preview {grid-area: preview;}
        .download-main-info {grid-area: main;}
        .download-secondary-info {grid-area: secondary;justify-content: space-between;gap: 15px;}
        .download-btn {grid-area: action;width: 100%;}
    }
    
/******************
     edit.tpl
******************/

/* Глобальные уведомления */
.global-notifications {position: fixed;top: 20px;right: 20px;z-index: 9999;max-width: 400px;width: 100%;}
.top-right-alert {margin-bottom: 15px;animation: slideInRight 0.3s ease-out forwards;box-shadow: 0 4px 20px rgba(0, 0, 0, 0.15);display: flex;
align-items: flex-start;padding: 16px 20px;border-radius: 8px;position: relative;}

@keyframes slideInRight {
  from {transform: translateX(100%);opacity: 0;}
  to {transform: translateX(0);opacity: 1;}
}

.top-right-alert.hide {animation: slideOutRight 0.3s ease-out forwards;}

@keyframes slideOutRight {
  from {transform: translateX(0);opacity: 1;}
  to {transform: translateX(100%);opacity: 0;}
}

.top-right-alert.alert-success {background: #F6FFED;border: 1px solid #B7EB8F;}
.top-right-alert.alert-danger {background: #FFF2F0;border: 1px solid #FFCCC7;}

.top-right-alert svg {margin-right: 16px;flex-shrink: 0;}
.notification-title {font-weight: 600;font-size: 16px;line-height: 1.5;color: #1D1D1D;margin-bottom: 4px;}

/* Основные стили страницы */
.account-edit-container {background: #f8f9fa;padding-bottom: 60px;}

/* Форма редактирования */
.account-title {font-size: 24px;font-weight: 600;color: var(--dark);margin-bottom: 25px;}
.account-edit-form {background: white;border-radius: 12px;padding: 25px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);margin-bottom: 30px;}
.password-form {margin-top: 0;}

/* Двухколоночный макет */
.two-column-layout {display: flex;flex-wrap: wrap;margin: 0 -15px;}
.two-column-layout > .col-md-6 {padding: 0 15px;width: 50%;}
.form-section {margin-bottom: 30px;padding-bottom: 20px;border-bottom: 1px solid var(--border);}
.password-change-section {margin-bottom: 0;}
.section-title {font-size: 18px;font-weight: 600;color: var(--dark);margin-bottom: 20px;}
.form-group label {display: block;margin-bottom: 0px !important;font-weight: 500;color: var(--dark);font-size: 13px;}
.has-error .form-control {border-color: var(--error);}

/* Поля ввода пароля */
.password-input-container {position: relative;margin-bottom: 8px;}
.password-input {padding-right: 40px !important;}

.toggle-password {position: absolute;right: 12px;top: 50%;transform: translateY(-50%);background: none;border: none;cursor: pointer;padding: 0;height: 20px;
width: 20px;display: flex;align-items: center;justify-content: center;opacity: 0.7;transition: opacity 0.2s;}
.toggle-password:hover {opacity: 1;}
.toggle-password:focus {outline: none;}
.eye-icon {display: block;width: 100%;height: 100%;}

/* Индикатор сложности пароля */
.password-strength-container {margin-top: 8px;margin-bottom: 4px;}

.password-strength-bar {height: 4px;background: #eee;border-radius: 2px;overflow: hidden;margin-bottom: 3px;}
.password-strength-bar .strength-indicator {display: block;height: 100%;width: 0;transition: all 0.3s ease;}
.password-strength-text {font-size: 12px;color: #666;height: 15px;}
.password-strength-text.weak {color: #F44336;}

.password-strength-text.medium {color: #FF9800;}
.password-strength-text.strong {color: #4CAF50;}

/* Радио и чекбоксы */
.radio-group, .checkbox-group {display: flex;flex-wrap: wrap;gap: 15px;}
.radio-item, .checkbox-item {display: flex;align-items: center;}
.radio-item input[type="radio"],
.checkbox-item input[type="checkbox"] {margin-right: 8px;}
.radio-label, .checkbox-label {cursor: pointer;}
.btn-primary {padding: 12px 25px;background: var(--primary);color: white;border: none;border-radius: 8px;font-weight: 500;cursor: pointer;transition: all 0.3s;}
.btn-primary:hover {background: #b82525;}

/* Адаптивность */
@media (max-width: 992px) {.two-column-layout > .col-md-6 {width: 100%;margin-bottom: 30px;}}

@media (max-width: 768px) {
  .account-edit-form {padding: 20px;}
  .form-buttons {flex-direction: column;gap: 15px;}
  .btn-primary {width: 100%;text-align: center;}
  .global-notifications {max-width: calc(100% - 40px);right: 20px;left: 20px;}
}

/* Сортировка кастомных полей */
.form-group[data-sort] {order: attr(data-sort);}

/******************
  return_form.tpl
******************/

/* Основные стили */
.return-form-wrapper {max-width: 800px;margin: 0 auto;}
.form-title {font-size: 22px;font-weight: 600;margin-bottom: 8px;color: #222;}
.form-description {color: #666;margin-bottom: 25px;font-size: 14px;line-height: 1.5;}
.modern-form {background: #fff;border-radius: 12px;padding: 25px;box-shadow: 0 2px 10px rgba(0,0,0,0.05);}

/* Сетка формы */
.form-section {margin-bottom: 24px;}
.section-title {font-size: 15px;font-weight: 500;margin-bottom: 12px;color: #333;display: flex;align-items: center;}
.section-title .hint {font-weight: 400;color: #999;margin-left: 8px;}

/* Поля формы */
input[type="text"],
input[type="email"],
input[type="tel"],
input[type="number"],
select,
textarea {width: 100%;padding: 10px 12px;border-radius: 6px;font-size: 14px;transition: all 0.2s;}
  
input:focus,
select:focus,
textarea:focus {border-color: #D82E2E;box-shadow: 0 0 0 2px rgba(216, 46, 46, 0.1);outline: none;}

select {
  appearance: none;
  background-image: url("data:image/svg+xml;charset=UTF-8,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='currentColor' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3e%3cpolyline points='6 9 12 15 18 9'%3e%3c/polyline%3e%3c/svg%3e");
  background-repeat: no-repeat;
  background-position: right 10px center;
  background-size: 16px;
}

textarea {min-height: 100px;resize: vertical;}

/* Радиокнопки */
.radio-options {display: flex;flex-wrap: wrap;gap: 12px;}
.radio-option {display: flex;align-items: center;cursor: pointer;font-size: 14px;}
.radio-checkmark {width: 18px;height: 18px;border: 2px solid #ddd;border-radius: 50%;margin-right: 8px;position: relative;transition: all 0.2s;}
.radio-option input {position: absolute;opacity: 0;}
.radio-option input:checked + .radio-checkmark {border-color: #D82E2E;background: #D82E2E;}
.radio-option input:checked + .radio-checkmark::after {content: '';position: absolute;width: 8px;height: 8px;background: white;border-radius: 50%;top: 3px;
left: 3px;}

/* Загрузка файлов */
.file-upload {margin-top: 8px;position: relative;align-items: center;}
.upload-area {display: flex;flex-direction: column;align-items: center;justify-content: center;padding: 20px;border: 2px dashed #e0e0e0;
border-radius: 8px;background: #fafafa;text-align: center;cursor: pointer;transition: all 0.2s;width: 100%;}
.upload-area:hover {border-color: #D82E2E;background: rgba(216, 46, 46, 0.03);}
.upload-area svg {margin-bottom: 10px;}
.upload-area span {font-size: 13px;color: #666;}
.upload-area input[type="file"] {display: none;}
.preview-container {display: flex;flex-wrap: wrap;gap: 10px;margin-top: 12px;min-height: 80px;}
.preview-item {position: relative;width: 80px;height: 80px;border-radius: 6px;overflow: hidden;border: 1px solid #eee;background: #f5f5f5;}
.preview-item img {width: 100%;height: 100%;object-fit: cover;}
.remove-preview {position: absolute;top: 4px;right: 4px;width: 20px;height: 20px;background: rgba(216, 46, 46, 0.9);border: none;border-radius: 50%;
display: flex;align-items: center;justify-content: center;cursor: pointer;opacity: 0;transition: opacity 0.2s;}
.preview-item:hover .remove-preview {opacity: 1;}

/* Подтверждение */
.form-footer {display: flex;justify-content: space-between;align-items: center;margin-top: 24px;padding-top: 20px;border-top: 1px solid #f0f0f0;}
.agree-checkbox input {opacity: 1;}
.checkmark {width: 18px;height: 18px;border: 2px solid #ddd;border-radius: 4px;margin-right: 8px;position: relative;transition: all 0.2s;}
.agree-checkbox input:checked + .checkmark {background: #D82E2E;border-color: #D82E2E;}
.agree-checkbox input:checked + .checkmark::after {content: '';position: absolute;left: 5px;top: 1px;width: 5px;height: 10px;border: solid white;
border-width: 0 2px 2px 0;transform: rotate(45deg);}
.form-actions {display: flex;gap: 10px;}
.btn {padding: 10px 20px;border-radius: 6px;font-size: 14px;font-weight: 500;cursor: pointer;transition: all 0.2s;}
.btn-primary {background: #D82E2E;color: white;border: none;}
.btn-primary:hover {background: #c02525;}
.btn-secondary {background: #f5f5f5;color: #333;border: none;}
.btn-secondary:hover {background: #e0e0e0;}

/* Ошибки */
.alert.alert-error {display: flex;align-items: center;padding: 12px 16px;background: #fff0f0;border: 1px solid #ffd6d6;border-radius: 6px;color: #D82E2E;
font-size: 14px;margin-bottom: 20px;}
.alert.alert-error svg {margin-right: 10px;flex-shrink: 0;}
.error-message {color: #D82E2E;font-size: 12px;margin-top: 4px;}

/* Адаптивность */
@media (max-width: 768px) {
  .form-grid {grid-template-columns: 1fr;}
  .form-footer {flex-direction: column;gap: 15px;}
  .form-actions {width: 100%;}
  .btn {width: 100%;}
}

@media (max-width: 480px) {
  .modern-form {padding: 20px 15px;}
  .radio-options {flex-direction: column;gap: 8px;}
}

/******************
  return_list.tpl
******************/
   /* Стили для уведомления */
.success-notification {position: fixed;top: 20px;right: 20px;z-index: 1002;display: flex;align-items: center;padding: 15px 20px;background-color: #4CAF50;
color: white;border-radius: 6px;box-shadow: 0 4px 12px rgba(0,0,0,0.15);animation: slideIn 0.5s ease-out;max-width: 350px;}
.success-notification svg {margin-right: 10px;flex-shrink: 0;}

@keyframes slideIn {
   from { transform: translateX(100%); opacity: 0; }
   to { transform: translateX(0); opacity: 1; }
}

@keyframes fadeOut {
   from { opacity: 1; }
   to { opacity: 0; }
}

/* Стили для кнопки возврата */
.btn-return-product {display: inline-flex;align-items: center;padding: 10px 15px;background-color: var(--primary);color: white;border-radius: 6px;
font-size: 14px;text-decoration: none;transition: background-color 0.3s;}
.btn-return-product:hover {background-color: #b82525;color: white;}
.btn-return-product svg {margin-right: 8px;}

/* Стили для списка возвратов */
.returns-section {background: white;border-radius: 12px;padding: 25px;margin-bottom: 25px;box-shadow: 0 5px 30px rgba(0, 0, 0, 0.05);}
.returns-list {display: grid;gap: 15px;}
.return-item {display: grid;grid-template-columns: 2fr 4fr 2fr;align-items: center;gap: 15px;padding: 15px;border-radius: 8px;background: var(--light-gray);}
.return-main-info {display: flex;flex-direction: column;}
.return-id {font-weight: 600;color: var(--dark);margin-bottom: 5px;}
.return-date {font-size: 14px;color: var(--gray);}
.return-secondary-info {display: flex;align-items: center;gap: 50px;}
.return-status {padding: 5px 10px;border-radius: 4px;font-size: 13px;font-weight: 500;background: var(--processing);color: white;text-align: center;
white-space: nowrap;}
.return-order-id {font-size: 14px;color: var(--gray);white-space: nowrap;}
.return-details-btn {padding: 8px 15px;border: none;border-radius: 6px;font-size: 13px;cursor: pointer;background-color: var(--primary);color: white;
display: flex;align-items: center;justify-content: center;gap: 8px;margin-left: auto;text-decoration: none;}
.return-details-btn:hover {background: #b82525;color: white;}
.return-details-btn svg {transition: transform 0.3s ease;}

/* Стили для деталей возврата */
.details-grid {display: grid;grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));gap: 15px;}
.detail-item {display: flex;flex-direction: column;gap: 5px;}
.detail-item.full-width {grid-column: 1 / -1;}
.detail-label {font-weight: 600;color: var(--dark);font-size: 14px;}
.detail-value {color: var(--gray);font-size: 14px;}
.return-images {display: flex;flex-wrap: wrap;gap: 10px;margin-top: 5px;}
.image-container {cursor: pointer;transition: transform 0.3s;}
.image-container:hover {transform: scale(1.05);}
.return-image-thumbnail {width: 100px;height: 100px;object-fit: cover;border-radius: 4px;border: 1px solid #eee;}

/* Стили для модального окна */
.modal {display: none;position: fixed;z-index: 1000;left: 0;top: 0;width: 100%;height: 100%;background-color: rgba(0,0,0,0.9);justify-content: center;
align-items: center;}
.modal-image-container {position: relative;max-width: 90%;max-height: 90vh;display: flex;justify-content: center;align-items: center;}
.modal-content {max-height: 90vh;object-fit: contain;transition: opacity 0.3s ease;}
.close {position: absolute;top: -40px;right: -5px;font-size: 35px;font-weight: bold;transition: 0.3s;cursor: pointer;}
.close:hover {color: #bbb;}
.no-returns {text-align: center;padding: 30px;color: var(--gray);}
.btn-continue {display: inline-block;padding: 10px 20px;background-color: var(--primary);color: white;border-radius: 6px;text-decoration: none;
transition: background-color 0.3s;}
.btn-continue:hover {background-color: #b82525;color: white;}

/* Адаптивные стили */
@media (max-width: 768px) {
   .return-item {
      grid-template-columns: 1fr;
      grid-template-areas:
        "main"
        "secondary"
        "action";
    }
    .return-main-info {grid-area: main;}
    .return-secondary-info {grid-area: secondary;justify-content: space-between;gap: 15px;}
    .return-details-btn {grid-area: action;width: 100%;}
    .details-grid {grid-template-columns: 1fr;}
    .modal-image-container {max-width: 95%;}
    .close {top: -35px;right: 0;font-size: 30px;}
}
    
    
    