/* ==========================================================
   Личный кабинет -- общее оформление.

   Все цвета и скругления вынесены в переменные --cab-*. Значения по умолчанию
   (светлая нейтральная схема) заданы через :where(:root) с нулевой специфичностью,
   поэтому тема сайта меняет оформление кабинета одним блоком в своём CSS:

   :root {
       --cab-card-bg: #191919;
       --cab-accent: #eb2d50;
       ...
   }

   Стили кабинета, регистрации, входа, заказов клиента (модуль "Корзина",
   user_orders.tpl), отложенных товаров и тикетов.
   ========================================================== */

:where(:root) {
--cab-font: 'Montserrat', Arial, sans-serif;
--cab-heading-font: 'Rubik', 'Montserrat', Arial, sans-serif;
--cab-text: #4b5563;
--cab-muted: #8a8380;
--cab-heading: #001e29;
--cab-link: #026471;
--cab-card-bg: #fff;
--cab-card-border: #e6e1de;
--cab-soft-bg: #f8f7f5;
--cab-line: #f0efec;
--cab-accent: #026471;
--cab-accent-hover: #014f58;
--cab-accent-text: #fff;
--cab-ghost-bg: #fff;
--cab-ghost-border: #e6e1de;
--cab-ghost-text: #001e29;
--cab-input-bg: #fff;
--cab-input-border: #d8d2cc;
--cab-input-text: #001e29;
--cab-input-placeholder: #a29c97;
--cab-focus-ring: rgba(2, 100, 113, .14);
--cab-danger: #b23b3b;
--cab-danger-bg: #fbeae9;
--cab-success: #1f6b3a;
--cab-success-bg: #eefaf1;
--cab-info-bg: #eef7f8;
--cab-warning: #92700f;
--cab-warning-bg: #fdf3d7;
--cab-radius: 8px;
--cab-field-radius: 6px;
--cab-btn-radius: 6px;
}

/* ---------- Каркас страницы: меню слева, содержимое справа ---------- */

.account-layout {
display: flex;
align-items: flex-start;
gap: 28px;
font-family: var(--cab-font);
color: var(--cab-text);
line-height: 1.5;
}

.account-layout > .account-menu {
flex: 0 0 260px;
}

.account-layout > .account-content {
flex: 1 1 auto;
min-width: 0;
}

/* ---------- Заголовки и карточка ---------- */

#module_content,
#my_orders {
font-family: var(--cab-font);
color: var(--cab-text);
line-height: 1.5;
box-sizing: border-box;
}

#module_content h1,
#module_content h2,
#module_content h3,
#module_content h4,
#my_orders h1,
#my_orders h2 {
font-family: var(--cab-heading-font);
color: var(--cab-heading);
line-height: 1.25;
}

#module_header h1,
#module_header h2,
#my_orders h2 {
margin: 0 0 16px;
font-size: 22px;
}

#module_content h3 {
font-size: 16px;
margin: 0 0 6px;
}

#module_content p {
margin: 0 0 14px;
}

#module_content a,
#my_orders a {
color: var(--cab-link);
}

.account-card {
background: var(--cab-card-bg);
border: 1px solid var(--cab-card-border);
border-radius: var(--cab-radius);
padding: 26px 28px;
}

.account-card--narrow {
max-width: 520px;
}

.account-lead {
margin: 0 0 18px;
color: var(--cab-muted);
font-size: 14px;
}

/* Вход и регистрация: форма слева, преимущества справа */

.account-auth {
display: flex;
align-items: flex-start;
gap: 24px;
}

.account-auth > .account-card {
flex: 0 1 520px;
min-width: 0;
}

.account-benefits {
flex: 1 1 280px;
min-width: 0;
padding: 26px 28px;
border: 1px solid var(--cab-card-border);
border-radius: var(--cab-radius);
background: var(--cab-soft-bg);
}

.account-benefits h3 {
margin: 0 0 14px;
font-size: 16px;
}

.account-benefits ul {
list-style: none;
margin: 0;
padding: 0;
}

.account-benefits li {
position: relative;
margin: 0 0 11px;
padding-left: 26px;
font-size: 14px;
}

.account-benefits li:last-child {
margin-bottom: 0;
}

.account-benefits li::before {
content: '';
position: absolute;
left: 2px;
top: 6px;
width: 11px;
height: 6px;
border-left: 2px solid var(--cab-accent);
border-bottom: 2px solid var(--cab-accent);
transform: rotate(-45deg);
}

.account-benefits strong {
color: var(--cab-heading);
}

/* ---------- Меню кабинета ---------- */

.account-menu {
background: var(--cab-card-bg);
border: 1px solid var(--cab-card-border);
border-radius: var(--cab-radius);
padding: 6px 20px 10px;
font-family: var(--cab-font);
box-sizing: border-box;
}

.account-menu p {
color: var(--cab-heading);
font-weight: 600;
padding: 14px 0 12px;
margin: 0;
border-bottom: 1px solid var(--cab-card-border);
word-break: break-word;
}

.account-menu .account-menu__discount {
margin: 12px 0 4px;
padding: 9px 12px;
border: 1px solid var(--cab-accent);
border-radius: var(--cab-field-radius);
color: var(--cab-accent);
font-size: 13px;
font-weight: 600;
}

.account-menu a.account {
display: block;
padding: 11px 0;
color: var(--cab-text);
text-decoration: none;
border-bottom: 1px solid var(--cab-line);
transition: color .15s, padding-left .15s;
}

.account-menu a.account:last-child {
border-bottom: none;
}

.account-menu a.account:hover,
.account-menu a.account--active {
color: var(--cab-accent);
padding-left: 4px;
}

.account-menu a.account--active {
font-weight: 600;
}

.account-menu a.account--logout {
color: var(--cab-muted);
}

/* ---------- Формы ---------- */

.formleft {
display: block;
font-weight: 500;
margin: 16px 0 6px;
color: var(--cab-heading);
font-size: 14px;
}

.formright {
display: block;
margin-bottom: 4px;
}

.clear {
clear: both;
}

.account-form .account-field {
margin: 0 0 16px;
}

.account-form .account-field > label,
.account-form .account-label {
display: block;
margin: 0 0 6px;
font-size: 13px;
font-weight: 600;
color: var(--cab-heading);
}

.account-form .account-field > label .account-required {
color: var(--cab-accent);
}

.account-hint {
margin: 5px 0 0;
font-size: 12px;
color: var(--cab-muted);
}

.account-grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 0 16px;
}

input.pole,
input.lforma,
input.loginfield,
input.regdata,
#module_content input[type="text"],
#module_content input[type="tel"],
#module_content input[type="password"],
#module_content input[type="email"],
#module_content textarea,
#module_content select {
font-family: var(--cab-font);
font-size: 15px;
padding: 11px 13px;
background: var(--cab-input-bg);
border: 1px solid var(--cab-input-border);
border-radius: var(--cab-field-radius);
width: 100%;
max-width: 100%;
height: auto;
box-sizing: border-box;
transition: border-color .15s, box-shadow .15s;
color: var(--cab-input-text);
}

#module_content input::placeholder,
#module_content textarea::placeholder {
color: var(--cab-input-placeholder);
}

#module_content input[type="text"]:focus,
#module_content input[type="tel"]:focus,
#module_content input[type="password"]:focus,
#module_content input[type="email"]:focus,
#module_content textarea:focus,
#module_content select:focus {
border-color: var(--cab-accent);
outline: none;
box-shadow: 0 0 0 3px var(--cab-focus-ring);
}

#module_content input:-webkit-autofill {
-webkit-text-fill-color: var(--cab-input-text);
box-shadow: 0 0 0 1000px var(--cab-input-bg) inset;
}

#module_content textarea {
min-height: 90px;
}

#module_content label {
font-weight: 500;
}

/* Показать/скрыть пароль */

.account-password {
position: relative;
}

.account-password input {
padding-right: 82px !important;
}

.account-password__toggle {
position: absolute;
top: 50%;
right: 10px;
transform: translateY(-50%);
padding: 4px 8px;
background: none;
border: 0;
color: var(--cab-muted);
font-family: var(--cab-font);
font-size: 12px;
cursor: pointer;
}

.account-password__toggle:hover {
color: var(--cab-accent);
}

/* Переключатель физ./юр. лицо и флажки */

.account-choice {
display: flex;
flex-wrap: wrap;
gap: 8px;
}

.account-choice label {
display: inline-flex;
align-items: center;
gap: 8px;
margin: 0;
padding: 9px 16px;
border: 1px solid var(--cab-input-border);
border-radius: 50px;
background: var(--cab-input-bg);
color: var(--cab-input-text);
font-size: 14px;
cursor: pointer;
}

.account-choice label:has(input:checked) {
border-color: var(--cab-accent);
color: var(--cab-accent);
}

.account-check {
display: flex;
align-items: center;
gap: 10px;
margin: 4px 0 0;
font-size: 14px;
cursor: pointer;
}

.account-check input {
width: 17px;
height: 17px;
margin: 0;
accent-color: var(--cab-accent);
flex: 0 0 auto;
}

#module_content .form-section-title {
margin: 26px 0 14px;
padding-top: 20px;
border-top: 1px solid var(--cab-card-border);
font-family: var(--cab-heading-font);
font-size: 16px;
color: var(--cab-heading);
}

#module_content .form-section-title:first-of-type {
margin-top: 0;
padding-top: 0;
border-top: 0;
}

/* Блок реквизитов юр. лица */

.customer-type-entity-fields {
background: var(--cab-soft-bg);
border: 1px solid var(--cab-card-border);
border-radius: var(--cab-field-radius);
padding: 16px 16px 2px;
margin: 4px 0 16px;
}

/* ---------- Кнопки ---------- */

.account-btn,
#module_content input.button,
#module_content button.button {
display: inline-block;
font-family: var(--cab-font);
color: var(--cab-accent-text);
font-weight: 700;
font-size: 15px;
line-height: 1.2;
padding: 13px 30px;
background-color: var(--cab-accent);
border: 2px solid var(--cab-accent);
border-radius: var(--cab-btn-radius);
cursor: pointer;
text-decoration: none;
text-align: center;
transition: background-color .15s, border-color .15s, color .15s;
}

.account-btn:hover,
#module_content input.button:hover,
#module_content button.button:hover {
background-color: var(--cab-accent-hover);
border-color: var(--cab-accent-hover);
color: var(--cab-accent-text);
}

#module_content a.account-btn,
#module_content a.account-btn:hover {
color: var(--cab-accent-text);
}

.account-btn--ghost,
#module_content a.account-btn--ghost {
color: var(--cab-ghost-text);
background-color: var(--cab-ghost-bg);
border-color: var(--cab-ghost-border);
}

.account-btn--ghost:hover,
#module_content a.account-btn--ghost:hover {
color: var(--cab-ghost-text);
background-color: var(--cab-ghost-bg);
border-color: var(--cab-accent);
}

.account-btn--danger,
#module_content .button-danger {
font-family: var(--cab-font);
color: #fff;
font-weight: 700;
font-size: 14px;
padding: 11px 24px;
background-color: var(--cab-danger-solid, var(--cab-danger));
border: 2px solid var(--cab-danger-solid, var(--cab-danger));
border-radius: var(--cab-btn-radius);
cursor: pointer;
transition: opacity .15s;
}

.account-btn--danger:hover,
#module_content .button-danger:hover {
opacity: .85;
background-color: var(--cab-danger-solid, var(--cab-danger));
border-color: var(--cab-danger-solid, var(--cab-danger));
color: #fff;
}

.account-btn[disabled] {
opacity: .55;
cursor: default;
}

.account-actions {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 12px 18px;
margin-top: 22px;
}

.account-links {
margin: 18px 0 0;
font-size: 14px;
color: var(--cab-muted);
}

.account-links a {
text-decoration: underline;
text-underline-offset: 3px;
}

.account-links span {
margin: 0 8px;
opacity: .5;
}

/* ---------- Сообщения ---------- */

/* Заголовок раздела внутри кабинета (например, "Отложенные товары") */
.account-section-title {
margin: 22px 0 14px;
font-size: 24px;
line-height: 1.2;
font-weight: 800;
letter-spacing: -.02em;
color: var(--cab-text);
}

.account-section-title:first-child {
margin-top: 0;
}

@media (max-width: 767px) {
.account-section-title {
font-size: 20px;
margin: 18px 0 12px;
}
}

#module_content .infobox,
.account-alert {
background: var(--cab-soft-bg);
border-left: 4px solid var(--cab-card-border);
border-radius: var(--cab-field-radius);
padding: 12px 16px;
margin: 0 0 18px;
font-size: 14px;
color: var(--cab-text);
}

#module_content .infobox-help,
.account-alert--info {
background: var(--cab-info-bg);
border-left-color: var(--cab-accent);
}

#module_content .infobox-success,
.account-alert--success {
background: var(--cab-success-bg);
border-left-color: var(--cab-success);
color: var(--cab-success);
}

.account-alert--error {
background: var(--cab-danger-bg);
border-left-color: var(--cab-danger);
color: var(--cab-danger);
}

.account-alert--warning {
background: var(--cab-warning-bg);
border-left-color: var(--cab-warning);
color: var(--cab-warning);
}

#module_content .infobox h1,
#module_content .infobox ul,
.account-alert ul {
margin: 0;
}

#module_content .infobox ul,
.account-alert ul {
padding-left: 20px;
}

.account-alert form {
margin-top: 10px;
}

#module_content li.regerror {
color: inherit;
}

/* Скидка в профиле */

.account-discount {
display: flex;
align-items: center;
gap: 14px;
margin: 0 0 22px;
padding: 14px 18px;
border: 1px solid var(--cab-accent);
border-radius: var(--cab-radius);
background: var(--cab-soft-bg);
}

.account-discount__value {
flex: 0 0 auto;
font-family: var(--cab-heading-font);
font-size: 26px;
font-weight: 800;
color: var(--cab-accent);
}

.account-discount__text {
font-size: 14px;
color: var(--cab-text);
}

/* ---------- Раздел тикетов (форма -- dl/dt/dd) ---------- */

#module_content dl {
margin: 0;
}

#module_content dl dt {
font-weight: 500;
margin: 14px 0 6px;
color: var(--cab-heading);
font-size: 14px;
}

#module_content dl dd {
margin: 0 0 4px;
}

#module_content select.select {
max-width: 360px;
}

#customer-tickets {
list-style: none;
margin: 0;
padding: 0;
}

#customer-tickets > li,
.ticket-item {
background: var(--cab-card-bg);
border: 1px solid var(--cab-card-border);
border-radius: var(--cab-radius);
padding: 16px 18px;
margin-bottom: 14px;
}

#customer-tickets .title {
font-weight: 600;
color: var(--cab-heading);
margin-bottom: 6px;
}

.question-show a {
color: var(--cab-link);
cursor: pointer;
text-decoration: underline;
}

.question-box {
margin-top: 10px;
padding-top: 10px;
border-top: 1px solid var(--cab-card-border);
}

.question-text,
.question-otvet {
padding: 10px 14px;
border-radius: var(--cab-radius);
margin-bottom: 8px;
max-width: 80%;
font-size: 14px;
}

.question-text {
background: var(--cab-soft-bg);
}

.question-otvet {
background: var(--cab-info-bg);
margin-left: auto;
}

.question-form2 textarea {
width: 100%;
max-width: 100%;
margin-bottom: 8px;
}

/* ---------- Отложенные товары ---------- */

.watchlist-item {
display: flex;
align-items: center;
gap: 14px;
padding: 12px 0;
border-bottom: 1px solid var(--cab-card-border);
}

.watchlist-item-name {
flex: 1;
color: var(--cab-heading);
text-decoration: none;
}

.watchlist-item-name:hover {
color: var(--cab-accent);
}

.watchlist-item-price {
font-weight: 600;
white-space: nowrap;
color: var(--cab-heading);
}

#module_content .button-watchlist {
font-family: var(--cab-font);
color: var(--cab-danger);
background: none;
border: 1px solid var(--cab-danger);
border-radius: var(--cab-btn-radius);
padding: 6px 14px;
cursor: pointer;
font-size: 13px;
}

#module_content .button-watchlist:hover {
background: var(--cab-danger);
color: #fff;
}

/* ---------- Комментарии/вопросы (модуль "Каталог товаров") ---------- */

.catalog-items-comments a {
color: var(--cab-link);
}

.catalog-items-comments dl {
margin: 0 0 14px;
}

.catalog-items-comments dl dt {
font-weight: 500;
margin-bottom: 6px;
color: var(--cab-heading);
}

.catalog-items-comments dl dd {
margin: 0;
}

.catalog-items-comments input[type="text"],
.catalog-items-comments textarea {
font-family: var(--cab-font);
font-size: 15px;
padding: 10px 12px;
background: var(--cab-input-bg);
color: var(--cab-input-text);
border: 1px solid var(--cab-input-border);
border-radius: var(--cab-field-radius);
width: 100%;
max-width: 360px;
box-sizing: border-box;
}

.catalog-items-comments textarea {
max-width: 100%;
min-height: 80px;
}

.catalog-items-comments input[type="submit"] {
font-family: var(--cab-font);
color: var(--cab-accent-text);
font-weight: 600;
padding: 9px 22px;
background-color: var(--cab-accent);
border: 0;
border-radius: var(--cab-btn-radius);
cursor: pointer;
}

.catalog-items-comments input[type="submit"]:hover {
background-color: var(--cab-accent-hover);
}

/* ---------- Заказы клиента (модуль "Корзина", user_orders.tpl) ---------- */

#my_orders {
max-width: none;
}

#my_orders h1,
#my_orders h2 {
margin: 0 0 18px;
font-size: 22px;
}

#my_orders .account-card {
margin-bottom: 18px;
}

#my_orders input.button,
#my_orders a.button,
#my_orders button.button {
font-family: var(--cab-font);
display: inline-block;
color: var(--cab-accent-text);
font-weight: 700;
font-size: 14px;
padding: 10px 24px;
background-color: var(--cab-accent);
border: 2px solid var(--cab-accent);
border-radius: var(--cab-btn-radius);
cursor: pointer;
text-decoration: none;
}

#my_orders input.button:hover,
#my_orders a.button:hover,
#my_orders button.button:hover {
background-color: var(--cab-accent-hover);
border-color: var(--cab-accent-hover);
}

#my_orders input[type="text"],
#my_orders textarea {
font-family: var(--cab-font);
font-size: 15px;
padding: 11px 13px;
background: var(--cab-input-bg);
color: var(--cab-input-text);
border: 1px solid var(--cab-input-border);
border-radius: var(--cab-field-radius);
box-sizing: border-box;
width: 100%;
max-width: 520px;
}

#my_orders .infobox {
background: var(--cab-soft-bg);
border-left: 4px solid var(--cab-card-border);
border-radius: var(--cab-field-radius);
padding: 12px 16px;
margin: 0 0 18px;
font-size: 14px;
}

#my_orders .infobox-success {
background: var(--cab-success-bg);
border-left-color: var(--cab-success);
color: var(--cab-success);
}

#my_orders .formleft {
margin: 14px 0 6px;
}

.order-card {
border: 1px solid var(--cab-card-border);
border-radius: var(--cab-radius);
margin-bottom: 14px;
overflow: hidden;
background: var(--cab-card-bg);
}

.order-card__head {
display: flex;
flex-wrap: wrap;
align-items: center;
gap: 8px 20px;
padding: 14px 18px;
background: var(--cab-soft-bg);
border-bottom: 1px solid var(--cab-card-border);
}

.order-card__number {
font-weight: 700;
color: var(--cab-heading);
font-size: 15px;
}

.order-card__date {
color: var(--cab-muted);
font-size: 13px;
}

.order-card__total {
margin-left: auto;
font-weight: 700;
color: var(--cab-heading);
font-size: 16px;
}

.order-status {
display: inline-block;
padding: 3px 11px;
border-radius: 20px;
font-size: 12px;
font-weight: 600;
white-space: nowrap;
}

.order-status--wait      { background: var(--cab-line); color: var(--cab-muted); }
.order-status--progress  { background: var(--cab-warning-bg); color: var(--cab-warning); }
.order-status--partially { background: var(--cab-warning-bg); color: var(--cab-warning); }
.order-status--ok        { background: var(--cab-success-bg); color: var(--cab-success); }
.order-status--ok_send   { background: var(--cab-info-bg); color: var(--cab-accent); }
.order-status--failed    { background: var(--cab-danger-bg); color: var(--cab-danger); }

.order-card__body {
padding: 14px 18px;
}

.order-card__actions {
display: flex;
flex-wrap: wrap;
gap: 10px;
align-items: center;
}

.order-card__actions .order-card__sep {
color: var(--cab-card-border);
}

.order-card__link {
color: var(--cab-link);
font-size: 13px;
text-decoration: none;
cursor: pointer;
}

.order-card__link:hover {
text-decoration: underline;
}

.order-card details {
margin-top: 12px;
border-top: 1px solid var(--cab-card-border);
padding-top: 12px;
}

.order-card summary {
cursor: pointer;
color: var(--cab-link);
font-size: 14px;
font-weight: 500;
list-style: none;
}

.order-card summary::-webkit-details-marker {
display: none;
}

.order-card summary::before {
content: '\25B8\00a0';
}

.order-card details[open] summary::before {
content: '\25BE\00a0';
}

/* Состав заказа выводится в изолированном iframe с письмом заказа -- светлая карточка */

.order-card__invoice-frame {
width: 100%;
border: 0;
margin-top: 10px;
display: block;
border-radius: var(--cab-field-radius);
background: #fff;
}

.order-card__invoice-loading {
color: var(--cab-muted);
font-size: 13px;
margin-top: 10px;
}

/* ---------- Предложение создать кабинет после заказа (cart_thankyou.tpl) ---------- */

.account-offer {
display: flex;
align-items: flex-start;
gap: 22px;
max-width: 680px;
margin: 28px 0 14px;
font-family: var(--cab-font);
color: var(--cab-text);
}

.account-offer__badge {
flex: 0 0 auto;
display: flex;
align-items: center;
justify-content: center;
width: 84px;
height: 84px;
border: 2px solid var(--cab-accent);
border-radius: 50%;
font-family: var(--cab-heading-font);
font-size: 24px;
font-weight: 800;
color: var(--cab-accent);
}

.account-offer__body {
flex: 1 1 auto;
min-width: 0;
}

.account-offer__title {
margin: 0 0 8px;
font-family: var(--cab-heading-font);
font-size: 18px;
color: var(--cab-heading);
}

.account-offer__text {
margin: 0 0 8px;
font-size: 14px;
line-height: 1.5;
}

.account-offer .account-password input {
width: 100%;
max-width: 320px;
box-sizing: border-box;
font-family: var(--cab-font);
font-size: 15px;
padding: 11px 82px 11px 13px;
background: var(--cab-input-bg);
color: var(--cab-input-text);
border: 1px solid var(--cab-input-border);
border-radius: var(--cab-field-radius);
}

.account-offer .account-password {
max-width: 320px;
}

.account-offer .account-field > label {
display: block;
margin: 0 0 6px;
font-size: 13px;
font-weight: 600;
color: var(--cab-heading);
}

.account-offer a.account-btn {
color: var(--cab-accent-text);
text-decoration: none;
}

@media (max-width: 576px) {
.account-offer {
flex-direction: column;
gap: 14px;
}
}

/* ---------- Дополнения ---------- */

.account-layout > .account-menu--guest {
display: none;
}

.account-menu .account-menu__list {
display: block;
}

.account-benefits a.account-btn {
color: var(--cab-ghost-text);
text-decoration: none;
}

.account-benefits a.account-btn:hover {
color: var(--cab-ghost-text);
}

.account-alert a {
color: inherit;
}

/* ---------- Адаптив ---------- */

@media (max-width: 991px) {
.account-auth {
flex-direction: column;
}

.account-auth > .account-card {
flex: 0 0 auto;
width: 100%;
max-width: 520px;
}

.account-benefits {
flex: 0 0 auto;
width: 100%;
max-width: 520px;
}
}

@media (max-width: 767px) {
.account-layout {
flex-direction: column;
gap: 18px;
}

.account-layout > .account-menu {
flex: 0 0 auto;
width: 100%;
padding: 4px 14px 8px;
}

.account-menu p {
padding: 10px 0;
}

/* пункты меню -- горизонтальная лента с прокруткой */
.account-menu .account-menu__list {
display: flex;
gap: 8px;
overflow-x: auto;
padding: 10px 0 4px;
-webkit-overflow-scrolling: touch;
}

.account-menu .account-menu__list a.account {
flex: 0 0 auto;
padding: 8px 14px;
border: 1px solid var(--cab-card-border);
border-radius: 50px;
white-space: nowrap;
font-size: 13px;
}

.account-menu .account-menu__list a.account:hover {
padding-left: 14px;
}

.account-menu .account-menu__list a.account--active {
border-color: var(--cab-accent);
padding-left: 14px;
}

.account-menu a.account:last-child {
border-bottom: 1px solid var(--cab-card-border);
}
}

@media (max-width: 576px) {
.account-card,
.account-benefits {
padding: 20px 16px;
}

.account-grid {
grid-template-columns: minmax(0, 1fr);
}

.account-actions .account-btn {
width: 100%;
}

.order-card__total {
margin-left: 0;
width: 100%;
}

.watchlist-item {
flex-wrap: wrap;
}
}

.account-choice input[type="radio"] {
accent-color: var(--cab-accent);
}

/* ==========================================================
   Доработка 2026-11-14: меню кабинета табами, нейтральное
   информационное сообщение, чистка карточки отложенного товара.
   Блок стоит последним, чтобы перекрывать правила выше.
   ========================================================== */

.account-menu {
padding: 8px;
}

.account-menu__list {
display: flex;
flex-wrap: wrap;
gap: 4px;
}

.account-menu a.account {
display: inline-flex;
align-items: center;
padding: 8px 14px;
border-bottom: 0;
border-radius: var(--cab-field-radius);
font-family: var(--cab-heading-font);
font-size: 13.5px;
font-weight: 500;
color: var(--cab-muted);
}

.account-menu a.account:last-child {
border-bottom: 0;
}

.account-menu a.account:hover,
.account-menu a.account--active {
padding-left: 14px;
background: var(--cab-soft-bg);
color: var(--cab-heading);
text-decoration: none;
}

.account-menu a.account--active {
background: var(--cab-info-bg);
color: var(--cab-accent);
font-weight: 600;
}

.account-alert--info,
#module_content .infobox-help {
background: #eff5f8;
border-left-color: #9db8c8;
color: var(--cab-text);
}

/* у отложенного товара скрытый счётчик количества оставлял пустую полосу */
.cl .cl-card-buy td:has(> .amount-box) {
display: none;
}