

/* Start:/local/templates/memocar_cabinet/template_styles.css?1792510158309602*/
/* ========================================================================== */
/* MemoCar cabinet common UI — единая дизайн-система личного кабинета         */
/* ========================================================================== */
/*
 * MemoCar cabinet design system.
 * Общие токены и базовые элементы личного кабинета.
 * Уникальная композиция конкретного компонента остаётся в его style.css.
 */
:root {
    --mc-page-bg: #F6F7F8;
    --mc-cb-page: #F6F7F8;
    --mc-cb-surface: #FFFFFF;
    --mc-cb-surface-muted: #F8F8F9;
    --mc-cb-surface-soft: #F8F9FA;
    --mc-cb-surface-dark: #111214;
    --mc-cb-surface-graphite: #222326;

    --mc-link: #6D727B;

    --mc-cb-text: #17181A;
    --mc-cb-text-secondary: #6D727B;
    --mc-cb-text-muted: #969CA5;
    --mc-cb-text-on-dark: #FFFFFF;

    --mc-cb-border: #e9e9e9;
    --mc-cb-border-soft: #f7f7f7;
    --mc-cb-border-success: #e2ffc6;
    --mc-cb-border-light: #ededed;
    --mc-cb-border-dark: rgba(255, 255, 255, .10);

    --mc-cb-yellow: #FFC001;
    --mc-cb-yellow-hover: #EFB400;
    --mc-cb-yellow-active: #DFA700;
    --mc-cb-success: #18A865;
    --mc-cb-warning: #E7A800;
    --mc-cb-danger: #EF544A;
    --mc-cb-info: #4F78E8;
    --mc-cb-violet: #7C58E8;

    --ui-opacity-30: 0.3;
    --ui-opacity-60: 0.6;
    --ui-opacity-70: 0.7;

    /* Единая семантическая палитра бейджей, статусов и чипов. */
    --mc-cb-badge-neutral-text: #5C6675;
    --mc-cb-badge-neutral-bg: #F0F2F5;
    --mc-cb-badge-success-text: #167b49;
    --mc-cb-badge-success-bg: #dff4e7;
    --mc-cb-badge-warning-text: #875F00;
    --mc-cb-badge-warning-bg: #FFF4CE;
    --mc-cb-badge-danger-text: #B52F29;
    --mc-cb-badge-danger-bg: #FFF0EF;
    --mc-cb-badge-info-text: #3157C8;
    --mc-cb-badge-info-bg: #EEF3FF;
    --mc-cb-badge-violet-text: #6546C6;
    --mc-cb-badge-violet-bg: #F1EDFF;
    --mc-cb-badge-accent-text: #765500;
    --mc-cb-badge-accent-bg: #FFF4CE;

    --mc-cb-font-xs: 12px;
    --mc-cb-font-sm: 13px;
    --mc-cb-font-base: 14px;
    --mc-cb-font-md: 16px;
    --mc-cb-font-lg: 18px;
    --mc-cb-font-l: 20px;
    --mc-cb-font-xl: 30px;
    --mc-cb-font-xxl: 34px;
    --mc-cb-line-base: 1.46;

    --mc-cb-motion-fast: 160ms;
    --mc-cb-motion-base: 220ms;
    --mc-cb-motion-drawer: 440ms;
    --mc-cb-motion-ease: cubic-bezier(.2, 0, 0, 1);

    --mc-cb-space-1: 4px;
    --mc-cb-space-2: 8px;
    --mc-cb-space-3: 12px;
    --mc-cb-space-4: 16px;
    --mc-cb-space-5: 20px;
    --mc-cb-space-6: 24px;
    --mc-cb-space-8: 32px;

    --mc-cb-radius-xs: 8px;
    --mc-cb-radius-sm: 12px;
    --mc-cb-radius: 16px;
    --mc-cb-radius-lg: 20px;
    --mc-cb-radius-pill: 999px;

    --mc-cb-shadow: 0 4px 16px rgba(19, 22, 28, .045);
    --mc-cb-shadow-raised: 0 8px 24px rgba(19, 22, 28, .07);
    --mc-cb-shadow-dark: 0 12px 32px rgba(13, 15, 17, .16);
    --mc-cb-shadow-hover: 0 12px 30px rgba(19, 22, 28, .10);

    --mc-cb-container: 1660px;
    --mc-cb-control-height: 44px;

    /* MemoCar Buttons UI Kit v1.0 — общие токены кнопок кабинета. */
    --mc-cb-button-height: 44px;
    --mc-cb-button-height-compact: 44px;
    --mc-cb-button-radius: 12px;
    --mc-cb-button-radius-compact: 8px;
    --mc-cb-button-gap: var(--mc-cb-space-2);
    --mc-cb-events-gap: 4px;
    --mc-cb-button-padding-x: 18px;
    --mc-cb-button-padding-x-compact: 12px;
    --mc-cb-button-font-size: var(--mc-cb-font-base);
    --mc-cb-button-font-size-compact: 13px;
    --mc-cb-button-font-weight: 500;
    --mc-cb-button-primary-hover: #EEB300;
    --mc-cb-button-primary-active: #DDA600;
    --mc-cb-button-dark-hover: #2B2C30;
    --mc-cb-button-dark-active: #090A0B;
    --mc-cb-button-border-strong: #CDD1D7;
    --mc-cb-button-danger: #EF3F45;
    --mc-cb-button-danger-hover: #D92F35;
    --mc-cb-button-danger-active: #C5262C;
    --mc-cb-button-danger-soft: #FFF1F2;
    --mc-cb-button-focus-ring: 0 0 0 3px rgba(255, 192, 1, .34);
    --mc-cb-button-shadow-hover: 0 8px 18px rgba(17, 18, 20, .12);
    --mc-cb-button-shadow-primary: 0 8px 20px rgba(255, 192, 1, .26);
    --mc-cb-button-transition: 180ms ease;

    /* Совместимые имена старых компонентов. Значения задаются только выше. */
    --mc-yellow: var(--mc-cb-yellow);
    --mc-yellow-hover: var(--mc-cb-yellow-hover);
    --mc-black: var(--mc-cb-surface-dark);
    --mc-black-soft: var(--mc-cb-text);
    --mc-graphite: var(--mc-cb-surface-graphite);
    --mc-graphite-light: #303135;
    --mc-white: var(--mc-cb-surface);
    --mc-text-secondary: var(--mc-cb-text-secondary);
    --mc-text-muted: var(--mc-cb-text-muted);
    --mc-border-soft: var(--mc-cb-border);
    --mc-surface-muted: var(--mc-cb-surface-muted);
    --mc-surface-hover: #EBEDF0;
    --mc-success: var(--mc-cb-success);
    --mc-danger: var(--mc-cb-danger);
    --mc-radius-card: var(--mc-cb-radius);
    --mc-shadow-card: var(--mc-cb-shadow);
    --mc-shadow-card-lg: var(--mc-cb-shadow-raised);
    --mc-accent: var(--mc-cb-yellow);
    --mc-text: var(--mc-cb-text);
    --mc-muted: var(--mc-cb-text-secondary);
    --mc-border: var(--mc-cb-border-soft);
    --mc-shadow: var(--mc-cb-shadow);

    --mc-opacity: 0.7;
}

/* Адаптивные токены: единственное переопределение :root для мобильной ширины.
   Другие мобильные значения наследуются из базового :root. */
@media (max-width: 767px) {
    :root {
        --mc-cb-font-xl: 22px;
        --mc-cb-control-height: 46px;
    }
}

/* ========================================================================== */
/* НАВИГАЦИЯ ПО ФАЙЛУ (порядок правил сохраняет действующий CSS-каскад)      */
/* 01. База и SHELL                 02. Анимации и поведение текущей страницы */
/* 03. Страница и общие поверхности 04. Кнопки, поля, статусы, таблицы        */
/* 05. Окна и панели                06. Формы, история и редакторы            */
/* 07. Доступ и общие карточки      08. Вложения, вкладки и элементы страниц  */
/* 09. Уведомления и мобильный UX   10. PWA и ИИ-диалог                       */
/* 11. Просмотр файлов и кампании   12. Первичная активация                  */
/* ========================================================================== */

html {
    background: var(--mc-cb-surface-muted);
    scrollbar-gutter: stable;
}

body.mc-shell-page {
    min-height: 100vh;
    margin: 0;
    color: var(--mc-text-primary, #17181A);
    background: var(--mc-cb-surface-muted);
    font-family: Montserrat, Arial, sans-serif;
    font-size: var(--mc-cb-font-base, 14px);
}

body.mc-shell-page *,
body.mc-shell-page *::before,
body.mc-shell-page *::after {
    box-sizing: border-box;
}

body.mc-shell-page button,
body.mc-shell-page a {
    -webkit-tap-highlight-color: transparent;
}

body.mc-shell-page button,
body.mc-shell-page input,
body.mc-shell-page select,
body.mc-shell-page textarea {
    font: inherit;
}

a {
    color: var(--mc-link);
    text-decoration: none;
    display: inline-flex;
    gap: var(--mc-cb-space-1);
}

a:hover {
    text-decoration: none;
    opacity: var(--mc-opacity);
}

a>svg {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

strong {
    font-weight: 500;
}

span.arr {
    display: inline-block;
    height: 28px;
    border-radius: 50%;
    text-align: center;
    margin-left: 0.1rem;
}

.arr:after {
    content: '';
    display: inline-block;
    margin-left: 0rem;
    margin-top: 10px;
    width: 10px;
    height: 10px;
    border-top: 2px solid;
    border-right: 2px solid;
    -webkit-transform: rotate(45deg);
    -ms-transform: rotate(45deg);
    transform: rotate(45deg);
}

.mc-shell-skip {
    position: fixed;
    z-index: 10000;
    top: 12px;
    left: 12px;
    padding: 10px 14px;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-surface-dark);
    background: var(--mc-cb-yellow);
    font-weight: 700;
    transform: translateY(-160%);
    transition: transform .2s ease;
}

h3 {
    margin: 0;
    font-size: var(--mc-cb-font-lg);
    font-weight: 600;
    line-height: 21px;
    letter-spacing: -.015em;
    padding-bottom: var(--mc-cb-space-1);
}

h4 {
    margin: 0;
    font-size: var(--mc-cb-font-md);
    font-weight: 600;
    line-height: 21px;
    letter-spacing: -.015em;
    padding-bottom: var(--mc-cb-space-1);
}

small {
    font-size: var(--mc-cb-font-sm);
}

.time {
    color: var(--mc-cb-text-secondary);
}

.mc-actions {
    display: flex;
    flex-wrap: wrap;
    align-items: flex-start;
    justify-content: flex-start;
    gap: var(--mc-cb-space-2);
}

.mc-shell-skip:focus {
    transform: translateY(0);
}

.mc-shell {
    min-height: 100vh;
}

.mc-shell-sidebar {
    position: fixed;
    z-index: 100;
    inset: 0 auto 0 0;
    display: flex;
    width: 232px;
    min-height: fit-content;
    padding: 20px 16px;
    flex-direction: column;
    color: var(--mc-white, #FFF);
    background: var(--mc-black, #111214);
    overflow-y: auto;
    scrollbar-width: thin;
    scrollbar-color: rgba(255, 255, 255, .18) transparent;
}

.mc-shell-brand {
    display: flex;
    width: 100%;
    min-height: 54px;
    padding: 4px 8px 12px;
    align-items: center;
    color: var(--mc-white, #FFF);
    text-decoration: none;
}

.mc-shell-brand img {
    display: block;
    width: auto;
    max-width: 164px;
    max-height: 42px;
    object-fit: contain;
}

.mc-shell-brand__fallback {
    color: var(--mc-white, #FFF);
    font-size: 25px;
    font-weight: 700;
    letter-spacing: -1px;
    line-height: 1;
}

.mc-shell-brand__fallback span {
    color: var(--mc-yellow, #FFC001);
}

.mc-shell-nav {
    display: flex;
    min-height: 0;
    margin-top: 10px;
    flex: 1;
    flex-direction: column;
    gap: 22px;
}

.mc-shell-nav__primary,
.mc-shell-nav__secondary {
    display: flex;
    flex-direction: column;
    gap: 4px;
}

.mc-shell-nav__secondary {
    margin-top: auto;
    padding-top: 18px;
    border-top: 1px solid rgba(255, 255, 255, .08);
}

.mc-shell-nav__item {
    display: flex;
    width: 100%;
    min-height: 44px;
    padding: 10px 12px;
    align-items: center;
    gap: var(--mc-cb-space-3);
    border: 0;
    border-radius: var(--mc-cb-radius-sm);
    color: #C6C8CD;
    background: transparent;
    font-size: var(--mc-cb-font-base);
    font-weight: 500;
    line-height: 20px;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    transition: color .18s ease, background .18s ease, transform .18s ease;
}

.mc-shell-nav__item:hover {
    color: var(--mc-white, #FFF);
    background: rgba(255, 255, 255, .055);
}

.mc-shell-nav__item:active {
    transform: translateY(1px);
}

.mc-shell-nav__item.is-active {
    color: var(--mc-yellow, #FFC001);
}

.mc-shell-nav__item.is-disabled {
    color: #777A81;
    cursor: help;
}

.mc-shell-nav__item.is-disabled:hover {
    color: #96999F;
    background: rgba(255, 255, 255, .035);
}

.mc-shell-nav__icon {
    display: grid;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    place-items: center;
}

.mc-shell-nav__icon svg,
.mc-shell-topbar svg,
.mc-shell-bottom svg,
.mc-shell-drawer svg {
    display: block;
    width: 28px;
    height: 28px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-shell-page-back {
    display: none;
}

.mc-shell-workspace {
    min-width: 0;
    min-height: 100vh;
    margin-left: 232px;
}

.mc-shell-topbar {
    position: sticky;
    z-index: 70;
    top: 0;
    display: flex;
    min-height: 88px;
    padding: 16px 32px;
    align-items: center;
    gap: 24px;
    background: rgba(246, 247, 248, .92);
    border-bottom: 1px solid rgba(23, 24, 26, .045);
    backdrop-filter: blur(16px);
    -webkit-backdrop-filter: blur(16px);
}

.mc-shell-topbar__mobile-brand {
    display: none;
}

.mc-shell-heading {
    min-width: 180px;
    margin-right: auto;
}

.mc-shell-heading>span {
    display: block;
    margin-bottom: 2px;
    color: var(--mc-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-base);
    line-height: 20px;
}

.mc-shell-heading>strong {
    min-height: 24px;
    margin: 0;
    color: var(--mc-text-primary, #17181A);
    font-size: 18px;
    font-weight: 700;
    letter-spacing: -.02em;
    line-height: 24px;
}

.mc-shell-topbar__actions {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: flex-end;
    gap: var(--mc-cb-space-2);
}

.mc-shell-car-switcher {
    position: relative;
    min-width: 205px;
    flex: 0 1 auto;
}

.mc-shell-car-switcher .mc-shell-car-select {
    width: 100%;
}

.mc-shell-car-switcher__panel[hidden] {
    display: none !important;
}

.mc-shell-car-switcher__panel {
    position: absolute;
    z-index: 130;
    top: calc(100% + 10px);
    right: 0;
    width: 350px;
    max-width: calc(100vw - 32px);
    max-height: min(620px, calc(100vh - 100px));
    overflow: hidden;
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: 18px;
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface, #FFF);
    box-shadow: var(--mc-cb-shadow-raised, 0 8px 24px rgba(19, 22, 28, .07));
}

.mc-shell-car-switcher__head {
    display: flex;
    padding: 15px 16px 12px;
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--mc-cb-space-3);
    border-bottom: 1px solid var(--mc-cb-border-soft);
}

.mc-shell-car-switcher__head strong,
.mc-shell-car-switcher__head small {
    display: block;
}

.mc-shell-car-switcher__head strong {
    font-size: var(--mc-cb-font-base, 14px);
}

.mc-shell-car-switcher__head small {
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-sm);
}

.mc-shell-car-switcher__list {
    display: grid;
    max-height: 450px;
    overflow-y: auto;
    padding: var(--mc-cb-space-2);
}

.mc-shell-car-switcher__item {
    display: grid;
    min-height: 62px;
    grid-template-columns: 62px minmax(0, 1fr) 22px;
    align-items: center;
    gap: 11px;
    padding: 7px 9px;
    border-radius: var(--mc-cb-radius-sm);
    color: inherit;
    text-decoration: none;
    transition: background .18s ease;
}

.mc-shell-car-switcher__item:hover,
.mc-shell-car-switcher__item:focus-visible {
    background: var(--mc-cb-surface-muted, #F1F2F4);
}

.mc-shell-car-switcher__item.is-active {
    background: rgba(255, 192, 1, .13);
}

.mc-shell-car-switcher__thumb {
    display: grid;
    width: 62px;
    height: 42px;
    overflow: hidden;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary, #6D727B);
    background: var(--mc-cb-surface-muted, #F1F2F4);
}

.mc-shell-car-switcher__thumb img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mc-shell-car-switcher__thumb svg {
    width: 24px;
    height: 24px;
}

.mc-shell-car-switcher__text {
    display: block;
    min-width: 0;
    text-align: left;
}

.mc-shell-car-switcher__text strong,
.mc-shell-car-switcher__text small {
    display: block;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mc-shell-car-switcher__text strong {
    font-size: var(--mc-cb-font-sm);
}

.mc-shell-car-switcher__text small {
    margin-top: 2px;
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-sm);
    line-height: 16px;
}

.mc-shell-car-switcher__mark {
    display: grid;
    width: 22px;
    height: 22px;
    place-items: center;
    color: var(--mc-cb-text-muted, #969CA5);
}

.mc-shell-car-switcher__mark svg {
    width: 15px;
    height: 15px;
}

.mc-shell-car-switcher__item.is-active .mc-shell-car-switcher__mark {
    width: 9px;
    height: 9px;
    justify-self: center;
    border-radius: 50%;
    background: var(--mc-cb-yellow, #FFC001);
}

.mc-shell-car-switcher__item.is-active .mc-shell-car-switcher__mark svg {
    display: none;
}

.mc-shell-car-switcher__garage {
    display: flex;
    min-height: 46px;
    padding: 0 15px;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-3);
    border-top: 1px solid var(--mc-cb-border-soft);
    color: var(--mc-cb-text, #17181A);
    font-size: var(--mc-cb-font-sm);
    font-weight: 700;
    text-decoration: none;
}

.mc-shell-car-switcher__garage:hover {
    background: var(--mc-cb-surface-soft, #F8F9FA);
}

.mc-shell-car-switcher__garage svg {
    width: 16px;
    height: 16px;
}

.mc-shell-car-switcher.is-open .mc-shell-car-select__chevron {
    transform: rotate(90deg);
}

.mc-shell-car-select__chevron {
    transition: transform .18s ease;
}

.mc-shell-car-select,
.mc-shell-planfile,
.mc-shell-icon-button {
    min-height: 48px;
    border: 0;
    color: var(--mc-text-primary, #17181A);
    background: var(--mc-white, #FFF);
    box-shadow: var(--mc-shadow-card, 0 4px 16px rgba(19, 22, 28, .045));
    text-decoration: none;
    cursor: pointer;
    transition: background .18s ease, box-shadow .18s ease, transform .18s ease;
}

.mc-shell-car-select:hover,
.mc-shell-planfile:hover,
.mc-shell-icon-button:hover {
    background: var(--mc-surface-muted, #F1F2F4);
    box-shadow: var(--mc-shadow-card-lg, 0 8px 24px rgba(19, 22, 28, .07));
}

.mc-shell-car-select:active,
.mc-shell-planfile:active,
.mc-shell-icon-button:active {
    transform: translateY(1px);
}

.mc-shell-car-select {
    display: flex;
    min-width: 205px;
    padding: 8px 10px;
    align-items: center;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius-sm);
}

.mc-shell-car-select__icon {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    overflow: hidden;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-black, #111214);
    background: var(--mc-cb-yellow, #FFC001);
    align-content: center;
}

.mc-shell-car-select__icon svg {
    width: 18px;
    height: 18px;
}

.mc-shell-car-select__icon img {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: inherit;
    object-fit: cover;
    object-position: center;
}

.mc-shell-car-select__text,
.mc-shell-planfile__text {
    display: flex;
    min-width: 0;
    flex: 1;
    flex-direction: column;
    text-align: left;
}

.mc-shell-car-select__text small,
.mc-shell-planfile__text small {
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    line-height: 14px;
}

.mc-shell-car-select__text strong,
.mc-shell-planfile__text strong {
    overflow: hidden;
    color: var(--mc-text-primary, #17181A);
    font-size: var(--mc-cb-font-base);
    font-weight: 600;
    line-height: 20px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mc-shell-car-select__chevron,
.mc-shell-planfile__chevron {
    display: grid;
    width: 20px;
    height: 20px;
    place-items: center;
    color: var(--mc-cb-text-muted, #969CA5);
}

.mc-shell-car-select__chevron svg,
.mc-shell-planfile__chevron svg {
    width: 16px;
    height: 16px;
}

.mc-shell-icon-button {
    display: grid;
    width: 48px;
    flex: 0 0 48px;
    padding: 0;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
}

.mc-shell-notifications {
    position: relative;
    flex: 0 0 auto;
}

.mc-shell-notifications__badge {
    position: absolute;
    top: 0;
    right: 5px;
    display: grid;
    min-width: 22px;
    height: 22px;
    padding: 0 5px;
    place-items: center;
    border: 2px solid var(--mc-white, #FFF);
    border-radius: 999px;
    color: var(--mc-cb-surface);
    background: var(--mc-cb-button-danger);
    font-size: var(--mc-cb-font-sm);
    font-weight: 500;
    line-height: 1;
}

.mc-shell-notifications__panel[hidden] {
    display: none !important;
}

.mc-shell-notifications__panel {
    position: absolute;
    z-index: 999;
    top: calc(100% + 12px);
    right: 0;
    width: 380px;
    max-width: calc(100vw - 32px);
    max-height: min(760px, calc(100vh - 100px));
    padding: var(--mc-cb-space-4);
    border-radius: var(--mc-cb-radius-lg);
    color: var(--mc-text-primary, #17181A);
    background: var(--mc-white, #FFF);
    box-shadow: 0 20px 52px rgba(19, 22, 28, .16);
    overflow-y: auto;
}

.mc-shell-notifications__head {
    display: flex;
    margin-bottom: var(--mc-cb-space-3);
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--mc-cb-space-3);
}

.mc-shell-notifications__head>div {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.mc-shell-notifications__head span {
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    font-weight: 700;
    letter-spacing: .08em;
    line-height: 14px;
    text-transform: uppercase;
}

.mc-shell-notifications__head strong {
    font-size: 17px;
    line-height: 24px;
}

.mc-shell-notifications__head b {
    padding: 5px 8px;
    border-radius: 999px;
    color: #7A5900;
    background: rgba(255, 192, 1, .18);
    font-size: var(--mc-cb-font-xs);
    line-height: 14px;
    white-space: nowrap;
}

.mc-shell-notifications__list {
    display: grid;
    gap: 6px;
}

.mc-shell-notifications__item {
    display: grid;
    min-height: 58px;
    padding: 9px 10px;
    grid-template-columns: 10px minmax(0, 1fr) 18px;
    align-items: center;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius-sm);
    color: inherit;
    background: var(--mc-surface-muted, #F1F2F4);
    text-decoration: none;
    transition: background .18s ease, transform .18s ease;
}

.mc-shell-notifications__item:hover {
    background: #E9EAEC;
    transform: translateY(-1px);
}

.mc-shell-notifications__marker {
    width: 8px;
    height: 8px;
    border-radius: 50%;
    background: #A4A9B0;
}

.mc-shell-notifications__item.is-overdue .mc-shell-notifications__marker {
    background: #D44A42;
}

.mc-shell-notifications__item.is-today .mc-shell-notifications__marker,
.mc-shell-notifications__item.is-urgent .mc-shell-notifications__marker {
    background: var(--mc-cb-yellow, #FFC001);
}

.mc-shell-notifications__text {
    display: flex;
    min-width: 0;
    flex-direction: column;
}

.mc-shell-notifications__text strong {
    overflow: hidden;
    font-size: var(--mc-cb-font-xs);
    font-weight: 650;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mc-shell-notifications__text small {
    color: var(--mc-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    line-height: 15px;
}

.mc-shell-notifications__chevron {
    display: grid;
    place-items: center;
    color: var(--mc-cb-text-muted, #969CA5);
}

.mc-shell-notifications__chevron svg {
    width: 15px;
    height: 15px;
}

.mc-shell-notifications__empty {
    padding: 22px 14px;
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-surface-muted, #F1F2F4);
    text-align: center;
}

.mc-shell-notifications__empty strong {
    display: block;
    margin-bottom: 3px;
    font-size: var(--mc-cb-font-sm);
}

.mc-shell-notifications__empty p {
    margin: 0;
    color: var(--mc-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    line-height: 16px;
}

.mc-shell-notifications__all {
    display: flex;
    min-height: 44px;
    margin-top: 10px;
    align-items: center;
    justify-content: center;
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-black, #111214);
    background: var(--mc-cb-yellow, #FFC001);
    font-size: var(--mc-cb-font-xs);
    font-weight: 700;
    text-decoration: none;
}

.mc-shell-planfile {
    display: flex;
    min-width: 150px;
    max-width: 210px;
    padding: 6px 10px 6px 6px;
    align-items: center;
    gap: var(--mc-cb-radius-xs);
    border-radius: var(--mc-cb-radius-sm);
}

.mc-shell-planfile__avatar {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-white, #FFF);
    background: var(--mc-black, #111214);
    font-size: var(--mc-cb-font-xs);
    font-weight: 700;
}

.mc-shell-content {
    min-width: 0;
    padding: 8px 32px 40px;
}

.mc-shell-content__inner {
    width: 100%;
    max-width: var(--mc-cb-container, 1660px);
    min-width: 0;
    margin: 0 auto;
}

.mc-shell-content__inner> :first-child {
    margin-top: 0;
}

.mc-shell-content .mc-garage {
    padding-right: 0 !important;
    padding-bottom: 0 !important;
    padding-left: 0 !important;
}

.mc-shell-bottom {
    display: none;
}

.mc-shell-drawer[hidden] {
    display: none !important;
}

.mc-shell-drawer {
    position: fixed;
    z-index: 1000;
    inset: 0;
}

.mc-shell-drawer__backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(17, 18, 20, .42);
    backdrop-filter: blur(3px);
    -webkit-backdrop-filter: blur(3px);
}

.mc-shell-drawer__panel {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    width: min(420px, 100%);
    height: 100%;
    padding: 24px;
    color: var(--mc-text-primary, #17181A);
    background: var(--mc-cb-surface, #FFF);
    box-shadow: -16px 0 44px rgba(19, 22, 28, .16);
    overflow-y: auto;
    transform: translate3d(0, 0, 0);
    transition: transform var(--mc-cb-motion-drawer) var(--mc-cb-motion-ease);
    will-change: transform;
}

.mc-shell-drawer__head {
    display: flex;
    margin-bottom: 20px;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
}

.mc-shell-drawer__head>div {
    display: flex;
    flex-direction: column;
}

.mc-shell-drawer__head span {
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    font-weight: 700;
    letter-spacing: .08em;
    text-transform: uppercase;
}

.mc-shell-drawer__head strong {
    font-size: 20px;
    line-height: 26px;
}

.mc-shell-drawer__head button {
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-text-primary, #17181A);
    background: var(--mc-white, #FFF);
    cursor: pointer;
}

.mc-shell-drawer__nav {
    display: grid;
    gap: var(--mc-cb-space-2);
}

.mc-shell-drawer__item {
    display: grid;
    width: 100%;
    min-height: 54px;
    padding: 5px 6px;
    grid-template-columns: 36px minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--mc-cb-space-3);
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-text-primary, #17181A);
    background: var(--mc-white, #FFF);
    box-shadow: var(--mc-shadow-card, 0 4px 16px rgba(19, 22, 28, .045));
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.mc-shell-drawer__item>span {
    display: grid;
    width: 36px;
    height: 36px;
    place-items: center;
    color: var(--mc-text-secondary, #6D727B);
}

.mc-shell-drawer__item>svg {
    width: 28px;
    height: 28px;
    color: var(--mc-cb-text-muted, #969CA5);
}

.mc-shell-drawer__item strong {
    font-size: var(--mc-cb-font-base);
    font-weight: 600;
}

.mc-shell-drawer__item small {
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
}

.mc-shell-drawer__item.is-active {
    background: rgba(255, 192, 1, .14);
}

.mc-shell-drawer__item.is-active>span {
    color: var(--mc-black, #111214);
}

.mc-shell-drawer__item.is-disabled {
    color: var(--mc-cb-text-muted, #969CA5);
    box-shadow: none;
    cursor: help;
}

@media (max-width:1199px) {
    .mc-shell-sidebar {
        display: none;
    }

    .mc-shell-workspace {
        margin-left: 0;
    }

    .mc-shell-topbar {
        min-height: 80px;
        padding: 14px 20px;
        gap: var(--mc-cb-space-4);
    }

    .mc-shell-topbar__mobile-brand {
        display: block;
        flex: 0 0 auto;
    }

    .mc-shell-brand--mobile {
        width: auto;
        min-height: 48px;
        padding: 2px 8px 2px 0;
    }

    .mc-shell-brand--mobile img {
        max-width: 148px;
        max-height: 38px;
    }

    .mc-shell-brand--mobile .mc-shell-brand__fallback {
        color: var(--mc-black, #111214);
        font-size: 23px;
    }

    .mc-shell-heading {
        min-width: 150px;
    }

    .mc-shell-heading>strong {
        font-size: 18px;
        line-height: 24px;
    }

    .mc-shell-content {
        padding: 0 6px calc(110px + env(safe-area-inset-bottom, 0px));
    }

    .mc-shell-bottom {
        position: fixed;
        z-index: 900;
        bottom: calc(var(--mc-cb-radius) + env(safe-area-inset-bottom));
        left: 50%;
        display: grid;
        width: min(620px, calc(100% - 40px));
        padding: 0;
        grid-template-columns: repeat(5, minmax(0, 1fr));
        align-items: center;
        border-radius: var(--mc-cb-radius);
        background: linear-gradient(180deg, #20252c 0%, #0a0b0f 100%);
        box-shadow: 0 12px 30px rgba(0, 0, 0, .15);
        transform: translateX(-50%);
    }

    .mc-shell-bottom__item {
        display: flex;
        min-width: 0;
        min-height: 58px;
        padding: 6px 4px;
        align-items: center;
        justify-content: center;
        flex-direction: column;
        gap: 3px;
        border: 0;
        border-radius: var(--mc-cb-radius-sm);
        color: #B8BBC2;
        background: transparent;
        text-decoration: none;
        cursor: pointer;
    }

    .mc-shell-bottom__item>span {
        display: grid;
        width: 28px;
        height: 28px;
        place-items: center;
    }

    .mc-shell-bottom__item svg {
        width: 28px;
        height: 28px;
    }

    .mc-shell-bottom__item small {
        overflow: hidden;
        max-width: 100%;
        font-size: var(--mc-cb-font-xs);
        font-weight: 600;
        line-height: 13px;
        text-overflow: ellipsis;
        white-space: nowrap;
    }

    .mc-shell-bottom__item.is-active {
        color: var(--mc-yellow, #FFC001);
    }

    .mc-shell-bottom__item.is-disabled {
        color: #686B72;
        cursor: help;
    }

    .mc-shell-bottom__ai {
        position: relative;
        top: -15px;
        display: grid;
        width: 72px;
        height: 72px;
        margin: 0 auto;
        padding: 0;
        place-items: center;
        border: 7px solid;
        border-radius: 50%;
        color: var(--mc-black, #111214);
        background: transparent;
        cursor: pointer;
    }

    .mc-shell-bottom__ai img {
        display: block;
        width: 58px;
        height: 58px;
        border-radius: 50%;
        object-fit: contain;
        filter: drop-shadow(0 0 14px rgba(255, 192, 1, .38));
    }

    .mc-shell-bottom__ai-fallback {
        display: grid;
        width: 58px;
        height: 58px;
        place-items: center;
        border: 5px solid var(--mc-black, #111214);
        border-radius: 50%;
        color: var(--mc-black, #111214);
        background: var(--mc-cb-yellow, #FFC001);
        box-shadow: 0 0 0 2px rgba(255, 255, 255, .08);
    }

    .mc-shell-bottom__ai-fallback svg {
        width: 23px;
        height: 23px;
        stroke-width: 2;
    }

    .mc-ai-dialog__launcher {
        bottom: 120px !important;
    }

}

@media (max-width:767px) {

    .mc-shell-workspace {
        margin-top: 5px;
    }

    .mc-dashboard-vehicle__overlay {
        padding: 65px 18px 18px 18px;
    }

    .mc-shell-topbar {
        position: absolute;
        width: 100%;
        display: grid;
        min-height: auto;
        margin-top: 15px;
        gap: 0;
        grid-template-columns: minmax(44px, 1fr) auto minmax(44px, 1fr);
        justify-content: stretch;
        padding: 0 10px;
        box-sizing: border-box;
        background: none;
        border-bottom: 0;
        backdrop-filter: none;
    }

    .mc-shell-topbar__mobile-brand {
        min-width: 0;
        display: none;
    }

    body.mc-shell-page .mc-shell-page-back:not([hidden]) {
        display: grid;
        width: 44px;
        height: 44px;
        min-width: 44px;
        min-height: 44px;
        padding: 0;
        grid-column: 1;
        grid-row: 1;
        place-items: center;
        justify-self: start;

        border: 1px solid rgba(255, 255, 255, .60);
        border-radius: 13px;

        color: #181818;
        background: rgba(255, 255, 255, .82);

        -webkit-backdrop-filter: blur(12px);
        backdrop-filter: blur(12px);

        box-shadow: var(--mc-cb-shadow-dark);
        text-decoration: none;
        -webkit-tap-highlight-color: transparent;
    }

    body.mc-shell-page .mc-shell-page-back svg {
        width: 28px;
        height: 28px;
        fill: currentColor;
        stroke: none;
    }

    body.mc-shell-page.mc-shell-has-page-back .mc-shell-content .mc-cb-breadcrumbs {
        display: none;
    }

    .mc-shell-brand--mobile {
        min-height: 44px;
    }

    .mc-shell-brand--mobile img {
        max-width: 132px;
        max-height: 34px;
    }

    .mc-shell-brand--mobile .mc-shell-brand__fallback {
        font-size: 21px;
    }

    .mc-shell-heading {
        grid-column: 1/-1;
        grid-row: 2;
        min-width: 0;
        display: none;
    }

    .mc-shell-heading>span {
        display: none;
    }

    .mc-shell-heading>strong {
        min-height: 22px;
        font-size: 16px;
        line-height: 22px;
    }

    .mc-shell-topbar__actions {
        grid-column: 2;
        grid-row: 1;
        gap: var(--mc-cb-space-2);
    }

    .mc-shell-car-switcher {
        min-width: 44px;
    }

    .mc-shell-car-select {
        min-width: 44px;
        min-height: 44px;
        padding: 4px;
        border-radius: 13px;
        box-shadow: var(--mc-cb-shadow-dark);
    }

    .mc-shell-car-switcher__panel {
        position: fixed;
        top: 66px;
        right: 12px;
        left: 12px;
        width: auto;
        max-width: none;
        max-height: calc(100dvh - 172px);
    }

    .mc-shell-car-select__icon {
        width: 36px;
        height: 36px;
    }

    .mc-shell-car-select__text,
    .mc-shell-car-select__chevron,
    .mc-shell-planfile__text,
    .mc-shell-planfile__chevron {
        display: none;
    }

    .mc-shell-icon-button {
        width: 44px;
        min-height: 44px;
        flex-basis: 44px;
        border-radius: 13px;
        box-shadow: var(--mc-cb-shadow-dark);
    }

    .mc-shell-notifications__panel {
        position: fixed;
        top: 66px;
        right: 12px;
        left: 12px;
        width: auto;
        max-width: none;
        max-height: calc(100dvh - 172px);
        overflow-y: auto;
    }

    .mc-shell-planfile {
        min-width: 44px;
        min-height: 44px;
        max-width: none;
        padding: 4px;
        border-radius: 13px;
        box-shadow: var(--mc-cb-shadow-dark);
    }

    .mc-shell-planfile__avatar {
        width: 36px;
        height: 36px;
    }

    .mc-shell-content {
        padding: 0 6px calc(110px + env(safe-area-inset-bottom))
    }

    .mc-shell-bottom {
        bottom: 0;
        width: 100%;
        height: 72px;
        padding: 0px 4px;
        border-radius: var(--mc-cb-radius) var(--mc-cb-radius) 0 0;
        background: linear-gradient(180deg, #20252c 0%, #0a0b0f 100%);
    }

    .mc-shell-bottom__item {
        min-height: 56px;
    }

    .mc-shell-bottom__item small {
        font-size: var(--mc-cb-font-xs);
        line-height: 12px;
    }

    .mc-shell-bottom__ai {
        width: 68px;
        height: 68px;
    }

    .mc-shell-bottom__ai img,
    .mc-shell-bottom__ai-fallback {
        width: 54px;
        height: 54px;
    }

    .mc-shell-drawer__head {
        margin-bottom: 14px;
        padding: 0 2px;
    }

    .mc-shell-drawer__head strong {
        font-size: 18px;
        line-height: 24px;
    }

    .mc-shell-drawer__nav {
        gap: var(--mc-cb-space-2);
    }

    .mc-shell-drawer__item {
        min-height: 52px;
        border-radius: var(--mc-cb-radius-sm);
    }
}

@media (max-width:430px) {

    .mc-shell-brand--mobile img {
        max-width: 124px;
    }
}

@media (prefers-reduced-motion:reduce) {

    .mc-shell-skip,
    .mc-shell-nav__item,
    .mc-shell-car-select,
    .mc-shell-planfile,
    .mc-shell-icon-button,
    .mc-shell-notifications__item {
        transition: none !important;
    }
}

.mc-shell-drawer__logout {
    margin-top: 14px;
    padding-top: 14px;
    border-top: 1px solid rgba(23, 24, 26, .07);
}

.mc-shell-drawer__logout button {
    width: 100%;
    min-height: 52px;
    display: flex;
    align-items: center;
    gap: var(--mc-cb-space-3);
    padding: 10px 14px;
    border: 0;
    border-radius: var(--mc-cb-radius-sm);
    background: #FFF0EF;
    color: #B62E27;
    cursor: pointer;
    text-align: left;
}

.mc-shell-drawer__logout span {
    width: 32px;
    height: 32px;
    display: grid;
    place-items: center;
    flex: 0 0 auto;
    border-radius: var(--mc-cb-radius-xs);
    background: #fff;
}

.mc-shell-drawer__logout svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-shell-drawer__logout strong {
    font-size: var(--mc-cb-font-base);
    line-height: 20px;
    font-weight: 700;
}

.mc-shell-planfile__avatar img {
    width: 100%;
    height: 100%;
    display: block;
    object-fit: cover;
    border-radius: var(--mc-cb-radius-xs);
}

.mc-shell-notifications__section+.mc-shell-notifications__section {
    margin-top: 16px;
    padding-top: 14px;
    border-top: 1px solid rgba(23, 24, 26, .07)
}

.mc-shell-notifications__section-head {
    display: flex;
    margin-bottom: 8px;
    align-items: center;
    justify-content: space-between;
    gap: 10px
}

.mc-shell-notifications__section-head strong {
    font-size: 12px
}

.mc-shell-notifications__section-head a,
.mc-shell-notifications__section-head span {
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    text-decoration: none
}

.mc-shell-platform-messages {
    display: grid;
    gap: 6px
}

.mc-shell-platform-message {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 44px;
    align-items: stretch;
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-surface-muted, #F1F2F4);
    overflow: hidden
}

.mc-shell-platform-message.is-unread {
    background: #FFF7D8
}

.mc-shell-platform-message>a {
    display: grid;
    min-width: 0;
    padding: 10px;
    grid-template-columns: 9px minmax(0, 1fr);
    align-items: start;
    gap: var(--mc-cb-space-2);
    color: inherit;
    text-decoration: none
}

.mc-shell-platform-message__marker {
    width: 8px;
    height: 8px;
    margin-top: 5px;
    border-radius: 50%;
    background: #A4A9B0
}

.mc-shell-platform-message.is-unread .mc-shell-platform-message__marker {
    background: var(--mc-cb-yellow, #FFC001)
}

.mc-shell-platform-message>a>span:last-child {
    display: grid;
    min-width: 0;
    gap: 2px
}

.mc-shell-platform-message strong {
    overflow: hidden;
    font-size: var(--mc-cb-font-xs);
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap
}

.mc-shell-platform-message small {
    display: -webkit-box;
    overflow: hidden;
    color: var(--mc-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    line-height: 14px;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical
}

.mc-shell-platform-message time {
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    line-height: 12px
}

.mc-shell-platform-message>button {
    display: grid;
    width: 44px;
    min-height: 44px;
    padding: 0;
    place-items: center;
    border: 0;
    color: #969CA5;
    background: transparent;
    font-size: 0;
    cursor: pointer
}

.mc-shell-platform-message>button svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none
}

.mc-shell-platform-message>button:hover {
    color: #17181A;
    background: rgba(23, 24, 26, .05)
}

/* MemoCar cabinet design system — desktop shell, revision 92. */
@media (min-width:1200px) {
    .mc-shell-sidebar {
        width: 222px;
        padding: 14px 12px 16px;
        margin: 8px;
        border-radius: var(--mc-cb-radius);
        background: linear-gradient(180deg, #20252c 0%, #0a0b0f 100%);
    }

    .mc-shell-brand {
        min-height: 58px;
        padding: 2px 6px 12px;
    }

    .mc-shell-brand img {
        max-width: 176px;
        max-height: 43px;
    }

    .mc-shell-nav {
        margin-top: 10px;
        gap: 14px;
    }

    .mc-shell-nav__primary,
    .mc-shell-nav__secondary {
        gap: 2px;
    }

    .mc-shell-nav__secondary {
        margin-top: 4px;
        padding-top: 12px;
    }

    .mc-shell-nav__item {
        min-height: 42px;
        padding: 9px 10px;
        gap: 11px;
        border-radius: var(--mc-cb-radius-xs);
        font-size: var(--mc-cb-font-base);

    }

    .mc-shell-nav__item.is-active {
        box-shadow: inset 0 0 0 1px rgba(255, 192, 1, .16);
    }

    .mc-shell-nav__icon {
        width: 19px;
        height: auto;
    }

    .mc-shell-workspace {
        margin-left: 222px;
    }

    .mc-shell-topbar {
        min-height: 68px;
        padding: 10px 22px;
        top: 0;
        margin: 0 18px 0 18px;
        gap: 18px;
        background: var(--mc-cb-surface);
        border-radius: 0 0 16px 16px;
        backdrop-filter: blur(14px);
        -webkit-backdrop-filter: blur(14px);
    }

    .mc-shell-heading {
        min-width: 225px;
    }

    .mc-shell-heading>strong {
        min-height: auto;
        font-size: 16px;
        line-height: 21px;
    }

    .mc-shell-heading>span {
        margin: 1px 0 0;
        font-size: var(--mc-cb-font-xs);
        line-height: 13px;
    }

    .mc-shell-topbar__actions {
        margin-left: auto;
        gap: var(--mc-cb-space-2);
    }

    .mc-shell-car-switcher {
        position: absolute;
        left: 50%;
        width: 268px;
        min-width: 268px;
        transform: translateX(-50%);
    }

    .mc-shell-car-select {
        width: 100%;
        min-width: 0;
        min-height: 52px;
        padding: 5px 10px 5px 7px;
        border: 1px solid #eceef0;
        border-radius: var(--mc-cb-radius-sm);
        box-shadow: 0 3px 12px rgba(19, 22, 28, .045);
    }

    .mc-shell-car-select:hover {
        transform: translateY(-1px);
    }

    .mc-shell-car-select:active {
        transform: none;
    }

    .mc-shell-car-select__icon {
        width: 62px;
        height: 38px;
        flex-basis: 62px;
        overflow: hidden;
        border-radius: var(--mc-cb-radius-xs);
        background: #f2f3f4;
        align-content: center;
    }

    .mc-shell-car-select__icon img {
        width: 100%;
        height: 100%;
        display: block;
        object-fit: cover;
    }

    .mc-shell-car-select__text strong {
        font-size: var(--mc-cb-font-xs);
        line-height: 15px;
    }

    .mc-shell-car-select__text small {
        font-size: var(--mc-cb-font-xs);
        line-height: 13px;
    }

    .mc-shell-icon-button,
    .mc-shell-planfile {
        background: transparent;
        box-shadow: none;
    }

    .mc-shell-icon-button:hover,
    .mc-shell-planfile:hover {
        background: #f3f4f5;
        box-shadow: none;
    }

    .mc-shell-icon-button {
        width: 44px;
        min-height: 44px;
        flex-basis: 44px;
        border-radius: 11px;
    }

    .mc-shell-planfile {
        min-width: 142px;
        max-width: 190px;
        min-height: 48px;
        padding: 4px 7px 4px 4px;
        border-radius: var(--mc-cb-radius-sm);
    }

    .mc-shell-planfile__avatar {
        width: 38px;
        height: 38px;
        flex-basis: 38px;
        overflow: hidden;
        border-radius: 50%;
    }

    .mc-shell-planfile__text strong {
        font-size: var(--mc-cb-font-xs);
        line-height: 15px;
    }

    .mc-shell-planfile__text small {
        color: #d39200;
        font-size: var(--mc-cb-font-xs);
        font-weight: 700;
        line-height: 13px;
    }

    .mc-shell-content {
        padding: 14px 18px 26px;
    }

    .mc-shell-content__inner {
        max-width: var(--mc-cb-container, 1660px);
    }
}

@media (max-width:1199px) {
    .mc-shell-brand--mobile img {
        filter: none;
    }
}

/* ========================================================================== */
/* -------------------- 02 — ДВИЖЕНИЕ И РАСКРЫТИЯ -------------------- */
/*              плавное движение элементов текущей страницы              */
/* ========================================================================== */

/* Межстраничная навигация намеренно не анимируется: обычная server-side MPA-смена документа. */

@media(max-width:767px) {

    /* На MOBILE селектор автомобиля проявляется так же, как центр уведомлений. */
    .mc-shell-car-switcher__panel {
        z-index: 999;
        opacity: 1;
        transition:
            opacity var(--mc-cb-motion-fast, 220ms) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
            display var(--mc-cb-motion-fast, 220ms) allow-discrete;
    }

    .mc-shell-car-switcher__panel[hidden] {
        opacity: 0;
    }

    @starting-style {
        .mc-shell-car-switcher__panel:not([hidden]) {
            opacity: 0;
        }
    }

    .mc-shell-car-switcher::before {
        content: "";
        position: fixed;
        z-index: 998;
        inset: 0;
        pointer-events: none;
        opacity: 0;
        background: rgba(17, 18, 20, .16);
        transition: opacity var(--mc-cb-motion-fast, 220ms) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1));
    }

    .mc-shell-car-switcher:has(.mc-shell-car-switcher__panel:not([hidden]))::before {
        opacity: 1;
    }
}

/* Центр уведомлений: центральная/широкая поверхность проявляется на месте. */
.mc-shell-notifications__panel {
    opacity: 1;
    transition:
        opacity var(--mc-cb-motion-fast, 220ms) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
        display var(--mc-cb-motion-fast, 220ms) allow-discrete;
}

.mc-shell-notifications__panel[hidden] {
    opacity: 0;
}

@starting-style {
    .mc-shell-notifications__panel:not([hidden]) {
        opacity: 0;
    }
}

/* Плавный фон только у широкой MOBILE-панели уведомлений. */
@media(max-width:767px) {
    .mc-shell-notifications::before {
        content: "";
        position: fixed;
        z-index: 998;
        inset: 0;
        pointer-events: none;
        opacity: 0;
        background: rgba(17, 18, 20, .16);
        transition: opacity var(--mc-cb-motion-fast) var(--mc-cb-motion-ease);
    }

    .mc-shell-notifications:has(.mc-shell-notifications__panel:not([hidden]))::before {
        opacity: 1;
    }
}

/* Единое движение оболочечных и предметных drawer.
   Геометрия поверхностей описана один раз в базовых правилах ниже/выше. */
:is(.mc-shell-drawer, .mc-cb-drawer) {
    --mc-cb-drawer-closed-transform: translate3d(100%, 0, 0);
    transition: display var(--mc-cb-motion-drawer) allow-discrete;
}

:is(.mc-shell-drawer__backdrop, .mc-cb-drawer__backdrop) {
    opacity: 1;
    transition: opacity var(--mc-cb-motion-drawer) var(--mc-cb-motion-ease);
}

:is(.mc-shell-drawer, .mc-cb-drawer)[hidden] {
    pointer-events: none;
}

:is(.mc-shell-drawer, .mc-cb-drawer)[hidden] :is(.mc-shell-drawer__backdrop, .mc-cb-drawer__backdrop) {
    opacity: 0;
}

:is(.mc-shell-drawer, .mc-cb-drawer)[hidden] :is(.mc-shell-drawer__panel, .mc-cb-drawer__panel) {
    transform: var(--mc-cb-drawer-closed-transform);
}

@starting-style {
    :is(.mc-shell-drawer, .mc-cb-drawer):not([hidden]) :is(.mc-shell-drawer__backdrop, .mc-cb-drawer__backdrop) {
        opacity: 0;
    }

    :is(.mc-shell-drawer, .mc-cb-drawer):not([hidden]) :is(.mc-shell-drawer__panel, .mc-cb-drawer__panel) {
        transform: var(--mc-cb-drawer-closed-transform);
    }
}

@media (max-width: 767px) {
    :is(.mc-shell-drawer, .mc-cb-drawer) {
        --mc-cb-drawer-closed-transform: translate3d(0, 100%, 0);
    }
}

/* Центральный popup на desktop проявляется на месте; mobile bottom sheet идёт снизу. */
.mc-cb-modal {
    --mc-cb-modal-closed-transform: translate3d(0, 0, 0);
    --mc-cb-modal-closed-opacity: 0;
    transition: display var(--mc-cb-motion-base) allow-discrete;
}

.mc-cb-modal__backdrop {
    opacity: 1;
    transition: opacity var(--mc-cb-motion-base) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1));
}

.mc-cb-modal__dialog {
    opacity: 1;
    transform: translate3d(0, 0, 0);
    transition:
        opacity var(--mc-cb-motion-base) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
        transform var(--mc-cb-motion-base) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1));
    will-change: transform, opacity;
}

.mc-cb-modal[hidden] {
    pointer-events: none;
}

.mc-cb-modal[hidden] .mc-cb-modal__backdrop {
    opacity: 0;
}

.mc-cb-modal[hidden] .mc-cb-modal__dialog {
    opacity: var(--mc-cb-modal-closed-opacity);
    transform: var(--mc-cb-modal-closed-transform);
}

@starting-style {
    .mc-cb-modal:not([hidden]) .mc-cb-modal__backdrop {
        opacity: 0;
    }

    .mc-cb-modal:not([hidden]) .mc-cb-modal__dialog {
        opacity: var(--mc-cb-modal-closed-opacity);
        transform: var(--mc-cb-modal-closed-transform);
    }
}

@media(max-width:767px) {
    .mc-cb-modal {
        --mc-cb-modal-closed-transform: translate3d(0, 100%, 0);
        --mc-cb-modal-closed-opacity: 1;
    }
}

/* Общий viewer остаётся центральной поверхностью и только плавно проявляется. */
.mc-cb-viewer {
    opacity: 1;
    transition:
        opacity var(--mc-cb-motion-base) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
        display var(--mc-cb-motion-base) allow-discrete;
}

.mc-cb-viewer[hidden] {
    pointer-events: none;
    opacity: 0;
}

@starting-style {
    .mc-cb-viewer:not([hidden]) {
        opacity: 0;
    }
}

/* Кнопочные action-menu: естественное раскрытие от верхней точки без сдвига. */
.mc-cb-action-menu--button>[data-mc-action-menu-panel] {
    clip-path: inset(-28px);
    transition:
        clip-path var(--mc-cb-motion-fast, 220ms) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
        display var(--mc-cb-motion-fast, 220ms) allow-discrete;
}

.mc-cb-action-menu--button>[data-mc-action-menu-panel][hidden] {
    clip-path: inset(0 0 100% 0);
}

@starting-style {
    .mc-cb-action-menu--button>[data-mc-action-menu-panel]:not([hidden]) {
        clip-path: inset(0 0 100% 0);
    }
}

@media(max-width:700px) {
    .mc-cb-action-menu--button>[data-mc-action-menu-panel][hidden] {
        clip-path: inset(100% 0 0 0);
    }

    @starting-style {
        .mc-cb-action-menu--button>[data-mc-action-menu-panel]:not([hidden]) {
            clip-path: inset(100% 0 0 0);
        }
    }
}

/* Нативные disclosure-блоки CABINET: плавная геометрия без JS-перехвата. */
@supports selector(details::details-content) and (interpolate-size:allow-keywords) {
    .mc-shell-page details {
        interpolate-size: allow-keywords;
    }

    .mc-shell-page details::details-content {
        block-size: 0;
        overflow: clip;
        transition:
            block-size var(--mc-cb-motion-drawer) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
            content-visibility var(--mc-cb-motion-drawer) allow-discrete;
    }

    .mc-shell-page details[open]::details-content {
        block-size: auto;
    }
}

/* Старый details action-menu сохраняет семантику details, но раскрывается плавно. */
@supports selector(details::details-content) {
    .mc-shell-page .mc-cb-action-menu::details-content {
        transition: content-visibility var(--mc-cb-motion-fast, 160ms) allow-discrete;
    }

    .mc-shell-page .mc-cb-action-menu>div {
        opacity: 0;
        clip-path: inset(0 0 100% 0);
        transition:
            opacity var(--mc-cb-motion-fast, 220ms) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
            clip-path var(--mc-cb-motion-fast, 220ms) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1));
    }

    .mc-shell-page .mc-cb-action-menu[open]>div {
        opacity: 1;
        clip-path: inset(-28px);
    }
}

@media(max-width:700px) {
    @supports selector(details::details-content) {
        .mc-shell-page .mc-cb-action-menu>div {
            clip-path: inset(100% 0 0 0);
        }

        .mc-shell-page .mc-cb-action-menu[open]>div {
            clip-path: inset(-28px);
        }
    }
}

@media(prefers-reduced-motion:reduce) {

    .mc-shell-car-switcher__panel,
    .mc-shell-car-switcher::before,
    .mc-shell-notifications__panel,
    .mc-shell-notifications::before,
    .mc-shell-drawer,
    .mc-shell-drawer__backdrop,
    .mc-shell-drawer__panel,
    .mc-cb-drawer,
    .mc-cb-drawer__backdrop,
    .mc-cb-drawer__panel,
    .mc-cb-modal,
    .mc-cb-modal__backdrop,
    .mc-cb-modal__dialog,
    .mc-cb-viewer,
    .mc-cb-action-menu--button>[data-mc-action-menu-panel],
    .mc-shell-page details::details-content,
    .mc-shell-page .mc-cb-action-menu>div {
        transition: none !important;
    }
}

/* -------------------- 03 — КАРКАС СТРАНИЦЫ И ОБЩИЕ ПРИМИТИВЫ -------------------- */
/* Page primitives */
.mc-cb-page {
    width: 100%;
    min-width: 0;
    color: var(--mc-cb-text);
}

.mc-cb-page-head {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-5);
    padding-left: 10px;
}

.mc-cb-breadcrumbs {
    display: flex;
    min-width: 0;
    margin: 0 0 10px;
    align-items: center;
    gap: var(--mc-cb-space-2);
    color: var(--mc-cb-text-muted);
    font-size: var(--mc-cb-font-base);
    white-space: nowrap;
}

.mc-cb-breadcrumbs__link {
    overflow: hidden;
    color: var(--mc-cb-text-secondary);
    text-decoration: none;
    text-overflow: ellipsis;
    transition: color .16s ease;
    background: #eaeaea;
    padding: 5px 10px;
    border-radius: 6px;
}

.mc-cb-breadcrumbs__link:hover {
    text-decoration: none;
    text-underline-offset: 3px;
}

.mc-cb-breadcrumbs__separator {
    flex: 0 0 auto;
    color: var(--mc-cb-text-muted);
}

.mc-cb-breadcrumbs__current {
    min-width: 0;
    overflow: hidden;
    color: var(--mc-cb-surface-graphite);
    text-overflow: ellipsis;
}

@media (max-width:640px) {
    .mc-cb-breadcrumbs {
        max-width: min(100%, 420px);
    }
}

.mc-cb-page-head__title {
    margin: 0;
    font-size: var(--mc-cb-font-xxl);
    font-weight: 600;
    letter-spacing: -.025em;
}

.mc-cb-page-head__subtitle {
    margin: 5px 0 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-base);
    line-height: 19px;
}

.mc-cb-section-head {
    display: flex;
    min-width: 0;
    margin-bottom: var(--mc-cb-space-3);
    align-items: flex-end;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
}

.mc-cb-section-head__eyebrow {
    display: block;
    margin-bottom: 2px;
    color: var(--mc-cb-text-muted);
    font-size: var(--mc-cb-font-sm);
    font-weight: 700;
    line-height: 15px;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.mc-cb-section-head__title {
    margin: 0;
    font-size: var(--mc-cb-font-lg);
    font-weight: 700;
    line-height: 24px;
    letter-spacing: -.015em;
}

.mc-cb-section-head__note {
    max-width: 620px;
    margin: 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    line-height: 16px;
    text-align: right;
}

/* Surfaces */
.mc-cb-card,
.mc-cb-panel {
    min-width: 0;
    border-radius: var(--mc-cb-radius);
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
}

.mc-cb-card-empty,
.mc-cb-panel-empty {
    min-width: 0;
    color: var(--mc-cb-text);
    padding: 0;
    background: none;
    border: 0;
    box-shadow: none;
}

.mc-cb-card-empty h2,
.mc-cb-panel-empty h2 {
    padding: 0 16px;
}

@media(min-width:1220px) {

    .mc-cb-card-empty h2,
    .mc-cb-panel-empty h2 {
        padding: 0;
    }

    .mc-cb-card-empty .mc-cb-card__head,
    .mc-cb-panel-empty .mc-cb-card__head {
        display: flex;
        min-width: 0;
        margin-top: 10px;
        align-items: center;
        justify-content: space-between;
        gap: var(--mc-cb-space-3);
    }
}

/* Карточки отступы */
.mc-cb-card--padding-sm {
    padding: var(--mc-cb-space-3);
    /* 12px */
}

.mc-cb-card--padding-base {
    padding: var(--mc-cb-space-4);
    /* 16px */
}

.mc-cb-card--padding-md {
    padding: var(--mc-cb-space-5);
    /* 20px */
}

.mc-cb-card--flat,
.mc-cb-panel--flat {
    box-shadow: none;
}

.mc-cb-card--muted,
.mc-cb-panel--muted {
    background: var(--mc-cb-surface-soft);
}

.mc-cb-card--dark,
.mc-cb-panel--dark {
    border-color: var(--mc-cb-border-dark);
    color: var(--mc-cb-text-on-dark);
    background: linear-gradient(145deg, #2a313c 0%, #0a0b0f 100%);
}

/* ========================================================================== */
/* DARK CARD LIST                                                             */
/* Компактные полупрозрачные строки внутри mc-cb-card--dark / panel--dark.   */
/* Используется общими функциональными тёмными блоками CABINET:               */
/* Dashboard «Центр внимания», Регламент и другими подходящими сценариями.    */
/* ========================================================================== */

body.mc-shell-page .mc-cb-card-dark-list {
    display: grid;
    min-width: 0;
    margin-top: 11px;
    gap: var(--mc-cb-space-2);
}

body.mc-shell-page .mc-cb-card-dark-list__item {
    display: grid;
    min-width: 0;
    min-height: 58px;
    padding: var(--mc-cb-space-2);
    box-sizing: border-box;
    align-items: center;
    grid-template-columns: 32px minmax(0, 1fr) auto;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-on-dark);
    background: rgba(255, 255, 255, .055);
    text-decoration: none;
}

/*
 * Строка может быть:
 * - обычным div/article с отдельным действием справа;
 * - самостоятельной ссылкой или кнопкой, если действие относится ко всей строке.
 */
body.mc-shell-page :is(a, button).mc-cb-card-dark-list__item {
    width: 100%;
    border: 0;
    font: inherit;
    text-align: left;
    cursor: pointer;
    transition: background-color .16s ease;
}

body.mc-shell-page :is(a, button).mc-cb-card-dark-list__item:hover {
    color: var(--mc-cb-text-on-dark);
    background: rgba(255, 255, 255, .085);
}

body.mc-shell-page :is(a, button).mc-cb-card-dark-list__item:focus-visible {
    outline: 2px solid rgba(255, 192, 1, .72);
    outline-offset: 2px;
}

/* Компактная смысловая иконка слева. */
body.mc-shell-page .mc-cb-card-dark-list__icon {
    display: grid;
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-yellow);
    background: rgba(255, 192, 1, .10);
}

body.mc-shell-page .mc-cb-card-dark-list__icon svg {
    width: 16px;
    height: 16px;
}

/* Основная текстовая область. */
body.mc-shell-page .mc-cb-card-dark-list__copy {
    min-width: 0;
}

body.mc-shell-page .mc-cb-card-dark-list__title,
body.mc-shell-page .mc-cb-card-dark-list__meta {
    display: block;
    min-width: 0;
    overflow: hidden;
    text-overflow: ellipsis;
}

body.mc-shell-page .mc-cb-card-dark-list__title {
    color: var(--mc-cb-text-on-dark);
    font-size: var(--mc-cb-font-base);
    font-weight: 600;
    line-height: 20px;
}

body.mc-shell-page .mc-cb-card-dark-list__meta {
    margin-top: var(--mc-cb-space-1);
    color: rgba(255, 255, 255, .58);
}

/*
 * Отдельное действие справа.
 * Базовый вариант рассчитан и на текст «Открыть», и на кнопку.
 */
body.mc-shell-page .mc-cb-card-dark-list__action {
    display: inline-grid;
    min-width: 90px;
    min-height: 44px;
    padding: 5px 8px;
    box-sizing: border-box;
    place-items: center;
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-on-dark);
    background: rgba(255, 255, 255, .09);
    font: inherit;
    text-decoration: none;
    text-align: center;
    cursor: pointer;
    transition: background-color .16s ease;
}

body.mc-shell-page .mc-cb-card-dark-list__action:hover {
    color: var(--mc-cb-text-on-dark);
    background: rgba(255, 255, 255, .14);
}

body.mc-shell-page .mc-cb-card-dark-list__action:focus-visible {
    outline: 2px solid rgba(255, 192, 1, .72);
    outline-offset: 2px;
}

/* Компактное действие только с иконкой, например стрелка перехода. */
body.mc-shell-page .mc-cb-card-dark-list__action--icon {
    width: 44px;
    min-width: 44px;
    padding: 0;
}

body.mc-shell-page .mc-cb-card-dark-list__action svg {
    width: 16px;
    height: 16px;
}

/* Общая поддержка hidden для динамически управляемых строк. */
body.mc-shell-page .mc-cb-card-dark-list[hidden],
body.mc-shell-page .mc-cb-card-dark-list__item[hidden] {
    display: none !important;
}

/* Смысловое состояние строки меняет только компактный визуальный акцент.
 * Сама тёмная строка сохраняет единую нейтральную поверхность.
 */

body.mc-shell-page .mc-cb-card-dark-list__item.is-success .mc-cb-card-dark-list__icon {
    color: var(--mc-cb-success);
    background: rgba(24, 168, 101, .16);
}

body.mc-shell-page .mc-cb-card-dark-list__item.is-warning .mc-cb-card-dark-list__icon {
    color: var(--mc-cb-warning);
    background: rgba(231, 168, 0, .18);
}

body.mc-shell-page .mc-cb-card-dark-list__item.is-danger .mc-cb-card-dark-list__icon {
    color: var(--mc-cb-danger);
    background: rgba(239, 84, 74, .18);
}

body.mc-shell-page .mc-cb-card-dark-list__item.is-neutral .mc-cb-card-dark-list__icon {
    color: rgba(255, 255, 255, .64);
    background: rgba(255, 255, 255, .08);
}

.mc-cb-card--accent,
.mc-cb-panel--accent {
    border: 0;
    color: var(--mc-cb-text);
    background: linear-gradient(135deg, #FFC001 0%, #FFD14A 58%, #FFBA00 100%);
}

/* Числовой счётчик внимания. */

body.mc-shell-page .mc-cb-count-badge {
    display: grid;
    min-width: 32px;
    height: 32px;
    padding: 0 8px;
    box-sizing: border-box;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: #FFF;
    background: var(--mc-cb-danger);
    font-size: var(--mc-cb-font-lg);
    line-height: 1;
    white-space: nowrap;
}

body.mc-shell-page .mc-cb-count-badge.is-danger {
    color: #FFF;
    background: var(--mc-cb-danger);
}

body.mc-shell-page .mc-cb-count-badge.is-warning {
    color: #17181A;
    background: var(--mc-cb-yellow);
}

.mc-cb-card__head {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    font-size: var(--mc-cb-font-md);
    font-weight: 500;

    gap: var(--mc-cb-space-3);
}

.mc-cb-card__title {
    margin: 0;
    font-size: var(--mc-cb-font-l);
    letter-spacing: -.02em;
    font-weight: 500;
}

.mc-cb-card__subtitle {
    margin: var(--mc-cb-space-2) 0 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-base);
    line-height: 16px;
}

.mc-cb-card__head a {
    color: var(--mc-link);
    text-decoration: none;
    display: inline-flex;
    gap: var(--mc-cb-space-1);
    font-size: var(--mc-cb-font-sm);
}

/* -------------------- 04 — КНОПКИ И ССЫЛКИ -------------------- */
/* Buttons and links — MemoCar Buttons UI Kit v1.0.
 * Canonical class: mc-cb-button. Legacy compatibility alias removed after full /local usage audit.
 */
body.mc-shell-page :is(.mc-cb-button) {
    -webkit-appearance: none;
    appearance: none;
    position: relative;
    display: inline-flex;
    min-width: 0;
    height: var(--mc-cb-button-height);
    min-height: var(--mc-cb-button-height);
    padding: 0 var(--mc-cb-button-padding-x);
    border: var(--mc-border);
    border-radius: var(--mc-cb-button-radius);
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: var(--mc-cb-button-gap);
    outline: 0;
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-button-font-size);
    font-weight: var(--mc-cb-button-font-weight);
    line-height: 1;
    text-align: center;
    text-decoration: none;
    cursor: pointer;
    user-select: none;
    vertical-align: middle;
    transition: color var(--mc-cb-button-transition), background-color var(--mc-cb-button-transition), border-color var(--mc-cb-button-transition), box-shadow var(--mc-cb-button-transition), transform var(--mc-cb-button-transition), opacity var(--mc-cb-button-transition);
}

body.mc-shell-page :is(.mc-cb-button)[hidden] {
    display: none !important;
}

body.mc-shell-page :is(.mc-cb-button):hover {
    color: var(--mc-cb-text);
    opacity: var(--mc-opacity);
}

body.mc-shell-page :is(.mc-cb-button):active {
    transform: translateY(0);
    transition-duration: 80ms;
}

body.mc-shell-page :is(.mc-cb-button):focus {
    outline: none
}

body.mc-shell-page :is(.mc-cb-button):focus-visible {
    box-shadow: var(--mc-cb-button-focus-ring);
}

body.mc-shell-page :is(.mc-cb-button)[disabled],
body.mc-shell-page :is(.mc-cb-button).is-disabled,
body.mc-shell-page :is(.mc-cb-button)[aria-disabled="true"] {
    opacity: .46;
    pointer-events: none;
    cursor: not-allowed;
    transform: none;
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-button)>svg,
body.mc-shell-page :is(.mc-cb-button) .mc-cb-button__icon {
    width: 18px;
    height: 18px;
    flex: 0 0 auto;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--primary {
    color: var(--mc-cb-surface-dark);
    background: var(--mc-cb-yellow);
    border-color: var(--mc-cb-yellow);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--primary:hover {
    color: var(--mc-cb-surface-dark);
    background: var(--mc-cb-button-primary-hover);
    border-color: var(--mc-cb-button-primary-hover);
    opacity: var(--mc-opacity);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--primary:active,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--primary.is-active {
    background: var(--mc-cb-button-primary-active);
    border-color: var(--mc-cb-button-primary-active);
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--secondary,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--dark {
    color: #FFF;
    background: var(--mc-cb-surface-graphite);
    border-color: var(--mc-cb-surface-graphite);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--secondary:active,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--secondary.is-active,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--dark:active,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--dark.is-active {
    background: var(--mc-cb-button-dark-active);
    border-color: var(--mc-cb-button-dark-active);
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--outline {
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
    border: 1px solid var(--mc-cb-text);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--ghost {
    color: var(--mc-cb-text-secondary);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--text {
    color: var(--mc-cb-button-primary-active);
    background: transparent;
    border-color: transparent;
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--text:active,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--text.is-active {
    background: #E8EAED;
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--danger {
    color: var(--mc-cb-button-danger);
    background: var(--mc-cb-surface);
    border: 1px solid var(--mc-cb-danger);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--danger:active,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--danger.is-active {
    color: var(--mc-cb-button-danger-active);
    background: #FFE5E7;
    border-color: var(--mc-cb-button-danger-active);
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--danger-filled {
    color: #FFF;
    background: var(--mc-cb-button-danger);
    border-color: var(--mc-cb-button-danger);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--danger-filled:active,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--danger-filled.is-active {
    background: var(--mc-cb-button-danger-active);
    border-color: var(--mc-cb-button-danger-active);
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--dark-outline {
    color: #FFF;
    background: transparent;
    border-color: rgba(255, 255, 255, .38);
}

/* Фирменная полупрозрачная кнопка для тёмных карточек с фотографией. */
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--glass {
    color: #FFF;
    background: rgba(255, 255, 255, .08);
    border-color: rgba(255, 255, 255, .24);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
    backdrop-filter: blur(10px);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--glass--red {
    color: #ff6969;
    background: rgb(255 46 46 / 8%);
    border-color: rgb(255 0 0 / 24%);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .05);
    backdrop-filter: blur(10px);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--compact {
    height: var(--mc-cb-button-height-compact);
    min-height: var(--mc-cb-button-height-compact);
    padding: 0 var(--mc-cb-button-padding-x-compact);
    border-radius: var(--mc-cb-button-radius-compact);
    gap: var(--mc-cb-space-2);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--compact>svg,
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--compact .mc-cb-button__icon {
    width: 15px;
    height: 15px;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--icon {
    width: var(--mc-cb-button-height);
    min-width: var(--mc-cb-button-height);
    padding: 0;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--icon.mc-cb-button--compact {
    width: var(--mc-cb-button-height-compact);
    min-width: var(--mc-cb-button-height-compact);
    padding: 0;
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--round {
    border-radius: 999px
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--block {
    display: flex;
    width: 100%
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--wide {
    min-width: 170px
}

body.mc-shell-page :is(.mc-cb-button)[aria-busy="true"] {
    pointer-events: none;
    cursor: progress;
    opacity: .68;
}

.mc-cb-garage__open {
    width: max-content;
    margin-top: 14px;
    margin-left: auto;
}

.mc-cb-button-group {
    display: inline-flex;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--mc-cb-space-2);
}

.mc-cb-link {
    color: var(--mc-cb-text-secondary);
    font: 600 var(--mc-cb-font-base)/18px Montserrat, Arial, sans-serif;
    text-decoration: none;
    transition: color var(--mc-cb-button-transition);
}

.mc-cb-link:hover {
    color: var(--mc-cb-text);
    text-decoration: underline;
    text-underline-offset: 3px
}

/* Небольшое текстовое действие внутри строки или карточки. */
body.mc-shell-page .mc-cb-action-link {
    display: inline-flex;
    min-height: 44px;
    padding: 5px 7px;
    align-items: center;
    justify-content: center;
    gap: var(--mc-cb-space-2);
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary);
    background: transparent;
    font: 600 var(--mc-cb-font-sm)/16px Montserrat, Arial, sans-serif;
    text-decoration: none;
    cursor: pointer;
    transition: color .18s ease, background-color .18s ease;
}

body.mc-shell-page .mc-cb-action-link:hover {
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface-muted);
}

body.mc-shell-page .mc-cb-action-link:focus-visible {
    outline: 0;
    box-shadow: var(--mc-cb-button-focus-ring);
}

body.mc-shell-page .mc-cb-action-link:disabled {
    opacity: .46;
    pointer-events: none;
}

/* Закреплённая панель действий большой формы. */
body.mc-shell-page .mc-cb-sticky-actions {
    position: sticky;
    z-index: 8;
    bottom: 0;
    display: flex;
    width: 100%;
    min-height: 68px;
    margin-top: 0;
    padding: var(--mc-cb-space-6);
    align-items: center;
    justify-content: flex-start;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius);
    -webkit-backdrop-filter: blur(12px);
    backdrop-filter: blur(12px);
}

/* На узком экране действия не перекрывают нижнее меню CABINET/PWA. */
@media (max-width: 760px) {
    body.mc-shell-page .mc-cb-sticky-actions {
        position: static;
        min-height: 0;
        padding-top: 0;
        border-top: 0;
        background: transparent;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
    }
}

/* -------------------- 05 — ФОРМЫ И ПОЛЯ -------------------- */
/* Form controls */
body.mc-shell-page :is(.mc-cb-field, .mc-cb-select, .mc-cb-textarea) {
    width: 100%;
    min-height: var(--mc-cb-control-height);
    box-sizing: border-box;
    border: 1px solid var(--mc-cb-border);
    border-radius: var(--mc-cb-radius-sm);
    outline: none;
    color: var(--mc-cb-text);
    background: #FFF;
}

body.mc-shell-page :is(.mc-cb-field, .mc-cb-select) {
    padding: 0 14px;
}

body.mc-shell-page .mc-cb-textarea {
    min-height: 112px;
    padding: 12px 14px;
    resize: vertical;
}

body.mc-shell-page :is(.mc-cb-field, .mc-cb-select, .mc-cb-textarea):focus {
    border-color: rgba(255, 192, 1, .9);
    box-shadow: 0 0 0 3px rgba(255, 192, 1, .16);
}

body.mc-shell-page :is(.mc-cb-field, .mc-cb-textarea)::placeholder {
    color: var(--mc-cb-text-muted);
    opacity: var(--ui-opacity-60);
}

body.mc-shell-page :is(.mc-cb-field, .mc-cb-select, .mc-cb-textarea):disabled {
    color: var(--mc-cb-text-muted);
    background: var(--mc-cb-surface-muted);
    cursor: not-allowed;
}

/* Общая обёртка поля: подпись, обязательность и поясняющий текст. */

body.mc-shell-page fieldset.mc-cb-form-field {
    display: block;
    min-width: 0;
    min-inline-size: 0;
    margin: 0;
    padding: 0;
    border: 0;
}

body.mc-shell-page fieldset.mc-cb-form-field>legend {
    width: 100%;
    margin: 0;
    padding: 0;
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-md);
    font-style: normal;
    font-weight: 500;
    line-height: 1.35;
}

body.mc-shell-page fieldset.mc-cb-form-field>legend i {
    color: var(--mc-cb-danger);
    font-style: normal;
}

body.mc-shell-page .mc-cb-form-field>span,
body.mc-shell-page .mc-cb-form-field>legend {
    display: block;
    width: 100%;
    margin: 0 0 var(--mc-cb-space-2) var(--mc-cb-space-2);
    padding: 0;
    font-style: normal;
    font-weight: 500;
    font-size: var(--mc-cb-font-md);
}

body.mc-shell-page .mc-cb-form-field>span i,
body.mc-shell-page .mc-cb-form-field>legend i {
    color: var(--mc-cb-danger);
    font-style: normal;
}

body.mc-shell-page .mc-cb-form-field>small {
    display: block;
    margin: var(--mc-cb-space-1) 0 0 var(--mc-cb-space-4);
    font-size: var(--mc-cb-font-sm);
}

:is(.mc-cb-field, .mc-cb-select, .mc-cb-textarea).is-invalid,
body.mc-shell-page :is(.mc-cb-field, .mc-cb-select, .mc-cb-textarea)[aria-invalid="true"] {
    border-color: var(--mc-cb-danger);
    box-shadow: 0 0 0 3px rgba(239, 84, 74, .12);
}

/* MEMOCAR_COMMON_FILTER_FIELDS_94_3_31_3
 * Единые подписи и элементы фильтров для списочных разделов кабинета.
 */
.mc-cb-filter-bar {
    display: flex;
    min-width: 0;
    align-items: flex-end;
    gap: var(--mc-cb-space-3, 12px);
}

.mc-cb-filter-field {
    display: grid;
    min-width: 0;
    gap: 6px;
}

.mc-cb-filter-field__label {
    display: block;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-sm);
    font-weight: 500;
    line-height: 16px;
}

.mc-cb-filter-field>.mc-cb-select,
.mc-cb-filter-field>select {
    width: 100%;
    min-height: var(--mc-cb-control-height, 44px);
    padding-right: 38px;
    cursor: pointer;
}

/* Общее поле с неинтерактивным текстовым суффиксом: ₽, км и т. п. */
body.mc-shell-page .mc-cb-field-suffix {
    position: relative;
    min-width: 0;
}

body.mc-shell-page .mc-cb-field-suffix>.mc-cb-field {
    padding-right: 72px;
}

body.mc-shell-page .mc-cb-field-suffix__text {
    position: absolute;
    top: 50%;
    right: var(--mc-cb-space-4);
    transform: translateY(-50%);
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    font-weight: 600;
    pointer-events: none;
}

/* Общая поверхность фильтров списочных разделов CABINET.
 * Компоновка колонок может задаваться локально страницей, а визуальный контракт
 * панели, поиска и группы действий остаётся общим.
 */

.mc-cb-filter-search {
    min-width: 0;
}

.mc-cb-filter-search__control {
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: var(--mc-cb-control-height, 44px);
    grid-template-columns: 20px minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--mc-cb-space-2);
    padding: 0 0 0 var(--mc-cb-space-3);
    box-sizing: border-box;
    border-radius: var(--mc-cb-radius-sm, 12px);
    border: 1px solid var(--mc-cb-border);
}

.mc-cb-filter-search__control>svg {
    width: 19px;
    height: 19px;
    color: var(--mc-cb-text-muted, #858C96);
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-filter-search__control>input[type="search"] {
    width: 100%;
    min-width: 0;
    height: 40px;
    padding: 0;
    border: 0;
    outline: 0;
    color: var(--mc-cb-text, #17181A);
    background: transparent;
    font: 500 var(--mc-cb-font-sm)/18px Montserrat, Arial, sans-serif;
    box-shadow: none;
}

.mc-cb-filter-search__control>input[type="search"]:focus {
    border: 0;
    box-shadow: none;
}

.mc-cb-filter-search__control>input[type="search"]::-webkit-search-cancel-button {
    display: none;
}

.mc-cb-filter-search__clear {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-muted, #7D848E);
}

.mc-cb-filter-search__clear:hover {
    background: var(--mc-cb-surface-muted, #F1F2F4);
}

.mc-cb-filter-search__clear svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
}

.mc-cb-filter-search__control>.mc-cb-button {
    min-height: var(--mc-cb-control-height, 44px);
}

.mc-cb-filter-actions {
    display: flex;
    min-width: 0;
    align-items: flex-end;
    justify-content: flex-end;
    gap: var(--mc-cb-space-2);
}

.mc-cb-check {
    display: inline-flex;
    align-items: flex-start;
    gap: var(--mc-cb-space-2);
    line-height: 16px;
    padding: 0 var(--mc-cb-space-3);
}

.mc-cb-check input {
    width: 16px;
    height: 16px;
    margin: 0;
    flex: 0 0 16px;
    accent-color: var(--mc-cb-yellow);
}

@media (max-width: 767px) {
    .mc-cb-filter-actions {
        display: grid;
        width: 100%;
        grid-template-columns: repeat(2, minmax(0, 1fr));
    }

    .mc-cb-filter-actions>.mc-cb-button {
        width: 100%;
        min-width: 0;
    }
}

@media (max-width: 430px) {
    .mc-cb-filter-actions {
        grid-template-columns: minmax(0, 1fr);
    }
}

/* Общая раскрывающаяся панель фильтров CABINET */

body.mc-shell-page .mc-cb-filter-disclosure>summary {
    cursor: pointer;
    list-style: none;
}

body.mc-shell-page .mc-cb-filter-disclosure>summary::-webkit-details-marker {
    display: none;
}

body.mc-shell-page .mc-cb-filter-disclosure[open]>form {
    margin-top: var(--mc-cb-space-3);
}

body.mc-shell-page .mc-cb-filter-disclosure[open]>summary>.mc-cb-inline-icon {
    transform: rotate(180deg);
}

/* Служебная строка списочных разделов:
 * количество найденных элементов + управление размером порции.
 */
body.mc-shell-page .mc-cb-list-meta {
    display: flex;
    min-width: 0;
    min-height: 24px;
    margin-bottom: var(--mc-cb-space-4, 16px);
    padding: 0 20px;
    align-items: center;
    justify-content: flex-start;
    flex-wrap: wrap;
    gap: var(--mc-cb-space-4, 16px);
    color: var(--mc-cb-text-secondary, #6D727B);
    line-height: 16px;
}

body.mc-shell-page .mc-cb-list-meta__count {
    min-width: 0;
}

body.mc-shell-page .mc-cb-list-meta__page-size {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: var(--mc-cb-space-2);
    white-space: nowrap;
}

body.mc-shell-page .mc-cb-list-meta__page-size>.mc-cb-select {
    width: 76px;
    min-width: 76px;
    min-height: 36px;
    padding-top: 0;
    padding-bottom: 0;
}

@media (max-width: 480px) {
    body.mc-shell-page .mc-cb-list-meta {
        align-items: stretch;
        flex-direction: column;
        gap: var(--mc-cb-space-2);
    }

    body.mc-shell-page .mc-cb-list-meta__page-size {
        justify-content: space-between;
    }

    body.mc-shell-page .mc-cb-list-meta__page-size>.mc-cb-select {
        width: 96px;
        min-width: 96px;
    }
}

/* -------------------- 06 — СТАТУСЫ И БЕЙДЖИ -------------------- */
/* Statuses, badges and chips.
 * body.mc-shell-page raises specificity above legacy component selectors,
 * so adding a canonical class always produces the same visual result.
 */
body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status) {
    display: inline-flex;
    min-height: 24px;
    padding: 3px 9px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 1px solid transparent;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg);
    font-size: var(--mc-cb-font-sm);
    font-style: normal;
    font-weight: 500;
    line-height: 16px;
    white-space: nowrap;
}

body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status) svg {
    width: 14px;
    height: 14px;
    flex: 0 0 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.mc-shell-page :is(.mc-cb-badge--neutral, .mc-cb-status--neutral) {
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg);
}

body.mc-shell-page :is(.mc-cb-badge--success, .mc-cb-status--success) {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg);
}

body.mc-shell-page :is(.mc-cb-badge--danger, .mc-cb-status--danger) {
    color: var(--mc-cb-badge-danger-text);
    background: var(--mc-cb-badge-danger-bg);
}

body.mc-shell-page :is(.mc-cb-badge--warning, .mc-cb-status--warning) {
    color: var(--mc-cb-badge-warning-text);
    background: var(--mc-cb-badge-warning-bg);
}

body.mc-shell-page :is(.mc-cb-badge--info, .mc-cb-status--info) {
    color: var(--mc-cb-badge-info-text);
    background: var(--mc-cb-badge-info-bg);
}

body.mc-shell-page :is(.mc-cb-badge--violet, .mc-cb-status--violet) {
    color: var(--mc-cb-badge-violet-text);
    background: var(--mc-cb-badge-violet-bg);
}

body.mc-shell-page :is(.mc-cb-badge--accent, .mc-cb-status--accent) {
    color: var(--mc-cb-badge-accent-text);
    background: var(--mc-cb-badge-accent-bg);
}

body.mc-shell-page :is(.mc-cb-badge--dark, .mc-cb-status--dark) {
    color: var(--mc-cb-yellow);
    background: rgba(255, 192, 1, .11);
}

body.mc-shell-page :is(.mc-cb-badge--outline, .mc-cb-status--outline) {
    border-color: var(--mc-cb-border);
    color: var(--mc-cb-text-secondary);
    background: transparent;
}

body.mc-shell-page :is(.mc-cb-badge--on-dark, .mc-cb-status--on-dark) {
    border-color: rgba(255, 255, 255, .12);
    color: #FFF;
    background: rgba(255, 255, 255, .10);
    backdrop-filter: blur(8px);
}

body.mc-shell-page :is(.mc-cb-badge--on-dark.mc-cb-badge--success, .mc-cb-status--on-dark.mc-cb-status--success) {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg);
    border-radius: 6px;
    box-shadow: none;
}

body.mc-shell-page :is(.mc-cb-badge--on-dark.mc-cb-badge--warning, .mc-cb-status--on-dark.mc-cb-status--warning) {
    border-color: rgba(255, 217, 120, .16);
    color: #FFD978;
    background: rgba(231, 168, 0, .18);
}

body.mc-shell-page :is(.mc-cb-badge--on-dark.mc-cb-badge--danger, .mc-cb-status--on-dark.mc-cb-status--danger) {
    border-color: rgba(255, 132, 123, .16);
    color: #FF847B;
    background: rgba(239, 84, 74, .18);
}

body.mc-shell-page :is(.mc-cb-badge--on-dark.mc-cb-badge--info, .mc-cb-status--on-dark.mc-cb-status--info) {
    border-color: rgba(157, 180, 255, .16);
    color: #B6C6FF;
    background: rgba(79, 120, 232, .20);
}

body.mc-shell-page :is(.mc-cb-badge--on-dark.mc-cb-badge--violet, .mc-cb-status--on-dark.mc-cb-status--violet) {
    border-color: rgba(199, 184, 255, .16);
    color: #D2C5FF;
    background: rgba(124, 88, 232, .22);
}

body.mc-shell-page :is(.mc-cb-badge--compact, .mc-cb-status--compact) {
    min-height: 22px;
    padding: 2px 8px;
}

/* Совместимые смысловые состояния рабочих процессов.
 * Они применяются только вместе с mc-cb-badge/mc-cb-status.
 */
body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status):not(.mc-cb-badge--on-dark):not(.mc-cb-status--on-dark):is(.is-active, .is-success, .is-paid, .is-succeeded, .is-partial_refund, .is-fulfilled, .is-completed, .is-accepted, .is-ready, .is-read, .is-connected, .is-valid, .is-resolved) {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg);
}

body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status):not(.mc-cb-badge--on-dark):not(.mc-cb-status--on-dark):is(.is-pending, .is-waiting, .is-waiting-payment, .is-waiting_for_capture, .is-waiting_user, .is-processing, .is-creating, .is-awaiting, .is-new, .is-attention, .is-refund_blocked) {
    color: var(--mc-cb-badge-warning-text);
    background: var(--mc-cb-badge-warning-bg);
}

body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status):not(.mc-cb-badge--on-dark):not(.mc-cb-status--on-dark):is(.is-error, .is-failed, .is-overdue, .is-declined, .is-expired, .is-abandoned) {
    color: var(--mc-cb-badge-danger-text);
    background: var(--mc-cb-badge-danger-bg);
}

body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status):not(.mc-cb-badge--on-dark):not(.mc-cb-status--on-dark):is(.is-disabled, .is-muted, .is-cancelled, .is-canceled, .is-revoked, .is-archived, .is-withdrawn, .is-closed, .is-refunded) {
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg);
}

body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status):is(.is-info, .is-in_progress) {
    color: var(--mc-cb-badge-info-text);
    background: var(--mc-cb-badge-info-bg);
}

body.mc-shell-page :is(.mc-cb-badge--on-dark, .mc-cb-status--on-dark):is(.is-active, .is-success, .is-valid, .is-ready) {
    border-color: rgba(100, 228, 156, .16);
    color: #64E49C;
    background: rgba(21, 146, 89, .17);
}

body.mc-shell-page :is(.mc-cb-badge--on-dark, .mc-cb-status--on-dark):is(.is-warning, .is-expiring, .is-pending) {
    border-color: rgba(255, 217, 120, .16);
    color: #FFD978;
    background: rgba(231, 168, 0, .18);
}

body.mc-shell-page :is(.mc-cb-badge--on-dark, .mc-cb-status--on-dark):is(.is-danger, .is-error, .is-expired, .is-overdue) {
    border-color: rgba(255, 132, 123, .16);
    color: #FF847B;
    background: rgba(239, 84, 74, .18);
}

body.mc-shell-page :is(.mc-cb-badge, .mc-cb-status) .mc-cb-badge__dot {
    width: 6px;
    height: 6px;
    flex: 0 0 6px;
    border-radius: 50%;
    background: currentColor;
}

/* Компактная отметка источника записи. */
body.mc-shell-page .mc-cb-source-mark {
    display: inline-grid;
    width: 24px;
    height: 24px;
    min-width: 24px;
    padding: 0;
    place-items: center;
    border: 1px solid transparent;
    border-radius: var(--mc-cb-radius-pill);
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg);
    font-style: normal;
    line-height: 1;
    vertical-align: middle;
}

body.mc-shell-page .mc-cb-source-mark svg {
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.mc-shell-page .mc-cb-source-mark.is-ai {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg)
}

body.mc-shell-page .mc-cb-source-mark.is-manual {
    color: var(--mc-cb-badge-info-text);
    background: var(--mc-cb-badge-info-bg)
}

body.mc-shell-page .mc-cb-source-mark.is-file {
    color: var(--mc-cb-badge-violet-text);
    background: var(--mc-cb-badge-violet-bg)
}

body.mc-shell-page .mc-cb-source-mark--on-dark {
    border-color: rgba(255, 255, 255, .12);
    color: #FFF;
    background: rgba(255, 255, 255, .10);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px)
}

body.mc-shell-page .mc-cb-source-mark[data-hint] {
    cursor: help
}

body.mc-shell-page .mc-cb-chip {
    display: inline-flex;
    min-height: 30px;
    padding: 5px 11px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: var(--mc-cb-space-2);
    border: 1px solid transparent;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg);
    font-weight: 500;

    white-space: nowrap;
}

body.mc-shell-page .mc-cb-chip--accent {
    color: var(--mc-cb-surface-dark);
    background: var(--mc-cb-yellow)
}

body.mc-shell-page .mc-cb-chip--neutral {
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg)
}

body.mc-shell-page .mc-cb-chip--success {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg)
}

body.mc-shell-page .mc-cb-chip--warning {
    color: var(--mc-cb-badge-warning-text);
    background: var(--mc-cb-badge-warning-bg)
}

body.mc-shell-page .mc-cb-chip--danger {
    color: var(--mc-cb-badge-danger-text);
    background: var(--mc-cb-badge-danger-bg)
}

body.mc-shell-page .mc-cb-chip--info {
    color: var(--mc-cb-badge-info-text);
    background: var(--mc-cb-badge-info-bg)
}

body.mc-shell-page .mc-cb-chip--violet {
    color: var(--mc-cb-badge-violet-text);
    background: var(--mc-cb-badge-violet-bg)
}

.mc-cb-icon {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: #17181A;
    background: #F1F2F4;
}

.mc-cb-icon--yellow {
    color: #7B5900;
    background: rgba(255, 192, 1, .18)
}

.mc-cb-icon--green {
    color: #168857;
    background: rgba(24, 168, 101, .12)
}

.mc-cb-icon--red {
    color: #D44A42;
    background: rgba(239, 84, 74, .11)
}

.mc-cb-icon--blue {
    color: #4F6FE1;
    background: rgba(79, 120, 232, .11)
}

.mc-cb-icon--violet {
    color: #7956E8;
    background: rgba(121, 86, 232, .11)
}

.mc-cb-icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-smart__examples {
    position: relative;
    z-index: 2;
    display: flex;
    gap: var(--mc-cb-space-2);
    overflow: hidden;
}

.mc-smart__examples span {
    display: block;
    min-width: fit-content;
    padding: 7px 9px;
    border-radius: var(--mc-cb-radius-xs);
    background: rgba(255, 255, 255, .48);
    font-size: var(--mc-cb-font-sm);
}

/* -------------------- 07 — СПИСКИ, ВКЛАДКИ И ТАБЛИЦЫ -------------------- */
/* Reusable rows, progress, tabs and tables */
.mc-cb-row {
    display: grid;
    min-width: 0;
    align-items: center;
    gap: var(--mc-cb-radius-xs);
}

.mc-cb-row:last-child {
    border-bottom: 0;
}

.mc-cb-progress {
    height: 5px;
    overflow: hidden;
    border-radius: var(--mc-cb-radius-xs);
    background: var(--mc-cb-progress-track, #E8E9EB);
}

.mc-cb-progress>span {
    display: block;
    height: 100%;
    border-radius: inherit;
    background: var(--mc-cb-progress-fill, var(--mc-cb-yellow));
}

.mc-cb-progress--gradient {
    --mc-cb-progress-fill: linear-gradient(90deg, var(--mc-cb-yellow), #FFD85D);
}

/* Общий сегментированный прогресс CABINET: 20 частей, тон задаёт предметная логика. */
.mc-cb-progress--segmented {
    display: grid;
    grid-template-columns: repeat(20, minmax(0, 1fr));
    gap: 3px;
    height: 6px;
    overflow: visible;
    border-radius: 0;
    background: transparent;
}

.mc-cb-progress--segmented>span {
    display: block;
    min-width: 0;
    height: 6px;
    border-radius: 3px;
    background: var(--mc-cb-progress-track, #e4e4e4);
}

.mc-cb-progress--segmented>span.is-filled {
    background: var(--mc-cb-progress-tone, var(--mc-cb-yellow));
}

.mc-cb-progress--segmented>span.is-partial {
    background: linear-gradient(to right,
            var(--mc-cb-progress-tone, var(--mc-cb-yellow)) var(--mc-cb-progress-partial, 0%),
            var(--mc-cb-progress-track, #e4e4e4) 0);
}

.mc-cb-progress--success {
    --mc-cb-progress-tone: var(--mc-cb-success);
}

.mc-cb-progress--warning {
    --mc-cb-progress-tone: var(--mc-cb-warning);
}

.mc-cb-progress--danger {
    --mc-cb-progress-tone: var(--mc-cb-danger);
}

.mc-cb-progress--neutral {
    --mc-cb-progress-tone: var(--mc-cb-text-muted);
}

.mc-cb-tabs button,
.mc-cb-tabs a {
    min-height: 44px;
    padding: 5px 9px;
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary);
    background: transparent;
    font: 650 var(--mc-cb-font-sm)/16px Montserrat, Arial, sans-serif;
    cursor: pointer;
    text-decoration: none;
}

.mc-cb-tabs button.is-active,
.mc-cb-tabs a.is-active {
    color: var(--mc-cb-text);
    background: #FFF;
    box-shadow: 0 2px 8px rgba(19, 22, 28, .08);
}

/* -------------------- 08 — СОСТОЯНИЯ И ПУСТЫЕ ЭКРАНЫ -------------------- */
/* Feedback and empty states */
body.mc-shell-page .mc-cb-alert {
    --mc-cb-alert-accent: var(--mc-cb-info);
    display: flex;
    min-height: 48px;
    padding: 12px 14px;
    align-items: center;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius-sm);
    color: #3157C8;
    background: rgba(79, 120, 232, .08);
}

body.mc-shell-page .mc-cb-alert[hidden] {
    display: none !important;
}

body.mc-shell-page .mc-cb-alert--info {
    --mc-cb-alert-accent: var(--mc-cb-info);
    color: #3157C8;
    background: rgba(79, 120, 232, .08);
}

body.mc-shell-page .mc-cb-alert--success {
    --mc-cb-alert-accent: var(--mc-cb-success);
    color: #087643;
    background: rgba(24, 168, 101, .08);
}

body.mc-shell-page .mc-cb-alert--warning {
    --mc-cb-alert-accent: var(--mc-cb-warning);
    color: #805D00;
    background: rgba(255, 192, 1, .10);
}

body.mc-shell-page .mc-cb-alert--danger {
    --mc-cb-alert-accent: var(--mc-cb-danger);
    color: var(--mc-cb-danger);
    background: rgba(239, 84, 74, .08);
}

body.mc-shell-page .mc-cb-alert--neutral {
    --mc-cb-alert-accent: var(--mc-cb-danger);
    color: var(--mc-cb-danger);
    background: rgba(239, 84, 74, .08);
}

/* Чат-облако ИИ-агента */

.mc-cb-agent-message {
    display: grid;
    grid-template-columns: 44px minmax(0, 1fr);
    align-items: start;
    gap: var(--mc-cb-space-3);
    max-width: 100%;
}

.mc-cb-agent-message[hidden] {
    display: none;
}

.mc-cb-agent-message__avatar {
    display: grid;
    place-items: center;
    box-sizing: border-box;
    width: 44px;
    height: 44px;
    overflow: hidden;
    border: 2px solid rgba(255, 255, 255, .9);
    border-radius: 50%;
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
    box-shadow: 0 2px 8px rgba(23, 24, 26, .09);
}

.mc-cb-agent-message__avatar img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mc-cb-agent-message__avatar svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-agent-message__content {
    position: relative;
    min-width: 0;
    max-width: 100%;
    margin-bottom: 10px;
}

.mc-cb-agent-message__tail {
    position: absolute;
    z-index: 0;
    top: 7px;
    left: -12px;
    width: 20px;
    height: 22px;
    color: var(--mc-cb-surface);
    fill: currentColor;
    stroke: none;
    pointer-events: none;
}

/* Без личного имени первая строка начинается там же, где облачко имени.
   Хвостик остаётся у края аватара и не перекрывает его. */
.mc-cb-agent-message__content--no-name .mc-cb-agent-message__lines {
    box-sizing: border-box;
    padding-left: 11px;
}

@media (max-width: 420px) {
    .mc-cb-agent-message__content--no-name .mc-cb-agent-message__lines {
        padding-left: 9px;
    }
}

.mc-cb-agent-message__name {
    position: relative;
    z-index: 1;
    display: table;
    box-sizing: border-box;
    max-width: 100%;
    padding: 5px 12px;
    border-radius: 14px 18px 18px 6px;
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
    font-size: var(--mc-cb-font-base);
    font-weight: 700;
    line-height: 20px;
    overflow-wrap: anywhere;
}

.mc-cb-agent-message__lines {
    position: relative;
    z-index: 1;
    min-width: 0;
    max-width: 100%;
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-base);
    line-height: 1.75;
    overflow-wrap: anywhere;
}

.mc-cb-agent-message__text {
    display: inline;
    padding: 5px 12px;
    border-radius: 18px;
    color: inherit;
    background: var(--mc-cb-surface);
    white-space: pre-wrap;
    overflow-wrap: anywhere;
    -webkit-box-decoration-break: clone;
    box-decoration-break: clone;
    box-shadow: var(--mc-cb-shadow-raised);
}

@media (max-width: 420px) {
    .mc-cb-agent-message {
        grid-template-columns: 40px minmax(0, 1fr);
        gap: var(--mc-cb-radius-xs);
    }

    .mc-cb-agent-message__avatar {
        width: 40px;
        height: 40px;
    }

    .mc-cb-agent-message__name {
        padding: 5px 10px;
    }

    .mc-cb-agent-message__text {
        padding: 3px 9px;
    }
}


/*
 * Широкое контекстное уведомление CABINET.
 * Используется сразу под шапкой страницы для режима read-only, семейного доступа,
 * ограничений тарифа и других устойчивых состояний страницы.
 * Компактный .mc-cb-alert остаётся отдельным вариантом для ошибок форм и локальных подсказок.
 */
body.mc-shell-page .mc-cb-alert--banner {
    display: grid;
    min-height: 74px;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
    padding: 25px 20px;
    border-radius: var(--mc-cb-radius);
    line-height: 20px;
}

body.mc-shell-page .mc-cb-alert__icon {
    display: grid;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    place-items: center;
    border-radius: 50%;
    color: var(--mc-cb-alert-accent);
}

body.mc-shell-page .mc-cb-alert__icon svg {
    width: 42px;
    height: 42px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.mc-shell-page .mc-cb-alert__body {
    display: grid;
    min-width: 0;
    gap: 3px;
}

body.mc-shell-page .mc-cb-alert__title {
    display: block;
    margin: 0;
    font-size: var(--mc-cb-font-l);
    letter-spacing: -.02em;
    font-weight: 500;
    line-height: 20px;
}

body.mc-shell-page .mc-cb-alert__text {
    display: block;
    margin: 0;
    font-size: var(--mc-cb-font-base);
}

body.mc-shell-page .mc-cb-alert__meta {
    display: block;
    min-height: 17px;
    margin: 0;
    font-size: var(--mc-cb-font-xs);
}

body.mc-shell-page .mc-cb-alert__actions {
    display: flex;
    min-width: max-content;
    align-items: center;
    justify-content: flex-end;
    gap: var(--mc-cb-space-2);
}

body.mc-shell-page .mc-cb-alert__actions .mc-cb-button {
    justify-content: center;
}

@media(max-width:640px) {
    body.mc-shell-page .mc-cb-alert--banner {
        min-height: 0;
        grid-template-columns: 42px minmax(0, 1fr);
        align-items: start;
        gap: var(--mc-cb-space-3);
        padding: 14px;
    }

    body.mc-shell-page .mc-cb-alert__icon {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
    }

    body.mc-shell-page .mc-cb-alert__icon svg {
        width: 42px;
        height: 42px;
    }

    body.mc-shell-page .mc-cb-alert__actions {
        grid-column: 1 / -1;
        width: 100%;
        min-width: 0;
        justify-content: stretch;
    }

    body.mc-shell-page .mc-cb-alert__actions .mc-cb-button {
        width: 100%;
    }
}

.mc-cb-empty {
    display: flex;
    min-height: 104px;
    padding: var(--mc-cb-space-5);
    align-items: center;
    justify-content: center;
    flex-direction: column;
    text-align: center;
    gap: var(--mc-cb-space-3);
}

.mc-cb-empty strong,
.mc-cb-empty h2 {
    margin: 0;
    font-size: var(--mc-cb-font-l);
    letter-spacing: -.02em;
    font-weight: 500;
}

.mc-cb-empty p {
    max-width: 420px;
    margin: 4px 0 0;
}

.mc-cb-empty--compact {
    min-height: 150px;
    padding: 24px 18px;
}

.mc-cb-empty--page {
    min-height: 260px;
    padding: 36px 24px;
}

.mc-cb-empty--plain {
    background: transparent;
}

/* Единое пустое состояние «Добавьте автомобиль». */
.mc-cb-vehicle-empty {
    overflow: hidden;
    min-height: 0;
    padding: 0;
    border-radius: 28px;
    box-shadow: none;
    text-align: left;
}

.mc-cb-vehicle-empty__hero {
    display: grid;
    min-height: 450px;
    padding: 48px 50px 30px;
    grid-template-columns: minmax(360px, .86fr) minmax(460px, 1.14fr);
    align-items: center;
    gap: 34px;
}

.mc-cb-vehicle-empty__content {
    position: relative;
    z-index: 1;
    display: flex;
    min-width: 0;
    max-width: 570px;
    flex-direction: column;
    align-items: flex-start;
}

.mc-cb-vehicle-empty__eyebrow {
    margin: 0 0 18px;
    color: var(--mc-cb-yellow);
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
}

.mc-cb-vehicle-empty__title {
    display: flex;
    margin: 0;
    flex-direction: column;
    color: var(--mc-cb-text);
    font-size: clamp(42px, 4vw, 62px);
    font-weight: 800;
    line-height: .98;
    letter-spacing: -.045em;
}

.mc-cb-vehicle-empty__title-accent {
    margin-top: 6px;
    color: var(--mc-cb-yellow);
}

.mc-cb-vehicle-empty__text {
    max-width: 520px;
    margin: 28px 0 0;
    color: var(--mc-cb-text-secondary);
    font-size: 16px;
    line-height: 1.6;
}

.mc-cb-vehicle-empty__action {
    min-width: 250px;
    height: 54px;
    min-height: 54px;
    margin-top: 32px;
    padding-inline: 24px;
    border-radius: var(--mc-cb-radius-sm);
    font-size: 15px;
}

.mc-cb-vehicle-empty__action svg {
    width: 20px;
    height: 20px;
}

.mc-cb-vehicle-empty__media {
    display: flex;
    min-width: 0;
    min-height: 360px;
    align-items: center;
    justify-content: center;
}

.mc-cb-vehicle-empty__image {
    display: block;
    width: 100%;
    max-width: 760px;
    max-height: 430px;
    object-fit: contain;
}

.mc-cb-vehicle-empty.is-visual-missing .mc-cb-vehicle-empty__hero {
    grid-template-columns: minmax(0, 680px);
    justify-content: center;
}

.mc-cb-vehicle-empty.is-visual-missing .mc-cb-vehicle-empty__content {
    max-width: 680px;
    align-items: center;
    text-align: center;
}

.mc-cb-vehicle-empty__benefits {
    display: grid;
    margin: 0 28px 28px;
    padding: 18px 16px;
    border: 1px solid rgba(23, 24, 26, .045);
    border-radius: 18px;
    grid-template-columns: repeat(5, minmax(0, 1fr));
    list-style: none;
    background: rgba(255, 255, 255, .88);
    box-shadow: 0 8px 24px rgba(19, 22, 28, .035);
}

.mc-cb-vehicle-empty__benefit {
    display: flex;
    min-width: 0;
    min-height: 54px;
    padding: 4px 18px;
    align-items: center;
    gap: var(--mc-cb-space-3);
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
}

.mc-cb-vehicle-empty__benefit+.mc-cb-vehicle-empty__benefit {
    border-left: 1px solid rgba(23, 24, 26, .055);
}

.mc-cb-vehicle-empty__benefit-icon {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    color: var(--mc-cb-yellow);
}

.mc-cb-vehicle-empty__benefit-icon svg {
    width: 28px;
    height: 28px;
    fill: none;
    stroke: var(--mc-cb-yellow);
    stroke-width: 1.35;
}

@media(max-width:1240px) {
    .mc-cb-vehicle-empty__hero {
        min-height: 410px;
        padding: 40px 38px 24px;
        grid-template-columns: minmax(320px, .9fr) minmax(390px, 1.1fr);
        gap: 24px;
    }

    .mc-cb-vehicle-empty__title {
        font-size: clamp(38px, 4.2vw, 54px);
    }

    .mc-cb-vehicle-empty__media {
        min-height: 320px;
    }

    .mc-cb-vehicle-empty__image {
        max-height: 380px;
    }

    .mc-cb-vehicle-empty__benefits {
        margin: 0 22px 22px;
        padding: 14px 10px;
    }

    .mc-cb-vehicle-empty__benefit {
        padding-inline: 12px;
    }
}

@media(max-width:920px) {
    .mc-cb-vehicle-empty__hero {
        min-height: 0;
        padding: 38px 32px 22px;
        grid-template-columns: 1fr;
        gap: 24px;
    }

    .mc-cb-vehicle-empty__content {
        max-width: 680px;
    }

    .mc-cb-vehicle-empty__media {
        min-height: 0;
    }

    .mc-cb-vehicle-empty__image {
        width: min(100%, 680px);
        max-height: none;
    }

    .mc-cb-vehicle-empty__benefits {
        grid-template-columns: repeat(3, minmax(0, 1fr));
    }

    .mc-cb-vehicle-empty__benefit+.mc-cb-vehicle-empty__benefit {
        border-left: 0;
    }

    .mc-cb-vehicle-empty__benefit:nth-child(2),
    .mc-cb-vehicle-empty__benefit:nth-child(3),
    .mc-cb-vehicle-empty__benefit:nth-child(5) {
        border-left: 1px solid rgba(23, 24, 26, .055);
    }

    .mc-cb-vehicle-empty__benefit:nth-child(n+4) {
        border-top: 1px solid rgba(23, 24, 26, .055);
        padding-top: 14px;
        margin-top: 10px;
    }
}

@media(max-width:620px) {
    .mc-cb-vehicle-empty {
        border-radius: 22px;
    }

    .mc-cb-vehicle-empty__hero {
        padding: 30px 20px 18px;
        gap: 20px;
    }

    .mc-cb-vehicle-empty__content {
        align-items: flex-start;
    }

    .mc-cb-vehicle-empty__eyebrow {
        margin-bottom: var(--mc-cb-space-3);
        font-size: var(--mc-cb-font-base);
        line-height: 20px;
    }

    .mc-cb-vehicle-empty__title {
        font-size: clamp(34px, 10vw, 44px);
        line-height: 1.02;
    }

    .mc-cb-vehicle-empty__text {
        margin-top: 20px;
        font-size: var(--mc-cb-font-base);
        line-height: 22px;
    }

    .mc-cb-vehicle-empty__action {
        width: 100%;
        min-width: 0;
        margin-top: 24px;
    }

    .mc-cb-vehicle-empty__benefits {
        margin: 0 14px 14px;
        padding: 12px;
        border-radius: 16px;
        grid-template-columns: repeat(2, minmax(0, 1fr));
        gap: 0;
    }

    .mc-cb-vehicle-empty__benefit {
        min-height: 64px;
        padding: 10px 8px;
        align-items: flex-start;
        font-size: 11px;
        line-height: 15px;
    }

    .mc-cb-vehicle-empty__benefit:nth-child(odd),
    .mc-cb-vehicle-empty__benefit:nth-child(even) {
        border-left: 0;
    }

    .mc-cb-vehicle-empty__benefit:nth-child(even) {
        border-left: 1px solid rgba(23, 24, 26, .055);
    }

    .mc-cb-vehicle-empty__benefit:nth-child(n+3) {
        border-top: 1px solid rgba(23, 24, 26, .055);
        margin-top: 0;
        padding-top: 12px;
    }

    .mc-cb-vehicle-empty__benefit:last-child {
        grid-column: 1/-1;
        border-left: 0;
    }

    .mc-cb-vehicle-empty__benefit-icon {
        width: 28px;
        height: 28px;
        flex-basis: 28px;
    }

    .mc-cb-vehicle-empty__benefit-icon svg {
        width: 24px;
        height: 24px;
    }
}

@media(max-width:360px) {
    .mc-cb-vehicle-empty__hero {
        padding-inline: 16px;
    }

    .mc-cb-vehicle-empty__benefits {
        grid-template-columns: 1fr;
    }

    .mc-cb-vehicle-empty__benefit,
    .mc-cb-vehicle-empty__benefit:nth-child(even),
    .mc-cb-vehicle-empty__benefit:last-child {
        grid-column: auto;
        border-left: 0;
    }

    .mc-cb-vehicle-empty__benefit+.mc-cb-vehicle-empty__benefit {
        border-top: 1px solid rgba(23, 24, 26, .055);
    }
}

/* -------------------- 09 — МОДАЛЬНЫЕ ОКНА И ПАНЕЛИ -------------------- */
/* Modal primitive */
.mc-cb-modal[hidden] {
    display: none !important
}

.mc-cb-modal {
    position: fixed;
    z-index: 20020;
    inset: 0;
    display: grid;
    padding: 20px;
    place-items: center;
}

.mc-cb-modal__backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgba(7, 8, 10, .62);
    backdrop-filter: blur(3px);
}

.mc-cb-modal__dialog {
    position: relative;
    z-index: 1;
    display: flex;
    width: min(100%, 520px);
    max-height: calc(100dvh - 40px);
    min-height: 0;
    padding: 24px;
    flex-direction: column;
    overflow: hidden;
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius-lg);
    background: #FFF;
    box-shadow: 0 24px 70px rgba(0, 0, 0, .24);
}

.mc-cb-modal__dialog>form {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
}

body.mc-cb-overlay-open {
    overflow: hidden;
}

.mc-cb-modal__dialog--wide {
    width: min(100%, 820px);
}

.mc-cb-modal__head,
.mc-cb-drawer__head {
    display: flex;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
}

.mc-cb-modal__head>div,
.mc-cb-drawer__head>div {
    min-width: 0;
}

.mc-cb-modal__eyebrow,
.mc-cb-drawer__eyebrow {
    display: block;
    margin-bottom: 4px;
    color: var(--mc-cb-text-muted);
    font-size: var(--mc-cb-font-sm);
    font-weight: 700;
    letter-spacing: .06em;
    text-transform: uppercase;
}

.mc-cb-modal__title,
.mc-cb-drawer__title {
    margin: 0;
    font-size: var(--mc-cb-font-lg);
    letter-spacing: -.015em;
    font-weight: 600;
}

.mc-cb-modal__body,
.mc-cb-drawer__body {
    min-height: 0;
    margin-top: 18px;
    font-size: var(--mc-cb-font-base);
    line-height: 1.55;
}

.mc-cb-modal__body {
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

.mc-cb-modal__body> :first-child,
.mc-cb-drawer__body> :first-child {
    margin-top: 0;
}

.mc-cb-modal__body> :last-child,
.mc-cb-drawer__body> :last-child {
    margin-bottom: 0;
}

.mc-cb-modal__actions,
.mc-cb-drawer__actions {
    display: flex;
    margin-top: 22px;
    justify-content: flex-end;
    gap: var(--mc-cb-space-2);
}

.mc-cb-modal__actions form,
.mc-cb-drawer__actions form {
    margin: 0;
}

.mc-cb-modal__actions :is(.mc-cb-button),
.mc-cb-drawer__actions :is(.mc-cb-button) {
    min-width: 140px;
}

/* Глобальная политика обновления MOBILE поверх общего memocar.overlay. */
.mc-cb-mobile-update__message {
    margin: 0;
    color: var(--mc-cb-text-muted);
}

.mc-cb-mobile-update__actions {
    margin-top: 28px;
}

.mc-cb-mobile-update__actions :is(.mc-cb-button) {
    min-height: 48px;
}

.mc-cb-drawer[hidden] {
    display: none !important
}

.mc-cb-drawer {
    position: fixed;
    z-index: 20000;
    inset: 0;
}

.mc-cb-drawer__backdrop {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    border: 0;
    background: rgba(7, 8, 10, .55);
    backdrop-filter: blur(2px);
}

.mc-cb-drawer__panel {
    position: absolute;
    z-index: 1;
    top: 0;
    right: 0;
    display: flex;
    width: var(--mc-cb-drawer-width, min(560px, calc(100vw - 48px)));
    height: 100%;
    padding: 24px;
    flex-direction: column;
    background: var(--mc-cb-surface);
    box-shadow: -18px 0 55px rgba(0, 0, 0, .18);
    overflow: auto;
    transform: translate3d(0, 0, 0);
    transition: transform var(--mc-cb-motion-drawer) var(--mc-cb-motion-ease);
    will-change: transform;
}

/* Общая широкая рабочая панель создания/редактирования CABINET.
   Только представление: стек, Escape и фокус ведёт memocar.overlay. */
body.mc-shell-page .mc-cb-drawer__panel--workspace {
    width: min(70vw, 1400px);
    max-width: none;
    padding: 0;
    overflow: hidden;
}

/* One scroll area for heading and all sections. Only form actions remain below it. */
body.mc-shell-page .mc-cb-drawer__panel--workspace .mc-cb-editor-drawer-scroll {
    flex: 1 1 auto;
    min-height: 0;
    margin: 0;
    padding: 24px 24px calc(100px + env(safe-area-inset-bottom));
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
}

body.mc-shell-page .mc-cb-editor-drawer-heading {
    margin-bottom: 22px;
}

/* Единое состояние загрузки широкой панели редактора */
body.mc-shell-page .mc-cb-editor-drawer-loading {
    position: absolute;
    inset: 0;
    z-index: 3;
    display: grid;
    place-items: center;
    pointer-events: none;
}

body.mc-shell-page .mc-cb-editor-drawer-loading[hidden] {
    display: none !important;
}

body.mc-shell-page .mc-cb-editor-drawer-loading .mc-cb-spinner {
    width: 32px;
    height: 32px;
    flex: 0 0 32px;
    border-width: 3px;
}

/* Не показываем старую запись до загрузки новой */
body.mc-shell-page .mc-cb-drawer.is-loading .mc-cb-editor-drawer-heading .mc-cb-detail-head,
body.mc-shell-page .mc-cb-drawer.is-load-error .mc-cb-editor-drawer-heading .mc-cb-detail-head {
    display: none;
}

/* Во время загрузки оставляем только кнопку закрытия */
body.mc-shell-page .mc-cb-drawer.is-loading .mc-cb-editor-drawer-heading .mc-cb-drawer__eyebrow {
    visibility: hidden;
}

body.mc-shell-page .mc-cb-editor-drawer-heading .mc-cb-drawer__title {
    overflow-wrap: anywhere;
    font-size: clamp(20px, 1.7vw, 26px);
    line-height: 1.25;
}

body.mc-shell-page .mc-cb-editor-drawer-category {
    margin: 6px 0 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-base);
}

body.mc-shell-page .mc-cb-drawer__panel--workspace .mc-cb-editor-drawer-footer {
    position: absolute;
    z-index: 5;
    right: 0;
    bottom: 0;
    left: 0;
    box-sizing: border-box;
    min-height: 0;
    padding: 12px 24px max(12px, env(safe-area-inset-bottom));
    -webkit-backdrop-filter: blur(8px) saturate(130%);
    backdrop-filter: blur(8px) saturate(130%);
}

@supports not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))) {
    body.mc-shell-page .mc-cb-editor-drawer-footer {
        background: var(--mc-cb-surface, #fff);
    }
}

body.mc-shell-page .mc-cb-drawer__panel--workspace .mc-cb-editor-drawer-footer .mc-cb-editor-actions {
    position: static;
    display: flex;
    width: 100%;
    min-height: 0;
    margin: 0;
    padding: 0;
    gap: var(--mc-cb-space-2);
    border: 0;
    border-radius: 0;
    background: transparent;
    -webkit-backdrop-filter: none;
    backdrop-filter: none;
}

body.mc-shell-page .mc-cb-editor-drawer-content {
    display: grid;
    width: 100%;
    min-width: 0;
    gap: var(--mc-cb-space-4);
}

@media (min-width: 768px) and (max-width: 1279px) {
    body.mc-shell-page .mc-cb-drawer__panel--workspace {
        width: 100%;
    }
}

@media (max-width: 767px) {
    body.mc-shell-page .mc-cb-drawer__panel--workspace {
        width: 100%;
        padding-bottom: 0;
    }

    body.mc-shell-page .mc-cb-drawer__panel--workspace .mc-cb-editor-drawer-scroll {
        padding: 18px 16px calc(150px + env(safe-area-inset-bottom));
        scrollbar-gutter: auto;
    }

    body.mc-shell-page .mc-cb-drawer__panel--workspace .mc-cb-editor-drawer-footer {
        padding: 12px 16px max(12px, env(safe-area-inset-bottom));
    }

    body.mc-shell-page .mc-cb-drawer__panel--workspace .mc-cb-editor-drawer-footer .mc-cb-editor-actions {
        display: grid;
        grid-template-columns: 1fr;
    }

    body.mc-shell-page .mc-cb-drawer__panel--workspace .mc-cb-editor-drawer-footer .mc-cb-editor-actions>* {
        width: 100%;
    }
}

/* Единая мобильная форма всех боковых панелей; отличается лишь высота по задаче. */
@media (max-width: 767px) {
    :is(.mc-shell-drawer__panel, .mc-cb-drawer__panel) {
        bottom: 0;
        width: 100%;
        border-radius: var(--mc-cb-radius-lg) var(--mc-cb-radius-lg) 0 0;
    }

    .mc-shell-drawer__panel {
        top: auto;
        height: auto;
        max-height: 88dvh;
        padding: 20px 14px calc(20px + env(safe-area-inset-bottom));
        box-shadow: 0 -16px 44px rgba(19, 22, 28, .18);
    }

    .mc-cb-drawer__panel {
        top: max(12px, env(safe-area-inset-top));
        height: auto;
        max-width: none;
    }
}

/* Подробности записи Истории и Гаража требуют расширенной рабочей области. */

body.mc-shell-page .mc-cb-drawer__panel--wide {
    width: min(720px, calc(100vw - 48px));
    max-width: 720px;
}

@media (max-width:767px) {
    body.mc-shell-page .mc-cb-drawer__panel--wide {
        width: 100%;
        max-width: 100%;
    }
}

.mc-cb-drawer__body {
    flex: 1;
}

.mc-cb-data-table {
    width: 100%;
    border-collapse: collapse;
}

.mc-cb-data-table th,
.mc-cb-data-table td {
    padding: 11px 10px;
    border-bottom: 1px solid var(--mc-cb-border);
    font-size: var(--mc-cb-font-sm);
    text-align: left;
    vertical-align: top;
}

.mc-cb-data-table th {
    color: var(--mc-cb-text-muted);
    font-size: var(--mc-cb-font-sm);
    font-weight: 700;
    letter-spacing: .04em;
    text-transform: uppercase;
}

.mc-cb-data-table td strong,
.mc-cb-data-table td small {
    display: block;
}

.mc-cb-data-table td small {
    margin-top: 3px;
    color: var(--mc-cb-text-muted);
}

@media(max-width:767px) {

    .mc-cb-page-head,
    .mc-cb-section-head {
        align-items: flex-start;
        flex-direction: column;
        gap: var(--mc-cb-space-2);
        padding: 14px;
    }

    .mc-cb-page-head__title {
        line-height: 28px;
    }

    .mc-cb-section-head__note {
        max-width: none;
        text-align: left;
    }

    .mc-cb-modal {
        padding: 0;
        place-items: end center;
    }

    .mc-cb-modal__dialog {
        width: 100%;
        max-height: calc(100dvh - 24px);
        padding: 20px 16px calc(20px + env(safe-area-inset-bottom));
        border-radius: 20px 20px 0 0;
        overflow: hidden;
    }

    .mc-cb-modal__actions,
    .mc-cb-drawer__actions {
        align-items: stretch;
        flex-direction: column-reverse;
    }

    .mc-cb-modal__actions :is(.mc-cb-button),
    .mc-cb-drawer__actions :is(.mc-cb-button) {
        width: 100%;
    }

    .mc-cb-mobile-update--required {
        place-items: stretch;
    }

    .mc-cb-mobile-update--required .mc-cb-modal__dialog {
        width: 100%;
        min-height: 100dvh;
        max-height: 100dvh;
        padding: calc(24px + env(safe-area-inset-top)) 20px calc(24px + env(safe-area-inset-bottom));
        justify-content: center;
        border: 0;
        border-radius: 0;
    }

    .mc-cb-mobile-update--required .mc-cb-modal__body {
        flex: 0 0 auto;
        overflow: visible;
    }

    .mc-cb-data-table,
    .mc-cb-data-table tbody,
    .mc-cb-data-table tr,
    .mc-cb-data-table td {
        display: block;
        width: 100%;
    }

    .mc-cb-data-table thead {
        display: none;
    }

    .mc-cb-data-table tr {
        padding: 10px 0;
        border-bottom: 1px solid var(--mc-cb-border);
    }

    .mc-cb-data-table td {
        display: flex;
        padding: 5px 0;
        justify-content: space-between;
        gap: var(--mc-cb-space-4);
        border: 0;
        text-align: right;
    }

    .mc-cb-data-table td::before {
        content: attr(data-label);
        color: var(--mc-cb-text-muted);
        font-size: var(--mc-cb-font-sm);
        font-weight: 700;
        text-align: left;
    }
}

@media(prefers-reduced-motion:reduce) {

    .mc-cb-link,
    .mc-cb-button,
    .mc-cb-button,
    .mc-cb-field,
    .mc-cb-select,
    body.mc-shell-page .mc-cb-textarea {
        transition: none;
    }
}

/* -------------------- 10 — МЕНЮ ДЕЙСТВИЙ -------------------- */
/* MemoCar 94.3.25.3 — единое кроссбраузерное меню действий кабинета. */
.mc-cb-action-menu {
    position: relative;
    flex: 0 0 auto;
}

.mc-cb-action-menu>summary {
    display: grid;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    place-items: center;
    border: 1px solid var(--mc-cb-border, #E7E9ED);
    border-radius: var(--mc-cb-radius-xs);
    outline: 0;
    color: var(--mc-cb-text, #17181A);
    background: #FFF;
    box-sizing: border-box;
    font: 700 16px/1 Montserrat, Arial, sans-serif;
    letter-spacing: 2px;
    cursor: pointer;
    list-style: none;
    -webkit-user-select: none;
    user-select: none;
}

.mc-cb-action-menu>summary::-webkit-details-marker {
    display: none
}

.mc-cb-action-menu>summary::marker {
    content: ""
}

.mc-cb-action-menu>summary:hover,
.mc-cb-action-menu[open]>summary {
    border-color: #D4D8DE;
    background: #F5F6F7;
}

.mc-cb-action-menu>div {
    position: absolute;
    z-index: 30;
    top: 46px;
    right: 0;
    display: grid;
    min-width: 190px;
    padding: 6px;
    border: 1px solid var(--mc-cb-border, #E7E9ED);
    border-radius: var(--mc-cb-radius-sm);
    background: #FFF;
    box-shadow: 0 12px 36px rgba(15, 16, 18, .16);
}

.mc-cb-action-menu>div form {
    margin: 0
}

.mc-cb-action-menu>div a,
.mc-cb-action-menu>div button {
    display: flex;
    width: 100%;
    min-height: 44px;
    padding: 0 10px;
    align-items: center;
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text, #17181A);
    background: #FFF;
    box-sizing: border-box;
    font: 600 12px/16px Montserrat, Arial, sans-serif;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
}

.mc-cb-action-menu>div a:hover,
.mc-cb-action-menu>div button:hover {
    background: #F4F4F4
}

@media(max-width:700px) {
    .mc-cb-action-menu>div {
        position: fixed;
        z-index: 24000;
        top: auto;
        right: 15px;
        bottom: 15px;
        left: 15px;
    }
}

/* MemoCar 94.3.25.5 — shared non-native action menu for AJAX content and Edge. */
.mc-cb-action-menu--button {
    position: relative;
    display: block;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    overflow: visible;
    flex: 0 0 44px;
}

.mc-cb-action-menu--button>.mc-cb-action-menu__toggle {
    display: grid;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0;
    place-items: center;
    border: 1px solid var(--mc-cb-border, #E7E9ED);
    border-radius: var(--mc-cb-radius-xs);
    outline: 0;
    color: var(--mc-cb-text, #17181A);
    background: #FFF;
    box-sizing: border-box;
    cursor: pointer;
    appearance: none;
    -webkit-appearance: none;
}

.mc-cb-action-menu--button>.mc-cb-action-menu__toggle:hover,
.mc-cb-action-menu--button>.mc-cb-action-menu__toggle[aria-expanded="true"] {
    border-color: #D4D8DE;
    background: #F5F6F7;
}

.mc-cb-action-menu--button>[data-mc-action-menu-panel][hidden] {
    display: none !important
}

/* MemoCar 94.3.25.7 — shared drawer/modal close control. */
.mc-cb-modal__close,
.mc-cb-drawer__close {
    position: relative;
    display: grid;
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    flex: 0 0 44px;
    padding: 0;
    place-items: center;
    align-self: flex-start;
    overflow: visible;
    border: 0;
    border-radius: 11px;
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface-muted, #F1F2F4);
    font-size: 0 !important;
    line-height: 0 !important;
    text-indent: 0;
    appearance: none;
    -webkit-appearance: none;
    cursor: pointer;
    z-index: 2;
    transition: background .16s ease, box-shadow .16s ease, transform .16s ease;
}

.mc-cb-modal__close::before,
.mc-cb-drawer__close::before {
    content: none;
    display: none;
}

.mc-cb-modal__close>svg,
.mc-cb-drawer__close>svg {
    display: block !important;
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

.mc-cb-modal__close:hover,
.mc-cb-drawer__close:hover {
    color: var(--mc-cb-text, #17181A);
    background: #E8EAED;
    outline: 0;
    box-shadow: 0 0 0 3px rgba(23, 24, 26, .08);
}

.mc-cb-modal__close:active,
.mc-cb-drawer__close:active {
    transform: scale(.96);
}

/* -------------------- 11 — СТРАНИЦЫ, РЕДАКТОРЫ И ИСТОРИЯ -------------------- */
/* MEMOCAR_COMMON_PAGE_FORM_PRIMITIVES_94_3_26_2
 * Общие примитивы без уникальной композиции конкретной страницы.
 */

.mc-cb-action-bar {
    display: flex;
    min-width: 0;
    align-items: center;
    justify-content: flex-end;
    gap: var(--mc-cb-space-3);
}

@media(max-width:767px) {
    .mc-cb-action-bar {
        display: grid;
        grid-template-columns: 1fr;
    }

    .mc-cb-action-bar>* {
        width: 100%;
        box-sizing: border-box;
    }
}

/* MEMOCAR_COMMON_CATEGORY_TAGS_94_3_27_2
 * Общие текстовые метки категорий без иконок.
 */
.mc-cb-category-tag {
    display: inline-flex;
    min-height: 26px;
    padding: 4px 10px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    border-radius: 999px;
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    line-height: 16px;
    white-space: nowrap;
}

.mc-cb-category-tag.is-green {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg)
}

.mc-cb-category-tag.is-yellow {
    color: var(--mc-cb-badge-warning-text);
    background: var(--mc-cb-badge-warning-bg)
}

.mc-cb-category-tag.is-blue {
    color: var(--mc-cb-badge-info-text);
    background: var(--mc-cb-badge-info-bg)
}

.mc-cb-category-tag.is-cyan {
    color: #21829B;
    background: #EAF8FC
}

.mc-cb-category-tag.is-violet {
    color: var(--mc-cb-badge-violet-text);
    background: var(--mc-cb-badge-violet-bg)
}

.mc-cb-category-tag.is-orange {
    color: #C66A1A;
    background: #FFF0E5
}

.mc-cb-category-tag.is-gray {
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg)
}

/* MEMOCAR_COMMON_DETAIL_HEADER_94_3_27_4
 * Единая шапка подробностей записи для Истории, Расходов и следующих разделов.
 */

.mc-cb-detail-placeholder {
    opacity: .3;
    pointer-events: none;
    user-select: none;
}

.mc-cb-detail-head {
    display: grid;
    min-width: 0;
    grid-template-columns: 54px minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--mc-cb-space-3);
}

.mc-cb-detail-head__icon {
    display: grid;
    width: 54px;
    height: 54px;
    flex: 0 0 54px;
    place-items: center;
    border-radius: 13px;
    align-self: start;
}

.mc-cb-detail-head__icon svg {
    width: 36px;
    height: 36px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-detail-head__icon.is-green {
    color: #14854E;
    background: #EAF8F0
}

.mc-cb-detail-head__icon.is-yellow {
    color: #B97C00;
    background: #FFF4D7
}

.mc-cb-detail-head__icon.is-blue {
    color: #4F78E8;
    background: #EEF3FF
}

.mc-cb-detail-head__icon.is-cyan {
    color: #21829B;
    background: #EAF8FC
}

.mc-cb-detail-head__icon.is-violet {
    color: #7357D8;
    background: #F1EDFF
}

.mc-cb-detail-head__icon.is-orange {
    color: #C66A1A;
    background: #FFF0E5
}

.mc-cb-detail-head__icon.is-gray {
    color: #5C6675;
    background: #F0F2F5
}

.mc-cb-detail-head__copy {
    display: grid;
    min-width: 0;
    gap: 0;
}

.mc-cb-detail-head__copy h2 {
    min-width: 0;
    margin: 0;
    overflow-wrap: anywhere;
    font-size: var(--mc-cb-font-l);
    letter-spacing: -.02em;
    font-weight: 600;
}

.mc-cb-detail-head__copy p {
    margin: 0;
    color: var(--mc-cb-text-secondary, #6D727B);
    line-height: 16px;
}

.mc-cb-detail-head__source {
    display: inline-flex;
    padding: 5px 8px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border-radius: var(--mc-cb-radius-xs);
    font-style: normal;
    font-weight: 600;
    line-height: 15px;
    white-space: nowrap;
}

.mc-cb-detail-head__source i {
    width: 5px;
    height: 5px;
    flex: 0 0 5px;
    border-radius: 50%;
    background: currentColor;
}

.mc-cb-detail-head__source.is-ai {
    color: #168754;
    background: #E8F8EF
}

.mc-cb-detail-head__source.is-manual {
    color: #4F78E8;
    background: #EEF3FF
}

.mc-cb-detail-head__source.is-file {
    color: #7357D8;
    background: #F1EDFF
}

.mc-cb-detail-head__amount {
    flex: 0 0 auto;
    font-size: 20px;
    line-height: 26px;
    white-space: nowrap;
}

.mc-cb-detail-head__title {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: var(--mc-cb-space-2);
    line-height: 1.1;
}

.mc-cb-detail-head__title h2 {
    min-width: 0;
}

.mc-cb-detail-head__title .mc-cb-detail-head__source {
    flex: 0 0 auto;
}

.mc-cb-detail__toolbar {
    display: flex;
    flex-wrap: wrap;
    min-width: 0;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
}

.mc-cb-detail__toolbar__amount {
    flex: 0 0 auto;
    font-size: var(--mc-cb-font-xl);
    font-weight: 600;
    letter-spacing: -.025em;
    white-space: nowrap;
}

@media(max-width:900px) {
    .mc-cb-detail-head {
        grid-template-columns: 54px minmax(0, 1fr);
        align-items: start;
    }

    .mc-cb-detail-head__icon {
        width: 50px;
        height: 50px;
        flex-basis: 50px;
    }

    .mc-cb-detail-head__amount {
        grid-column: 3;
        grid-row: 1;
        font-size: 18px;
    }
}

@media(max-width:480px) {
    .mc-cb-detail-head {
        gap: 10px
    }

    .mc-cb-detail-head__source {
        max-width: 100%;
        overflow: hidden;
        text-overflow: ellipsis;
    }
}

/* MemoCar 94.3.28.0 — единая интеграция кнопок кабинета.
 * Уникальные стили страниц отвечают только за положение/ширину, но не создают новый вид кнопки.
 */

body.mc-shell-page :is(.mc-cb-modal__close, .mc-cb-drawer__close) {
    width: 44px;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    flex: 0 0 44px;
    padding: 0;
    border: 1px solid var(--mc-cb-button-border-strong);
    border-radius: var(--mc-cb-button-radius);
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
    box-shadow: none;
    transition: color var(--mc-cb-button-transition), background-color var(--mc-cb-button-transition), border-color var(--mc-cb-button-transition), box-shadow var(--mc-cb-button-transition), transform var(--mc-cb-button-transition);
}

body.mc-shell-page :is(.mc-cb-modal__close, .mc-cb-drawer__close):hover {
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface-soft);
    border-color: #9CA2AB;
    box-shadow: 0 6px 16px rgba(17, 18, 20, .08);
    transform: translateY(-1px);
}

body.mc-shell-page :is(.mc-cb-modal__close, .mc-cb-drawer__close):focus-visible {
    outline: 0;
    box-shadow: var(--mc-cb-button-focus-ring);
}

body.mc-shell-page :is(.mc-cb-modal__close, .mc-cb-drawer__close):active {
    transform: translateY(0)
}


@media(prefers-reduced-motion:reduce) {
    body.mc-shell-page :is(.mc-cb-button, .mc-cb-modal__close, .mc-cb-drawer__close) {
        transition: none
    }

    body.mc-shell-page :is(.mc-cb-button, .mc-cb-modal__close, .mc-cb-drawer__close):hover,
    body.mc-shell-page :is(.mc-cb-button, .mc-cb-modal__close, .mc-cb-drawer__close):active {
        transform: none
    }
}

[data-mc-car-fuels][aria-invalid="true"] .mc-car-fuels__options {
    padding: var(--mc-cb-space-2);
    border: 1px solid var(--mc-cb-danger);
    border-radius: var(--mc-cb-radius-sm);
}

/* MEMOCAR_REVISION_94_3_29_0_COMMON_DOCUMENT_PRIMITIVES */
.mc-cb-icon--orange {
    color: #D96E14;
    background: rgba(255, 139, 31, .12)
}

.mc-cb-icon--cyan {
    color: #168C9B;
    background: rgba(30, 179, 196, .12)
}

.mc-cb-icon--gray {
    color: #5F6670;
    background: #F0F1F3
}

.mc-cb-pagination {
    display: flex;
    min-width: 0;
    margin-top: 18px;
    align-items: center;
    justify-content: flex-end;
    gap: 14px;
}

.mc-cb-pagination>span {
    margin-right: auto;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm)
}

.mc-cb-pagination>div {
    display: flex;
    align-items: center;
    gap: 6px
}

.mc-cb-pagination .mc-cb-button {
    min-width: 44px;
    padding: 0 9px
}

.mc-cb-pagination .is-disabled {
    pointer-events: none;
    opacity: .4
}

@media(max-width:640px) {
    .mc-cb-pagination {
        align-items: flex-start;
        flex-direction: column
    }

    .mc-cb-pagination>div {
        width: 100%;
        overflow-x: auto;
        padding-bottom: 3px
    }
}

/* CABINET 1.1.50 — канонический контракт карточечных списков.
 * Общие badge/arrow всегда занимают предпоследнюю/последнюю колонку.
 * Компоненты могут менять только состав колонок и строки через CSS-переменные,
 * но не дублируют базовую геометрию mc-cb-timeline-* локально.
 */
/* MEMOCAR_REVISION_94_3_29_1_COMMON_MASTER_DETAIL
 * Общая структура списка с временной линией и правой карточки подробностей.
 * Используется Историей, Документами и следующими журналами кабинета.
 */
.mc-cb-master-detail {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(420px, .92fr);
    align-items: start;
    gap: var(--mc-cb-space-4);
}

/* Компактная календарная дата:
 * месяц / день / год.
 * Используется в списках событий CABINET.
 */
.mc-cb-date-stack {
    display: grid;
    min-width: 50px;
    padding-right: 10px;
    justify-items: center;
    align-content: center;
    border-right: 1px solid var(--mc-cb-border-light);
    color: var(--mc-cb-text);
    font-variant-numeric: tabular-nums;
    line-height: 1;
    text-align: center;
}

.mc-cb-date-stack__month {
    font-size: 10px;
    font-weight: 600;
    line-height: 12px;
    text-transform: uppercase;
}

.mc-cb-date-stack__day {
    font-size: var(--mc-cb-font-l);
    letter-spacing: -.1em;
    font-weight: 600;
}

.mc-cb-date-stack__year {
    color: var(--mc-cb-text-muted);
    font-weight: 500;
    letter-spacing: -0.1em;
}

.mc-cb-timeline-list {
    position: relative;
    display: grid;
    min-width: 0;
    gap: var(--mc-cb-space-2);
    padding-left: 18px;
}

.mc-cb-timeline-list::before {
    position: absolute;
    top: 31px;
    bottom: 31px;
    left: 1px;
    width: 2px;
    border-radius: 2px;
    background: #E3E5E8;
    content: "";
}

.mc-cb-timeline-item {
    position: relative;
    display: grid;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 74px;
    padding: 10px 13px;
    grid-template-columns: var(--mc-cb-timeline-columns, 46px minmax(155px, 1fr) 105px 90px 116px 18px);
    align-items: center;
    gap: var(--mc-cb-timeline-gap, 11px);
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: 16px;
    color: var(--mc-cb-text, #17181A);
    background: #FFF;
    box-sizing: border-box;
    text-decoration: none;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

.mc-cb-timeline-item:hover {
    border-color: #D8DBE0;
}

.mc-cb-timeline-item.is-active {
    border-color: var(--mc-cb-yellow, #FFC001);
}

.mc-cb-timeline-item.is-static {
    cursor: default;
}

.mc-cb-timeline-item.is-static:hover {
    border-color: var(--mc-cb-border-soft);
    transform: none;
}

.mc-cb-timeline-item__marker {
    position: absolute;
    top: 50%;
    left: -22px;
    width: 10px;
    height: 10px;
    border: 2px solid #FFF;
    border-radius: 50%;
    background: #CED2D8;
    box-shadow: 0 0 0 1px #D9DCE1;
    transform: translateY(-50%);
}

.mc-cb-timeline-item.is-active .mc-cb-timeline-item__marker {
    background: var(--mc-cb-yellow, #FFC001);
    box-shadow: 0 0 0 1px var(--mc-cb-yellow, #FFC001);
}

.mc-cb-timeline-item__icon {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    border-radius: 13px;
}

.mc-cb-timeline-item__icon svg {
    width: 23px;
    height: 23px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-timeline-item__icon.is-green {
    color: #14854E;
    background: #EAF8F0
}

.mc-cb-timeline-item__icon.is-yellow {
    color: #B97C00;
    background: #FFF4D7
}

.mc-cb-timeline-item__icon.is-blue {
    color: #4F78E8;
    background: #EEF3FF
}

.mc-cb-timeline-item__icon.is-cyan {
    color: #21829B;
    background: #EAF8FC
}

.mc-cb-timeline-item__icon.is-violet {
    color: #7357D8;
    background: #F1EDFF
}

.mc-cb-timeline-item__icon.is-orange {
    color: #C66A1A;
    background: #FFF0E5
}

.mc-cb-timeline-item__icon.is-red {
    color: #D44A42;
    background: rgba(239, 84, 74, .11)
}

.mc-cb-timeline-item__icon.is-gray {
    color: #5C6675;
    background: #F0F2F5
}

.mc-cb-timeline-item__main,
.mc-cb-timeline-item__meta {
    display: grid;
    min-width: 0;
    gap: 4px;
}

.mc-cb-timeline-item__main strong {
    overflow: hidden;

}

.mc-cb-timeline-item__main small,
.mc-cb-timeline-item__meta small {
    overflow: hidden;
    color: var(--mc-cb-text);
    font-size: 13px !important;
    line-height: 16px;
}

.mc-cb-timeline-item__meta time {
    font-weight: 500;
}

.mc-cb-timeline-item__value {
    min-width: 0;
    justify-self: end;

}

.mc-cb-timeline-item__badge {
    min-width: 0;
    grid-column: -3/-2;
    grid-row: var(--mc-cb-timeline-badge-row, auto);
    align-self: var(--mc-cb-timeline-badge-align, center);
    justify-self: end;
}

.mc-cb-timeline-item__arrow {
    display: grid;
    width: 18px;
    height: 18px;
    min-width: 0;
    grid-column: -2/-1;
    grid-row: var(--mc-cb-timeline-arrow-row, auto);
    align-self: center;
    justify-self: end;
    place-items: center;
    color: #79808A;
}

.mc-cb-timeline-item__arrow svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-timeline-skeleton-row {
    position: relative;
    display: grid;
    width: 100%;
    max-width: 100%;
    min-width: 0;
    min-height: 74px;
    padding: 10px 13px;
    grid-template-columns: var(--mc-cb-timeline-columns, 46px minmax(155px, 1fr) 105px 90px 116px 18px);
    align-items: center;
    gap: var(--mc-cb-timeline-gap, 11px);
    border-radius: 16px;
    box-sizing: border-box;
    pointer-events: none;
}

/* Событие Истории в карточечных списках:
 * icon → content → meta/value/source → arrow.
 * Один контракт используется всеми потребителями CABINET.
 */
.mc-cb-timeline-list--events {
    width: 100%;
    min-width: 0;
    max-width: 100%;
    box-sizing: border-box;
}

/* Событие Истории в карточечных списках:
 * date → icon → content → mileage → value → source → arrow.
 * Один контракт используется всеми потребителями CABINET.
 */
.mc-cb-timeline-item--event {
    --mc-cb-timeline-columns:
        60px 46px minmax(155px, 1fr) 105px 90px 32px 18px;
}

.mc-cb-timeline-item--event>.mc-cb-date-stack {
    min-width: 0;
}

.mc-cb-timeline-item--event>.mc-cb-timeline-item__meta> :is(small, time) {
    min-width: 0;
    white-space: nowrap;
}

.mc-cb-timeline-item--event>.mc-cb-timeline-item__meta>.mc-cb-timeline-item__date-inline {
    display: none;
}

.mc-cb-timeline-item--event>.mc-cb-timeline-item__meta>small.is-empty {
    visibility: hidden;
}

.mc-cb-timeline-item--event>.mc-cb-timeline-item__value {
    white-space: nowrap;
}

@media (max-width: 1420px) {
    .mc-cb-timeline-item--event {
        --mc-cb-timeline-columns:
            60px 46px minmax(145px, 1fr) 100px 82px 32px 18px;
    }
}

@media (max-width: 900px) {
    .mc-cb-timeline-item--event {
        --mc-cb-timeline-columns:
            60px 46px minmax(0, 1fr) 100px 82px 32px 18px;
    }
}

@media (max-width: 767px) {
    .mc-cb-timeline-list--events {
        padding-left: 0;
    }

    .mc-cb-timeline-list--events::before,
    .mc-cb-timeline-list--events>.mc-cb-timeline-item--event>.mc-cb-timeline-item__marker {
        display: none;
    }

    .mc-cb-timeline-item--event {
        --mc-cb-timeline-columns:
            44px minmax(0, 1fr) 32px 18px;

        --mc-cb-timeline-badge-row: 1 / -1;
        --mc-cb-timeline-badge-align: center;
        --mc-cb-timeline-arrow-row: 1 / -1;

        min-height: 96px;
        grid-template-rows: auto auto auto;
        gap: 6px 10px;
    }

    .mc-cb-timeline-item--event>.mc-cb-date-stack {
        display: none;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__icon {
        grid-column: 1;
        grid-row: 1 / 4;
        align-self: start;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__main {
        grid-column: 2;
        grid-row: 1;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__value {
        grid-column: 2;
        grid-row: 2;
        justify-self: start;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__meta {
        display: flex;
        min-width: 0;
        grid-column: 2;
        grid-row: 3;
        flex-wrap: wrap;
        gap: 4px 10px;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__meta>.mc-cb-timeline-item__date-inline {
        display: inline;
        order: -1;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__meta>small.is-empty {
        visibility: visible;
    }
}

@media (min-width: 481px) and (max-width: 767px) {
    .mc-cb-timeline-item--event {
        --mc-cb-timeline-columns:
            44px minmax(0, 1fr) max-content 32px 18px;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__value {
        grid-column: 3;
        grid-row: 1 / 4;
        align-self: center;
        justify-self: end;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__badge {
        grid-column: 4;
        grid-row: 1 / 4;
        align-self: center;
        justify-self: end;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__arrow {
        grid-column: 5;
        grid-row: 1 / 4;
        align-self: center;
        justify-self: end;
    }
}

@media (max-width: 480px) {
    .mc-cb-timeline-item--event {
        --mc-cb-timeline-columns:
            44px minmax(0, 1fr) 18px;
    }

    body.mc-shell-page .mc-cb-timeline-item--event>.mc-cb-source-mark {
        display: none;
    }
}

@media (max-width: 340px) {
    .mc-cb-timeline-item.mc-cb-timeline-item--event {
        --mc-cb-timeline-columns:
            40px minmax(0, 1fr) 18px;

        gap: 6px 8px;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__icon {
        width: 40px;
        height: 40px;
    }

    .mc-cb-timeline-item--event>.mc-cb-timeline-item__main strong,
    .mc-cb-timeline-item--event>.mc-cb-timeline-item__main small {
        white-space: normal;
        overflow-wrap: anywhere;
    }
}

.mc-cb-detail-card {
    position: sticky;
    top: 82px;
    min-width: 0;
    min-height: 560px;
}

.mc-cb-detail-actions {
    display: flex;
    flex-wrap: wrap;
    gap: var(--mc-cb-space-2);
}

.mc-cb-detail-actions>form {
    margin: 0
}

.mc-cb-detail-facts {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    overflow: hidden;
    margin: 0;
    border: 1px solid var(--mc-cb-border, #E7E9ED);
    border-radius: var(--mc-cb-radius-sm);
}

.mc-cb-detail-facts>div {
    min-width: 0;
    padding: 14px;
    border-right: none;
}

.mc-cb-detail-facts>div:nth-child(3n),
.mc-cb-detail-facts>div:last-child {
    border-right: 0
}

.mc-cb-detail-facts>div:nth-child(n+4) {
    border-top: none
}

.mc-cb-detail-facts :is(span, dt) {
    display: block;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-sm);
}

.mc-cb-detail-facts :is(strong, dd) {
    display: block;
    margin: 7px 0 0;
    overflow: hidden;
    font-weight: 600;
    text-overflow: ellipsis;
}

/* -------------------------------------------------------------------------- */
/* Detail table — общие группы и строки детализации (просмотр и редактирование) */
/* -------------------------------------------------------------------------- */
.mc-cb-detail-table {
    display: grid;
    min-width: 0;
    gap: var(--mc-cb-space-3);
}

.mc-cb-detail-table__summary {
    display: flex;
    padding: 12px 14px;
    flex-wrap: wrap;
    align-items: center;
    justify-content: flex-end;
    gap: 10px 18px;
}

.mc-cb-detail-table__summary :is(span, strong) {
    display: flex;
    min-height: 24px;
    align-items: center;
    gap: var(--mc-cb-space-2);
}

.mc-cb-detail-table__summary b {
    font-size: var(--mc-cb-font-lg);
    font-weight: 600;
    letter-spacing: -.02em;
}

.mc-cb-detail-table[hidden] {
    display: none !important;
}

.mc-cb-detail-table__group {
    display: grid;
    min-width: 0;
    align-content: start;
    overflow: hidden;
    border: 1px solid var(--mc-cb-border);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface);
}

.mc-cb-detail-table__head {
    display: flex;
    min-width: 0;
    padding: 11px 13px;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-3);
    border-bottom: 1px solid var(--mc-cb-border-soft);
}

.mc-cb-detail-table__head :is(strong, b) {
    min-width: 0;
    font-size: var(--mc-cb-font-md);
    font-weight: 600;
    line-height: 20px;
}

.mc-cb-detail-table__head>b {
    flex: 0 0 auto;
    text-align: right;
}

.mc-cb-detail-table__rows {
    display: grid;
    min-width: 0;
}

.mc-cb-detail-table__row {
    display: grid;
    min-width: 0;
    padding: 11px 13px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: center;
    gap: 14px;
}

/* Редактируемая строка общей таблицы детализации. */
.mc-cb-detail-table__row--editor {
    align-items: end;
    gap: var(--mc-cb-space-2);
}

.mc-cb-detail-table__row--editor label {
    display: grid;
    min-width: 0;
    gap: var(--mc-cb-space-1);
}

.mc-cb-detail-table__row--editor label>span {
    min-width: 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    font-weight: 500;
    line-height: 1.3;
}

.mc-cb-detail-table__row--editor label>span i {
    color: var(--mc-cb-danger);
    font-style: normal;
}

.mc-cb-detail-table__row--editor .mc-cb-field {
    min-width: 0;
}

.mc-cb-detail-table__row+.mc-cb-detail-table__row {
    border-top: 1px solid var(--mc-cb-border-soft);
}

.mc-cb-detail-table__row:hover {
    background: var(--mc-cb-surface-soft);
}

.mc-cb-detail-table__main {
    display: grid;
    min-width: 0;
    gap: 3px;
    overflow-wrap: anywhere;
}

.mc-cb-detail-table__main>small {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);

    overflow-wrap: anywhere;
}

.mc-cb-detail-table__value {
    text-align: right;
}

@media (max-width: 380px) {
    .mc-cb-detail-table__head {
        display: grid;
        grid-template-columns: minmax(0, 1fr);
        gap: 6px;
    }

    .mc-cb-detail-table__head>b {
        justify-self: start;
    }

    .mc-cb-detail-table__row:not(.mc-cb-detail-table__row--editor) {
        grid-template-columns: minmax(0, 1fr);
        gap: 6px;
    }

    .mc-cb-detail-table__row:not(.mc-cb-detail-table__row--editor)>.mc-cb-detail-table__value {
        justify-self: start;
    }
}


/* Confirmed entity links (History / Documents / other CABINET details).
   Shared visual pattern: linked objects are not file attachments or reminder deliveries. */
.mc-cb-related-list {
    display: grid;
    min-width: 0;
    gap: var(--mc-cb-space-2);
}

.mc-cb-related-list__item {
    display: flex;
    align-items: center;
    min-width: 0;
    gap: var(--mc-cb-space-2);
    border: 1px solid var(--mc-cb-border);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface);
}

.mc-cb-related-list__link {
    display: grid;
    grid-template-columns: 40px minmax(0, 1fr) 16px;
    gap: var(--mc-cb-space-3);
    align-items: center;
    min-width: 0;
    flex: 1 1 auto;
    padding: var(--mc-cb-space-3);
    color: var(--mc-cb-text);
    text-decoration: none;
    border-radius: inherit;
    transition: background var(--mc-cb-motion-fast) var(--mc-cb-motion-ease);
}

.mc-cb-related-list__link:hover,
.mc-cb-related-list__link:focus-visible {
    background: var(--mc-cb-surface-soft);
}

.mc-cb-related-list__icon {
    width: 40px;
    height: 40px;
    display: grid;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface-muted);
    color: var(--mc-cb-text-secondary);
}

.mc-cb-related-list__icon svg,
.mc-cb-related-list__arrow svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-related-list__copy {
    display: grid;
    gap: var(--mc-cb-space-1);
    min-width: 0;
}

.mc-cb-related-list__copy strong {
    min-width: 0;
    overflow-wrap: anywhere;
    font-weight: 600;
}

.mc-cb-related-list__copy small {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    line-height: 1.3;
}

.mc-cb-related-list__arrow {
    color: var(--mc-cb-text-muted);
}

.mc-cb-related-list__action {
    flex: 0 0 auto;
    margin-right: var(--mc-cb-space-3);
}

@media (max-width: 480px) {
    .mc-cb-related-list__link {
        grid-template-columns: 36px minmax(0, 1fr) 16px;
        gap: var(--mc-cb-space-2);
    }

    .mc-cb-related-list__icon {
        width: 36px;
        height: 36px;
    }
}

.mc-cb-detail-section {
    display: grid;
    gap: var(--mc-cb-space-2);
}

.mc-cb-detail-section>h3,
.mc-cb-detail-section>span {
    font-style: normal;
    font-weight: 500;
    font-size: var(--mc-cb-font-md);
    margin-left: var(--mc-cb-space-4);
}

.mc-cb-detail-section>p {
    margin: var(--mc-cb-space-2) 0 0 var(--mc-cb-space-4)
}

.mc-cb-detail-head__icon.is-red {
    color: #D44A42;
    background: rgba(239, 84, 74, .11)
}

@media(max-width:1199px) {
    .mc-cb-master-detail {
        grid-template-columns: minmax(0, 1fr)
    }

    .mc-cb-detail-card {
        position: static
    }
}

@media(max-width:700px) {
    .mc-cb-timeline-list {
        padding-left: 0
    }

    .mc-cb-timeline-list::before,
    .mc-cb-timeline-item__marker {
        display: none
    }

    .mc-cb-timeline-skeleton-row {
        min-height: 70px;
        padding: 11px 12px;
        border-radius: 14px
    }

    .mc-cb-detail-card {
        min-height: 0;
        padding: var(--mc-cb-space-4);
        gap: 16px
    }

    .mc-cb-detail-facts {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .mc-cb-detail-facts>div:nth-child(3n) {
        border-right: 1px solid var(--mc-cb-border, #E7E9ED)
    }

    .mc-cb-detail-facts>div:nth-child(2n),
    .mc-cb-detail-facts>div:last-child {
        border-right: 0
    }
}

@media(prefers-reduced-motion:reduce) {
    .mc-cb-timeline-item {
        transition: none
    }

    .mc-cb-timeline-item:hover {
        transform: none
    }
}

/* Кнопка Показать еще */

body.mc-shell-page .mc-cb-list-more {
    display: flex;
    width: 100%;
    margin-top: var(--mc-cb-space-4);
    justify-content: center;
}

body.mc-shell-page .mc-cb-list-more[hidden] {
    display: none !important;
}

body.mc-shell-page .mc-cb-list-more>.mc-cb-button {
    min-width: 180px;
}

@media (max-width: 480px) {
    body.mc-shell-page .mc-cb-list-more>.mc-cb-button {
        width: 100%;
        min-width: 0;
    }
}

/* MemoCar common editor layout: exact structural shell of the vehicle editor. */
.mc-cb-editor-page {
    position: relative;
    z-index: 0;
    isolation: isolate;
    display: grid;
    width: 100%;
    max-width: var(--mc-cb-container, 1660px);
    margin: 0 auto;
    gap: var(--mc-cb-space-4);
    color: var(--mc-cb-text, #17181A);
}

.mc-cb-editor-page::before {
    content: "";
    position: absolute;
    z-index: -1;
    top: -8px;
    right: -18px;
    bottom: -40px;
    left: -18px;
}

.mc-cb-editor-page>* {
    width: 100%;
    max-width: var(--mc-cb-container, 1660px);
    margin-right: auto;
    margin-left: auto;
    box-sizing: border-box;
}

.mc-cb-editor-head {
    display: flex;
    min-height: 54px;
    margin-bottom: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 20px;
}

.mc-cb-editor-head>div {
    min-width: 0
}

.mc-cb-editor-head .mc-cb-breadcrumbs {
    margin-bottom: var(--mc-cb-space-3)
}

.mc-cb-editor-head .mc-cb-page-head__title {
    margin: 0
}

.mc-cb-editor-head .mc-cb-page-head__subtitle {
    max-width: 760px;
    margin-top: 5px;
    line-height: 19px;
}

.mc-cb-editor-head>.mc-cb-button {
    flex: 0 0 auto;
    font-family: inherit;
    font-size: var(--mc-cb-font-sm);
    font-weight: 700;
    line-height: 1.2;
}

.mc-cb-editor-form {
    display: grid;
    width: 100%;
    min-width: 0;
    gap: var(--mc-cb-space-4);
}

.mc-cb-editor-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.72fr) minmax(350px, .78fr);
    align-items: start;
    gap: 20px;
}

.mc-cb-editor-main {
    display: grid;
    min-width: 0;
    gap: var(--mc-cb-space-4);
}

.mc-cb-editor-section {
    min-width: 0;
    padding: 24px;
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius, 16px);
    background: #FFF;
    box-shadow: var(--mc-cb-shadow, 0 4px 16px #f7f8f8);
}

/* Numbered section heading — common CABINET pattern. Legacy editor selectors
   remain compatible until individual editors migrate their markup. */
.mc-cb-step-heading,
.mc-cb-editor-section__head {
    display: grid;
    grid-template-columns: 42px minmax(0, 1fr) auto;
    align-items: start;
    gap: 14px;
    padding-bottom: 20px;
}

.mc-cb-editor-section__head>.mc-cb-editor-section__aside {
    /* Необязательная правая область общего заголовка */
    grid-column: 3;
    max-width: 320px;
    min-width: 0;
    justify-self: end;
}

.mc-cb-step-heading__content {
    min-width: 0;
}

.mc-cb-step-heading__number,
.mc-cb-editor-section__number {
    display: grid;
    width: 42px;
    height: 42px;
    place-items: center;
    border-radius: 50%;
    color: #A66D00;
    background: #FFF4D4;
    font-weight: 800;
}

.mc-cb-editor-section__number svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-step-heading__eyebrow,
.mc-cb-editor-section__head small {
    display: block;
    color: var(--mc-cb-text-muted);
    font-weight: 700;
    letter-spacing: .11em;
}

.mc-cb-step-heading__title,
.mc-cb-editor-section__head h2 {
    margin: 0;
    line-height: 26px;
    font-size: var(--mc-cb-font-l);
    letter-spacing: -.02em;
    font-weight: 600;
}

.mc-cb-step-heading__description,
.mc-cb-editor-section__head>div>p {
    margin: 0;
    color: var(--mc-cb-text-secondary);
}

.mc-cb-editor-grid {
    display: grid;
    gap: var(--mc-cb-space-4);
    margin-top: 20px;
}

.mc-cb-editor-grid--2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}

.mc-cb-editor-grid--3 {
    grid-template-columns: repeat(3, minmax(0, 1fr))
}

.mc-cb-editor-field {
    display: block;
    min-width: 0;
}

.mc-cb-editor-field--wide {
    grid-column: 1/-1
}

.mc-cb-editor-field>span,
.mc-cb-editor-field>label {
    display: block;
    margin-bottom: 8px;
    color: #4E535B;
    font-size: var(--mc-cb-font-xs);
    font-weight: 700;
}

.mc-cb-editor-field>span i {
    color: #E7A800;
    font-style: normal;
}

.mc-cb-editor-field :is(.mc-cb-field, .mc-cb-select, input[type="text"], input[type="date"], select, textarea) {
    width: 100%;
    box-sizing: border-box;
}

.mc-cb-editor-aside {
    position: sticky;
    top: 18px;
    min-width: 0;
}

.mc-cb-editor-actions {
    position: sticky;
    z-index: 8;
    bottom: 0;
    display: flex;
    width: 100%;
    min-height: 68px;
    margin-top: 0;
    padding: var(--mc-cb-space-6);
    align-items: center;
    justify-content: flex-start;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius);
    -webkit-backdrop-filter: blur(8px);
    backdrop-filter: blur(8px);
    box-sizing: border-box;
}

@media(max-width:1199px) {
    .mc-cb-editor-page::before {
        right: -20px;
        left: -20px
    }
}

@media(max-width:1180px) {
    .mc-cb-editor-layout {
        grid-template-columns: minmax(0, 1.55fr) minmax(320px, .75fr);
        gap: var(--mc-cb-space-4);
    }

    .mc-cb-editor-grid--3 {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }
}

@media(max-width:980px) {
    .mc-cb-editor-layout {
        grid-template-columns: 1fr
    }

    .mc-cb-editor-aside {
        position: relative;
        top: auto
    }
}

@media(max-width:767px) {
    .mc-cb-editor-page::before {
        right: 0;
        left: 0
    }
}

@media(max-width:760px) {
    .mc-cb-editor-page {
        gap: 14px
    }

    .mc-cb-editor-head {
        display: grid;
        min-height: 0;
        align-items: start;
        gap: 14px;
    }

    .mc-cb-editor-head>.mc-cb-button {
        width: 100%;
        box-sizing: border-box
    }

    .mc-cb-editor-section {
        padding: 20px 16px;
        border-radius: var(--mc-cb-radius, 16px);
    }

    .mc-cb-step-heading,
    .mc-cb-editor-section__head {
        grid-template-columns: 34px minmax(0, 1fr);
        gap: 11px;
        padding-bottom: 16px;
    }

    .mc-cb-step-heading__number,
    .mc-cb-editor-section__number {
        width: 34px;
        height: 34px
    }

    .mc-cb-step-heading__title,
    .mc-cb-editor-section__head h2 {
        font-size: 18px;
        line-height: 24px
    }

    .mc-cb-editor-grid--2,
    .mc-cb-editor-grid--3 {
        grid-template-columns: 1fr
    }

    .mc-cb-editor-field--wide {
        grid-column: auto
    }

    .mc-cb-editor-actions {
        position: static;
        min-height: 0;
        padding-top: 0;
        border-top: 0;
        background: transparent;
        -webkit-backdrop-filter: none;
        backdrop-filter: none;
        display: grid;
        grid-template-columns: 1fr;
    }

    .mc-cb-editor-actions>* {
        width: 100%;
        box-sizing: border-box
    }

    .mc-cb-editor-section__head>.mc-cb-editor-section__aside {
        grid-column: 2;
        grid-row: 2;
        width: 100%;
        max-width: 420px;
        justify-self: start;
    }
}

@media (max-width: 480px) {
    .mc-cb-editor-section__head>.mc-cb-editor-section__aside {
        grid-column: 1 / -1;
        max-width: none;
    }
}

/* Общий переключатель периода MemoCar */

.mc-period {
    display: flex;
    min-width: 0;
    padding: 4px;
    align-items: center;
    gap: 3px;
    border-radius: 11px;
    background: var(--mc-cb-surface-muted, #F1F2F4);
}

.mc-period__item {
    display: flex;
    min-height: 44px;
    padding: 0 12px;
    align-items: center;
    justify-content: center;
    gap: 6px;
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: #666B73;
    background: transparent;
    -webkit-appearance: none;
    appearance: none;
    font-family: Montserrat, Arial, sans-serif;
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    line-height: 16px;
    text-decoration: none;
    white-space: nowrap;
    cursor: pointer;
    transition: background .16s ease, color .16s ease, box-shadow .16s ease;
}

.mc-period__item.is-active {
    color: #17181A;
    background: #FFF;
    box-shadow: 0 3px 10px rgba(19, 22, 28, .08);
}

.mc-period__badge {
    display: inline-grid;
    min-width: 20px;
    height: 20px;
    padding: 0 6px;
    box-sizing: border-box;
    place-items: center;
    border-radius: 999px;
    color: #5F6670;
    background: #E6E8EB;
    font-size: 11px;
    font-weight: 700;
    line-height: 1;
    white-space: nowrap;
}

.mc-period__badge--success {
    color: #137447;
    background: rgba(24, 168, 101, .13);
}

.mc-period__item.is-active .mc-period__badge {
    background: #EEF0F2;
}

.mc-period__item.is-active .mc-period__badge--success {
    background: rgba(24, 168, 101, .15);
}

@media(max-width:820px) {
    .mc-period {
        width: 100%;
        box-sizing: border-box;
        overflow-x: auto;
    }

    .mc-period__item {
        min-width: 0;
        flex: 1 1 0;
        padding: 0 7px;
    }
}

@media(prefers-reduced-motion:reduce) {
    .mc-period__item {
        transition: none;
    }
}

/* Общий переключатель количества для покупки */

/*.mc-memo-buy-drawer .mc-cb-drawer__panel{width:min(540px,calc(100vw - 48px))}
.mc-memo-buy-form{display:grid;margin-top:16px;gap:13px}
.mc-memo-buy-form__tabs{display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 3px;
    margin: 18px 0 15px;
    padding: 4px;
    border-radius: 11px;
    background: #f4f5f6;}
.mc-memo-buy-form__tabs button{min-height:44px;padding:8px;font:700 13px/18px Montserrat,Arial,sans-serif;cursor:pointer}
.mc-memo-buy-form__tabs button:hover,.mc-memo-buy-form__tabs button.is-active{background:var(--mc-cb-surface);}
.mc-memo-buy-form__quantity{display:grid;gap:6px}
.mc-memo-buy-form__quantity>span{font-size:12px;line-height:17px;font-weight:650}
.mc-memo-buy-form__quantity>div{display:grid;grid-template-columns:44px 1fr 44px;border:1px solid var(--mc-cb-border,#e7e9ed);border-radius:12px;overflow:hidden}
.mc-memo-buy-form__quantity button{border:0;background:var(--mc-cb-surface-muted,#f1f2f4);font-size:20px;cursor:pointer}
.mc-memo-buy-form__quantity input{min-width:0;height:44px;border:0;outline:none;text-align:center;font:700 14px Montserrat,Arial,sans-serif;-moz-appearance:textfield}
.mc-memo-buy-form__quantity input::-webkit-outer-spin-button,.mc-memo-buy-form__quantity input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}
.mc-memo-buy-form__summary{display:grid;gap:0;border:1px solid var(--mc-cb-border,#e7e9ed);border-radius:13px;overflow:hidden}
.mc-memo-buy-form__summary>div{display:flex;min-height:44px;padding:8px 11px;box-sizing:border-box;align-items:center;justify-content:space-between;gap:14px;border-bottom:1px solid var(--mc-cb-border,#e7e9ed)}
.mc-memo-buy-form__summary>div:last-child{border-bottom:0}
.mc-memo-buy-form__summary span{color:var(--mc-cb-text);}
.mc-memo-buy-form__summary strong{color:var(--mc-cb-text);text-align:right}
.mc-memo-buy-form__summary .is-total{min-height:52px;background:#fff8d8}
.mc-memo-buy-form__summary .is-total strong{font-size:19px}
.mc-memo-buy-form a{color:var(--mc-cb-info,#4f78e8)}
.mc-memo-buy-form__submit{width:100%;min-height:48px;box-sizing:border-box}*/

.mc-buy-drawer {
    --mc-cb-drawer-width: min(540px, calc(100vw - 48px));
}

.mc-buy-form {
    display: grid;
    margin-top: 16px;
    gap: 13px
}

.mc-buy-form__tabs {
    display: grid;
    grid-template-columns: repeat(3, minmax(0, 1fr));
    gap: 4px;
    margin: 18px 0 15px;
    padding: 4px;
    border-radius: var(--mc-cb-button-radius);
    background: var(--mc-cb-surface-muted);
}

.mc-buy-form__tabs button {
    min-height: 44px;
    padding: var(--mc-cb-space-2);
    font: 700 13px/18px Montserrat, Arial, sans-serif;
    cursor: pointer
}

.mc-buy-form__tabs button.is-active {
    background: var(--mc-cb-surface);
}

.mc-buy-form__quantity {
    display: grid;
    gap: 6px
}

.mc-buy-form__quantity>span {
    font-size: var(--mc-cb-font-xs);
    font-weight: 650
}

.mc-buy-form__quantity>div {
    display: grid;
    grid-template-columns: 44px 1fr 44px;
    border: 1px solid var(--mc-cb-border, #e7e9ed);
    border-radius: var(--mc-cb-radius-sm);
    overflow: hidden
}

.mc-buy-form__quantity button {
    border: 0;
    background: var(--mc-cb-surface-muted, #f1f2f4);
    font-size: 20px;
    cursor: pointer
}

.mc-buy-form__quantity input {
    min-width: 0;
    height: 44px;
    border: 0;
    outline: none;
    text-align: center;
    font: 700 14px Montserrat, Arial, sans-serif;
    -moz-appearance: textfield
}

.mc-buy-form__quantity input::-webkit-outer-spin-button,
.mc-memo-buy-form__quantity input::-webkit-inner-spin-button {
    -webkit-appearance: none;
    margin: 0
}

.mcemo-buy-form__summary {
    display: grid;
    gap: 0;
    border: 1px solid var(--mc-cb-border, #e7e9ed);
    border-radius: 13px;
    overflow: hidden
}

.mc-buy-form__summary>div {
    display: flex;
    min-height: 44px;
    padding: 8px 11px;
    box-sizing: border-box;
    align-items: center;
    justify-content: space-between;
    gap: 14px;
    border-bottom: 1px solid var(--mc-cb-border, #e7e9ed)
}

.mc-buy-form__summary>div:last-child {
    border-bottom: 0
}

.mc-buy-form__summary span {
    color: var(--mc-cb-text);
}

.mc-buy-form__summary strong {
    color: var(--mc-cb-text);
    text-align: right
}

.mc-buy-form__summary .is-total {
    min-height: 52px;
    background: #fff8d8
}

.mc-buy-form__summary .is-total strong {
    font-size: 19px
}

.mc-buy-form a {
    color: var(--mc-cb-info, #4f78e8)
}

.mc-buy-form__submit {
    width: 100%;
    min-height: 48px;
    box-sizing: border-box
}

@media(max-width:1050px) {
    .mc-tariff-memo-inline {
        grid-template-columns: 1fr
    }

    .mc-tariff-memo-inline__summary {
        padding: 14px 0 0;
        border-top: 1px solid rgba(255, 255, 255, .12);
        border-left: 0
    }
}

@media(max-width:767px) {
    .mc-tariff-memo-inline {
        padding: 14px
    }

    .mc-tariff-memo-inline__head {
        align-items: flex-start;
        flex-direction: column;
        gap: 8px
    }

    .mc-tariff-memo-inline__balance {
        justify-items: start
    }

    .mc-tariff-memo-inline__options {
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    /* Особое внутреннее пространство оплаты, но геометрия панели — общая. */
    .mc-memo-buy-drawer .mc-cb-drawer__panel {
        padding: 18px 15px 110px;
    }
}

@media(max-width:360px) {

    .mc-tariff-memo-inline,
    .mc-tariff-memo-inline__head,
    .mc-tariff-memo-inline__options,
    .mc-tariff-memo-inline__summary {
        min-width: 0;
        max-width: 100%
    }

    .mc-tariff-memo-inline__options {
        grid-template-columns: 1fr;
        gap: 9px
    }

    .mc-tariff-memo-inline__options button {
        width: 100%;
        min-width: 0;
        min-height: 64px
    }

    .mc-tariff-memo-inline__options button.is-custom {
        grid-template-columns: minmax(0, 1fr) 18px
    }

    .mc-tariff-memo-inline__options button.is-custom strong,
    .mc-tariff-memo-inline__options button.is-custom span {
        white-space: normal;
        overflow-wrap: anywhere
    }

    .mc-memo-buy-form__summary>div {
        align-items: flex-start;
        flex-direction: column;
        gap: 3px
    }

    .mc-memo-buy-form__summary strong {
        text-align: left
    }
}

/* MemoCar cabinet: единый переключатель для мгновенных настроек да/нет без отдельной кнопки сохранения.*/
.mc-cb-switch {
    position: relative;
    display: inline-flex;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    align-items: center;
    justify-content: center;
}

.mc-cb-switch__input {
    position: absolute;
    inset: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

.mc-cb-switch__track {
    position: relative;
    display: block;
    width: 38px;
    height: 22px;
    border-radius: 999px;
    background: #D7DADE;
    transition: background .16s ease, box-shadow .16s ease;
}

.mc-cb-switch__thumb {
    position: absolute;
    top: 3px;
    left: 3px;
    width: 16px;
    height: 16px;
    border-radius: 50%;
    background: #FFF;
    box-shadow: 0 1px 4px rgba(23, 24, 26, .22);
    transition: transform .16s ease;
}

.mc-cb-switch__input:checked+.mc-cb-switch__track {
    background: var(--mc-cb-success);
}

.mc-cb-switch__input:checked+.mc-cb-switch__track .mc-cb-switch__thumb {
    transform: translateX(16px);
}

.mc-cb-switch__input:focus-visible+.mc-cb-switch__track {
    box-shadow: 0 0 0 3px rgba(255, 192, 1, .24);
}

.mc-cb-switch__input:disabled {
    cursor: default;
}

.mc-cb-switch__input:disabled+.mc-cb-switch__track {
    opacity: .62;
}

@media(prefers-reduced-motion:reduce) {

    .mc-cb-switch__track,
    .mc-cb-switch__thumb {
        transition: none;
    }
}

/* ========================================================================== */
/* -------------------- 12 — ЗАГРУЗКА И АВТОСОХРАНЕНИЕ -------------------- */
/* MemoCar cabinet: скелетоны и состояние автосохранения                      */
/* Общие элементы используются компонентами при фоновой загрузке данных.       */
/* ========================================================================== */
@keyframes mc-cb-skeleton-shimmer {
    0% {
        transform: translateX(-110%)
    }

    100% {
        transform: translateX(110%)
    }
}

.mc-cb-skeleton {
    position: relative;
    display: block;
    overflow: hidden;
    background: var(--mc-cb-surface-muted, #F1F2F4);
}

.mc-cb-skeleton::after {
    content: "";
    position: absolute;
    inset: 0;
    transform: translateX(-110%);
    background: linear-gradient(90deg, transparent, rgba(255, 255, 255, .72), transparent);
    animation: mc-cb-skeleton-shimmer 1.15s linear infinite;
}

.mc-cb-skeleton--line {
    width: 100%;
    min-height: 14px;
    border-radius: var(--mc-cb-font-sm);
}

@media(prefers-reduced-motion:reduce) {
    .mc-cb-skeleton::after {
        animation: none
    }
}

/* ========================================================================== */
/* -------------------- 13 — ДОСТУП И ОБМЕН ДАННЫМИ -------------------- */
/* MemoCar cabinet: единая система временных ссылок и передачи данных          */
/* Используется сервисным доступом, передачей истории и следующими сценариями. */
/* ========================================================================== */
.mc-cb-access-layout {
    display: grid;
    grid-template-columns: minmax(0, 1.08fr) minmax(430px, .92fr);
    gap: var(--mc-cb-space-4);
    align-items: start;
}

.mc-cb-access-column,
.mc-cb-access-form {
    display: grid;
    gap: var(--mc-cb-space-4);
    min-width: 0;
}

.mc-cb-access-form[hidden] {
    display: none !important
}

.mc-cb-access-card {
    padding: 20px
}

.mc-cb-access-card-head {
    align-items: flex-start;
    margin-bottom: 18px
}

.mc-cb-access-badge {
    display: inline-flex;
    min-height: 44px;
    padding: 6px 10px;
    align-items: center;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary);
    background: var(--mc-cb-surface-muted);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

    white-space: nowrap;
}

.mc-cb-access-badge svg {
    width: 17px;
    height: 17px;
    flex: 0 0 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round
}

.mc-cb-access-badge.is-active {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg)
}

.mc-cb-access-field {
    display: grid;
    gap: 8px
}

.mc-cb-access-field>span {
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    line-height: 18px
}

.mc-cb-access-field :is(.mc-cb-field, .mc-cb-select, .mc-cb-textarea) {
    width: 100%
}

.mc-cb-access-field small {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    line-height: 17px
}

.mc-cb-access-expiry-layout {
    display: grid;
    grid-template-columns: minmax(0, 1fr) 210px;
    gap: 20px;
    align-items: center
}

.mc-cb-access-periods {
    display: flex;
    flex-wrap: wrap;
    gap: 14px 22px;
    margin: 0;
    padding: 2px 0;
    border: 0
}

.mc-cb-access-period-label {
    position: relative;
    display: block;
    cursor: pointer
}

.mc-cb-access-period-label input {
    position: absolute;
    width: 1px;
    height: 1px;
    opacity: 0;
    pointer-events: none
}

.mc-cb-access-period-option {
    display: inline-flex;
    min-height: 44px;
    align-items: center;
    gap: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    font-weight: 500;

    white-space: nowrap;
    transition: color .16s ease
}

.mc-cb-access-period-dot {
    position: relative;
    display: block;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border: 1.5px solid #c9cdd3;
    border-radius: 50%;
    background: #fff;
    transition: border-color .16s ease, background .16s ease, box-shadow .16s ease
}

.mc-cb-access-period-label:hover .mc-cb-access-period-option {
    color: var(--mc-cb-text)
}

.mc-cb-access-period-label:hover .mc-cb-access-period-dot {
    border-color: #aeb4bc
}

.mc-cb-access-period-label input:focus-visible+.mc-cb-access-period-option .mc-cb-access-period-dot {
    box-shadow: 0 0 0 3px rgba(255, 192, 1, .18)
}

.mc-cb-access-period-label input:checked+.mc-cb-access-period-option {
    color: var(--mc-cb-text);
    font-weight: 600
}

.mc-cb-access-period-label input:checked+.mc-cb-access-period-option .mc-cb-access-period-dot {
    border-color: var(--mc-cb-yellow);
    background: var(--mc-cb-yellow)
}

.mc-cb-access-period-label input:checked+.mc-cb-access-period-option .mc-cb-access-period-dot::after {
    content: "";
    position: absolute;
    inset: 5px;
    border-radius: 50%;
    background: var(--mc-cb-surface-dark)
}

.mc-cb-access-expiry-result {
    display: flex;
    min-height: 68px;
    padding: 12px 14px;
    align-items: center;
    gap: 11px;
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface-soft)
}

.mc-cb-access-expiry-icon {
    display: grid;
    width: 36px;
    height: 36px;
    flex: 0 0 36px;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: #8c6500;
    background: #fff4ce
}

.mc-cb-access-expiry-icon svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round
}

.mc-cb-access-expiry-result>div {
    display: grid;
    min-width: 0;
    gap: 2px
}

.mc-cb-access-expiry-result small {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    line-height: 17px
}

.mc-cb-access-expiry-result strong {
    overflow: hidden;
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-xs);
    font-weight: 700;

    text-overflow: ellipsis;
    white-space: nowrap
}

.mc-cb-access-new-toggle {
    justify-self: start
}

.mc-cb-access-share {
    display: grid;
    grid-template-columns: 196px minmax(0, 1fr);
    gap: 20px;
    align-items: start
}

.mc-cb-access-qr,
.mc-cb-access-qr-empty {
    width: 196px;
    height: 196px;
    padding: 10px;
    border: 1px solid var(--mc-cb-border);
    border-radius: 16px;
    background: #fff
}

.mc-cb-access-qr {
    display: grid;
    place-items: center;
    border: 1px solid var(--mc-cb-border);
    cursor: zoom-in
}

img.mc-cb-access-qr {
    display: block;
    object-fit: contain;
    cursor: default
}

.mc-cb-access-qr img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: contain;
    image-rendering: pixelated
}

.mc-cb-access-qr-empty {
    display: grid;
    place-items: center;
    align-content: center;
    gap: var(--mc-cb-space-2);
    color: var(--mc-cb-text-secondary);
    text-align: center;
    font-size: var(--mc-cb-font-xs);
    line-height: 18px
}

.mc-cb-access-qr-empty svg {
    width: 42px;
    height: 42px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
    stroke-linecap: round;
    stroke-linejoin: round
}

.mc-cb-access-share-body {
    display: grid;
    min-width: 0;
    gap: 14px
}

.mc-cb-access-share-body>p {
    margin: 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    line-height: 18px
}

.mc-cb-access-copy {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: 8px
}

.mc-cb-access-copy input {
    min-width: 0;
    height: 44px;
    padding: 0 12px;
    border: 1px solid var(--mc-cb-border);
    border-radius: var(--mc-cb-radius-sm);
    outline: none;
    color: var(--mc-cb-text-secondary);
    background: var(--mc-cb-surface-soft);
    font-size: 12px
}

.mc-cb-access-share-actions {
    display: block;
    margin-top: 10px
}

.mc-cb-access-share-actions .mc-share-links {
    width: 100%
}

.mc-cb-access-share-meta {
    display: grid;
    gap: 0;
    margin: 14px 0 0
}

.mc-cb-access-share-meta div {
    display: flex;
    min-height: 34px;
    padding: 8px 0;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-3);
    border-top: 1px solid var(--mc-cb-border-soft)
}

.mc-cb-access-share-meta dt,
.mc-cb-access-share-meta dd {
    font-size: var(--mc-cb-font-xs);
    line-height: 18px
}

.mc-cb-access-share-meta dt {
    color: var(--mc-cb-text-secondary)
}

.mc-cb-access-share-meta dd {
    margin: 0;
    color: var(--mc-cb-text);
    font-weight: 600;
    text-align: right
}

.mc-cb-access-share-footer {
    display: flex;
    margin-top: 18px;
    padding-top: 16px;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
    border-top: 1px solid var(--mc-cb-border-soft)
}

.mc-cb-access-share-footer>span {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    line-height: 18px
}

.mc-cb-access-share-footer form {
    margin: 0
}

.mc-cb-access-preview {
    position: sticky;
    top: 86px;
    min-width: 0
}

.mc-cb-access-list {
    display: grid;
    gap: 8px
}

.mc-cb-access-item {
    display: grid;
    grid-template-columns: minmax(0, 1fr) auto;
    gap: var(--mc-cb-space-3);
    align-items: center;
    padding: 12px;
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface)
}

.mc-cb-access-item.is-selected {
    border-color: var(--mc-cb-yellow);
    background: #fffdf4
}

.mc-cb-access-item>a {
    display: grid;
    min-width: 0;
    gap: 3px;
    color: inherit;
    text-decoration: none
}

.mc-cb-access-item strong,
.mc-cb-access-item span,
.mc-cb-access-item small {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.mc-cb-access-item strong {
    font-size: var(--mc-cb-font-xs);
    line-height: 18px
}

.mc-cb-access-item span,
.mc-cb-access-item small {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    line-height: 17px
}

.mc-cb-access-item form {
    margin: 0
}

.mc-cb-access-switch-skeleton {
    display: grid;
    gap: var(--mc-cb-space-4);
    min-height: 260px
}

.mc-cb-access-switch-skeleton[hidden] {
    display: none !important
}

.mc-cb-access-switch-skeleton__qr {
    display: grid;
    grid-template-columns: 196px minmax(0, 1fr);
    gap: 20px
}

.mc-cb-access-switch-skeleton__square {
    width: 196px;
    height: 196px;
    border-radius: 16px
}

.mc-cb-access-switch-skeleton__body {
    display: grid;
    align-content: start;
    gap: 12px
}

.mc-cb-access-switch-skeleton__body .is-title {
    width: 62%;
    height: 20px
}

.mc-cb-access-switch-skeleton__body .is-line {
    height: 44px
}

.mc-cb-access-switch-skeleton__body .is-short {
    width: 44%;
    height: 12px
}

/* Единый блок отправки ссылок через мессенджеры, почту и системное меню. */
.mc-share-links {
    display: flex;
    flex-wrap: wrap;
    gap: var(--mc-cb-space-2);
}

.mc-share-links__item {
    -webkit-appearance: none;
    appearance: none;
    display: inline-flex;
    height: 44px;
    min-height: 44px;
    margin: 0;
    padding: 0 14px;
    box-sizing: border-box;
    align-items: center;
    justify-content: center;
    gap: var(--mc-cb-space-2);
    border: 1px solid var(--mc-cb-border);
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text);
    background: #fff;
    font: 600 12px/16px Montserrat, Arial, sans-serif !important;
    text-align: center;
    text-decoration: none;
    white-space: nowrap;
    vertical-align: middle;
    cursor: pointer;
    transition: border-color .16s ease, background .16s ease, transform .16s ease;
}

.mc-share-links__item[hidden] {
    display: none !important;
}

.mc-share-links__item:hover {
    border-color: rgba(23, 24, 26, .15);
    background: var(--mc-cb-surface-muted);
}

.mc-share-links__item:active {
    transform: translateY(1px);
}

.mc-share-links__item svg {
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
}

.mc-share-links--compact .mc-share-links__item {
    height: 44px;
    min-height: 44px;
    padding: 0 12px;
}

@media(max-width:1199px) {
    .mc-cb-access-layout {
        grid-template-columns: 1fr
    }

    .mc-cb-access-preview {
        position: static
    }

    .mc-cb-access-share {
        grid-template-columns: 190px minmax(0, 1fr)
    }

    .mc-cb-access-qr,
    .mc-cb-access-qr-empty {
        width: 190px;
        height: 190px
    }
}

@media(max-width:767px) {
    .mc-cb-access-card {
        padding: var(--mc-cb-space-4);
        border-radius: 16px
    }

    .mc-cb-access-share {
        grid-template-columns: 1fr
    }

    .mc-cb-access-qr,
    .mc-cb-access-qr-empty {
        width: min(240px, 100%);
        height: auto;
        aspect-ratio: 1;
        margin: 0 auto
    }

    .mc-cb-access-share-footer {
        align-items: flex-start;
        flex-direction: column
    }
}

@media(max-width:600px) {
    .mc-share-links {
        display: grid;
        grid-template-columns: repeat(2, minmax(0, 1fr))
    }

    .mc-share-links__item {
        width: 100%
    }
}

@media(max-width:520px) {
    .mc-cb-access-expiry-layout {
        grid-template-columns: 1fr
    }

    .mc-cb-access-periods {
        gap: 12px 18px
    }

    .mc-cb-access-copy,
    .mc-cb-access-item {
        grid-template-columns: 1fr
    }

    .mc-cb-access-copy .mc-cb-button,
    .mc-cb-access-share-actions .mc-cb-button {
        width: 100%
    }

    .mc-cb-access-item form .mc-cb-button {
        width: 100%
    }

    .mc-cb-access-badge {
        white-space: normal
    }

    .mc-cb-access-switch-skeleton__qr {
        grid-template-columns: 1fr
    }

    .mc-cb-access-switch-skeleton__square {
        width: min(196px, 100%);
        height: auto;
        aspect-ratio: 1
    }
}

.mc-cb-access-rights-grid {
    display: grid;
    grid-template-columns: minmax(0, 1.18fr) minmax(250px, .82fr);
    gap: 18px;
    align-items: stretch
}

.mc-cb-access-rights-list {
    display: grid;
    gap: 9px
}

.mc-cb-access-rights-list>div {
    display: grid;
    grid-template-columns: 24px minmax(0, 1fr);
    gap: var(--mc-cb-radius-xs);
    align-items: start;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    line-height: 18px
}

.mc-cb-access-right-icon {
    display: grid;
    width: 22px;
    height: 22px;
    place-items: center;
    border-radius: 50%
}

.mc-cb-access-right-icon svg {
    width: 14px;
    height: 14px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round
}

.mc-cb-access-right-icon.is-allowed {
    color: var(--mc-cb-success);
    background: rgba(24, 168, 101, .10)
}

.mc-cb-access-right-icon.is-denied {
    color: var(--mc-cb-danger);
    background: rgba(239, 84, 74, .10)
}

.mc-cb-access-security-note {
    display: flex;
    min-height: 100%;
    padding: var(--mc-cb-space-4);
    align-items: flex-start;
    gap: var(--mc-cb-space-3);
    border-radius: 16px;
    color: #5d4c14;
    background: linear-gradient(135deg, #fff8dd, #fff4c8)
}

.mc-cb-access-security-note>span {
    display: grid;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
    color: #8c6500;
    background: rgba(255, 255, 255, .72)
}

.mc-cb-access-security-note svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round
}

.mc-cb-access-security-note strong {
    display: block;
    margin: 1px 0 6px;
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-sm);
    line-height: 19px
}

.mc-cb-access-security-note p {
    margin: 0;
    font-size: var(--mc-cb-font-xs);
    line-height: 18px
}

@media(max-width:767px) {
    .mc-cb-access-rights-grid {
        grid-template-columns: 1fr
    }
}

/* ========================================================================== */
/* -------------------- 14 — АВТОМОБИЛИ -------------------- */
/* MemoCar 94.3.55.0 — единые автомобильные карточки и изображения            */
/* ========================================================================== */
/*
 * Общая визуальная основа используется на главной панели и в Гараже.
 * Компоненты задают только высоту, сетку и состав данных.
 */
.mc-cb-vehicle-card {
    position: relative;
    min-width: 0;
    overflow: hidden;
    border-radius: var(--mc-cb-radius-lg);
    color: #FFF;
    background: linear-gradient(145deg, #2B2E31 0%, #111315 76%);
}

.mc-cb-vehicle-card__media {
    position: absolute;
    inset: 0;
    overflow: hidden;
    background: linear-gradient(145deg, #32363A, #101214);
}

.mc-cb-vehicle-card__media::after {
    position: absolute;
    inset: 0;
    pointer-events: none;
    background:
        linear-gradient(90deg, rgba(10, 11, 12, .52) 0%, rgba(10, 11, 12, .10) 56%, rgba(10, 11, 12, .18) 100%),
        linear-gradient(180deg, rgba(9, 10, 11, .10) 12%, rgba(9, 10, 11, .28) 55%, rgba(8, 9, 10, .96) 100%);
    content: "";
}

.mc-cb-vehicle-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    filter: saturate(.88) brightness(.82) contrast(1.04);
}

.mc-cb-vehicle-card__media.is-placeholder::after {
    display: none;
}

.mc-cb-vehicle-card__media.is-placeholder img {
    filter: none;
}

.mc-cb-photo-action-slot {
    display: flex;
    align-items: center;
    justify-content: center;
}

.mc-cb-photo-action {
    z-index: 3;
    display: flex;
    width: 50%;
    height: 75px;
    min-width: 190px;
    min-height: 64px;
    padding: 12px 20px;
    align-items: center;
    justify-content: center;
    gap: var(--mc-cb-space-2);
    box-sizing: border-box;
    border: 1px dashed var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius);
    color: #FFF;
    font-weight: 600;
    line-height: 20px;
    text-decoration: none;
    transition:
        border-color .16s ease,
        background .16s ease,
        transform .16s ease;
}

.mc-cb-photo-action:hover,
.mc-cb-photo-action:focus-visible {
    border-color: var(--mc-cb-yellow);
    color: #FFF;
}

.mc-cb-photo-action svg {
    width: 20px;
    height: 20px;
    flex: 0 0 20px;
}

.mc-cb-vehicle-card__content {
    position: relative;
    z-index: 1;
    display: flex;
    min-height: 100%;
    flex-direction: column;
}

.mc-cb-vehicle-card__head {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    justify-content: space-between;
    gap: 14px;
}

.mc-cb-vehicle-card__head h2,
.mc-cb-vehicle-card__head h3 {
    margin: 0;
    line-height: 32px;
    color: #FFF;
    letter-spacing: -.025em;
    font-weight: 600;
}

.mc-cb-vehicle-card__head p {
    margin: var(--mc-cb-space-1) 0 0;
    color: var(--mc-cb-surface);
}

.mc-cb-vehicle-card__stats {
    display: grid;
    min-width: 0;
    grid-template-columns: repeat(4, minmax(0, 1fr));
}

.mc-cb-vehicle-card__stats>div {
    min-width: 0;
}

.mc-cb-vehicle-card__stats>div:first-child {
    border-left: 0
}

.mc-cb-vehicle-card__stats :is(dt, dd) {
    margin: 0;
}

.mc-cb-vehicle-card__stats :is(dt, dd, strong, span) {
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mc-cb-vehicle-card__stats :is(dt, strong) {
    color: var(--mc-cb-surface);
    font-size: var(--mc-cb-font-base);
    font-weight: 700;
    line-height: 20px;
}

.mc-cb-vehicle-card__stats :is(dd, span) {
    font-size: var(--mc-cb-font-sm);

    opacity: var(--ui-opacity-60);
}

.mc-cb-vehicle-card__footer {
    min-width: 0;
}

.mc-cb-vehicle-card .mc-cb-progress {
    --mc-cb-progress-track: rgba(255, 255, 255, .16);
}

/* Единый тон фотографий автомобиля в списках. */
.mc-cb-vehicle-thumb {
    position: relative;
    overflow: hidden;
    background: linear-gradient(145deg, #303438, #111315);
    max-height: 400px;
}

.mc-cb-vehicle-thumb::after {
    position: absolute;
    inset: 0;
    z-index: 1;
    pointer-events: none;
    background: linear-gradient(180deg, rgba(9, 10, 11, .04), rgba(9, 10, 11, .25));
    content: "";
}

.mc-cb-vehicle-thumb img {
    position: relative;
    z-index: 0;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.mc-cb-vehicle-thumb>svg,
.mc-cb-vehicle-thumb>span {
    position: relative;
    z-index: 2;
}

.mc-cb-vehicle-thumb.is-placeholder::after {
    display: none;
}

.mc-cb-vehicle-thumb.is-placeholder>img {
    filter: none;
}

@media(max-width:640px) {
    .mc-cb-vehicle-card__stats {
        grid-template-columns: repeat(2, minmax(0, 1fr));
        row-gap: 0
    }

    .mc-cb-vehicle-card__stats>div:nth-child(odd) {
        border-left: 0
    }
}

/* ========================================================================== */
/* -------------------- 15 — ПОВТОРЯЮЩИЕСЯ КАРТОЧКИ И ЭЛЕМЕНТЫ -------------------- */
/* MEMOCAR_COMMON_ACCESS_UI_94_3_55_3                                        */
/* Общие hero-блоки, QR и метаданные для сервисного доступа, паспорта и       */
/* передачи истории. Компоненты задают только уникальное содержание.          */
/* ========================================================================== */
.mc-cb-visually-hidden {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    margin: -1px !important;
    padding: 0 !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    clip-path: inset(50%) !important;
    border: 0 !important;
    white-space: nowrap !important;
}

.mc-cb-feature-hero {
    position: relative;
    min-height: 154px;
    padding-right: 250px;
    overflow: hidden;
    align-items: flex-start;
}

.mc-cb-feature-hero__copy {
    position: relative;
    z-index: 2;
    max-width: 900px;
}

.mc-cb-feature-hero__copy .mc-cb-page-head__subtitle {
    max-width: 860px
}

.mc-cb-feature-hero__visual {
    position: absolute;
    z-index: 1;
    top: -30px;
    right: 28px;
    width: 220px;
    height: 190px;
    pointer-events: none;
}

.mc-cb-feature-hero__visual::before,
.mc-cb-feature-hero__visual::after {
    position: absolute;
    top: 62%;
    left: 50%;
    width: 260px;
    height: 70px;
    border: 1px solid rgba(221, 164, 0, .20);
    border-radius: 50%;
    content: "";
    transform: translate(-50%, -50%) rotate(-6deg);
}

.mc-cb-feature-hero__visual::after {
    width: 190px;
    height: 52px;
    border-color: rgba(221, 164, 0, .13);
    transform: translate(-50%, -50%) rotate(8deg);
}

.mc-cb-feature-hero__visual img {
    position: absolute;
    z-index: 2;
    top: 50%;
    left: 50%;
    display: block;
    width: 138px;
    height: 138px;
    object-fit: contain;
    filter: drop-shadow(0 16px 28px rgba(203, 146, 0, .22));
    transform: translate(-50%, -50%);
}

.mc-cb-access-count {
    display: inline-flex;
    min-width: 28px;
    min-height: 28px;
    padding: 4px 8px;
    align-items: center;
    justify-content: center;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-badge-neutral-text);
    background: var(--mc-cb-badge-neutral-bg);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

}

@media(max-width:900px) {
    .mc-cb-feature-hero {
        min-height: 132px;
        padding-right: 180px
    }

    .mc-cb-feature-hero__visual {
        right: 8px;
        width: 170px;
        height: 150px
    }

    .mc-cb-feature-hero__visual img {
        width: 112px;
        height: 112px
    }
}

@media(max-width:767px) {
    .mc-cb-feature-hero {
        min-height: 0;
        padding-right: 0
    }

    .mc-cb-feature-hero__visual {
        display: none
    }
}


/* Общие карточки показателей: расходы, документы, аналитика, гараж и сводки. */
.mc-cb-stat-grid {
    display: grid;
    min-width: 0;
    gap: 14px;
}

@media(max-width:380px) {
    .mc-cb-stat-grid {
        grid-template-columns: 1fr;
    }
}

body.mc-shell-page .mc-cb-stat-card {
    display: flex;
    box-sizing: border-box;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
    border-radius: var(--mc-cb-radius);
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
}

body.mc-shell-page .mc-cb-stat-card__value {
    font-size: var(--mc-cb-font-lg);
    font-weight: 600;
    line-height: 20px;
    letter-spacing: -0.025em;
}

body.mc-shell-page .mc-cb-stat-card--accent {
    border-color: rgba(255, 192, 1, .34);
    background: linear-gradient(135deg, #FFC001 0%, #FFD34E 100%);
}

body.mc-shell-page .mc-cb-stat-card--dark {
    border-color: rgba(255, 255, 255, .08);
    color: var(--mc-cb-text-on-dark);
    background: linear-gradient(145deg, #222326 0%, #111214 100%);
    box-shadow: var(--mc-cb-shadow-dark);
}

.mc-cb-stat-card__copy {
    display: grid;
    min-width: 0;
    gap: 4px;
}

.mc-cb-stat-card__head {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: var(--mc-cb-radius-xs);
}

.mc-cb-stat-card__label {
    color: var(--mc-cb-text-secondary);
    font-weight: 500;
}

.mc-cb-stat-card--accent .mc-cb-stat-card__label {
    color: rgba(17, 18, 20, .72);
}

.mc-cb-stat-card--dark .mc-cb-stat-card__label {
    color: rgba(255, 255, 255, .68);
}

.mc-cb-stat-card__note {
    margin: 0;
    color: var(--mc-cb-text-muted);
    font-size: var(--mc-cb-font-sm);
}

.mc-cb-stat-card--accent .mc-cb-stat-card__note {
    color: rgba(17, 18, 20, .62);
}

.mc-cb-stat-card--dark .mc-cb-stat-card__note {
    color: rgba(255, 255, 255, .56);
}

.mc-cb-stat-card__icon {
    display: grid;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    place-items: center;
    border-radius: 13px;
    color: var(--mc-cb-badge-accent-text);
    background: var(--mc-cb-badge-accent-bg);
}

.mc-cb-stat-card__icon svg {
    width: 22px;
    height: 22px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-stat-card--accent .mc-cb-stat-card__icon {
    color: var(--mc-cb-text);
    background: rgba(255, 255, 255, .50);
}

.mc-cb-stat-card--dark .mc-cb-stat-card__icon {
    color: var(--mc-cb-yellow);
    background: rgba(255, 192, 1, .12);
}

/* Общая панель действий и фильтров. */
.mc-cb-toolbar {
    display: flex;
    flex-wrap: wrap;
    min-width: 0;
    padding: 14px;
    box-sizing: border-box;
    align-items: flex-end;
    justify-content: space-between;
    gap: 14px;
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius);
    background: var(--mc-cb-surface);
    box-shadow: var(--mc-cb-shadow);
}

/* Универсальный ряд списка с одинаковыми поверхностями и отступами. */
body.mc-shell-page .mc-cb-list-row {
    display: flex;
    min-width: 0;
    min-height: 64px;
    padding: 12px 14px;
    box-sizing: border-box;
    align-items: center;
    gap: var(--mc-cb-space-3);
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
    text-decoration: none;
    transition: border-color .16s ease, box-shadow .16s ease, transform .16s ease;
}

body.mc-shell-page .mc-cb-list-row:hover {
    border-color: rgba(255, 192, 1, .45);
    box-shadow: var(--mc-cb-shadow);
}

body.mc-shell-page .mc-cb-list-row.is-active,
body.mc-shell-page .mc-cb-list-row[aria-current="true"] {
    border-color: var(--mc-cb-yellow);
    box-shadow: 0 0 0 2px rgba(255, 192, 1, .10);
}

/* Общие строки сводки в боковых панелях и карточках подробностей. */
.mc-cb-summary-list {
    display: grid;
    min-width: 0;
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface-soft);
    overflow: hidden;
}

/* Общий выбор варианта карточками: тарифы, способы оплаты и приглашения. */
.mc-cb-option-grid {
    display: grid;
    min-width: 0;
    gap: var(--mc-cb-space-2);
}

body.mc-shell-page .mc-cb-option-card {
    display: flex;
    min-width: 0;
    min-height: 52px;
    padding: 11px 13px;
    box-sizing: border-box;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-3);
    border: 1px solid var(--mc-cb-border);
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
    font-size: var(--mc-cb-font-sm);
    font-weight: 600;

    cursor: pointer;
    transition: border-color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

body.mc-shell-page .mc-cb-option-card:hover {
    border-color: #C8CCD2;
    background: var(--mc-cb-surface-soft);
}

body.mc-shell-page .mc-cb-option-card.is-active,
body.mc-shell-page .mc-cb-option-card.is-selected,
body.mc-shell-page .mc-cb-option-card[aria-pressed="true"] {
    border-color: var(--mc-cb-yellow);
    background: rgba(255, 192, 1, .10);
    box-shadow: 0 0 0 2px rgba(255, 192, 1, .10);
}

/* Общая область загрузки и строки файлов. */
.mc-cb-file-drop {
    position: relative;
    display: grid;
    min-height: 92px;
    padding: var(--mc-cb-space-4);
    box-sizing: border-box;
    place-items: center;
    align-content: center;
    gap: 5px;
    border: 1px dashed var(--mc-cb-text-muted);
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-text-secondary);
    text-align: center;

}

/* Горизонтальный file-drop: общий production-контракт для форм CABINET.
 * Прикладной компонент задаёт accept/multiple и собственную обработку файлов,
 * а визуальная геометрия и внутренние элементы остаются общими. */
.mc-cb-file-drop--row {
    display: flex;
    min-height: 94px;
    padding: 25px 20px;
    align-items: center;
    justify-content: flex-start;
    place-items: initial;
    align-content: initial;
    gap: var(--mc-cb-space-3, 12px);
    text-align: left;
    cursor: pointer;
    transition: border-color .18s ease, background-color .18s ease, box-shadow .18s ease;
}

.mc-cb-file-drop:hover,
.mc-cb-file-drop--row:hover,
.mc-cb-file-drop--row.is-dragover,
.mc-cb-file-drop--row.has-file {
    border-color: rgba(255, 192, 1, .82);
}

.mc-cb-file-drop--row.is-dragover,
.mc-cb-file-drop--row:focus-within {
    box-shadow: 0 0 0 3px rgba(255, 192, 1, .14);
}

.mc-cb-file-drop__icon {
    display: grid;
    width: 42px;
    height: 42px;
    flex: 0 0 42px;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
    color: #9A7500;
    background: #FFF2BC;
}

.mc-cb-file-drop__icon svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-file-drop__tile-icon {
    display: grid;
    width: 32px;
    height: 32px;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary);
    background: var(--mc-cb-surface-muted);
}

.mc-cb-file-drop__tile-icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-file-drop__copy {
    display: grid;
    min-width: 0;
    flex: 1 1 auto;
    gap: 3px;
}

.mc-cb-file-drop__copy strong {
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-sm);
    font-weight: 600;
    line-height: 1.4;
}

.mc-cb-file-drop__copy small {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    line-height: 1.45;
}

.mc-cb-file-drop__button {
    position: relative;
    z-index: 1;
    flex: 0 0 auto;
}

.mc-cb-file-drop__input {
    position: absolute;
    z-index: 2;
    inset: 0;
    width: 100%;
    height: 100%;
    margin: 0;
    opacity: 0;
    cursor: pointer;
}

@media (max-width:767px) {
    .mc-cb-file-drop--row {
        align-items: flex-start;
        flex-wrap: wrap;
    }

    .mc-cb-file-drop__button {
        width: 100%;
        box-sizing: border-box;
    }
}

.mc-cb-file-list {
    display: grid;
    min-width: 0;
    gap: var(--mc-cb-space-2);
}

.mc-cb-file-item {
    display: flex;
    min-width: 0;
    min-height: 48px;
    padding: 9px 11px;
    box-sizing: border-box;
    align-items: center;
    gap: var(--mc-cb-space-2);
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface-soft);
}

.mc-cb-file-item>span,
.mc-cb-file-item>div {
    min-width: 0;
    flex: 1;
}


/* Общие плиточные превью файлов CABINET.
 * Компонент отвечает только за визуальную геометрию файла; прикладная страница
 * определяет источник, действие по нажатию и право на удаление. */
.mc-cb-file-preview-list {
    display: flex;
    min-width: 0;
    align-items: flex-start;
    flex-wrap: wrap;
    gap: var(--mc-cb-space-2);
}

.mc-cb-file-drop--tile {
    width: 116px;
    min-width: 116px;
    min-height: 150px;
    padding: var(--mc-cb-space-2);
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    gap: var(--mc-cb-space-2);
    text-align: center;
}

body.mc-shell-page .mc-cb-file-preview {
    position: relative;
    display: block;
    width: auto;
    height: 150px;
    flex: 0 0 116px;
    min-width: 0;
    overflow: hidden;
    padding: var(--mc-cb-space-2);
    border: 1px solid var(--mc-cb-border-soft);
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface-soft);
    cursor: pointer;
    appearance: none;
    box-sizing: border-box;
}

body.mc-shell-page .mc-cb-file-preview__image {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: var(--mc-cb-radius-xs);
    object-fit: cover;
}

body.mc-shell-page :is(a, button, label).mc-cb-file-preview {
    cursor: pointer;
}

body.mc-shell-page .mc-cb-file-preview:hover {
    border-color: var(--mc-cb-yellow);
    color: var(--mc-cb-text);
    opacity: 1;
}

.mc-cb-file-preview__image,
.mc-cb-file-preview__type {
    display: block;
    width: 100%;
    height: 72px;
    border-radius: var(--mc-cb-radius-xs);
}

.mc-cb-file-preview__image {
    object-fit: cover;
}

.mc-cb-file-preview__type {
    display: grid;
    place-items: center;
    color: var(--mc-cb-text-secondary);
    background: var(--mc-cb-surface);
    font-size: var(--mc-cb-font-xs);
    font-style: normal;
    font-weight: 700;
}

.mc-cb-file-preview__name {
    display: block;
    min-width: 0;
    overflow: hidden;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

body.mc-shell-page .mc-cb-file-preview>.mc-cb-file-remove {
    top: -4px;
    right: -4px;
}

/* Любая короткая справочная иконка использует ui.hint и заметный фокус. */
body.mc-shell-page [data-hint][data-hint-no-icon] {
    cursor: help;
}

/* Единое интерактивное поведение вкладок. */
.mc-cb-tabs {
    max-width: 100%;
    overflow-x: auto;
    scrollbar-width: none;
}

.mc-cb-tabs::-webkit-scrollbar {
    display: none;
}

.mc-cb-tabs button,
.mc-cb-tabs a {
    flex: 0 0 auto;
    white-space: nowrap;
    transition: color .16s ease, background-color .16s ease, box-shadow .16s ease;
}

.mc-cb-tabs button:hover,
.mc-cb-tabs a:hover {
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface);
}

@media (max-width:767px) {
    .mc-cb-toolbar {
        align-items: stretch;
        flex-direction: column;
    }

    body.mc-shell-page .mc-cb-stat-card {
        min-height: 100px;
    }
}

/* ========================================================================== */
/* -------------------- 16 — ВЛОЖЕНИЯ, ВКЛАДКИ, ДОПОЛНИТЕЛЬНЫЕ ПАТТЕРНЫ -------------------- */
/* MemoCar 94.3.55.4 — завершающие общие элементы кабинета                    */
/* ========================================================================== */

/* Полноширинная строка действия с заголовком и пояснением. */
body.mc-shell-page .mc-cb-action-row {
    -webkit-appearance: none;
    appearance: none;
    display: grid;
    width: 100%;
    min-height: 56px;
    padding: 11px 14px;
    box-sizing: border-box;
    align-content: center;
    gap: 3px;
    border: 1px solid transparent;
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface-soft);
    font: 600 var(--mc-cb-font-sm)/18px Montserrat, Arial, sans-serif;
    text-align: left;
    text-decoration: none;
    cursor: pointer;
    transition: background-color .16s ease, border-color .16s ease, box-shadow .16s ease, color .16s ease;
}

body.mc-shell-page .mc-cb-action-row:hover {
    color: var(--mc-cb-text);
    background: var(--mc-cb-surface-muted);
    border-color: var(--mc-cb-border-soft);
}

body.mc-shell-page .mc-cb-action-row small {
    display: block;
    margin: 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-base);
    font-weight: normal;
}

body.mc-shell-page .mc-cb-action-row--danger {
    color: var(--mc-cb-danger);
    background: var(--mc-cb-badge-danger-bg);
}

body.mc-shell-page .mc-cb-action-row--danger:hover {
    color: #C63C35;
    background: #FFE9E7;
    border-color: rgba(239, 84, 74, .22);
}

/* Семантическая положительная кнопка для подтверждения результата. */
body.mc-shell-page :is(.mc-cb-button).mc-cb-button--success {
    color: var(--mc-cb-badge-success-text);
    background: var(--mc-cb-badge-success-bg);
    border-color: rgba(24, 168, 101, .28);
}

body.mc-shell-page :is(.mc-cb-button).mc-cb-button--success:hover {
    color: #0E7044;
    background: #DDF5E8;
    border-color: rgba(24, 168, 101, .46);
}

/* Иконки состояния в тёмных предпросмотрах форм. */
body.mc-shell-page .mc-cb-check-icon {
    display: grid;
    width: 22px;
    height: 22px;
    min-width: 22px;
    place-items: center;
    border: 1px solid rgba(255, 192, 1, .55);
    border-radius: 50%;
    color: var(--mc-cb-yellow);
}

body.mc-shell-page .mc-cb-check-icon svg {
    width: 13px;
    height: 13px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.mc-shell-page .mc-cb-check-icon.is-muted {
    border-color: rgba(255, 255, 255, .16);
    color: var(--mc-cb-text-muted);
}

/* Общая кнопка удаления файла поверх миниатюры. */
body.mc-shell-page .mc-cb-file-remove {
    position: absolute;
    display: grid;
    width: 44px;
    height: 44px;
    min-width: 44px;
    min-height: 44px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: var(--mc-cb-radius-sm);
    color: #FFF;
    background: transparent;
    cursor: pointer;
    z-index: 2;
}

body.mc-shell-page .mc-cb-file-remove::before {
    position: absolute;
    width: 28px;
    height: 28px;
    border-radius: var(--mc-cb-radius-xs);
    background: rgba(17, 18, 20, .78);
    box-shadow: 0 2px 8px rgba(0, 0, 0, .14);
    content: "";
    z-index: -1;
}

body.mc-shell-page .mc-cb-file-remove:hover::before {
    background: var(--mc-cb-surface-dark)
}

body.mc-shell-page .mc-cb-file-remove svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 2;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* Повышенная специфичность общих вкладок: локальные страницы задают только геометрию. */
body.mc-shell-page .mc-cb-tabs :is(button, a) {
    min-height: 44px;
    box-sizing: border-box;
    font-style: normal;
}

/* Линейные вкладки для крупных разделов: Семья, Передача истории, Поддержка, Операции, Сообщения. */
body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line {
    display: flex;
    width: max-content;
    max-width: 100%;
    padding: 0;
    gap: 28px;
    overflow-x: auto;
    border-bottom: 1px solid var(--mc-cb-border);
    border-radius: 0;
    background: transparent;
    scrollbar-width: none;
}

body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line::-webkit-scrollbar {
    display: none
}

body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line :is(button, a) {
    position: relative;
    min-width: max-content;
    min-height: 48px;
    padding: 0 2px;
    border: 0;
    border-radius: 0;
    color: var(--mc-cb-text-secondary);
    background: transparent;
    box-shadow: none;
    font: 600 var(--mc-cb-font-sm)/18px Montserrat, Arial, sans-serif;
}

body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line :is(button, a)::after {
    position: absolute;
    right: 0;
    bottom: -1px;
    left: 0;
    height: 3px;
    border-radius: 3px 3px 0 0;
    background: transparent;
    content: "";
}

body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line :is(button, a):hover {
    color: var(--mc-cb-text);
    background: transparent;
}

body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line :is(button, a).is-active {
    color: var(--mc-cb-text);
    background: transparent;
    box-shadow: none;
    font-weight: 700;
}

body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line :is(button, a).is-active::after {
    background: var(--mc-cb-yellow);
}

@media(max-width:700px) {
    body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line {
        gap: 22px
    }
}

/* Встроенная SVG-иконка для строк, карточек и ссылок вне обычной кнопки. */
body.mc-shell-page .mc-cb-inline-icon {
    display: inline-grid;
    width: 18px;
    height: 18px;
    min-width: 18px;
    place-items: center;
    color: currentColor;
    font-style: normal;
}

body.mc-shell-page .mc-cb-inline-icon svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/*
 * Универсальная карточка журнала и списка.
 * Используется для расходов, истории доступа семьи, операций передачи
 * технической истории и других однотипных журналов кабинета.
 */
body.mc-shell-page .mc-cb-list-card {
    min-width: 0;
    padding: var(--mc-cb-space-4);
}

body.mc-shell-page .mc-cb-list-card__head {
    display: flex;
    min-height: 42px;
    margin-bottom: 8px;
    align-items: flex-start;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
}

body.mc-shell-page .mc-cb-list-card__head>div {
    display: grid;
    min-width: 0;
    gap: 3px;
}

body.mc-shell-page .mc-cb-list-card__head :is(h2, p) {
    margin: 0
}

body.mc-shell-page .mc-cb-list-card__head h2 {
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-base);
    font-weight: 600;
    line-height: 20px;
}

body.mc-shell-page .mc-cb-list-card__head p {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
}

body.mc-shell-page .mc-cb-list-card__count {
    display: grid;
    min-width: 28px;
    height: 28px;
    padding: 0 8px;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary);
    background: var(--mc-cb-surface-muted);
    font-size: 11px;
    font-style: normal;
    font-weight: 700;
}

body.mc-shell-page .mc-cb-list {
    display: grid;
    min-width: 0;
}

body.mc-shell-page .mc-cb-list__row {
    display: grid;
    min-width: 0;
    min-height: 58px;
    padding: 8px 4px;
    box-sizing: border-box;
    grid-template-columns: auto minmax(0, 1fr) auto auto;
    align-items: center;
    gap: var(--mc-cb-space-3);
    border: 0;
    border-top: 1px solid var(--mc-cb-border-soft);
    color: var(--mc-cb-text);
    background: transparent;
    text-decoration: none;
    transition: background .16s ease, transform .16s ease;
}

body.mc-shell-page .mc-cb-list__row:first-child {
    border-top: 0
}

body.mc-shell-page .mc-cb-list__icon {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    border-radius: var(--mc-cb-radius-xs);
}

body.mc-shell-page .mc-cb-list__icon svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

body.mc-shell-page .mc-cb-list__content {
    display: grid;
    min-width: 0;
    gap: 3px;
}

body.mc-shell-page .mc-cb-list__title {
    overflow: hidden;
    font-weight: 500;
    text-overflow: ellipsis;
}

body.mc-shell-page .mc-cb-list__meta {
    overflow: hidden;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    text-overflow: ellipsis;
}

body.mc-shell-page .mc-cb-list__aside {
    display: grid;
    justify-items: end;
    gap: 4px;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-xs);
    text-align: right;
}

body.mc-shell-page .mc-cb-list__value {
    color: var(--mc-cb-text);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    text-align: right;
    white-space: nowrap;
}

body.mc-shell-page .mc-cb-list__badge {
    justify-self: start
}

body.mc-shell-page .mc-cb-list__chevron {
    display: grid;
    width: 18px;
    height: 18px;
    place-items: center;
    color: var(--mc-cb-text-muted);
    font-style: normal;
}

body.mc-shell-page .mc-cb-list__chevron svg {
    width: 17px;
    height: 17px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media(max-width:700px) {
    body.mc-shell-page .mc-cb-list-card {
        padding: 14px
    }

    body.mc-shell-page .mc-cb-list__row {
        grid-template-columns: auto minmax(0, 1fr) auto;
        gap: var(--mc-cb-radius-xs);
    }

    body.mc-shell-page .mc-cb-list__aside {
        grid-column: 2;
        justify-items: start;
        text-align: left;
    }

    body.mc-shell-page .mc-cb-list__badge {
        display: none
    }

    body.mc-shell-page .mc-cb-list__value {
        grid-column: 3;
        grid-row: 1
    }

    body.mc-shell-page .mc-cb-list__chevron {
        grid-column: 3;
        grid-row: 1/3;
        margin-left: auto
    }
}

/* Переданная техническая история в общем списке. */
body.mc-shell-page .mc-cb-source-mark.is-transfer {
    color: var(--mc-cb-violet);
    background: rgba(124, 88, 232, .11);
}

body.mc-shell-page .mc-cb-detail-head__source.is-transfer {
    color: var(--mc-cb-violet);
    background: rgba(124, 88, 232, .11);
}

.mc-ownership-complete-form {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    flex-direction: column;
    margin-top: var(--mc-cb-space-4);
}

/* Единица измерения внутри общего поля */
.mc-ownership-complete-form__measure,
.mc-ownership-complete-form__money {
    position: relative;
    min-width: 0;
}

.mc-ownership-complete-form__measure>.mc-cb-field,
.mc-ownership-complete-form__money>.mc-cb-field {
    padding-right: 72px;
}

.mc-ownership-complete-form__measure>span,
.mc-ownership-complete-form__money>span {
    position: absolute;
    top: 50%;
    right: var(--mc-cb-space-4);
    transform: translateY(-50%);
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    font-weight: 600;
    pointer-events: none;
}

.mc-ownership-complete-form__note {
    margin: 0;
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    line-height: 1.5;
}

.mc-ownership-complete-form__trap {
    position: absolute !important;
    left: -10000px !important;
    width: 1px !important;
    height: 1px !important;
    overflow: hidden !important;
}

.mc-ownership-complete-form[aria-busy="true"] .mc-cb-field {
    pointer-events: none;
    opacity: .72;
}

/* Единый компактный баннер предложения истории автомобиля. */
.mc-cb-history-offer-slot:empty,
.mc-cb-history-offer-slot[hidden] {
    display: none
}

.mc-cb-history-offer-slot {
    width: 100%
}

.mc-cb-banner {
    position: relative;
    display: grid;
    grid-template-columns: 64px minmax(0, 1fr) auto;
    align-items: center;
    gap: var(--mc-cb-space-1);
    padding: var(--mc-cb-space-6);
    border-radius: var(--mc-cb-radius-lg);
    background: var(--mc-cb-surface);
}

.mc-cb-banner__icon {
    display: grid;
    width: 56px;
    height: 56px;
    place-items: center;
    align-self: start;
    color: var(--mc-cb-text, #17181a)
}

.mc-cb-banner__icon--warning {
    background: var(--mc-cb-yellow, #ffc001);
    color: #17181a
}

.mc-cb-banner__icon svg,
.mc-cb-banner__close svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round
}

.mc-cb-banner__body {
    display: grid;
    min-width: 0;
    gap: 4px;
    padding-right: 8px
}

.mc-cb-banner__eyebrow {
    color: var(--mc-cb-text-secondary, #6d727b);
    font-size: var(--mc-cb-font-xs);
    line-height: 16px;
    font-weight: 500
}

.mc-cb-banner__title {
    margin: 0;
    color: var(--mc-cb-text, #17181a);
    font-size: 20px;
    line-height: 26px;
    font-weight: 500;
    letter-spacing: -.015em
}

.mc-cb-banner__stats {
    display: flex;
    flex-wrap: wrap;
    gap: var(--mc-cb-space-2);
    margin-top: 2px
}

.mc-cb-banner__stat {
    display: grid;
    min-width: 190px;
    gap: 3px;
    padding: 10px 12px;
    border: 1px solid var(--mc-cb-border, #e7e9ed);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface, #fff)
}

.mc-cb-banner__stat:first-child {
    min-width: 230px
}

.mc-cb-banner__stat span {
    color: var(--mc-cb-text-secondary, #6d727b);
    font-size: 11px;
    line-height: 15px
}

.mc-cb-banner__stat strong {
    color: var(--mc-cb-text, #17181a);
    font-size: var(--mc-cb-font-sm);

    font-weight: 700;
    white-space: nowrap
}

.mc-cb-banner__text {
    margin: 2px 0 0;
    color: var(--mc-cb-text-secondary, #6d727b);
}

body.mc-shell-page .mc-cb-banner__close {
    position: absolute;
    top: 16px;
    right: 16px;
    background: var(--mc-cb-surface-muted, #f1f2f4) !important;
    color: var(--mc-cb-text-muted, #969ca5) !important
}

body.mc-shell-page .mc-cb-banner__close:hover {
    background: #e9ebee !important;
    color: var(--mc-cb-text, #17181a) !important
}

.mc-cb-banner__actions {
    display: flex;
    min-width: max-content;
    align-items: center;
    justify-content: flex-end;
    gap: var(--mc-cb-space-2);
    padding-top: 34px;
    white-space: nowrap
}

.mc-cb-banner__actions .mc-cb-button {
    justify-content: center
}

.mc-cb-banner__actions .mc-cb-button--primary {
    min-width: 220px
}

.mc-cb-banner__actions .mc-cb-button--dark {
    min-width: 110px
}

@media (max-width:1180px) {
    .mc-cb-banner {
        grid-template-columns: 56px minmax(0, 1fr)
    }

    .mc-cb-banner__actions {
        grid-column: 2;
        min-width: 0;
        justify-content: flex-start;
        padding-top: 4px;
        white-space: normal
    }

    .mc-cb-banner__body {
        padding-right: 48px
    }

    .mc-cb-banner__actions .mc-cb-button--primary {
        min-width: 210px
    }
}

@media (max-width:767px) {
    .mc-cb-banner {
        grid-template-columns: 48px minmax(0, 1fr);
        gap: 14px;
        padding: 16px
    }

    .mc-cb-banner__icon {
        width: 48px;
        height: 48px;
        border-radius: 14px
    }

    .mc-cb-banner__body {
        gap: var(--mc-cb-space-2);
        padding-right: 36px
    }

    .mc-cb-banner__title {
        font-size: 18px;
        line-height: 24px
    }

    .mc-cb-banner__stats {
        display: grid;
        grid-template-columns: 1fr
    }

    .mc-cb-banner__stat,
    .mc-cb-banner__stat:first-child {
        min-width: 0
    }

    .mc-cb-banner__stat strong {
        white-space: normal
    }

    .mc-cb-banner__actions {
        display: grid;
        grid-column: 1/-1;
        padding-top: 2px
    }

    .mc-cb-banner__actions .mc-cb-button {
        width: 100%;
        min-width: 0
    }

    .mc-cb-banner__close {
        top: 12px;
        right: 12px
    }
}

/* -------------------- 17 — ГЛОБАЛЬНЫЕ УВЕДОМЛЕНИЯ -------------------- */
/* CABINET 1.32.4: фирменный тёмный стиль штатных ui.notification. */
.ui-notification-stack {
    z-index: 19000 !important;
    max-width: calc(100vw - 40px) !important;
}

.ui-notification-balloon {
    max-width: calc(100vw - 40px) !important;
    overflow: hidden !important;
    border: 0 !important;
    border-radius: var(--mc-cb-radius-sm) !important;
    background: transparent !important;
    box-shadow: 0 14px 34px rgba(10, 11, 13, .28) !important;
    filter: none !important;
    backdrop-filter: none !important;
    -webkit-backdrop-filter: none !important;
}

.ui-notification-balloon.ui-notification-balloon-animate {
    opacity: 1 !important;
}

.mc-cb-notification {
    --mc-cb-notification-accent: var(--mc-cb-info, #4F78E8);
    position: relative;
    display: grid;
    width: 100%;
    min-width: 0;
    grid-template-columns: 48px minmax(0, 1fr) 44px;
    align-items: center;
    gap: var(--mc-cb-space-3);
    padding: 14px;
    overflow: hidden;
    border-radius: var(--mc-cb-radius-sm);
    background: rgba(17, 18, 20, .80) !important;
    -webkit-backdrop-filter: blur(8px) saturate(120%);
    backdrop-filter: blur(8px) saturate(120%);
    color: var(--mc-cb-text-on-dark, #fff);
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, .04);
    opacity: 1;
    font-family: Montserrat, Arial, sans-serif;
    box-sizing: border-box;
}

.mc-cb-notification::before {
    content: "";
    position: absolute;
    top: 16px;
    bottom: 16px;
    left: 6px;
    width: 3px;
    border-radius: 999px;
    background: var(--mc-cb-notification-accent);
}

.mc-cb-notification--success {
    --mc-cb-notification-accent: var(--mc-cb-success, #18A865);
}

.mc-cb-notification--warning,
.mc-cb-notification--info {
    --mc-cb-notification-accent: var(--mc-cb-yellow, #FFC001);
}

.mc-cb-notification--error {
    --mc-cb-notification-accent: var(--mc-cb-danger, #EF544A);
}

.mc-cb-notification.is-action {
    cursor: pointer;
    transition: transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}

.mc-cb-notification.is-action:hover {
    transform: translateY(-1px);
    border-color: rgba(255, 255, 255, .14);
    box-shadow: 0 14px 30px rgba(0, 0, 0, .18), inset 0 1px 0 rgba(255, 255, 255, .035);
}

.mc-cb-notification__logo {
    display: grid;
    width: 48px;
    height: 48px;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .10);
    border-radius: var(--mc-cb-radius-sm);
    background: #fff;
}

.mc-cb-notification__logo img {
    display: block;
    width: 36px;
    height: auto;
    max-width: 100%;
    object-fit: contain;
}

.mc-cb-notification__body {
    display: grid;
    min-width: 0;
    gap: 3px;
}

.mc-cb-notification__title {
    display: block;
    min-width: 0;
    color: var(--mc-cb-text-on-dark, #fff);
    font-size: 15px;
    line-height: 20px;
    font-weight: 500;
    letter-spacing: -.01em;
    overflow-wrap: anywhere;
}

.mc-cb-notification__text {
    display: block;
    min-width: 0;
    color: rgba(255, 255, 255, .62);
    font-size: var(--mc-cb-font-xs);
    font-weight: 400;
    overflow-wrap: anywhere;
}

.mc-cb-notification__close {
    display: grid;
    width: 44px;
    height: 44px;
    place-items: center;
    align-self: start;
    padding: 0;
    border: 0;
    border-radius: var(--mc-cb-radius-sm);
    background: rgba(255, 255, 255, .06);
    color: rgba(255, 255, 255, .54);
    cursor: pointer;
    transition: background .18s ease, color .18s ease;
}

.mc-cb-notification__close:hover {
    background: rgba(255, 255, 255, .12);
    color: var(--mc-cb-text-on-dark, #fff);
}

.mc-cb-notification__close:focus-visible {
    outline: 2px solid var(--mc-cb-yellow, #ffc001);
    outline-offset: 2px;
}

.mc-cb-notification__close svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

@media (max-width:430px) {
    .mc-cb-notification {
        grid-template-columns: 44px minmax(0, 1fr) 44px;
        gap: var(--mc-cb-space-2);
        padding: 12px;
        border-radius: 16px;
    }

    .mc-cb-notification::before {
        top: 12px;
        bottom: 12px;
    }

    .mc-cb-notification__logo {
        width: 44px;
        height: 44px;
        border-radius: 13px;
    }

    .mc-cb-notification__logo img {
        width: 32px;
    }

    .mc-cb-notification__title {
        font-size: var(--mc-cb-font-base);
        line-height: 19px;
    }

    .mc-cb-notification__text {
        font-size: var(--mc-cb-font-xs);
    }
}

@media (prefers-reduced-motion:reduce) {

    .mc-cb-notification.is-action,
    .mc-cb-notification__close {
        transition: none;
    }
}

/* -------------------- 18 — УЗКИЕ МОБИЛЬНЫЕ ЭКРАНЫ -------------------- */
/* 94.3.58.20: каноническая нижняя ширина интерфейса 320 px. */
@media(max-width:340px) {
    body.mc-shell-page .mc-shell-content {
        padding: 0 5px calc(110px + env(safe-area-inset-bottom, 0px));
    }

    body.mc-shell-page .mc-shell-brand--mobile img {
        max-width: 112px
    }

    body.mc-shell-page .mc-shell-topbar__actions {
        gap: 8px
    }

    body.mc-shell-page .mc-shell-bottom {
        width: 100%;
        padding: 0 8px 0 8px;
        border-radius: 4px 4px 0 0;
    }

    .mc-shell-bottom__item {
        padding: 0;
    }

    body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line {
        gap: 18px
    }

    body.mc-shell-page .mc-period__item {
        flex: 0 0 auto;
        padding-right: 8px;
        padding-left: 8px
    }

    .mc-cb-banner {
        padding: 14px 12px;
        grid-template-columns: 44px minmax(0, 1fr);
        gap: 10px
    }

    .mc-cb-banner__icon {
        width: 44px;
        height: 44px
    }

    .ui-notification-stack,
    .ui-notification-balloon {
        max-width: calc(100vw - 24px) !important
    }

    .mc-cb-notification {
        grid-template-columns: 40px minmax(0, 1fr) 44px;
        gap: var(--mc-cb-space-2);
        padding: 10px
    }

    .mc-cb-notification__logo {
        width: 40px;
        height: 40px
    }

    .mc-cb-notification__logo img {
        width: 30px
    }
}

/* 94.3.58.22: финальная живая ревизия кабинета на ширине 320 px.
 * 320 px — поддерживаемая ширина, а не принудительная min-width документа.
 * Переполнение устраняется геометрией элементов, а не скрытием содержимого. */
@media(max-width:360px) {

    body.mc-shell-page .mc-shell,
    body.mc-shell-page .mc-shell-workspace,
    body.mc-shell-page .mc-shell-topbar,
    body.mc-shell-page .mc-shell-content,
    body.mc-shell-page .mc-shell-content__inner,
    body.mc-shell-page .mc-cb-page {
        min-width: 0;
        max-width: 100%;
    }

    body.mc-shell-page .mc-cb-page-head__title,
    body.mc-shell-page .mc-cb-page-head__subtitle,
    body.mc-shell-page .mc-cb-card__title,
    body.mc-shell-page .mc-cb-card__subtitle {
        max-width: 100%;
        overflow-wrap: anywhere;
    }

    body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line {
        width: 100%;
        min-width: 0;
        max-width: 100%;
        gap: 18px;
    }

    body.mc-shell-page .mc-cb-tabs.mc-cb-tabs--line :is(button, a) {
        flex: 0 0 auto;
    }

    body.mc-shell-page .mc-cb-timeline-item__main strong,
    body.mc-shell-page .mc-cb-timeline-item__main small,
    body.mc-shell-page .mc-cb-timeline-item__meta small {
        white-space: normal;
        overflow-wrap: anywhere;
    }

    body.mc-shell-page .mc-cb-banner__actions {
        grid-column: 1/-1;
        width: 100%;
        min-width: 0;
        padding-top: 0;
        flex-wrap: wrap;
        white-space: normal;
    }
}

[data-mc-cabinet-icon] {
    display: block;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

/* -------------------- 19 — PWA -------------------- */
/* CABINET 1.3.0 — ручное обновление PWA жестом вниз. */
.mc-pwa-pull-refresh {
    position: fixed;
    z-index: 1200;
    top: calc(env(safe-area-inset-top) + 8px);
    left: 50%;
    display: flex;
    min-height: 40px;
    padding: 6px 12px;
    align-items: center;
    gap: var(--mc-cb-space-2);
    border: 1px solid var(--mc-cb-border-soft, #f7f7f7);
    border-radius: 999px;
    color: var(--mc-cb-text-secondary, #6D727B);
    background: rgba(255, 255, 255, .96);
    box-shadow: var(--mc-cb-shadow-raised, 0 8px 24px rgba(19, 22, 28, .07));
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    opacity: 0;
    pointer-events: none;
    transform: translate(-50%, -64px);
    transition: opacity .16s ease, transform .16s ease;
    will-change: transform, opacity;
}

.mc-pwa-pull-refresh.is-visible {
    opacity: 1
}

.mc-pwa-pull-refresh.is-loading {
    opacity: 1;
    transform: translate(-50%, 0) !important
}

.mc-pwa-pull-refresh__icon {
    display: grid;
    width: 28px;
    height: 28px;
    flex: 0 0 28px;
    place-items: center;
    border-radius: 50%;
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-yellow, #FFC001);
}

.mc-pwa-pull-refresh__icon svg {
    width: 16px;
    height: 16px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-pwa-pull-refresh.is-loading .mc-pwa-pull-refresh__icon svg {
    animation: mc-pwa-refresh-spin .8s linear infinite
}

@keyframes mc-pwa-refresh-spin {
    to {
        transform: rotate(360deg)
    }
}

@media(prefers-reduced-motion:reduce) {
    .mc-pwa-pull-refresh {
        transition: none
    }

    .mc-pwa-pull-refresh.is-loading .mc-pwa-pull-refresh__icon svg {
        animation: none
    }
}

/* CABINET: отдельная страница принятия семейного приглашения. */
.mc-family-invite-page {
    max-width: 760px;
    margin: 0 auto;
}

.mc-family-invite-card {
    padding: 28px;
    border-radius: var(--mc-cb-radius-lg);
    background: var(--mc-cb-surface);
    box-shadow: var(--mc-cb-shadow-raised);
}

.mc-family-invite-card>span {
    color: var(--mc-cb-text-muted);
    font-size: 11px;
    font-weight: 700;
    letter-spacing: .12em;
    text-transform: uppercase;
}

.mc-family-invite-card h1 {
    margin: 7px 0 10px;
    font-size: 26px;
}

.mc-family-invite-card p {
    color: var(--mc-cb-text-secondary);
    font-size: var(--mc-cb-font-sm);
    line-height: 1.65;
}

.mc-family-invite-card dl {
    display: grid;
    grid-template-columns: 160px minmax(0, 1fr);
    gap: var(--mc-cb-space-2);
    margin: 22px 0;
    padding: 18px;
    border-radius: var(--mc-cb-radius);
    background: var(--mc-cb-page);
    font-size: var(--mc-cb-font-xs);
}

.mc-family-invite-card dt {
    color: var(--mc-cb-text-secondary)
}

.mc-family-invite-card dd {
    margin: 0;
    font-weight: 600
}

.mc-family-invite-actions {
    display: flex;
    gap: 10px
}

.mc-family-invite-actions form {
    margin: 0
}

.mc-family-invite-page>.mc-cb-alert {
    margin-bottom: 14px
}

@media(max-width:600px) {
    .mc-family-invite-card {
        padding: 18px
    }

    .mc-family-invite-card dl {
        grid-template-columns: 1fr
    }

    .mc-family-invite-actions {
        flex-direction: column
    }

    .mc-family-invite-actions form,
    .mc-family-invite-actions .mc-cb-button {
        width: 100%;
        box-sizing: border-box
    }
}

/* -------------------- 20 — ИИ-ДИАЛОГ -------------------- */
/* CABINET: закрытый ИИ-диалог с текущим автомобилем. */
.mc-ai-dialog__launcher {
    position: fixed;
    z-index: 65;
    right: 24px;
    bottom: 24px;
    display: inline-flex;
    min-width: 44px;
    height: 44px;
    min-height: 44px;
    padding: 0 18px 0 8px;
    align-items: center;
    justify-content: center;
    gap: var(--mc-cb-radius-xs);
    border: 0;
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-text-on-dark, #FFF);
    background: var(--mc-cb-surface-dark, #111214);
    box-shadow: var(--mc-cb-shadow-raised, 0 8px 24px rgba(19, 22, 28, .07));
    font-family: Montserrat, Arial, sans-serif;
    font-size: var(--mc-cb-font-sm);
    font-weight: 600;

    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    transition: transform .16s ease, box-shadow .16s ease, background-color .16s ease;
}

.mc-ai-dialog__launcher-sphere {
    position: relative;
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
}

.mc-ai-dialog__launcher-sphere::before {
    content: "";
    position: absolute;
    inset: -7px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 192, 1, .46) 0%, rgba(255, 192, 1, .22) 36%, rgba(255, 192, 1, 0) 72%);
    opacity: 0;
    pointer-events: none;
    transform: scale(.86);
    transition: opacity .18s ease, transform .18s ease;
}

.mc-ai-dialog__launcher-sphere img {
    position: relative;
    z-index: 1;
    display: block;
    width: 34px;
    height: 34px;
    object-fit: contain;
}

.mc-ai-dialog__launcher:hover {
    box-shadow: 0 10px 28px rgba(19, 22, 28, .12);
    transform: translateY(-1px);
}

.mc-ai-dialog__launcher:hover .mc-ai-dialog__launcher-sphere::before,
.mc-ai-dialog__launcher:active .mc-ai-dialog__launcher-sphere::before,
.mc-ai-dialog__launcher.is-active .mc-ai-dialog__launcher-sphere::before {
    opacity: 1;
    transform: scale(1);
}

.mc-ai-dialog__launcher:active {
    transform: translateY(0)
}

.mc-ai-dialog__panel {
    width: min(540px, calc(100vw - 48px));
    padding: 0;
    overflow: hidden;
    background: var(--mc-cb-surface, #FFF);
    transition:
        transform var(--mc-cb-motion-drawer) var(--mc-cb-motion-ease, cubic-bezier(.2, 0, 0, 1)),
        width .2s ease;
}

.mc-ai-dialog__panel.is-expanded {
    width: min(1160px, calc(100vw - 72px));
}

.mc-ai-dialog__head {
    display: flex;
    min-height: 88px;
    padding: 16px 18px;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-4);
    border-bottom: 1px solid var(--mc-cb-border, #f7f7f7);
    background: var(--mc-cb-surface, #FFF);
}

.mc-ai-dialog__identity {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: var(--mc-cb-space-3);
}

.mc-ai-dialog__identity>div {
    min-width: 0
}

.mc-ai-dialog__avatar {
    display: grid;
    width: 50px;
    height: 50px;
    flex: 0 0 50px;
    place-items: center;
}

.mc-ai-dialog__avatar img {
    display: block;
    width: 46px;
    height: 46px;
    object-fit: contain;
}

.mc-ai-dialog__eyebrow {
    display: block;
    margin-bottom: 2px;
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    font-weight: 700;
    letter-spacing: .05em;
    line-height: 16px;
    text-transform: uppercase;
}

.mc-ai-dialog__identity h2 {
    margin: 0;
    overflow: hidden;
    color: var(--mc-cb-text, #17181A);
    font-size: 18px;
    font-weight: 600;
    line-height: 24px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mc-ai-dialog__identity small {
    display: block;
    margin-top: 1px;
    overflow: hidden;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    line-height: 16px;
    text-overflow: ellipsis;
    white-space: nowrap;
}

.mc-ai-dialog__head-actions {
    display: flex;
    flex: 0 0 auto;
    align-items: center;
    gap: 6px;
}

.mc-ai-dialog__expand,
.mc-ai-dialog__new {
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: 11px;
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface-muted, #F1F2F4);
    cursor: pointer;
    transition: background .16s ease, transform .16s ease;
}

.mc-ai-dialog__expand svg,
.mc-ai-dialog__new svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-ai-dialog__expand:hover,
.mc-ai-dialog__new:hover {
    background: #E8EAED
}

.mc-ai-dialog__messages-wrap {
    position: relative;
    display: flex;
    min-height: 0;
    flex: 1;
}

.mc-ai-dialog__messages {
    display: flex;
    min-height: 0;
    padding: 20px 18px 14px;
    flex: 1;
    flex-direction: column;
    gap: 14px;
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    background: var(--mc-cb-surface, #FFF);
}

.mc-ai-dialog__new-messages {
    position: absolute;
    z-index: 5;
    right: 18px;
    bottom: 14px;
    min-height: 44px;
    padding: 0 14px;
    border: 1px solid rgba(23, 24, 26, .08);
    border-radius: var(--mc-cb-radius-pill, 999px);
    color: var(--mc-cb-text-on-dark, #FFF);
    background: var(--mc-cb-surface-dark, #111214);
    box-shadow: var(--mc-cb-shadow-raised, 0 8px 24px rgba(19, 22, 28, .07));
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

    cursor: pointer;
}

.mc-ai-dialog__new-messages[hidden] {
    display: none !important
}

.mc-ai-dialog__new-messages:hover {
    background: var(--mc-cb-surface-graphite, #222326)
}

.mc-ai-dialog__empty {
    display: flex;
    min-height: 100%;
    padding: 28px 14px 40px;
    flex: 1;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
}

.mc-ai-dialog__empty[hidden] {
    display: none !important
}

.mc-ai-dialog__empty-sphere {
    position: relative;
    display: grid;
    width: 104px;
    height: 104px;
    margin-bottom: 16px;
    place-items: center;
}

.mc-ai-dialog__empty-sphere::before {
    content: "";
    position: absolute;
    inset: 8px;
    border-radius: 50%;
    background: radial-gradient(circle, rgba(255, 192, 1, .34) 0%, rgba(255, 192, 1, .18) 42%, rgba(255, 192, 1, 0) 74%);
    filter: blur(8px);
    pointer-events: none;
    transform: scale(1.22);
}

.mc-ai-dialog__empty-sphere img {
    position: relative;
    z-index: 1;
    display: block;
    width: 96px;
    height: 96px;
    object-fit: contain;
    filter: drop-shadow(0 0 9px rgba(255, 192, 1, .30));
}

.mc-ai-dialog__empty>strong {
    color: var(--mc-cb-text, #17181A);
    font-size: 18px;
    font-weight: 700;
    line-height: 24px;
}

.mc-ai-dialog__empty>p {
    max-width: 410px;
    margin: 8px auto 18px;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-base);
    line-height: 20px;
}

.mc-ai-dialog__examples {
    display: flex;
    max-width: 450px;
    flex-wrap: wrap;
    justify-content: center;
    gap: var(--mc-cb-space-2);
}

.mc-ai-dialog__examples button {
    min-height: 44px;
    padding: 8px 13px;
    border: 1px solid var(--mc-cb-border, #f7f7f7);
    border-radius: var(--mc-cb-radius-pill, 999px);
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface, #FFF);
    box-shadow: var(--mc-cb-shadow, 0 4px 16px rgba(19, 22, 28, .045));
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

    cursor: pointer;
}

.mc-ai-dialog__examples button:hover {
    border-color: rgba(255, 192, 1, .46);
    background: #FFFDF5
}

.mc-ai-dialog__message {
    display: flex;
    width: min(88%, 460px);
    flex-direction: column;
    align-items: flex-start;
}

.mc-ai-dialog__panel.is-expanded .mc-ai-dialog__message {
    width: min(78%, 840px)
}

.mc-ai-dialog__message.is-user {
    margin-left: auto;
    align-items: flex-end;
}

.mc-ai-dialog__message-author {
    margin: 0 0 4px 4px;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    line-height: 16px;
}

.mc-ai-dialog__bubble {
    width: auto;
    max-width: 100%;
    padding: 12px 14px;
    border-radius: 16px 16px 16px 5px;
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface, #FFF);
    box-shadow: 0 2px 10px rgba(19, 22, 28, .04);
    font-size: var(--mc-cb-font-base);
    line-height: 20px;
    overflow-wrap: anywhere;
}

.mc-ai-dialog__bubble>p {
    margin: 0
}

.mc-ai-dialog__bubble>p+p,
.mc-ai-dialog__bubble>:is(ul, ol)+p,
.mc-ai-dialog__bubble>p+:is(ul, ol),
.mc-ai-dialog__bubble>:is(ul, ol)+:is(ul, ol) {
    margin-top: 9px
}

.mc-ai-dialog__bubble :is(ul, ol) {
    margin: 0;
    padding-left: 20px
}

.mc-ai-dialog__bubble li+li {
    margin-top: 4px
}

.mc-ai-dialog__message.is-user .mc-ai-dialog__bubble {
    border-radius: 16px 16px 5px 16px;
    background: var(--mc-cb-yellow, #FFC001);
    box-shadow: none;
    white-space: pre-wrap;
}

.mc-ai-dialog__message.is-error .mc-ai-dialog__bubble {
    color: #A8322C;
    background: #FFF0EF;
    white-space: pre-wrap;
}

.mc-ai-dialog__details {
    margin-top: 10px;
    padding-top: 8px;
    border-top: 1px solid var(--mc-cb-border, #f7f7f7);
}

.mc-ai-dialog__details>summary {
    display: inline-flex;
    min-height: 44px;
    padding: 0 4px;
    align-items: center;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

    cursor: pointer;
}

.mc-ai-dialog__details>summary+* {
    margin-top: 6px
}

.mc-ai-dialog__details>p {
    margin-bottom: 0
}

.mc-ai-dialog__details>:is(ul, ol) {
    margin-bottom: 0;
    padding-left: 20px
}

.mc-ai-dialog__message-meta {
    position: relative;
    display: flex;
    min-height: 44px;
    margin-top: 2px;
    align-items: center;
    gap: 4px;
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    line-height: 16px;
}

.mc-ai-dialog__message.is-user .mc-ai-dialog__message-meta {
    padding-right: 4px
}

.mc-ai-dialog__message-actions {
    display: flex;
    min-width: 0;
    align-items: center;
    gap: 0;
}

.mc-ai-dialog__message-action {
    display: inline-flex;
    width: 44px;
    min-width: 44px;
    height: 44px;
    padding: 0;
    align-items: center;
    justify-content: center;
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-muted, #969CA5);
    background: transparent;
    cursor: pointer;
}

.mc-ai-dialog__message-action svg {
    width: 18px;
    height: 18px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
    pointer-events: none;
}

.mc-ai-dialog__message-action:hover {
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface-muted, #F1F2F4);
}

.mc-ai-dialog__inline-link {
    color: inherit;
    font-weight: 600;
    text-decoration: underline;
    text-decoration-color: var(--mc-cb-yellow, #FFC001);
    text-decoration-thickness: 2px;
    text-underline-offset: 3px;
}

.mc-ai-dialog__inline-link:hover {
    color: var(--mc-cb-text, #17181A);
}

.mc-ai-dialog__pending {
    display: flex;
    min-height: 48px;
    padding: 7px 18px;
    align-items: center;
    gap: var(--mc-cb-space-2);
    background: var(--mc-cb-surface, #FFF);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

}

.mc-ai-dialog__pending[hidden] {
    display: none !important
}

body.mc-shell-page .mc-cb-spinner,
.mc-ai-dialog__pending-spinner {
    display: block;
    width: 18px;
    height: 18px;
    flex: 0 0 18px;
    border: 2px solid rgba(255, 192, 1, .22);
    border-top-color: var(--mc-cb-yellow);
    border-right-color: #E2A900;
    border-radius: 50%;
    animation: mc-cb-spinner-spin .78s linear infinite;
}

@keyframes mc-cb-spinner-spin {
    to {
        transform: rotate(360deg);
    }
}

.mc-ai-dialog__pending-text {
    color: #9A7200;
    background: linear-gradient(90deg, #9A7200 0%, #D79F00 26%, #FFC001 48%, #FFE09A 56%, #D79F00 74%, #9A7200 100%);
    background-size: 220% 100%;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    animation: mc-ai-dialog-pending-shimmer 1.8s ease-in-out infinite;
}

@keyframes mc-ai-dialog-pending-shimmer {
    0% {
        background-position: 120% 50%
    }

    100% {
        background-position: -120% 50%
    }
}

.mc-ai-dialog__speech-control {
    display: flex;
    padding: 4px 16px 10px;
    justify-content: center;
    background: var(--mc-cb-surface, #FFF);
}

.mc-ai-dialog__speech-control[hidden] {
    display: none !important
}

.mc-ai-dialog__speech-stop {
    display: inline-flex;
    min-height: 44px;
    padding: 0 16px;
    align-items: center;
    justify-content: center;
    gap: var(--mc-cb-space-2);
    border: 1px solid rgba(255, 192, 1, .34);
    border-radius: var(--mc-cb-radius-pill, 999px);
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface, #FFF);
    box-shadow: var(--mc-cb-shadow, 0 4px 16px rgba(19, 22, 28, .045));
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

    cursor: pointer;
}

.mc-ai-dialog__speech-stop:hover {
    border-color: rgba(255, 192, 1, .62);
    background: #FFFDF5
}

.mc-ai-dialog__speech-stop-mark {
    display: block;
    width: 10px;
    height: 10px;
    flex: 0 0 10px;
    border-radius: 3px;
    background: var(--mc-cb-yellow, #FFC001);
}

.mc-ai-dialog__composer {
    position: relative;
    padding: 12px 16px 14px;
    border-top: 1px solid var(--mc-cb-border, #f7f7f7);
    background: var(--mc-cb-surface, #FFF);
}

.mc-ai-dialog__input-wrap {
    position: relative;
    display: block;
    margin: 0;
}

body.mc-shell-page .mc-ai-dialog__input-wrap .mc-cb-textarea {
    display: block;
    width: 100%;
    min-height: 48px;
    max-height: 116px;
    margin: 0;
    padding: 13px 120px 11px 14px;
    resize: none;
    line-height: 20px;
    overflow-y: auto;
}

body.mc-shell-page .mc-ai-dialog__input-wrap .mc-cb-textarea:disabled {
    opacity: .65
}

.mc-ai-dialog__voice {
    position: absolute;
    z-index: 5;
    inset: 0;
    display: block;
    pointer-events: none;
}

.mc-ai-dialog__voice>.mc-voice-trigger {
    position: absolute;
    z-index: 2;
    top: 2px;
    right: 50px;
    pointer-events: auto;
}

.mc-ai-dialog__voice>.mc-voice-panel {
    pointer-events: auto
}

.mc-ai-dialog__icon-button,
.mc-ai-dialog__send {
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    cursor: pointer;
}

.mc-ai-dialog__icon-button {
    color: var(--mc-cb-text, #17181A);
    background: transparent;
}

.mc-ai-dialog__icon-button:hover {
    background: var(--mc-cb-surface-muted, #F1F2F4)
}

.mc-ai-dialog__icon-button:disabled {
    opacity: .3;
    cursor: default
}

.mc-ai-dialog__send {
    position: absolute;
    z-index: 2;
    top: 2px;
    right: 2px;
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-yellow, #FFC001);
    transition: background .16s ease, transform .16s ease;
}

.mc-ai-dialog__send:hover {
    background: var(--mc-cb-yellow-hover, #EFB400)
}

.mc-ai-dialog__send:active {
    transform: translateY(1px)
}

.mc-ai-dialog__send:disabled {
    opacity: .48;
    cursor: default;
    transform: none
}

.mc-ai-dialog__icon-button svg,
.mc-ai-dialog__send svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-ai-dialog__settings {
    margin-top: 7px;
}

.mc-ai-dialog__settings-summary {
    display: none
}

.mc-ai-dialog__composer-settings {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    gap: 2px 14px;
}

.mc-ai-dialog__setting-toggle {
    display: inline-flex;
    min-height: 44px;
    min-width: 0;
    align-items: center;
    gap: 6px;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

    cursor: pointer;
}

.mc-ai-dialog__setting-toggle>.mc-cb-switch {
    width: 44px;
    height: 44px;
    flex-basis: 44px
}

.mc-ai-dialog__composer-foot {
    display: grid;
    margin-top: 2px;
    grid-template-columns: minmax(0, 1fr) auto;
    align-items: start;
    gap: var(--mc-cb-space-2);
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-xs);
    line-height: 16px;
}

.mc-ai-dialog__composer-foot>b {
    font-weight: 600
}

.mc-ai-dialog__disclaimer {
    min-width: 0
}

body.mc-shell-page .mc-ai-dialog__input-wrap.is-voice-active>.mc-cb-textarea {
    color: transparent;
    caret-color: transparent;
}

.mc-ai-dialog__input-wrap.is-voice-active>.mc-ai-dialog__send {
    visibility: hidden
}

.mc-ai-dialog__voice .mc-voice-panel {
    position: absolute;
    z-index: 7;
    inset: 0;
    width: auto;
    min-height: 48px;
    padding: 0 4px 0 12px;
    overflow: hidden;
    border: 1px solid var(--mc-cb-yellow, #FFC001);
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface, #FFF);
    box-shadow: 0 0 0 2px rgba(255, 192, 1, .08);
}

.mc-ai-dialog__voice .mc-voice-panel[hidden] {
    display: none !important
}

.mc-ai-dialog__voice .mc-voice-panel__top {
    position: relative;
    z-index: 2;
    display: flex;
    min-height: 46px;
    align-items: center;
    gap: var(--mc-cb-space-2);
}

.mc-ai-dialog__voice .mc-voice-panel__status {
    position: relative;
    z-index: 3;
    min-width: 64px;
    flex: 0 0 auto;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    line-height: 16px;
    white-space: nowrap;
}

.mc-ai-dialog__voice .mc-voice-panel__timer {
    position: relative;
    z-index: 3;
    flex: 0 0 auto;
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;
    line-height: 16px;
}

.mc-ai-dialog__voice .mc-voice-meter {
    display: none !important
}

.mc-ai-dialog__voice .mc-voice-device {
    display: none !important
}

.mc-ai-dialog__voice .mc-voice-cancel {
    position: relative;
    z-index: 3;
    min-width: 70px;
    min-height: 44px;
    padding: 0 10px;
    border: 0;
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text, #17181A);
    background: var(--mc-cb-surface-muted, #F1F2F4);
    font-size: var(--mc-cb-font-xs);
    font-weight: 600;

    cursor: pointer;
}

.mc-ai-dialog__voice-wave {
    position: relative;
    z-index: 1;
    display: none;
    min-width: 0;
    height: 42px;
    flex: 1 1 auto;
    align-items: center;
    justify-content: space-between;
    gap: 3px;
    overflow: hidden;
    opacity: .72;
    -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
    mask-image: linear-gradient(90deg, transparent 0, #000 7%, #000 93%, transparent 100%);
}

/* Та же визуальная грамматика живой волны, что в popup Умной записи.
   В ИИ-диалоге меняется только компактная геометрия области ввода. */
.mc-ai-dialog__voice-wave>i {
    display: block;
    width: 4px;
    height: var(--mc-wave-height, var(--mc-wave-idle-height, 11px));
    min-height: 5px;
    max-height: 40px;
    flex: 0 0 4px;
    border-radius: 999px;
    background: #D4D7DC;
    opacity: .82;
    transform: translateZ(0);
    transform-origin: center;
    transition: height 70ms linear, background-color 100ms ease, opacity 100ms ease;
}

.mc-ai-dialog__voice-wave>i:nth-child(6n+1) {
    --mc-wave-idle-height: 9px
}

.mc-ai-dialog__voice-wave>i:nth-child(6n+2) {
    --mc-wave-idle-height: 16px
}

.mc-ai-dialog__voice-wave>i:nth-child(6n+3) {
    --mc-wave-idle-height: 26px
}

.mc-ai-dialog__voice-wave>i:nth-child(6n+4) {
    --mc-wave-idle-height: 14px
}

.mc-ai-dialog__voice-wave>i:nth-child(6n+5) {
    --mc-wave-idle-height: 32px
}

.mc-ai-dialog__voice-wave>i:nth-child(6n) {
    --mc-wave-idle-height: 12px
}

.mc-ai-dialog__voice-wave>i.is-active {
    background: var(--mc-cb-text, #17181A);
    opacity: 1
}

.mc-ai-dialog__voice[data-mc-voice-state="recording"] .mc-ai-dialog__voice-wave {
    display: flex
}

.mc-ai-dialog__voice[data-mc-voice-state="recording"] .mc-voice-panel__status {
    color: var(--mc-cb-text, #17181A)
}

@media(max-width:767px) {
    .mc-ai-dialog__launcher {
        right: 14px;
        bottom: calc(86px + env(safe-area-inset-bottom, 0px));
        width: 56px;
        min-width: 56px;
        height: 56px;
        min-height: 56px;
        padding: 0;
        border-radius: 50%;
        justify-content: center;
        box-shadow: 0 10px 26px rgba(17, 18, 20, .22);
    }

    .mc-ai-dialog__launcher-label {
        display: none
    }

    .mc-ai-dialog__launcher-sphere,
    .mc-ai-dialog__launcher-sphere img {
        width: 42px;
        height: 42px;
        flex-basis: 42px
    }

    .mc-ai-dialog__launcher-sphere::before {
        inset: -6px
    }

    .mc-ai-dialog__panel,
    .mc-ai-dialog__panel.is-expanded {
        width: 100%;
        max-width: none;
        height: 100dvh;
    }

    .mc-ai-dialog__expand {
        display: none
    }

    .mc-ai-dialog__head {
        min-height: 78px;
        padding: 12px 12px
    }

    .mc-ai-dialog__avatar {
        width: 46px;
        height: 46px;
        flex-basis: 46px
    }

    .mc-ai-dialog__avatar img {
        width: 42px;
        height: 42px
    }

    .mc-ai-dialog__identity h2 {
        font-size: 17px;
        line-height: 22px
    }

    .mc-ai-dialog__messages {
        padding: 16px 12px 12px
    }

    .mc-ai-dialog__new-messages {
        right: 12px;
        bottom: 12px
    }

    .mc-ai-dialog__message,
    .mc-ai-dialog__panel.is-expanded .mc-ai-dialog__message {
        width: min(92%, 520px)
    }

    .mc-ai-dialog__bubble {
        padding: 11px 13px;
        font-size: var(--mc-cb-font-base);
        line-height: 20px
    }

    .mc-ai-dialog__empty {
        padding: 20px 8px 28px
    }

    .mc-ai-dialog__empty-sphere {
        width: 92px;
        height: 92px
    }

    .mc-ai-dialog__empty-sphere img {
        width: 84px;
        height: 84px
    }

    .mc-ai-dialog__examples {
        gap: 7px
    }

    .mc-ai-dialog__composer {
        padding: 10px 10px calc(10px + env(safe-area-inset-bottom, 0px))
    }

    .mc-ai-dialog__settings {
        margin-top: 7px;
        border-top: 1px solid var(--mc-cb-border, #f7f7f7);
    }

    .mc-ai-dialog__settings-summary {
        display: flex;
        min-height: 44px;
        padding: 0 2px;
        align-items: center;
        justify-content: space-between;
        gap: var(--mc-cb-space-2);
        color: var(--mc-cb-text-secondary, #6D727B);
        font-size: var(--mc-cb-font-xs);
        font-weight: 600;

        list-style: none;
        cursor: pointer;
    }

    .mc-ai-dialog__settings-summary::-webkit-details-marker {
        display: none
    }

    .mc-ai-dialog__settings-title {
        display: inline-flex;
        min-width: 0;
        align-items: center;
        gap: 7px
    }

    .mc-ai-dialog__settings-title svg,
    .mc-ai-dialog__settings-chevron {
        width: 18px;
        height: 18px;
        flex: 0 0 18px;
        fill: none;
        stroke: currentColor;
        stroke-width: 1.8;
        stroke-linecap: round;
        stroke-linejoin: round;
    }

    .mc-ai-dialog__settings-chevron {
        transition: transform .16s ease
    }

    .mc-ai-dialog__settings[open] .mc-ai-dialog__settings-chevron {
        transform: rotate(180deg)
    }

    .mc-ai-dialog__settings:not([open]) .mc-ai-dialog__composer-settings {
        display: none
    }

    .mc-ai-dialog__settings[open] .mc-ai-dialog__composer-settings {
        display: grid;
        padding: 2px 0 4px;
        grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
        gap: 0 8px
    }

    .mc-ai-dialog__setting-toggle {
        justify-content: space-between
    }

    .mc-ai-dialog__voice .mc-voice-panel {
        position: absolute;
        inset: 0;
        width: auto
    }

    .mc-ai-dialog__voice-wave {
        gap: 2px
    }

    .mc-ai-dialog__voice-wave>i {
        width: 3px;
        flex-basis: 3px
    }
}

@media(max-width:420px) {
    .mc-ai-dialog__head {
        gap: 8px
    }

    .mc-ai-dialog__identity {
        gap: 9px
    }

    .mc-ai-dialog__avatar {
        width: 44px;
        height: 44px;
        flex-basis: 44px
    }

    .mc-ai-dialog__avatar img {
        width: 40px;
        height: 40px
    }

    .mc-ai-dialog__eyebrow {
        display: none
    }

    .mc-ai-dialog__identity small {
        max-width: 126px
    }

    .mc-ai-dialog__head-actions {
        gap: 2px
    }

    .mc-ai-dialog__new,
    .mc-ai-dialog__head .mc-cb-drawer__close {
        width: 44px;
        height: 44px;
        flex-basis: 44px
    }

    .mc-ai-dialog__message,
    .mc-ai-dialog__panel.is-expanded .mc-ai-dialog__message {
        width: 94%
    }

    .mc-ai-dialog__settings[open] .mc-ai-dialog__composer-settings {
        grid-template-columns: 1fr
    }

    .mc-ai-dialog__setting-toggle {
        width: 100%
    }

    .mc-ai-dialog__voice .mc-voice-panel__status {
        min-width: 58px
    }

    .mc-ai-dialog__voice-wave>i {
        width: 2px;
        flex-basis: 2px
    }
}

@media(prefers-reduced-motion:reduce) {

    body.mc-shell-page .mc-cb-spinner,
    .mc-ai-dialog__pending-spinner {
        animation: none;
        border-color: rgba(255, 192, 1, .34);
        border-top-color: var(--mc-cb-yellow, #FFC001)
    }

    .mc-ai-dialog__pending-text {
        animation: none;
        background: none;
        color: #9A7200;
        -webkit-text-fill-color: currentColor
    }

    .mc-ai-dialog__launcher,
    .mc-ai-dialog__launcher-sphere::before,
    .mc-ai-dialog__panel,
    .mc-ai-dialog__expand,
    .mc-ai-dialog__new,
    .mc-ai-dialog__send,
    .mc-ai-dialog__settings-chevron {
        transition: none
    }

    .mc-ai-dialog__launcher:hover {
        transform: none
    }
}

/* -------------------- 21 — ПОДСКАЗКИ И ПРОСМОТР ФАЙЛОВ -------------------- */
/* MemoCar CABINET: фирменный визуальный слой штатного BX.SpotLight. */
.mc-shell-page .mc-cb-spotlight {
    --mc-cb-spotlight-color: var(--mc-cb-yellow, #FFC001);
    --mc-cb-spotlight-soft: rgba(255, 192, 1, .20);
    --mc-cb-spotlight-ring: rgba(255, 192, 1, .56);
    color: var(--mc-cb-spotlight-color) !important;
    border-color: var(--mc-cb-spotlight-color) !important;
    background-color: var(--mc-cb-spotlight-soft) !important;
}

.mc-shell-page .mc-cb-spotlight>*,
.mc-shell-page .mc-cb-spotlight::before,
.mc-shell-page .mc-cb-spotlight::after,
.mc-shell-page .mc-cb-spotlight>*::before,
.mc-shell-page .mc-cb-spotlight>*::after {
    color: var(--mc-cb-spotlight-color) !important;
    border-color: var(--mc-cb-spotlight-ring) !important;
    background-color: var(--mc-cb-spotlight-soft) !important;
    fill: var(--mc-cb-spotlight-color) !important;
    stroke: var(--mc-cb-spotlight-color) !important;
}

/* CABINET 1.22.0 — shared image viewer powered by PLATFORM memocar.viewer. */
.mc-cb-viewer[hidden] {
    display: none !important
}

.mc-cb-viewer {
    position: fixed;
    z-index: 20060;
    inset: 0;
    width: 100vw;
    height: 100vh;
    height: 100dvh;
}

.mc-cb-viewer__dialog {
    position: absolute;
    inset: 0;
    display: block;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.mc-cb-viewer__backdrop {
    position: absolute;
    z-index: 0;
    inset: 0;
    width: 100%;
    height: 100%;
    padding: 0;
    border: 0;
    background: rgba(13, 15, 18, .93);
    backdrop-filter: blur(2px);
    cursor: default;
}

.mc-cb-viewer__stage {
    position: absolute;
    z-index: 1;
    inset: 0;
    display: flex;
    width: 100%;
    height: 100%;
    padding:
        max(28px, env(safe-area-inset-top)) max(76px, calc(env(safe-area-inset-right) + 60px)) max(28px, env(safe-area-inset-bottom)) max(76px, calc(env(safe-area-inset-left) + 60px));
    align-items: center;
    justify-content: center;
    pointer-events: none;
}

.mc-cb-viewer__frame {
    display: flex;
    width: 100%;
    height: 100%;
    min-width: 0;
    min-height: 0;
    align-items: center;
    justify-content: center;
    touch-action: none;
    pointer-events: auto;
}

.mc-cb-viewer__image {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    max-height: 100%;
    object-fit: contain;
    user-select: none;
    -webkit-user-drag: none;
}

.mc-cb-viewer__top-actions {
    position: absolute;
    z-index: 3;
    top: max(12px, env(safe-area-inset-top));
    right: max(12px, env(safe-area-inset-right));
    display: flex;
    gap: var(--mc-cb-space-2);
}

.mc-cb-viewer__control {
    display: grid;
    width: 48px;
    height: 48px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: var(--mc-cb-radius-sm);
    color: #FFF;
    background: rgba(0, 0, 0, .40);
    text-decoration: none;
    cursor: pointer;
    transition: background-color .15s ease, opacity .15s ease;
    -webkit-tap-highlight-color: transparent;
}

.mc-cb-viewer__control[hidden] {
    display: none !important
}

.mc-cb-viewer__control:hover,
.mc-cb-viewer__control:focus-visible {
    outline: 0;
    color: #FFF;
    background: rgba(0, 0, 0, .66);
}

.mc-cb-viewer__control svg {
    width: 24px;
    height: 24px;
    fill: none;
    stroke: currentColor;
}

.mc-cb-viewer__prev,
.mc-cb-viewer__next {
    position: absolute;
    z-index: 3;
    top: 50%;
    transform: translateY(-50%);
}

.mc-cb-viewer__prev {
    left: max(12px, env(safe-area-inset-left))
}

.mc-cb-viewer__next {
    right: max(12px, env(safe-area-inset-right))
}

@media(max-width:767px) {
    .mc-cb-viewer__stage {
        padding:
            max(68px, calc(env(safe-area-inset-top) + 56px)) max(10px, env(safe-area-inset-right)) max(72px, calc(env(safe-area-inset-bottom) + 56px)) max(10px, env(safe-area-inset-left));
    }

    .mc-cb-viewer__control {
        width: 44px;
        height: 44px;
        border-radius: var(--mc-cb-radius-xs);
    }

    .mc-cb-viewer__prev,
    .mc-cb-viewer__next {
        top: auto;
        bottom: max(12px, env(safe-area-inset-bottom));
        transform: none;
    }
}

@media(prefers-reduced-motion:reduce) {
    .mc-cb-viewer__control {
        transition: none
    }
}

/* -------------------- 22 — ИНФОРМАЦИОННЫЕ КАМПАНИИ -------------------- */
/* CABINET 1.34.4 — универсальные информационные кампании MemoCar. */
.mc-cb-sr-only {
    position: absolute !important;
    width: 1px !important;
    height: 1px !important;
    padding: 0 !important;
    margin: -1px !important;
    overflow: hidden !important;
    clip: rect(0, 0, 0, 0) !important;
    white-space: nowrap !important;
    border: 0 !important;
}

.mc-cb-campaigns {
    width: 100%;
    min-width: 0;
    margin: 0 0 20px;
}

.mc-cb-campaigns[hidden] {
    display: none !important
}

.mc-cb-campaigns__stage {
    position: relative;
    min-width: 0;
}

.mc-cb-campaigns__viewport {
    min-width: 0;
}

.mc-cb-campaigns__viewport>[hidden] {
    display: none !important
}

/* Управление каруселью живёт внутри нижней безопасной зоны баннера. */
.mc-cb-campaigns__controls {
    position: absolute;
    z-index: 8;
    bottom: 12px;
    left: 50%;
    display: flex;
    min-height: 48px;
    padding: 2px 6px;
    align-items: center;
    justify-content: center;
    gap: 2px;
    border: 1px solid rgba(255, 255, 255, .14);
    border-radius: 999px;
    background: rgba(17, 18, 20, .78);
    box-shadow: 0 8px 28px rgba(0, 0, 0, .18);
    -webkit-backdrop-filter: blur(10px) saturate(130%);
    backdrop-filter: blur(10px) saturate(130%);
    transform: translateX(-50%);
}

.mc-cb-campaigns__controls[hidden] {
    display: none !important
}

.mc-cb-campaigns--has-controls .mc-cb-campaign-card {
    padding-bottom: 82px
}

.mc-cb-campaigns__control,
.mc-cb-campaigns__dot {
    position: relative;
    display: grid;
    width: 44px;
    height: 44px;
    flex: 0 0 44px;
    padding: 0;
    place-items: center;
    border: 0;
    border-radius: 999px;
    color: #fff;
    background: transparent;
    cursor: pointer;
}

.mc-cb-campaigns__control:hover,
.mc-cb-campaigns__dot:hover {
    background: rgba(255, 255, 255, .10)
}

.mc-cb-campaigns__control:focus-visible,
.mc-cb-campaigns__dot:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(255, 192, 1, .38);
}

.mc-cb-campaigns__control svg {
    width: 19px;
    height: 19px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.9;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-campaigns__dots {
    display: flex;
    min-height: 44px;
    align-items: center;
    justify-content: center;
    gap: 0;
}

.mc-cb-campaigns__dot::before {
    width: 7px;
    height: 7px;
    border-radius: 999px;
    background: rgba(255, 255, 255, .52);
    content: "";
    transition: width .18s ease, background-color .18s ease;
}

.mc-cb-campaigns__dot.is-active::before {
    width: 24px;
    background: var(--mc-cb-yellow, #ffc001);
}

.mc-cb-campaigns__pause::before,
.mc-cb-campaigns__pause::after {
    position: absolute;
    width: 3px;
    height: 15px;
    border-radius: 999px;
    background: currentColor;
    content: "";
}

.mc-cb-campaigns__pause::before {
    transform: translateX(-4px)
}

.mc-cb-campaigns__pause::after {
    transform: translateX(4px)
}

.mc-cb-campaigns__pause.is-paused::before {
    width: 0;
    height: 0;
    border-top: 8px solid transparent;
    border-bottom: 8px solid transparent;
    border-left: 13px solid currentColor;
    border-radius: 0;
    background: transparent;
    transform: translateX(2px);
}

.mc-cb-campaigns__pause.is-paused::after {
    display: none
}

/* Поверхность и слои кампании. */
.mc-cb-campaign-card {
    position: relative;
    isolation: isolate;
    overflow: hidden;
    grid-template-columns: 64px minmax(0, 1fr);
    grid-template-areas: "icon body";
    background-color: var(--mc-campaign-bg-color, var(--mc-cb-surface, #fff));
}

.mc-cb-campaign-card::before {
    position: absolute;
    z-index: 0;
    inset: 0;
    pointer-events: none;
    background: var(--mc-campaign-bg-gradient, transparent);
    content: "";
}

.mc-cb-campaign-card__background {
    position: absolute;
    z-index: 1;
    inset: 0;
    overflow: hidden;
    pointer-events: none;
}

.mc-cb-campaign-card__background img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: var(--mc-campaign-bg-x, 50%) var(--mc-campaign-bg-y, 50%);
    opacity: var(--mc-campaign-bg-opacity, 1);
}

.mc-cb-campaign-card__body,
.mc-cb-campaign-card__actions,
.mc-cb-campaign-card__icon,
.mc-cb-campaign-card__media,
.mc-cb-campaign-card>.mc-cb-banner__close {
    position: relative;
    z-index: 3;
}

.mc-cb-campaign-card__icon {
    grid-area: icon
}

.mc-cb-campaign-card__body {
    grid-area: body
}

.mc-cb-campaign-card__media {
    grid-area: media
}

.mc-cb-campaign-card .mc-cb-banner__title {
    color: var(--mc-campaign-text-color, var(--mc-cb-text, #17181a))
}

.mc-cb-campaign-card .mc-cb-banner__eyebrow,
.mc-cb-campaign-card .mc-cb-banner__text {
    color: var(--mc-campaign-muted-text-color, var(--mc-cb-text-secondary, #6d727b))
}

.mc-cb-campaign-card__text {
    white-space: pre-line;
    overflow-wrap: anywhere;
}

.mc-cb-campaign-card__body>.mc-cb-campaign-card__actions {
    display: flex;
    min-width: 0;
    margin: 14px 0 0;
    padding: 0;
    align-items: center;
    justify-content: flex-start;
    gap: var(--mc-cb-space-2);
    flex-wrap: wrap;
    white-space: normal;
}

.mc-cb-campaign-card__body>.mc-cb-campaign-card__actions .mc-cb-button {
    width: auto;
    min-width: 0;
}

.mc-cb-campaign-card__icon img {
    display: block;
    width: 48px;
    height: 48px;
    object-fit: contain;
}

.mc-cb-campaign-card--no-icon {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "body";
}

/* Основная иллюстрация. */
.mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media {
    grid-template-columns: 64px minmax(0, 1fr) minmax(190px, 300px);
    grid-template-areas: "icon body media";
}

.mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon {
    grid-template-columns: minmax(0, 1fr) minmax(190px, 300px);
    grid-template-areas: "body media";
}

.mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media {
    grid-template-columns: minmax(190px, 300px) 64px minmax(0, 1fr);
    grid-template-areas: "media icon body";
}

.mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon {
    grid-template-columns: minmax(190px, 300px) minmax(0, 1fr);
    grid-template-areas: "media body";
}

.mc-cb-campaign-card--media-center.mc-cb-campaign-card--has-media {
    grid-template-areas: "icon body" "media media";
}

.mc-cb-campaign-card--media-center.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon {
    grid-template-areas: "body" "media";
}

.mc-cb-campaign-card__media {
    min-width: 0;
    align-self: stretch;
    min-height: 132px;
    margin: -12px 0;
    overflow: hidden;
    border-radius: 16px;
    background: transparent;
    opacity: var(--mc-campaign-media-opacity, 1);
}

.mc-cb-campaign-card--media-center .mc-cb-campaign-card__media {
    width: min(100%, 620px);
    min-height: 180px;
    margin: 4px auto 0;
}

.mc-cb-campaign-card__media img {
    display: block;
    width: 100%;
    height: 100%;
    min-height: 132px;
    object-fit: cover;
}

/*
 * INLINE LEFT / RIGHT: высоту баннера определяет контент, а не исходная
 * высота PREVIEW_PICTURE. Картинка вынесена из расчёта grid-row и заполняет
 * уже сформированную область иллюстрации. Отрицательный вертикальный margin
 * доводит её до верхнего/нижнего края внутренней поверхности баннера.
 */
.mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media,
.mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media {
    position: relative;
    min-height: 0;
    margin: -22px 0;
}

.mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media img,
.mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media img {
    position: absolute;
    inset: 0;
    min-height: 0;
    max-height: 100%;
}

.mc-cb-campaigns--has-controls .mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media,
.mc-cb-campaigns--has-controls .mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media {
    margin-top: -22px;
    margin-bottom: -82px;
}

.mc-cb-campaign-card--fit-contain .mc-cb-campaign-card__media img {
    object-fit: contain
}

.mc-cb-campaign-card--fit-cover .mc-cb-campaign-card__media img {
    object-fit: cover
}

/* Индивидуальная тема CTA не затрагивает системные органы управления. */
.mc-cb-campaign-card__cta--solid {
    color: var(--mc-campaign-cta-text-color, #17181a) !important;
    border: var(--mc-campaign-cta-border-width, 0) solid var(--mc-campaign-cta-border-color, currentColor) !important;
    background: var(--mc-campaign-cta-bg-color, var(--mc-cb-yellow, #ffc001)) !important;
}

.mc-cb-campaign-card__cta--transparent {
    color: var(--mc-campaign-cta-text-color, var(--mc-campaign-text-color, var(--mc-cb-text, #17181a))) !important;
    border: var(--mc-campaign-cta-border-width, 0) solid var(--mc-campaign-cta-border-color, currentColor) !important;
    background: transparent !important;
}

.mc-cb-campaign-card__cta--preset {
    border-width: var(--mc-campaign-cta-border-width, 0);
    border-style: solid;
    border-color: var(--mc-campaign-cta-border-color, transparent);
}

/* Настоящий fullscreen: поверхность занимает весь viewport, modal-геометрия не используется. */
.mc-cb-campaign-fullscreen {
    padding: 0;
    place-items: stretch;
}

.mc-cb-campaign-fullscreen__dialog {
    position: relative;
    z-index: 1;
    display: flex;
    width: 100vw;
    max-width: none;
    height: 100dvh;
    max-height: none;
    min-height: 100dvh;
    padding: 0;
    flex-direction: column;
    overflow: hidden;
    border: 0;
    border-radius: 0;
    background: #fff;
    box-shadow: none;
}

.mc-cb-campaign-fullscreen__close {
    position: absolute;
    z-index: 10;
    top: max(16px, calc(env(safe-area-inset-top) + 10px));
    right: max(16px, calc(env(safe-area-inset-right) + 10px));
    display: grid;
    width: 44px;
    height: 44px;
    padding: 0;
    place-items: center;
    border: 1px solid rgba(255, 255, 255, .24);
    border-radius: 999px;
    color: #fff;
    background: rgba(17, 18, 20, .72);
    box-shadow: 0 8px 24px rgba(0, 0, 0, .16);
    -webkit-backdrop-filter: blur(10px) saturate(130%);
    backdrop-filter: blur(10px) saturate(130%);
    cursor: pointer;
}

.mc-cb-campaign-fullscreen__close:hover {
    background: rgba(17, 18, 20, .88);
}

.mc-cb-campaign-fullscreen__close svg {
    width: 20px;
    height: 20px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.8;
    stroke-linecap: round;
    stroke-linejoin: round;
}

.mc-cb-campaign-fullscreen__close:focus-visible,
.mc-cb-campaign-fullscreen__understand:focus-visible {
    outline: 0;
    box-shadow: 0 0 0 3px rgba(255, 192, 1, .42);
}

.mc-cb-campaign-fullscreen__content {
    display: flex;
    min-height: 0;
    flex: 1 1 auto;
    overflow: auto;
    overscroll-behavior: contain;
}

/*
 * FULLSCREEN намеренно проще INLINE:
 * сама карточка становится flex-композицией.
 * CTA и «Понятно» находятся внутри body, поэтому отдельная grid-строка actions не нужна.
 */
.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card {
    display: flex;
    width: 100%;
    min-height: 100dvh;
    padding:
        max(84px, calc(env(safe-area-inset-top) + 70px)) max(48px, calc(env(safe-area-inset-right) + 36px)) max(84px, calc(env(safe-area-inset-bottom) + 70px)) max(48px, calc(env(safe-area-inset-left) + 36px));
    align-items: center;
    justify-content: center;
    gap: 36px;
    border: 0;
    border-radius: 0;
    box-shadow: none;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__icon {
    flex: 0 0 64px;
    align-self: center;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__body {
    min-width: 0;
    max-width: 720px;
    padding-right: 0;
    flex: 0 1 720px;
    gap: 0;
}

.mc-cb-campaign-fullscreen__content .mc-cb-banner__eyebrow {
    margin: 0 0 12px;
    font-size: var(--mc-cb-font-sm);

    font-weight: 600;
}

.mc-cb-campaign-fullscreen__content .mc-cb-banner__title {
    margin: 0 0 24px;
    font-size: clamp(34px, 4.2vw, 68px);
    line-height: .8;
    letter-spacing: -.025em;
}

.mc-cb-campaign-fullscreen__content .mc-cb-banner__text {
    max-width: 680px;
    margin: 0;
    font-size: clamp(15px, 1.3vw, 19px);
    line-height: 1.45;
}

/* В fullscreen тот же action-блок остаётся под текстом, только с большим вертикальным отступом. */
.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__body>.mc-cb-campaign-card__actions {
    margin-top: 32px;
    gap: var(--mc-cb-space-3);
}

/* Основная иллюстрация справа по умолчанию. */
.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__media {
    flex: 0 1 46vw;
    width: min(46vw, 760px);
    min-width: 320px;
    min-height: 320px;
    max-height: 72dvh;
    margin: 0;
    overflow: visible;
    align-self: center;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__media img {
    min-height: 0;
    max-height: 72dvh;
}

/* Иллюстрация слева. */
.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card--media-left .mc-cb-campaign-card__media {
    order: 1;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card--media-left .mc-cb-campaign-card__icon {
    order: 2;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card--media-left .mc-cb-campaign-card__body {
    order: 3;
}

/* Иллюстрация по центру. */
.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card--media-center {
    flex-direction: column;
    gap: 24px;
    text-align: center;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card--media-center .mc-cb-campaign-card__body {
    max-width: 860px;
    flex: 0 0 auto;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card--media-center .mc-cb-campaign-card__media {
    width: min(100%, 860px);
    min-width: 0;
    min-height: 280px;
    flex: 0 0 auto;
}

.mc-cb-campaign-fullscreen__content .mc-cb-campaign-card--media-center .mc-cb-campaign-card__actions {
    justify-content: center;
}

.mc-cb-campaign-fullscreen__understand {
    flex: 0 0 auto
}

@media(max-width:1180px) {
    .mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media {
        grid-template-columns: 56px minmax(0, 1fr) minmax(170px, 240px);
        grid-template-areas: "icon body media";
    }

    .mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon {
        grid-template-columns: minmax(0, 1fr) minmax(170px, 240px);
        grid-template-areas: "body media";
    }

    .mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media {
        grid-template-columns: minmax(170px, 240px) 56px minmax(0, 1fr);
        grid-template-areas: "media icon body";
    }

    .mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon {
        grid-template-columns: minmax(170px, 240px) minmax(0, 1fr);
        grid-template-areas: "media body";
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card {
        gap: 24px;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__icon {
        display: none;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__media {
        width: min(42vw, 620px);
        min-width: 260px;
        flex-basis: 42vw;
    }
}

@media(max-width:767px) {

    .mc-shell-content-top {
        margin-top: 60px !important;
    }

    .mc-shell-content__inner:has(.mc-cb-banner) .mc-shell-content-top {
        margin-top: 0 !important;
    }

    .mc-cb-campaigns {
        width: 100%;
        min-width: 0;
        margin: 75px 0 10px 0 !important;
    }

    .mc-cb-campaigns__controls {
        bottom: 10px;
        max-width: calc(100% - 20px);
        gap: 0;
    }

    .mc-cb-campaigns__control,
    .mc-cb-campaigns__dot {
        width: 42px;
        height: 42px;
        flex-basis: 42px;
    }

    .mc-cb-campaigns--has-controls .mc-cb-campaign-card {
        padding-bottom: 76px
    }

    .mc-cb-campaign-card,
    .mc-cb-campaign-card--no-icon,
    .mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media,
    .mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon,
    .mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media,
    .mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon,
    .mc-cb-campaign-card--media-center.mc-cb-campaign-card--has-media,
    .mc-cb-campaign-card--media-center.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon {
        grid-template-columns: 48px minmax(0, 1fr);
        grid-template-areas: "icon body" "media media";
        gap: var(--mc-cb-space-2);
    }

    .mc-cb-campaign-card--no-icon,
    .mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon,
    .mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon,
    .mc-cb-campaign-card--media-center.mc-cb-campaign-card--has-media.mc-cb-campaign-card--no-icon {
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas: "body" "media";
        gap: var(--mc-cb-space-2);
    }

    .mc-cb-campaign-card__media {
        width: 100%;
        min-height: 180px;
        margin: 4px 0 0;
    }

    .mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media,
    .mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media {
        min-height: 0;
        margin: 4px 0 0;
    }

    .mc-cb-campaign-card__media img {
        min-height: 180px
    }

    .mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-right.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media img,
    .mc-cb-campaign-card:not(.mc-cb-campaign-card--fullscreen-clone).mc-cb-campaign-card--media-left.mc-cb-campaign-card--has-media .mc-cb-campaign-card__media img {
        min-height: 0;
        /* Скрыли картинку баннера на мобилках и планшетах */
    }

    .mc-cb-campaign-fullscreen__dialog {
        min-height: 100dvh;
        height: 100dvh;
    }

    .mc-cb-campaign-fullscreen__close {
        top: max(12px, calc(env(safe-area-inset-top) + 8px));
        right: max(12px, calc(env(safe-area-inset-right) + 8px));
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card {
        min-height: 100dvh;
        padding:
            max(76px, calc(env(safe-area-inset-top) + 62px)) max(18px, calc(env(safe-area-inset-right) + 14px)) max(64px, calc(env(safe-area-inset-bottom) + 52px)) max(18px, calc(env(safe-area-inset-left) + 14px));
        flex-direction: column;
        align-items: stretch;
        justify-content: center;
        gap: 22px;
        text-align: left;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__icon {
        display: none;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__body {
        width: 100%;
        max-width: none;
        flex: 0 0 auto;
        order: 1 !important;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-banner__title {
        font-size: clamp(30px, 10vw, 44px);
        line-height: 1.02;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-banner__text {
        font-size: var(--mc-cb-font-base);
        line-height: 21px;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__media {
        width: 100%;
        min-width: 0;
        min-height: 220px;
        max-height: 42dvh;
        margin: 0;
        flex: 0 0 auto;
        order: 2 !important;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__media img {
        min-height: 0;
        max-height: 42dvh;
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-card__body>.mc-cb-campaign-card__actions {
        margin-top: 24px;
        gap: var(--mc-cb-space-2);
    }

    .mc-cb-campaign-fullscreen__content .mc-cb-campaign-fullscreen__understand {
        min-width: 108px;
    }
}

@media(prefers-reduced-motion:reduce) {
    .mc-cb-campaigns__dot::before {
        transition: none
    }
}

/* -------------------- 23 — ПЕРВИЧНАЯ АКТИВАЦИЯ -------------------- */
/* CABINET 1.41.0 — полноэкранное состояние первичной активации. */
body.mc-cb-activation-visible {
    background: var(--mc-cb-surface-dark, #111214);
}

body.mc-cb-activation-visible .mc-shell-sidebar,
body.mc-cb-activation-visible .mc-shell-topbar,
body.mc-cb-activation-visible .mc-shell-bottom,
body.mc-cb-activation-visible .mc-ai-dialog__launcher,
body.mc-cb-activation-visible .mc-shell-skip {
    display: none !important;
}

body.mc-cb-activation-visible .mc-shell-workspace {
    min-height: 100vh;
    min-height: 100dvh;
    margin-left: 0;
}

body.mc-cb-activation-visible .mc-shell-content {
    min-height: 100vh;
    min-height: 100dvh;
    padding: 0;
}

body.mc-cb-activation-visible .mc-shell-content__inner {
    max-width: none;
    min-height: 100vh;
    min-height: 100dvh;
    margin: 0;
}

.mc-cb-activation {
    --mc-cb-activation-bg: var(--mc-cb-surface-dark, #111214);
    --mc-cb-activation-gradient: none;
    --mc-cb-activation-text: var(--mc-cb-text-on-dark, #fff);
    --mc-cb-activation-muted: #D0D5DD;
    position: relative;
    isolation: isolate;
    display: grid;
    width: 100%;
    min-height: 100vh;
    min-height: 100dvh;
    overflow: hidden;
    color: var(--mc-cb-activation-text);
    background-color: var(--mc-cb-activation-bg);
    background-image: var(--mc-cb-activation-gradient);
}

.mc-cb-activation__background {
    position: absolute;
    z-index: -1;
    inset: 0;
    width: 100%;
    height: 100%;
    object-fit: cover;
    pointer-events: none;
}

.mc-cb-activation__inner {
    display: grid;
    width: min(1440px, 100%);
    min-height: 100vh;
    min-height: 100dvh;
    margin: 0 auto;
    padding:
        max(48px, env(safe-area-inset-top)) max(56px, env(safe-area-inset-right)) max(48px, env(safe-area-inset-bottom)) max(56px, env(safe-area-inset-left));
    grid-template-columns: minmax(0, 1fr) minmax(360px, 640px);
    grid-template-areas: "media content";
    align-items: center;
    gap: clamp(36px, 6vw, 96px);
}

.mc-cb-activation--media-right .mc-cb-activation__inner {
    grid-template-columns: minmax(360px, 640px) minmax(0, 1fr);
    grid-template-areas: "content media";
}

.mc-cb-activation--media-center .mc-cb-activation__inner {
    grid-template-columns: minmax(0, 1fr);
    grid-template-areas: "media" "content";
    align-content: center;
    justify-items: center;
    text-align: center;
    gap: 28px;
}

.mc-cb-activation--media-none .mc-cb-activation__inner {
    grid-template-columns: minmax(0, 720px);
    grid-template-areas: "content";
    justify-content: start;
}

.mc-cb-activation__media {
    grid-area: media;
    display: grid;
    width: 100%;
    min-width: 0;
    min-height: 280px;
    max-height: 72dvh;
    place-items: center;
}

.mc-cb-activation__media img {
    display: block;
    width: 100%;
    height: 100%;
    max-height: 72dvh;
    object-position: center;
}

.mc-cb-activation__content {
    position: relative;
    z-index: 1;
    grid-area: content;
    display: flex;
    min-width: 0;
    flex-direction: column;
    align-items: flex-start;
}

.mc-cb-activation--media-center .mc-cb-activation__content {
    align-items: center;
}

.mc-cb-activation__logo {
    display: block;
    width: auto;
    max-width: min(300px, 70vw);
    max-height: 52px;
    margin-bottom: 30px;
    object-fit: contain;
}

.mc-cb-activation__eyebrow {
    display: block;
    margin-bottom: var(--mc-cb-space-3);
    color: var(--mc-cb-yellow, #FFC001);
    font-size: 15px;
    font-weight: 650;
    line-height: 22px;
}

.mc-cb-activation h1 {
    max-width: 760px;
    margin: 0;
    color: var(--mc-cb-activation-text);
    font-size: clamp(42px, 5vw, 72px);
    font-weight: 700;
    letter-spacing: -.04em;
    line-height: 1.02;
}

.mc-cb-activation__text {
    max-width: 680px;
    margin: 22px 0 0;
    color: var(--mc-cb-activation-muted);
    font-size: clamp(17px, 1.4vw, 21px);
    line-height: 1.55;
}

.mc-cb-activation__text>:first-child {
    margin-top: 0
}

.mc-cb-activation__text>:last-child {
    margin-bottom: 0
}

.mc-cb-activation__balance {
    display: flex;
    margin: 24px 0 0;
    align-items: center;
    gap: var(--mc-cb-space-2);
    color: var(--mc-cb-activation-text);
    font-size: 15px;
    line-height: 22px;
}

.mc-cb-activation__balance span {
    display: grid;
    width: 34px;
    height: 34px;
    flex: 0 0 34px;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-surface-dark, #111214);
    background: var(--mc-cb-yellow, #FFC001);
}

.mc-cb-activation__balance svg {
    width: 18px;
    height: 18px;
}

.mc-cb-activation__balance strong {
    font-weight: 600;
}

.mc-cb-activation__gift {
    display: grid;
    max-width: 720px;
    margin: 24px 0 0;
    grid-template-columns: 34px minmax(0, 1fr);
    align-items: start;
    gap: var(--mc-cb-space-3);
}

.mc-cb-activation__gift-icon {
    display: grid;
    width: 34px;
    height: 34px;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
    color: var(--mc-cb-surface-dark, #111214);
    background: var(--mc-cb-yellow, #FFC001);
}

.mc-cb-activation__gift-icon svg {
    width: 18px;
    height: 18px;
}

.mc-cb-activation__gift-copy {
    display: grid;
    gap: 3px;
    min-width: 0;
}

.mc-cb-activation__gift-copy strong {
    color: var(--mc-cb-activation-text);
    font-size: 15px;
    font-weight: 600;
    line-height: 22px;
}

.mc-cb-activation__gift-copy span {
    color: var(--mc-cb-activation-muted);
    font-size: var(--mc-cb-font-base);
    line-height: 21px;
}

.mc-cb-activation__actions {
    display: flex;
    margin-top: 30px;
    flex-wrap: wrap;
    align-items: center;
    gap: var(--mc-cb-space-3);
}

body.mc-shell-page .mc-cb-activation .mc-cb-button {
    min-height: 48px;
    padding: 0 22px;
}

body.mc-shell-page .mc-cb-activation__primary {
    min-width: 220px;
}

body.mc-shell-page .mc-cb-activation__primary--solid {
    color: var(--mc-cb-activation-primary-text, var(--mc-cb-surface-dark, #111214)) !important;
    border: var(--mc-cb-activation-primary-border-width, 0) solid var(--mc-cb-activation-primary-border, currentColor) !important;
    background: var(--mc-cb-activation-primary-bg, var(--mc-cb-yellow, #FFC001)) !important;
}

body.mc-shell-page .mc-cb-activation__primary--transparent {
    color: var(--mc-cb-activation-primary-text, var(--mc-cb-activation-text, #fff)) !important;
    border: var(--mc-cb-activation-primary-border-width, 0) solid var(--mc-cb-activation-primary-border, currentColor) !important;
    background: transparent !important;
}

body.mc-shell-page .mc-cb-activation__primary--preset {
    border-width: var(--mc-cb-activation-primary-border-width, 1px);
    border-style: solid;
    border-color: var(--mc-cb-activation-primary-border, var(--mc-cb-yellow, #FFC001));
}

body.mc-shell-page .mc-cb-activation__secondary {
    min-width: 110px;
    border-color: color-mix(in srgb, var(--mc-cb-activation-text) 28%, transparent);
    color: var(--mc-cb-activation-text);
    background: color-mix(in srgb, var(--mc-cb-activation-text) 8%, transparent);
}

body.mc-shell-page .mc-cb-activation__secondary--solid {
    color: var(--mc-cb-activation-secondary-text, var(--mc-cb-activation-text, #fff)) !important;
    border: var(--mc-cb-activation-secondary-border-width, 0) solid var(--mc-cb-activation-secondary-border, currentColor) !important;
    background: var(--mc-cb-activation-secondary-bg, color-mix(in srgb, var(--mc-cb-activation-text) 14%, transparent)) !important;
}

body.mc-shell-page .mc-cb-activation__secondary--transparent {
    color: var(--mc-cb-activation-secondary-text, var(--mc-cb-activation-text, #fff)) !important;
    border: var(--mc-cb-activation-secondary-border-width, 1px) solid var(--mc-cb-activation-secondary-border, color-mix(in srgb, var(--mc-cb-activation-text) 28%, transparent)) !important;
    background: transparent !important;
}

body.mc-shell-page .mc-cb-activation__secondary--preset {
    border-width: var(--mc-cb-activation-secondary-border-width, 1px);
    border-style: solid;
    border-color: var(--mc-cb-activation-secondary-border, color-mix(in srgb, var(--mc-cb-activation-text) 28%, transparent));
}

body.mc-shell-page .mc-cb-activation__secondary:hover {
    opacity: var(--mc-opacity);
}

body.mc-shell-page .mc-cb-activation__dismiss {
    min-width: 0;
    min-height: 44px;
    margin-left: auto;
    padding: 0 14px;
    color: var(--mc-cb-activation-dismiss-text, var(--mc-cb-activation-muted, #c8ccd2));
    border-color: var(--mc-cb-activation-dismiss-border, color-mix(in srgb, var(--mc-cb-activation-text) 18%, transparent));
    background: var(--mc-cb-activation-dismiss-bg, transparent);
    font-size: var(--mc-cb-font-sm);
    font-weight: 500;
    opacity: .9;
}

body.mc-shell-page .mc-cb-activation__dismiss--solid {
    color: var(--mc-cb-activation-dismiss-text, var(--mc-cb-activation-text, #fff)) !important;
    border: var(--mc-cb-activation-dismiss-border-width, 0) solid var(--mc-cb-activation-dismiss-border, currentColor) !important;
    background: var(--mc-cb-activation-dismiss-bg, color-mix(in srgb, var(--mc-cb-activation-text) 10%, transparent)) !important;
}

body.mc-shell-page .mc-cb-activation__dismiss--transparent {
    color: var(--mc-cb-activation-dismiss-text, var(--mc-cb-activation-muted, #c8ccd2)) !important;
    border: var(--mc-cb-activation-dismiss-border-width, 0) solid var(--mc-cb-activation-dismiss-border, transparent) !important;
    background: transparent !important;
}

body.mc-shell-page .mc-cb-activation__dismiss--preset {
    color: var(--mc-cb-activation-dismiss-text, var(--mc-cb-activation-muted, #c8ccd2));
    border-width: var(--mc-cb-activation-dismiss-border-width, 0);
    border-style: solid;
    border-color: var(--mc-cb-activation-dismiss-border, transparent);
    background: var(--mc-cb-activation-dismiss-bg, transparent);
}

body.mc-shell-page .mc-cb-activation__dismiss:hover,
body.mc-shell-page .mc-cb-activation__dismiss:focus-visible {
    opacity: 1;
}

body.mc-shell-page .mc-cb-activation__dismiss[aria-busy="true"] {
    cursor: wait;
}

@media(max-width:900px) {
    .mc-cb-activation {
        overflow: visible;
    }

    .mc-cb-activation__inner,
    .mc-cb-activation--media-right .mc-cb-activation__inner,
    .mc-cb-activation--media-center .mc-cb-activation__inner,
    .mc-cb-activation--media-none .mc-cb-activation__inner {
        min-height: 100vh;
        min-height: 100dvh;
        padding:
            max(30px, calc(env(safe-area-inset-top) + 18px)) max(22px, calc(env(safe-area-inset-right) + 18px)) max(32px, calc(env(safe-area-inset-bottom) + 20px)) max(22px, calc(env(safe-area-inset-left) + 18px));
        grid-template-columns: minmax(0, 1fr);
        grid-template-areas: "media" "content";
        align-content: center;
        justify-items: stretch;
        gap: 28px;
        text-align: left;
    }

    .mc-cb-activation--media-none .mc-cb-activation__inner {
        grid-template-areas: "content";
    }

    .mc-cb-activation__media {
        min-height: 180px;
        max-height: 42dvh;
    }

    .mc-cb-activation__media img {
        max-height: 42dvh;
    }

    .mc-cb-activation__content,
    .mc-cb-activation--media-center .mc-cb-activation__content {
        width: 100%;
        align-items: flex-start;
    }

    .mc-cb-activation__logo {
        max-width: min(260px, 70vw);
        max-height: 44px;
        margin-bottom: 22px;
    }

    .mc-cb-activation h1 {
        font-size: clamp(36px, 10vw, 52px);
        line-height: 1.04;
    }

    .mc-cb-activation__text {
        margin-top: 16px;
        font-size: 17px;
        line-height: 1.5;
    }

    .mc-cb-activation__balance,
    .mc-cb-activation__gift {
        margin-top: 20px;
    }

    .mc-cb-activation__actions {
        display: grid;
        width: 100%;
        margin-top: 26px;
        grid-template-columns: 1fr;
        gap: var(--mc-cb-space-2);
    }

    body.mc-shell-page .mc-cb-activation .mc-cb-button {
        width: 100%;
        min-width: 0;
        min-height: 48px;
    }

    body.mc-shell-page .mc-cb-activation__dismiss {
        width: auto;
        min-height: 44px;
        margin-left: 0;
        justify-self: start;
    }
}

@media(min-width:521px) and (max-width:900px) {
    .mc-cb-activation__actions {
        display: flex;
        width: 100%;
        flex-wrap: wrap;
        align-items: center;
        gap: var(--mc-cb-space-2);
    }

    body.mc-shell-page .mc-cb-activation .mc-cb-button {
        width: auto;
    }

    body.mc-shell-page .mc-cb-activation__dismiss {
        margin-left: auto;
    }
}

@media(max-width:520px) {

    .mc-cb-activation__inner,
    .mc-cb-activation--media-right .mc-cb-activation__inner,
    .mc-cb-activation--media-center .mc-cb-activation__inner,
    .mc-cb-activation--media-none .mc-cb-activation__inner {
        gap: 22px;
    }

    .mc-cb-activation__media {
        min-height: 150px;
        max-height: 35dvh;
    }

    .mc-cb-activation__media img {
        max-height: 35dvh;
    }

    .mc-cb-activation h1 {
        font-size: clamp(34px, 11vw, 46px);
    }

    .mc-cb-activation__eyebrow {
        font-size: var(--mc-cb-font-base);
    }
}

@media(prefers-reduced-motion:reduce) {

    .mc-cb-activation *,
    .mc-cb-activation *::before,
    .mc-cb-activation *::after {
        scroll-behavior: auto !important;
        transition: none !important;
        animation: none !important;
    }
}

/* CABINET 1.46.0 — единый переключатель активных и архивных периодов владения. */
.mc-shell-car-switcher__list {
    margin: 0;
}

.mc-shell-car-switcher__group {
    display: grid;
    gap: 2px;
}

.mc-shell-car-switcher__group+.mc-shell-car-switcher__group,
.mc-shell-car-switcher__archive {
    margin-top: 6px;
}

.mc-shell-car-switcher__group-title {
    padding: 6px 9px 4px;
    color: var(--mc-cb-text-muted, #969CA5);
    font-size: var(--mc-cb-font-sm, 12px);
    font-weight: 600;
    line-height: 16px;
}

.mc-shell-car-switcher__item {
    width: 100%;
    border: 0;
    font: inherit;
    cursor: pointer;
}

.mc-shell-car-switcher__item[aria-current="true"] {
    cursor: default;
}

.mc-shell-car-switcher__item.is-archive .mc-shell-car-switcher__thumb {
    opacity: .78;
}

.mc-shell-car-switcher__archive {
    border-top: 1px solid var(--mc-cb-border-soft);
    padding-top: 6px;
}

.mc-shell-car-switcher__archive>summary {
    display: flex;
    min-height: 44px;
    padding: 0 9px;
    align-items: center;
    justify-content: space-between;
    gap: var(--mc-cb-space-2);
    border-radius: var(--mc-cb-radius-xs);
    color: var(--mc-cb-text-secondary, #6D727B);
    font-size: var(--mc-cb-font-sm, 12px);
    font-weight: 600;
    cursor: pointer;
    list-style: none;
}

.mc-shell-car-switcher__archive>summary::-webkit-details-marker {
    display: none;
}

.mc-shell-car-switcher__archive>summary:hover,
.mc-shell-car-switcher__archive>summary:focus-visible {
    background: var(--mc-cb-surface-muted, #F1F2F4);
}

.mc-shell-car-switcher__archive>summary svg {
    width: 15px;
    height: 15px;
    flex: 0 0 auto;
    transition: transform .18s ease;
}

.mc-shell-car-switcher__archive[open]>summary svg {
    transform: rotate(90deg);
}

.mc-shell-car-switcher__archive-open {
    display: none;
}

.mc-shell-car-switcher__archive[open]>summary>span:first-child {
    display: none;
}

.mc-shell-car-switcher__archive[open]>summary .mc-shell-car-switcher__archive-open {
    display: inline;
}

/* Shared relation selection: Regulation / History / Documents. Uses memocar.overlay. */
@media (min-width: 768px) {
    .mc-cb-drawer__panel--relations {
        width: min(720px, calc(100vw - 48px));
        max-width: 720px;
    }
}

.mc-cb-drawer__panel--relations {
    overflow: hidden;
}

.mc-cb-relation-form {
    display: grid;
    min-height: 0;
    flex: 1;
    grid-template-rows: minmax(0, 1fr) auto;
}

.mc-cb-relation-form>.mc-cb-drawer__body {
    overflow-y: auto;
    overscroll-behavior: contain;
    scrollbar-gutter: stable;
    align-content: start;
    padding-right: 4px;
}

.mc-cb-relation-form>.mc-cb-drawer__actions {
    position: relative;
    margin-top: 0;
    padding-top: 18px;
    border-top: 1px solid var(--mc-cb-border);
    background: var(--mc-cb-surface);
}

.mc-cb-relation-intro {
    display: flex;
    gap: var(--mc-cb-space-3);
    align-items: flex-start;
    padding: 14px;
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-surface-soft);
}

.mc-cb-relation-intro>span {
    display: grid;
    width: 48px;
    height: 48px;
    flex: 0 0 48px;
    place-items: center;
    border-radius: var(--mc-cb-radius-sm);
    background: var(--mc-cb-yellow);
}

.mc-cb-relation-intro svg {
    width: 21px;
    height: 21px;
    fill: none;
    stroke: currentColor;
    stroke-width: 1.7;
}

.mc-cb-relation-intro p {
    margin: 5px 0 0;
    color: var(--mc-cb-text-muted);
}

body.mc-shell-page .mc-cb-relation-option {
    display: flex;
    align-items: flex-start;
    justify-content: flex-start;
    gap: var(--mc-cb-space-3);
    box-shadow: none;
    font-size: var(--mc-cb-font-base);
}

body.mc-shell-page label.mc-cb-relation-option,
.mc-cb-relation-option>label {
    display: flex;
    flex-direction: row;
    align-items: flex-start;
    gap: var(--mc-cb-space-3);
    cursor: pointer;
}

.mc-cb-relation-option input[type="radio"] {
    width: 18px;
    height: 18px;
    margin: 2px 0 0;
    flex: 0 0 18px;
    accent-color: var(--mc-cb-yellow);
}

.mc-cb-relation-option__copy,
label.mc-cb-relation-option>span {
    display: grid;
    min-width: 0;
    flex: 1;
    gap: 3px;
}

.mc-cb-relation-option>label {
    min-width: 0;
    flex: 1;
    box-sizing: border-box;
}

.mc-cb-relation-option>.mc-cb-button {
    flex-shrink: 0;
}

.mc-cb-relation-option strong {
    min-width: 0;
    white-space: normal;
    overflow-wrap: anywhere;
}

.mc-cb-relation-option small,
.mc-cb-relation-status,
.mc-cb-relation-search small {
    color: var(--mc-cb-text-muted);
    font-size: var(--mc-cb-font-base);
    line-height: 1.45;
}

.mc-cb-relation-option__linked {
    justify-self: start;
}

.mc-cb-relation-option__match {
    color: var(--mc-cb-text);
}

.mc-cb-relation-status:empty {
    display: none;
}

[data-mc-relation-picker][aria-busy="true"] [data-mc-relation-items],
[data-mc-regulations-link-picker][aria-busy="true"] [data-mc-regulations-link-events] {
    opacity: .64;
    pointer-events: none;
}
/* End */


/* Start:/local/components/memocar/cookie.consent/templates/consent/style.css?17861252863449*/
.mc-cookie-consent__banner[hidden],.mc-cookie-consent__modal[hidden]{display:none!important}.mc-cookie-consent[hidden]{display:none}.mc-cookie-consent__banner{position:fixed;z-index:12000;right:20px;bottom:20px;left:20px;display:flex;max-width:1180px;margin:auto;padding:22px;align-items:center;justify-content:space-between;gap:24px;border-radius:20px;background:#111214;color:#fff;box-shadow:0 18px 50px rgba(0,0,0,.28)}.mc-cookie-consent__banner strong{font-size:16px}.mc-cookie-consent__banner p{max-width:720px;margin:7px 0 0;color:#c8cbd0;font-size:12px;line-height:1.55}.mc-cookie-consent__banner a{color:#ffc001}.mc-cookie-consent__actions{display:flex;min-width:260px;flex:0 0 260px;flex-direction:column;gap:9px}.mc-cookie-consent button{min-height:44px;padding:0 16px;border:0;border-radius:12px;background:#ffc001;color:#111214;font:600 12px Montserrat,Arial,sans-serif;cursor:pointer}.mc-cookie-consent__accept-all{width:100%;min-height:50px!important;font-size:13px!important}.mc-cookie-consent__secondary-actions{display:flex;align-items:center;justify-content:center;gap:16px}.mc-cookie-consent button.mc-cookie-consent__secondary{min-height:44px;padding:0 4px;border-radius:0;background:transparent;color:#c8cbd0;font-size:12px;font-weight:500;text-decoration:underline;text-decoration-color:rgba(200,203,208,.45);text-underline-offset:3px}.mc-cookie-consent button.mc-cookie-consent__secondary:hover,.mc-cookie-consent button.mc-cookie-consent__secondary:focus-visible{color:#fff;text-decoration-color:currentColor}.mc-cookie-consent__modal{position:fixed;z-index:12010;inset:0}.mc-cookie-consent__backdrop{position:absolute;inset:0;width:100%;height:100%;border-radius:0!important;background:rgba(0,0,0,.58)!important}.mc-cookie-consent__panel{position:relative;z-index:1;max-width:620px;margin:6vh auto;padding:24px;border-radius:22px;background:#fff;color:#17181a;box-shadow:0 20px 70px rgba(0,0,0,.3)}.mc-cookie-consent__panel header{display:flex;align-items:center;justify-content:space-between}.mc-cookie-consent__panel header span{display:block;color:#969ca5;font-size:12px}.mc-cookie-consent__panel header strong{font-size:22px}.mc-cookie-consent__panel header button{min-width:44px;padding:0;background:#f1f2f4;font-size:24px}.mc-cookie-consent__option{display:flex;padding:18px 0;align-items:center;justify-content:space-between;gap:20px;border-bottom:1px solid #e7e9ed}.mc-cookie-consent__option p{margin:5px 0 0;color:#6d727b;font-size:12px;line-height:1.5}.mc-cookie-consent__option input{width:20px;height:20px}.mc-cookie-consent__panel footer{padding-top:20px;text-align:right}.mc-cookie-settings-link{border:0;background:transparent;color:inherit;font:inherit;text-decoration:underline;cursor:pointer}@media(max-width:767px){.mc-cookie-consent__banner{right:12px;bottom:12px;left:12px;display:block;padding:18px}.mc-cookie-consent__actions{width:100%;min-width:0;margin-top:16px;flex-basis:auto}.mc-cookie-consent__secondary-actions{justify-content:flex-start;gap:14px}.mc-cookie-consent__panel{margin:12px;padding:20px;max-height:calc(100vh - 24px);overflow:auto}}
.mc-cookie-consent__error{position:fixed;z-index:12020;top:20px;left:50%;max-width:min(560px,calc(100vw - 24px));padding:12px 16px;border-radius:12px;background:#17181a;color:#fff;font:500 12px/1.5 Montserrat,Arial,sans-serif;box-shadow:0 12px 30px rgba(0,0,0,.24);transform:translateX(-50%)}.mc-cookie-consent__error[hidden]{display:none!important}
/* End */
/* /local/templates/memocar_cabinet/template_styles.css?1792510158309602 */
/* /local/components/memocar/cookie.consent/templates/consent/style.css?17861252863449 */
