/* =========================================================
   M.Agent — кабинет партнёра и страница входа
========================================================= */
.mca {
    /* palette taken from the reference dashboard */
    --a: #1f2326;          /* active / primary (graphite) */
    --a-hover: #000000;
    --a-2: #5b6268;
    --a-soft: #eceff0;
    --ink: #1b1e20;
    --muted: #878d92;
    --line: #e5e8e9;
    --bg: #eef0f0;
    --card: #ffffff;
    --glass: rgba(255,255,255,.72);

    --lime: #e2efad;  --lime-ink: #2f3a0c;   --lime-bar: #dbeb91;
    --mint: #abd8d0;  --mint-ink: #123f38;   --mint-bar: #8cc9bd;
    --rose: #efbcbe;  --rose-ink: #5c1f22;   --rose-bar: #eba5a8;
    --sky:  #cfdfee;  --sky-ink:  #1c3a5a;
    --sand: #f0e0bb;  --sand-ink: #54400f;
    --red:  #e4615b;

    --r-xl: 30px;
    --r-lg: 24px;
    --r-md: 16px;
    --shadow: 0 1px 0 rgba(27,30,32,.02), 0 20px 44px -30px rgba(27,30,32,.22);
    --font: 'Gilroy', 'Manrope', system-ui, -apple-system, 'Segoe UI', Roboto, Arial, sans-serif;
    --font-display: var(--font);
}
.mca *, .mca *::before, .mca *::after { box-sizing: border-box; }
html:has(body.mca) { scroll-behavior: smooth; }
body.mca { margin: 0; font-family: var(--font); font-weight: 500; font-size: 15px; line-height: 1.5; color: var(--ink); -webkit-font-smoothing: antialiased; }
.mca svg { width: 20px; height: 20px; flex: 0 0 auto; }
:where(.mca) button { font: inherit; color: inherit; }
:where(.mca) a { color: inherit; }
.mca :focus-visible { outline: 2px solid var(--a-2); outline-offset: 2px; }
.mca [hidden] { display: none !important; }
@media (prefers-reduced-motion: reduce) { .mca *, .mca *::before { transition: none !important; animation: none !important; } html:has(body.mca) { scroll-behavior: auto; } }

/* ---------- shared atoms ---------- */
.mca-brand { display: inline-flex; align-items: center; gap: 12px; text-decoration: none; font-weight: 600; font-size: 20px; letter-spacing: -.01em; }
.mca-brand img { height: 38px; width: auto; max-width: 150px; object-fit: contain; }
.mca-brand__mark { width: 38px; height: 38px; border-radius: 11px; display: inline-flex; align-items: center; justify-content: center; background: var(--a); color: #fff; font-weight: 700; font-size: 18px; }
.mca-brand--light { color: #fff; }
.mca-brand--light .mca-brand__mark { background: #fff; color: var(--a); }

.mca-btn { display: inline-flex; align-items: center; justify-content: center; gap: 8px; height: 48px; padding: 0 22px; border-radius: 999px; border: 0; cursor: pointer; font-weight: 600; font-size: 15px; text-decoration: none; transition: background-color .15s, box-shadow .15s, transform .15s; white-space: nowrap; }
.mca-btn svg { width: 18px; height: 18px; }
.mca-btn--accent { background: var(--a); color: #fff !important; }
.mca-btn--accent:hover { background: var(--a-hover); box-shadow: 0 10px 24px -10px rgba(0,0,0,.45); }
.mca-btn--ghost { background: var(--a-soft); color: var(--a) !important; }
.mca-btn--ghost:hover { filter: brightness(.96); }
.mca-btn--block { width: 100%; }
.mca-btn[disabled] { opacity: .6; cursor: progress; }

.mca-round { display: inline-flex; align-items: center; justify-content: center; width: 48px; height: 48px; border-radius: 50%; border: 0; cursor: pointer; flex: 0 0 auto; text-decoration: none; transition: transform .2s; }
.mca-round--accent { background: var(--a); color: #fff; }
.mca-round--white { background: #fff; color: var(--ink); box-shadow: 0 4px 14px -4px rgba(13,27,46,.25); }
.mca-round--lg { width: 72px; height: 72px; }
.mca-round--lg svg { width: 32px; height: 32px; }

.mca-pill { display: inline-flex; align-items: center; white-space: nowrap; height: 46px; padding: 0 24px; border-radius: 999px; border: 0; cursor: pointer; font-weight: 600; font-size: 15px; }
.mca-pill--white { background: #fff; color: var(--ink); }

.mca-iconbtn { display: inline-flex; align-items: center; justify-content: center; width: 44px; height: 44px; border-radius: 50%; border: 1px solid var(--line); background: #fff; color: var(--ink); cursor: pointer; text-decoration: none; transition: background-color .15s; }
.mca-iconbtn:hover { background: var(--a-soft); }
.mca-iconbtn--soft { border-color: transparent; background: #eceff0; }

.mca-chip { display: inline-flex; align-items: center; gap: 8px; height: 42px; padding: 0 16px 0 14px; border-radius: 999px; border: 1px solid var(--line); background: #fff; font-weight: 500; font-size: 14px; text-decoration: none; cursor: pointer; white-space: nowrap; }
.mca-chip svg { width: 17px; height: 17px; }
.mca-chip:hover { border-color: #c8d3e0; }
.mca-chip--static { cursor: default; background: #f4f6f6; }
.mca-chip--warn { background: #fff7e0; border-color: #f4dc9a; color: #6b4b0c; }

.mca-tagpill { display: inline-flex; align-items: center; gap: 5px; height: 28px; padding: 0 11px; border-radius: 999px; border: 1px solid var(--line); background: #fff; font-size: 12.5px; font-weight: 500; color: var(--ink); text-decoration: none; white-space: nowrap; }
.mca-tagpill svg { width: 14px; height: 14px; }
.mca-tagpill--soft { background: #f3f6fa; border-color: transparent; }
.mca-tagpill--rose { background: var(--red); border-color: var(--red); color: #fff; }
.mca-tagpill--accent { background: var(--a); border-color: var(--a); color: #fff !important; }

.mca-ava { width: 42px; height: 42px; border-radius: 50%; object-fit: cover; display: inline-flex; align-items: center; justify-content: center; flex: 0 0 auto; }
.mca-ava--empty { background: var(--a); color: #fff; font-weight: 600; }
.mca-ava--sm { width: 28px; height: 28px; font-size: 12px; }
.mca-muted { color: var(--muted); font-weight: 400; }

/* ---------- inputs ---------- */
.mca-form { display: flex; flex-direction: column; gap: 14px; }
.mca-form__grid { display: grid; grid-template-columns: 1fr 1fr; gap: 14px; }
.mca-form__row { display: flex; align-items: center; justify-content: space-between; gap: 12px; flex-wrap: wrap; font-size: 14px; }
.mca-form__row a { color: var(--a); }
.mca-form__msg { margin: 0; min-height: 0; font-size: 14px; color: #b42318; }
.mca-form__msg:empty { display: none; }
.mca-form__msg.is-ok { color: var(--mint-ink); }
.mca-form__note { margin: 0; font-size: 13px; color: var(--muted); text-align: center; }
.mca-input { position: relative; display: flex; flex-direction: column; gap: 6px; font-size: 13px; font-weight: 500; color: var(--muted); }
.mca-input input { height: 50px; width: 100%; padding: 0 16px; border-radius: var(--r-md); border: 1px solid var(--line); background: #f4f6f6; font: inherit; font-size: 15px; color: var(--ink); transition: border-color .15s, background-color .15s, box-shadow .15s; }
.mca-input input:focus { outline: none; border-color: var(--a-2); background: #fff; box-shadow: 0 0 0 4px color-mix(in srgb, var(--a-2) 16%, transparent); }
.mca-input input:disabled { color: var(--muted); }
.mca-input--pass input { padding-right: 50px; }
.mca-input__eye { position: absolute; right: 6px; bottom: 5px; width: 40px; height: 40px; border: 0; background: none; color: var(--muted); cursor: pointer; border-radius: 10px; display: inline-flex; align-items: center; justify-content: center; }
.mca-input__err { font-style: normal; font-size: 12.5px; color: #b42318; }
.mca-input__err:empty { display: none; }
.mca-input.is-invalid input { border-color: #f1a39b; background: #fff8f7; }
.mca-check { display: flex; align-items: flex-start; gap: 10px; font-size: 13.5px; color: var(--ink); cursor: pointer; line-height: 1.4; }
.mca-check input { width: 18px; height: 18px; margin: 1px 0 0; accent-color: var(--a); flex: 0 0 auto; }
.mca-check a { color: var(--a); }
.mca-check.is-invalid span { color: #b42318; }
.mca-seg { display: grid; grid-template-columns: 1fr 1fr; padding: 4px; border-radius: 999px; background: #eef2f7; }
.mca-seg label { position: relative; cursor: pointer; }
.mca-seg input { position: absolute; opacity: 0; }
.mca-seg span { display: flex; align-items: center; justify-content: center; height: 40px; border-radius: 999px; font-size: 14px; font-weight: 600; color: var(--muted); transition: background-color .15s, color .15s; }
.mca-seg input:checked + span { background: #fff; color: var(--a); box-shadow: 0 2px 8px -3px rgba(13,27,46,.25); }
.mca-seg input:focus-visible + span { outline: 2px solid var(--a-2); }
.mca-upload { display: flex; align-items: center; gap: 12px; padding: 10px; border: 1px dashed #c9d4e2; border-radius: var(--r-md); cursor: pointer; }
.mca-upload input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.mca-upload__ava { width: 44px; height: 44px; border-radius: 50%; background: var(--a-soft) center/cover no-repeat; color: var(--a); display: inline-flex; align-items: center; justify-content: center; }
.mca-upload__ava.has-img svg { display: none; }
.mca-upload__txt { display: flex; flex-direction: column; font-size: 14px; }
.mca-upload__txt small { color: var(--muted); font-size: 12.5px; }
.mca-hp { position: absolute !important; left: -9999px; width: 1px; height: 1px; }

/* =========================================================
   LOGIN — one screen, never scrolls
========================================================= */
html.mca-lock, html.mca-lock body { height: 100%; overflow: hidden; overscroll-behavior: none; }
body.mca-login {
    --a: #003b7c; --a-hover: #002a5a; --a-2: #2e6db4; --a-soft: #e4ecf6;
    height: 100vh; height: 100dvh; overflow: hidden; background: #001a38; color: #fff;
}
.mca-lp {
    --pad: clamp(16px, 2.6vw, 40px);
    --card-w: clamp(360px, 29vw, 440px);
    --in-h: clamp(42px, 5.4vh, 52px);
    --gap: clamp(8px, 1.5vh, 14px);
    position: relative; height: 100%; overflow: hidden;
    display: grid;
    grid-template-columns: minmax(0,1fr) var(--card-w);
    grid-template-rows: auto auto minmax(0,1fr);
    grid-template-areas: "top top" "head head" "lead auth";
    column-gap: clamp(20px, 3vw, 48px);
    padding: clamp(12px, 2.2vh, 24px) var(--pad) var(--pad);
}

/* background showcase */
.mca-lp__slides { position: absolute; inset: 0; z-index: 0; overflow: hidden; }
.mca-lp__slide { position: absolute; inset: 0; background: center/cover no-repeat; opacity: 0; transform: scale(1.08); transition: opacity 1.4s ease, transform 9s linear; }
.mca-lp__slide.is-on { opacity: 1; transform: scale(1); }
.mca-lp__slide--empty { background:
        radial-gradient(1100px 700px at 85% 110%, rgba(46,109,180,.85), transparent 60%),
        radial-gradient(800px 600px at 0% 0%, rgba(90,150,220,.5), transparent 55%),
        repeating-linear-gradient(90deg, rgba(255,255,255,.05) 0 1px, transparent 1px 120px),
        repeating-linear-gradient(0deg, rgba(255,255,255,.05) 0 1px, transparent 1px 120px),
        #003b7c; }
.mca-lp__shade { position: absolute; inset: 0; z-index: 0; pointer-events: none; background:
        linear-gradient(180deg, rgba(0,22,48,.62) 0%, rgba(0,22,48,.18) 34%, rgba(0,22,48,0) 52%, rgba(0,18,40,.58) 100%),
        radial-gradient(70% 60% at 0% 100%, rgba(0,16,36,.45), transparent 70%); }

/* header */
.mca-lp__top { grid-area: top; position: relative; z-index: 4; display: grid; grid-template-columns: 1fr auto 1fr; align-items: center; gap: 20px; }
.mca-lp__top > .mca-pill { justify-self: end; }
.mca-lp__nav { display: flex; gap: clamp(22px, 2.6vw, 40px); font-size: 17px; font-weight: 500; }
.mca-lp__nav a, .mca-lp__nav button { position: relative; padding: 6px 0; border: 0; background: none; cursor: pointer; text-decoration: none; color: #fff; opacity: .86; transition: opacity .2s; }
.mca-lp__nav a:hover, .mca-lp__nav button:hover, .mca-lp__nav .is-current { opacity: 1; }
.mca-lp__nav .is-current::before { content: ''; position: absolute; left: -14px; top: 50%; width: 7px; height: 7px; margin-top: -3px; border-radius: 50%; background: #fff; }
.mca-brand__logo { display: inline-flex; align-items: center; justify-content: center; height: 46px; padding: 5px 10px; border-radius: 14px; background: #fff; }
.mca-brand__logo img { height: 36px; }

/* giant headline — JS fits it to the width, CSS caps it by height */
.mca-lp__headline { grid-area: head; position: relative; z-index: 1; margin: clamp(12px, 3.4vh, 34px) 0 0; min-width: 0;
    font-family: var(--font-display); font-weight: 800; font-size: min(15vw, 22vh); line-height: .84; letter-spacing: -.035em;
    text-transform: uppercase; white-space: nowrap; color: #fff; text-shadow: 0 14px 60px rgba(0,16,36,.28); }
.mca-lp__headline span { display: inline-block; }

/* left column */
.mca-lp__lead { grid-area: lead; position: relative; z-index: 2; align-self: end; min-height: 0; display: flex; flex-direction: column; align-items: flex-start; gap: clamp(14px, 2.6vh, 28px); padding-top: 16px; }
.mca-lp__show { display: flex; align-items: center; gap: 22px; max-width: min(580px, 100%); padding: 14px 14px 14px 22px; border-radius: 26px;
    background: rgba(6,20,40,.34); -webkit-backdrop-filter: blur(16px) saturate(1.2); backdrop-filter: blur(16px) saturate(1.2); border: 1px solid rgba(255,255,255,.16); transition: opacity .4s; }
.mca-lp__show.is-muted .mca-lp__showtxt { opacity: 0; }
.mca-lp__showtxt { flex: 1; min-width: 0; display: grid; grid-template-columns: auto minmax(0,1fr); align-items: center; column-gap: 18px; transition: opacity .4s; }
.mca-lp__count { grid-row: 1 / 3; font-size: 13px; color: rgba(255,255,255,.7); font-variant-numeric: tabular-nums; }
.mca-lp__count b { display: block; font-size: 30px; font-weight: 600; color: #fff; line-height: 1; letter-spacing: -.02em; }
.mca-lp__cap { display: none; min-width: 0; }
.mca-lp__cap.is-on { display: block; animation: mcaCap .6s ease both; }
.mca-lp__cap b { display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: clamp(17px, 2.2vh, 21px); font-weight: 600; line-height: 1.2; }
.mca-lp__cap small { display: block; font-size: 13.5px; color: rgba(255,255,255,.72); }
@keyframes mcaCap { from { opacity: 0; transform: translateY(6px); } to { opacity: 1; transform: none; } }
.mca-lp__shownav { display: flex; gap: 8px; }
.mca-round--glass { width: 46px; height: 46px; background: rgba(255,255,255,.14); color: #fff; border: 1px solid rgba(255,255,255,.22); }
.mca-round--glass:hover { background: rgba(255,255,255,.26); }
.mca-round--glass svg { width: 20px; height: 20px; }

.mca-lp__pitch { display: flex; align-items: flex-end; gap: clamp(20px, 3vw, 44px); flex-wrap: wrap; }
.mca-lp__cta { display: flex; align-items: center; gap: 6px; }
.mca-round--xl { width: clamp(58px, 8vh, 74px); height: clamp(58px, 8vh, 74px); }
.mca-round--xl svg { width: 30px; height: 30px; }
.mca-lp__cta .mca-round:hover { transform: rotate(45deg); }
.mca-pill--lg { height: clamp(58px, 8vh, 74px); padding: 0 clamp(28px, 2.6vw, 40px); font-size: clamp(19px, 2.6vh, 25px); font-weight: 600; letter-spacing: -.01em; }
.mca-lp__sub { margin: 0; max-width: 480px; font-size: clamp(16px, 2.1vh, 21px); line-height: 1.35; font-weight: 500; text-shadow: 0 2px 20px rgba(0,16,36,.5); }

/* auth card: spans headline + lead rows, so the headline runs under the glass */
.mca-auth { grid-column: 2; grid-row: 2 / 4; align-self: end; position: relative; z-index: 3; max-height: 100%; min-height: 0; display: flex; flex-direction: column;
    background: rgba(255,255,255,.9); -webkit-backdrop-filter: blur(24px) saturate(1.4); backdrop-filter: blur(24px) saturate(1.4);
    color: var(--ink); border-radius: 32px; padding: clamp(14px, 2.4vh, 24px) clamp(18px, 1.8vw, 26px) clamp(16px, 2.6vh, 26px);
    border: 1px solid rgba(255,255,255,.7); box-shadow: 0 40px 80px -36px rgba(0,16,36,.65); }
.mca-auth__tabs { display: grid; grid-auto-flow: column; grid-auto-columns: 1fr; gap: 4px; padding: 4px; border-radius: 999px; background: rgba(0,59,124,.07); margin-bottom: clamp(12px, 2vh, 20px); flex: 0 0 auto; }
.mca-auth__tabs button { height: clamp(36px, 4.6vh, 42px); border: 0; border-radius: 999px; background: none; cursor: pointer; font-weight: 600; color: var(--muted); transition: background-color .2s, color .2s; }
.mca-auth__tabs button[aria-selected="true"] { background: var(--a); color: #fff; }
.mca-auth__head { display: flex; flex-direction: column; gap: 6px; margin-bottom: 2px; }
.mca-auth__title { margin: 0; font-size: clamp(21px, 3vh, 28px); font-weight: 700; letter-spacing: -.02em; line-height: 1.1; }
.mca-auth__lead { margin: 0; font-size: 14px; color: var(--muted); }
.mca-auth[data-tab="login"] [data-form="register"],
.mca-auth[data-tab="register"] [data-form="login"],
.mca-auth[data-tab="done"] .mca-form,
.mca-auth[data-tab="done"] .mca-auth__tabs { display: none; }
.mca-auth__done { text-align: center; display: flex; flex-direction: column; align-items: center; gap: 12px; padding: 10px 0 2px; }
.mca-auth__done-text { margin: 0; color: var(--muted); }
.mca-login .mca-form { gap: var(--gap); }
.mca-login .mca-input input { height: var(--in-h); background: #f4f6f9; }
.mca-login .mca-btn { height: var(--in-h); }
.mca-login .mca-seg span { height: calc(var(--in-h) - 10px); }

/* registration steps */
.mca-sr { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); }
.mca-step { border: 0; margin: 0; padding: 0; min-width: 0; display: flex; flex-direction: column; gap: var(--gap); }
.mca-steps[data-step="1"] .mca-step:not([data-step-n="1"]),
.mca-steps[data-step="2"] .mca-step:not([data-step-n="2"]),
.mca-steps[data-step="3"] .mca-step:not([data-step-n="3"]) { display: none; }
.mca-steps .mca-step { animation: mcaStep .35s ease both; }
@keyframes mcaStep { from { opacity: 0; transform: translateX(10px); } to { opacity: 1; transform: none; } }
.mca-steps__bar { display: grid; grid-template-columns: repeat(3, 1fr); gap: 5px; margin-top: 6px; }
.mca-steps__bar i { height: 4px; border-radius: 99px; background: #e3e8ef; transition: background-color .3s; }
.mca-steps[data-step="1"] .mca-steps__bar i:nth-child(-n+1),
.mca-steps[data-step="2"] .mca-steps__bar i:nth-child(-n+2),
.mca-steps[data-step="3"] .mca-steps__bar i:nth-child(-n+3) { background: var(--a); }
.mca-steps__nav { display: flex; gap: 8px; }
.mca-steps__nav .mca-round { width: var(--in-h); height: var(--in-h); }
.mca-round--soft { background: #eef2f7; color: var(--ink); }
.mca-steps[data-step="1"] [data-step-back],
.mca-steps[data-step="3"] [data-step-next],
.mca-steps:not([data-step="3"]) [data-step-submit] { display: none; }
.mca-login .mca-upload { padding: 8px 10px; }
.mca-login .mca-upload__ava { width: 38px; height: 38px; }

/* adapt to height first: the page never scrolls */
@media (max-height: 760px) {
    .mca-lp__sub { display: none; }
    .mca-auth__lead { display: none; }
}
@media (max-height: 640px) {
    .mca-lp__pitch { display: none; }
    .mca-login .mca-upload { display: none; }
}
@media (max-height: 520px) {
    .mca-lp__headline { display: none; }
    .mca-lp__show { display: none; }
}

@media (max-width: 1100px) {
    .mca-lp { --card-w: 380px; }
    .mca-lp__nav { display: none; }
    .mca-lp__top { grid-template-columns: 1fr auto; }
    .mca-lp__cta { display: none; }
}
@media (max-width: 820px) {
    .mca-lp { grid-template-columns: minmax(0,1fr); grid-template-rows: auto auto minmax(0,1fr) auto;
        grid-template-areas: "top" "head" "lead" "auth"; row-gap: 12px; padding: 12px 12px max(12px, env(safe-area-inset-bottom)); }
    .mca-lp__headline { font-size: min(17vw, 11vh); margin-top: 6px; }
    .mca-lp__top > .mca-pill { height: 40px; padding: 0 16px; font-size: 14px; }
    .mca-brand { font-size: 16px; min-width: 0; }
    .mca-brand__name { overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
    .mca-lp__pitch { display: none; }
    .mca-lp__show { padding: 10px 10px 10px 16px; gap: 12px; width: 100%; max-width: none; }
    .mca-lp__count b { font-size: 22px; }
    .mca-auth { grid-column: 1; grid-row: 4; border-radius: 26px; }
    .mca-lp { --in-h: 46px; }
}
@media (max-width: 820px) and (max-height: 720px) {
    .mca-lp__show { display: none; }
    .mca-auth__head .mca-auth__title { font-size: 21px; }
}
@media (prefers-reduced-motion: reduce) {
    .mca-lp__slide { transition: opacity .2s; transform: none !important; }
}

/* =========================================================
   CABINET
========================================================= */
body.mca-cab { background:
        radial-gradient(1000px 620px at 8% -8%, #fbfcfc 0%, transparent 70%),
        radial-gradient(900px 600px at 100% 10%, #f6f8f8 0%, transparent 70%),
        linear-gradient(180deg, #f1f3f3 0%, #e9eced 100%) fixed;
    min-height: 100vh; }
.mca-shell { display: grid; grid-template-columns: 290px minmax(0,1fr); min-height: 100vh; }

/* sidebar */
.mca-side { position: sticky; top: 0; height: 100vh; height: 100dvh; display: flex; flex-direction: column; padding: 26px 18px 18px 22px; }
.mca-side__head { display: flex; align-items: center; justify-content: space-between; padding: 4px 6px 24px; }
.mca-side__close { display: none; }
.mca-menu { flex: 1; min-height: 0; overflow-y: auto; overflow-x: hidden; margin: 0 -6px; padding: 0 6px 20px; scrollbar-width: none;
    -webkit-mask-image: linear-gradient(180deg, #000 calc(100% - 36px), transparent); mask-image: linear-gradient(180deg, #000 calc(100% - 36px), transparent); }
.mca-menu::-webkit-scrollbar { display: none; }
.mca-menu__cap { margin: 22px 8px 10px; font-size: 17px; font-weight: 600; letter-spacing: -.01em; }
.mca-menu__cap:first-child { margin-top: 4px; font-size: 30px; font-weight: 500; letter-spacing: -.02em; }
.mca-menu__item { display: flex; align-items: center; gap: 14px; margin-bottom: 4px; padding: 6px 16px 6px 6px; border-radius: 999px; text-decoration: none; font-size: 16.5px; font-weight: 500; line-height: 1.2; color: var(--ink); transition: background-color .15s; min-width: 0; }
.mca-menu__item:hover { background: rgba(255,255,255,.75); }
.mca-menu__item.is-active { background: var(--a); color: #fff; }
.mca-menu__ic { width: 50px; height: 50px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: #e7eaeb; box-shadow: inset 0 0 0 1px rgba(255,255,255,.6); flex: 0 0 auto; background-size: cover; background-position: center; }
.mca-menu__item.is-active .mca-menu__ic { background-color: rgba(255,255,255,.1); box-shadow: none; }
.mca-menu__item.is-active { box-shadow: 0 12px 24px -14px rgba(0,0,0,.55); }
.mca-menu__ic--img { box-shadow: inset 0 0 0 2px rgba(255,255,255,.9); }
.mca-menu__txt { min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; font-size: 15px; overflow-wrap: anywhere; }
.mca-menu__item:has(.mca-menu__txt) { border-radius: 28px; }
.mca-side__foot { display: flex; align-items: center; gap: 8px; padding: 12px; border-radius: var(--r-lg); background: var(--glass); border: 1px solid rgba(255,255,255,.8); -webkit-backdrop-filter: blur(12px); backdrop-filter: blur(12px); }
.mca-usercard { flex: 1; min-width: 0; display: flex; align-items: center; gap: 12px; text-decoration: none; }
.mca-usercard__txt { display: flex; flex-direction: column; min-width: 0; }
.mca-usercard__txt b { font-weight: 600; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mca-usercard__txt small { color: var(--muted); font-size: 12.5px; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mca-scrim { display: none; }

/* body */
.mca-body { min-width: 0; padding: 26px clamp(16px, 2.2vw, 34px) 40px 10px; }
.mca-top { display: flex; align-items: center; gap: 14px; margin-bottom: 18px; min-height: 48px; }
.mca-top__burger { display: none; }
.mca-top__right { margin-left: auto; display: flex; align-items: center; gap: 10px; }
.mca-top__crumbs { display: flex; align-items: center; gap: 10px; min-width: 0; color: var(--muted); font-size: 14.5px; white-space: nowrap; }
.mca-top__crumbs b { font-weight: 500; overflow: hidden; text-overflow: ellipsis; }
.mca-top__crumbs a { text-decoration: none; }
.mca-top__crumbs a:hover { color: var(--a); }
.mca-search { display: flex; align-items: center; gap: 10px; width: min(560px, 100%); height: 56px; padding: 0 20px; border-radius: 999px; background: var(--glass); border: 1px solid rgba(255,255,255,.9); color: var(--ink); }
.mca-search input { flex: 1; border: 0; background: none; font: inherit; color: var(--ink); outline: none; }

.mca-h1 { margin: 0 0 24px; font-size: clamp(34px, 3.6vw, 60px); font-weight: 600; letter-spacing: -.035em; line-height: 1.04; overflow-wrap: anywhere; }
.mca-h1--long { font-size: clamp(28px, 2.6vw, 44px); max-width: 30ch; }
.mca-pagehead { margin-bottom: 24px; }
.mca-pagehead .mca-h1 { margin: 0; }
.mca-pagehead__sub { margin: 6px 0 0; color: var(--muted); font-size: 16px; }
.mca-grid { display: grid; grid-template-columns: minmax(0,1fr) clamp(300px, 24vw, 380px); gap: 22px; align-items: start; }
.mca-grid--single { grid-template-columns: minmax(0, 860px); }
.mca-main { min-width: 0; display: flex; flex-direction: column; gap: 22px; }
.mca-rail { display: flex; flex-direction: column; gap: 22px; min-width: 0; }

.mca-card { background: rgba(255,255,255,.9); border-radius: var(--r-xl); padding: 26px; box-shadow: none; border: 1px solid #fff; scroll-margin-top: 20px; min-width: 0; }
.mca-card__head { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 10px 12px; margin-bottom: 20px; }
.mca-card__head h2 { min-width: 0; }
.mca-rail .mca-card__head h2 { font-size: 22px; }
.mca-card__head h2 { margin: 0; font-size: 26px; font-weight: 500; letter-spacing: -.02em; line-height: 1.15; }
.mca-alert { margin: 16px 0 0; padding: 12px 16px; border-radius: var(--r-md); background: var(--rose); color: var(--rose-ink); }
.mca-empty { display: flex; flex-direction: column; align-items: center; gap: 8px; padding: 28px 10px; text-align: center; color: var(--muted); }
.mca-empty svg { width: 34px; height: 34px; color: #b7c3d2; }
.mca-empty p { margin: 0; max-width: 360px; }

/* profile card (dashboard) */
.mca-profile { display: grid; grid-template-columns: 200px minmax(0,1fr) auto; gap: 8px 28px; }
.mca-profile__photo { grid-row: span 1; width: 200px; height: 200px; border-radius: var(--r-lg); overflow: hidden; background: linear-gradient(160deg, #f6f7f7, #e3e7e8); display: flex; align-items: center; justify-content: center; }
.mca-profile__photo img { width: 100%; height: 100%; object-fit: cover; }
.mca-profile__photo span { font-size: 80px; font-weight: 600; color: var(--ink); }
.mca-profile__info h2 { margin: 6px 0 4px; font-size: 26px; font-weight: 500; letter-spacing: -.02em; }
.mca-profile__role { margin: 0 0 18px; font-weight: 500; }
.mca-profile__role span { color: var(--muted); font-weight: 400; margin-left: 6px; }
.mca-profile__facts { list-style: none; margin: 0; padding: 0; display: grid; grid-template-columns: repeat(auto-fit, minmax(220px, 1fr)); gap: 12px 24px; }
.mca-profile__facts li { display: flex; align-items: center; gap: 10px; font-size: 16px; }
.mca-profile__facts svg { color: #9aa6b5; }
.mca-profile__facts--col { grid-template-columns: 1fr; gap: 10px; }
.mca-profile__actions { display: flex; gap: 8px; }

.mca-kpis { grid-column: 1 / -1; display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; margin-top: 14px; }
.mca-kpis--4 { grid-template-columns: repeat(4, 1fr); margin-top: 22px; }
.mca-kpi { padding-bottom: 14px; position: relative; }
.mca-kpi span { display: block; color: var(--muted); font-size: 15px; }
.mca-kpi b { display: block; margin-top: 10px; font-size: 32px; font-weight: 500; letter-spacing: -.02em; line-height: 1; }
.mca-kpi::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; height: 6px; border-radius: 999px; background: var(--line); }
.mca-kpi--rose::after { background: var(--rose-bar); }
.mca-kpi--mint::after { background: var(--mint-bar); }
.mca-kpi--lime::after { background: var(--lime-bar); }
.mca-kpis--4 .mca-kpi::after { display: none; }
.mca-kpis--4 .mca-kpi { padding-bottom: 0; }

.mca-bar { grid-column: 1 / -1; display: flex; gap: 4px; height: 8px; margin-top: 16px; border-radius: 999px; overflow: hidden; background: var(--line); }
.mca-bar__seg { display: block; height: 100%; border-radius: 999px; min-width: 0; }
.mca-bar__seg--free { background: var(--mint-bar); }
.mca-bar__seg--reserved { background: var(--lime-bar); }
.mca-bar__seg--sold { background: var(--rose-bar); }

/* object cards */
.mca-objects { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(300px, 100%), 1fr)); gap: 18px; }
.mca-obj { display: flex; flex-direction: column; border-radius: var(--r-lg); background: #f4f6f6; overflow: hidden; text-decoration: none; transition: box-shadow .2s, transform .2s; }
.mca-obj:hover { box-shadow: 0 18px 36px -22px rgba(13,27,46,.4); transform: translateY(-2px); }
.mca-obj:hover .mca-round { transform: rotate(45deg); }
.mca-obj__img { position: relative; display: block; aspect-ratio: 16/10; background: linear-gradient(160deg, #f3f5f5, #dfe4e5) center/cover no-repeat; border-radius: var(--r-lg); }
.mca-obj__img[style] { background-size: cover; }
.mca-obj__ph { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: var(--ink); opacity: .25; }
.mca-obj__ph svg { width: 56px; height: 56px; }
.mca-obj__img .mca-tagpill--rose { position: absolute; left: 14px; top: 14px; }
.mca-obj__img .mca-round { position: absolute; right: 14px; top: 14px; }
.mca-obj__body { display: flex; flex-direction: column; gap: 4px; padding: 16px 16px 18px; }
.mca-obj__title { font-size: 19px; font-weight: 600; letter-spacing: -.01em; line-height: 1.25; }
.mca-obj__region { font-size: 13px; color: var(--muted); }
.mca-obj__addr { font-size: 13.5px; color: var(--muted); }
.mca-obj__meta { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 10px; }
.mca-obj__err { margin-top: 8px; font-size: 13px; color: var(--rose-ink); }

/* feed (rail) */
.mca-feed__row { display: grid; grid-template-columns: 56px minmax(0,1fr); gap: 12px; margin-bottom: 14px; }
.mca-feed__row:last-child { margin-bottom: 0; }
.mca-feed__when { display: flex; flex-direction: column; align-items: center; gap: 6px; padding-top: 4px; }
.mca-feed__when small { font-size: 13px; font-weight: 500; }
.mca-feed__ic { width: 50px; height: 50px; border-radius: 50%; background: #eceff0; display: inline-flex; align-items: center; justify-content: center; }
.mca-feed__card { display: flex; flex-direction: column; gap: 3px; padding: 10px 12px 14px; border-radius: var(--r-lg); background: #f4f6f6; text-decoration: none; min-width: 0; }
a.mca-feed__card:hover { background: #edf0f0; }
.mca-feed__img { display: block; aspect-ratio: 16/9; margin-bottom: 8px; border-radius: var(--r-md); background: center/cover no-repeat #e5ebf3; }
.mca-feed__card b { font-weight: 600; overflow-wrap: anywhere; }
.mca-feed__card small { color: var(--muted); font-size: 13px; }
.mca-feed__tags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }

/* notes */
.mca-note h2 { display: flex; align-items: center; gap: 10px; margin: 0 0 10px; font-size: 18px; font-weight: 600; }
.mca-note--accent { background: var(--a); color: #fff; border-color: transparent; }
.mca-note--accent .mca-rich a { color: #fff; }
.mca-rich { font-size: 15px; line-height: 1.6; }
.mca-rich p { margin: 0 0 10px; }
.mca-rich p:last-child { margin-bottom: 0; }

/* object hero */
.mca-hero { display: grid; grid-template-columns: minmax(240px, 42%) minmax(0,1fr); gap: 8px 28px; }
.mca-hero__img { position: relative; min-height: 260px; border-radius: var(--r-lg); background: linear-gradient(160deg, #f3f5f5, #dfe4e5) center/cover no-repeat; }
.mca-hero__img[style] { background-size: cover; }
.mca-hero__info { display: flex; flex-direction: column; gap: 16px; padding-top: 4px; }
.mca-hero__complex { margin: 0; font-size: 22px; font-weight: 600; letter-spacing: -.01em; }
.mca-hero__actions { display: flex; flex-wrap: wrap; gap: 10px; margin-top: auto; }

/* tiles */
.mca-tiles { display: grid; grid-template-columns: repeat(auto-fit, minmax(150px, 1fr)); gap: 12px; }
.mca-tile { display: flex; flex-direction: column; min-width: 0; min-height: 196px; padding: 20px 16px 16px 20px; border-radius: var(--r-xl); }
.mca-tile__title { font-size: clamp(16px, 1.25vw, 20px); font-weight: 500; letter-spacing: -.01em; line-height: 1.2; white-space: nowrap; }
.mca-tile__price { white-space: nowrap; }
.mca-tile__price { margin-top: 4px; font-size: 15px; }
.mca-tile__foot { display: flex; align-items: flex-end; justify-content: space-between; gap: 10px; margin-top: auto; }
.mca-tile__foot small { font-size: 13.5px; opacity: .85; }
.mca-tile__count { width: 62px; height: 62px; border-radius: 50%; display: inline-flex; align-items: center; justify-content: center; background: rgba(27,30,32,.07); font-size: 19px; font-weight: 600; }
.mca-tile--lime { background: var(--lime); color: var(--lime-ink); }
.mca-tile--mint { background: var(--mint); color: var(--mint-ink); }
.mca-tile--rose { background: var(--rose); color: var(--rose-ink); }
.mca-tile--sky  { background: var(--sky);  color: var(--sky-ink); }
.mca-tile--sand { background: var(--sand); color: var(--sand-ink); }

/* chess (M.Connect inside) */
.mca-chesscard__body { margin: 0 -8px; }
.mca-chesscard .mconnect-root { padding: 0 !important; background: transparent !important; }

/* documents */
.mca-folders { display: grid; grid-template-columns: repeat(auto-fill, minmax(210px, 1fr)); gap: 14px; padding-bottom: 24px; margin-bottom: 22px; border-bottom: 1px solid var(--ink); }
.mca-folder { display: flex; flex-direction: column; align-items: flex-start; gap: 4px; min-height: 172px; padding: 22px 20px 18px; border: 0; border-radius: var(--r-lg); text-align: left; cursor: pointer; color: var(--ink); transition: transform .2s, box-shadow .2s; }
.mca-folder:hover { transform: translateY(-2px); }
.mca-folder[aria-selected="true"] { box-shadow: inset 0 0 0 2px var(--ink); }
.mca-folder__ic svg { width: 44px; height: 44px; color: var(--ink); }
.mca-folder__title { margin-top: auto; padding-top: 14px; font-size: 19px; font-weight: 500; line-height: 1.2; letter-spacing: -.01em; }
.mca-folder__foot { display: flex; flex-wrap: wrap; align-items: center; justify-content: space-between; gap: 6px 8px; width: 100%; margin-top: 6px; }
.mca-folder__foot small { font-size: 14px; color: rgba(27,30,32,.62); white-space: nowrap; }
.mca-folder__size { padding: 4px 11px; border-radius: 999px; background: rgba(255,255,255,.6); font-size: 13.5px; font-variant-numeric: tabular-nums; white-space: nowrap; }
.mca-folder--mint { background: #dfeee0; }
.mca-folder--lime { background: var(--lime); }
.mca-folder--sky  { background: var(--sky); }
.mca-folder--rose { background: var(--rose); }
.mca-folder--sand { background: var(--sand); }
.mca-fpanel__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; margin-bottom: 14px; }
.mca-fpanel__head h3 { margin: 0; font-size: 24px; font-weight: 500; letter-spacing: -.02em; }
.mca-ftable { display: flex; flex-direction: column; }
.mca-ftable__row { display: grid; grid-template-columns: minmax(0, 1fr) 104px 86px 96px 44px; align-items: center; gap: 12px; padding: 12px 6px; border-bottom: 1px solid var(--line); }
.mca-ftable__row:last-child { border-bottom: 0; }
.mca-ftable__row--head { padding: 10px 14px; border: 0; border-radius: 14px; background: #f4f6f6; color: var(--muted); font-size: 14px; margin-bottom: 4px; }
.mca-ftable__name { display: flex; align-items: center; gap: 10px; min-width: 0; font-size: 16px; line-height: 1.3; }
.mca-ftable__name > span { min-width: 0; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; overflow-wrap: anywhere; }
.mca-ftable__name b { font-weight: 500; }
.mca-ftable__name i { font-style: normal; color: var(--muted); }
.mca-ftable__name svg { color: var(--muted); }
.mca-ftable__num { font-variant-numeric: tabular-nums; color: var(--ink); font-size: 15px; }
.mca-ftable__row .mca-iconbtn { width: 40px; height: 40px; }
.mca-ftable__row .mca-iconbtn svg { width: 18px; height: 18px; }
.mca-ftag { display: inline-flex; align-items: center; gap: 7px; max-width: 100%; padding: 5px 11px; border: 1px solid var(--line); border-radius: 10px; font-size: 13.5px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.mca-ftag::before { content: ''; flex: 0 0 9px; height: 9px; border-radius: 3px; background: #c8cdd1; }
.mca-ftag--rose::before { background: #eab0a9; }
.mca-ftag--sky::before  { background: #b8c8f0; }
.mca-ftag--mint::before { background: #a9dcb5; }
.mca-ftag--lime::before { background: #d6e68a; }
.mca-ftag--sand::before { background: #ecd29a; }
.mca-ftag--link::before { background: transparent; border: 1.5px solid var(--muted); border-radius: 50%; }
@media (max-width: 760px) {
    .mca-folders { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 10px; }
    .mca-folder { min-height: 140px; padding: 16px; }
    .mca-ftable__row { grid-template-columns: minmax(0,1fr) auto 40px; }
    .mca-ftable__row > :nth-child(3), .mca-ftable__row > :nth-child(4) { display: none; }
    .mca-ftable__row--head { display: none; }
}

/* photos */
.mca-photos { display: grid; grid-template-columns: repeat(auto-fill, minmax(170px, 1fr)); gap: 12px; }
.mca-photo { position: relative; margin: 0; border-radius: var(--r-lg); overflow: hidden; background: #eceff0; }
.mca-photo__open { display: block; width: 100%; padding: 0; border: 0; cursor: zoom-in; background: none; }
.mca-photo__open img { display: block; width: 100%; aspect-ratio: 4/3; object-fit: cover; transition: transform .35s; }
.mca-photo:hover img { transform: scale(1.03); }
.mca-photo__dl { position: absolute; right: 10px; bottom: 10px; width: 42px; height: 42px; }

.mca-lightbox { position: fixed; inset: 0; z-index: 100; display: flex; align-items: center; justify-content: center; padding: 60px 70px; background: rgba(6,16,30,.92); }
.mca-lightbox__img { max-width: 100%; max-height: 100%; border-radius: 14px; box-shadow: 0 30px 80px -20px rgba(0,0,0,.6); }
.mca-lightbox__close { position: absolute; top: 16px; right: 16px; }
.mca-lightbox__nav { position: absolute; top: 50%; width: 52px; height: 52px; margin-top: -26px; border: 0; border-radius: 50%; background: rgba(255,255,255,.14); color: #fff; font-size: 34px; line-height: 1; cursor: pointer; }
.mca-lightbox__nav:hover { background: rgba(255,255,255,.25); }
.mca-lightbox__nav--prev { left: 14px; }
.mca-lightbox__nav--next { right: 14px; }
.mca-lightbox__dl { position: absolute; bottom: 16px; left: 50%; transform: translateX(-50%); }

/* profile form */
.mca-profileform form { display: flex; flex-direction: column; gap: 18px; }
.mca-avatarpick { display: flex; align-items: center; gap: 18px; cursor: pointer; }
.mca-avatarpick input { position: absolute; width: 1px; height: 1px; opacity: 0; }
.mca-avatarpick__img { width: 110px; height: 110px; border-radius: var(--r-lg); background: var(--a) center/cover no-repeat; color: #fff; font-size: 42px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; }
.mca-avatarpick__txt { display: flex; flex-direction: column; }
.mca-avatarpick__txt b { color: var(--ink); font-weight: 600; }
.mca-avatarpick__txt small { color: var(--muted); }
.mca-avatarpick:focus-within .mca-avatarpick__img { outline: 2px solid var(--a-2); outline-offset: 3px; }

/* ---------- responsive ---------- */
@media (max-width: 1360px) {
    .mca-grid { grid-template-columns: minmax(0,1fr); }
    .mca-rail { display: grid; grid-template-columns: repeat(auto-fit, minmax(min(300px, 100%), 1fr)); align-items: start; }
}
@media (max-width: 1000px) {
    .mca-shell { grid-template-columns: 1fr; }
    .mca-side { position: fixed; left: 0; top: 0; bottom: 0; z-index: 60; width: 300px; max-width: 86vw; background: #f1f3f3; transform: translateX(-102%); transition: transform .25s ease; box-shadow: 20px 0 50px -20px rgba(13,27,46,.35); }
    .mca-side.is-open { transform: none; }
    .mca-side__close { display: inline-flex; }
    .mca-scrim.is-open { display: block; position: fixed; inset: 0; z-index: 50; background: rgba(6,16,30,.35); }
    .mca-top__burger { display: inline-flex; }
    .mca-body { padding-left: clamp(16px, 2.2vw, 34px); }
}
@media (max-width: 760px) {
    .mca-card { padding: 18px; border-radius: var(--r-lg); }
    .mca-profile { grid-template-columns: 96px minmax(0,1fr); gap: 8px 16px; }
    .mca-profile__photo { width: 96px; height: 96px; }
    .mca-profile__photo span { font-size: 40px; }
    .mca-profile__actions { position: absolute; right: 18px; top: 18px; }
    .mca-profile { position: relative; }
    .mca-profile__facts { grid-column: 1 / -1; }
    .mca-profile__info { display: contents; }
    .mca-profile__info h2, .mca-profile__role { grid-column: 2; }
    .mca-kpis, .mca-kpis--4 { grid-template-columns: repeat(2, 1fr); gap: 16px; }
    .mca-kpi b { font-size: 24px; }
    .mca-hero { grid-template-columns: 1fr; }
    .mca-hero__img { min-height: 200px; }
    .mca-top__right .mca-chip:not(.mca-chip--warn) { display: none; }
    .mca-top__crumbs { font-size: 13px; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
    .mca-form__grid { grid-template-columns: 1fr; }
    .mca-lightbox { padding: 60px 10px 80px; }
    .mca-lightbox__nav { top: auto; bottom: 16px; margin: 0; }
    .mca-photos { grid-template-columns: repeat(2, 1fr); gap: 8px; }
}

/* ---------- PDF sheet (rendered off-screen) ---------- */
.mca-pdf { width: 1122px; background: #fff; color: #0d1b2e; font-family: var(--font); padding: 28px 30px; }
.mca-pdf__head { display: flex; justify-content: space-between; align-items: flex-end; gap: 20px; padding-bottom: 14px; border-bottom: 2px solid var(--a); margin-bottom: 14px; }
.mca-pdf__head h1 { margin: 0; font-size: 26px; font-weight: 600; letter-spacing: -.02em; }
.mca-pdf__head p { margin: 4px 0 0; font-size: 12px; color: var(--muted); }
.mca-pdf__meta { text-align: right; font-size: 11px; color: var(--muted); }
.mca-pdf__meta b { display: block; color: var(--a); font-size: 13px; }
.mca-pdf__legend { display: flex; gap: 16px; margin-bottom: 14px; font-size: 11.5px; }
.mca-pdf__legend span { display: inline-flex; align-items: center; gap: 6px; }
.mca-pdf__legend i { width: 14px; height: 14px; border-radius: 4px; display: inline-block; }
.mca-pdf__ents { display: flex; flex-wrap: wrap; gap: 14px 22px; align-items: flex-start; }
.mca-pdf__ent { margin-bottom: 6px; }
.mca-pdf tr, .mca-pdf h2 { page-break-inside: avoid; break-inside: avoid; }
.mca-pdf__ent h2 { margin: 0 0 6px; font-size: 14px; font-weight: 600; color: var(--a); }
.mca-pdf table { border-collapse: separate; border-spacing: 3px; }
.mca-pdf th { font-size: 10px; font-weight: 600; color: var(--muted); padding: 0 4px; text-align: right; white-space: nowrap; }
.mca-pdf td { padding: 0; }
.mca-pdf__cell { width: var(--w, 96px); height: 40px; border-radius: 6px; padding: 3px 5px; font-size: 9px; line-height: 1.25; overflow: hidden; }
.mca-pdf__cell b { display: flex; justify-content: space-between; gap: 4px; font-size: 10px; white-space: nowrap; }
.mca-pdf__cell s { opacity: .6; }
.mca-pdf__cell--free { background: #e2f3ee; color: #0f5a4d; }
.mca-pdf__cell--reserved { background: #fbeccb; color: #6b4b0c; }
.mca-pdf__cell--sold { background: #eef0f3; color: #8a94a1; }
.mca-pdf__cell--empty { background: transparent; }
.mca-pdf__cell--promo { box-shadow: inset 0 0 0 1.5px #e25b4f; }

@media print {
    @page { size: A4 landscape; margin: 8mm; }
    body.mca-printing > *:not(.mca-pdf) { display: none !important; }
    body.mca-printing { background: #fff !important; }
    body.mca-printing .mca-pdf { width: auto; padding: 0; -webkit-print-color-adjust: exact; print-color-adjust: exact; }
}
body:not(.mca-printing) > .mca-pdf--print { position: absolute; left: -99999px; }


/* =========================================================
   LEADS
========================================================= */
html.mca-noscroll, html.mca-noscroll body { overflow: hidden; }
button.mca-menu__item { width: 100%; border: 0; background: none; cursor: pointer; text-align: left; font: inherit; }
.mca-menu__badge { margin-left: auto; min-width: 24px; height: 24px; padding: 0 7px; border-radius: 999px; background: var(--ink); color: #fff; font-size: 12.5px; font-weight: 600; display: inline-flex; align-items: center; justify-content: center; }

/* status colours */
.mca-lpill { flex: 0 0 auto; display: inline-flex; align-items: center; gap: 6px; height: 26px; padding: 0 10px; border-radius: 999px; font-size: 12.5px; font-weight: 600; white-space: nowrap; }
.mca-lpill::before { content: ''; width: 7px; height: 7px; border-radius: 50%; background: currentColor; }
.mca-lpill--sent     { background: var(--sky);  color: var(--sky-ink); }
.mca-lpill--work     { background: var(--mint); color: var(--mint-ink); }
.mca-lpill--rejected { background: var(--rose); color: var(--rose-ink); }

/* rail box */
.mca-leadbox .mca-card__head { margin-bottom: 14px; }
.mca-leadbox__stats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; margin-bottom: 14px; }
.mca-lstat { display: flex; flex-direction: column; gap: 2px; padding: 10px 12px; border-radius: var(--r-md); font-size: 12.5px; line-height: 1.2; min-width: 0; }
.mca-lstat b { font-size: 24px; font-weight: 600; letter-spacing: -.02em; line-height: 1.05; }
.mca-lstat--sent     { background: var(--sky);  color: var(--sky-ink); }
.mca-lstat--work     { background: var(--mint); color: var(--mint-ink); }
.mca-lstat--rejected { background: var(--rose); color: var(--rose-ink); }
.mca-leadbox__empty { margin: 0 0 4px; font-size: 14px; }
.mca-leadbox__all { margin-top: 12px; height: 44px; }

.mca-leadlist { list-style: none; margin: 0; padding: 0; display: flex; flex-direction: column; gap: 8px; }
.mca-leadlist:empty { display: none; }
.mca-lead { padding: 12px 14px; border-radius: var(--r-md); background: #f4f6f6; min-width: 0; }
.mca-leadlist--short .mca-lead { cursor: pointer; transition: background-color .15s; }
.mca-leadlist--short .mca-lead:hover { background: #edf0f0; }
.mca-lead__top { display: flex; align-items: flex-start; justify-content: space-between; gap: 10px; }
.mca-lead__name { font-weight: 600; min-width: 0; overflow-wrap: anywhere; line-height: 1.3; padding-top: 3px; }
.mca-lead__meta { display: flex; justify-content: space-between; gap: 10px; margin-top: 4px; font-size: 13px; color: var(--muted); }
.mca-lead__meta span:first-child, .mca-lead__meta a { min-width: 0; overflow: hidden; text-overflow: ellipsis; white-space: nowrap; }
.mca-lead__meta span:last-child { flex: 0 0 auto; }
.mca-lead__meta a { color: var(--ink); text-decoration: none; font-weight: 500; }
.mca-lead__note { margin: 8px 0 0; font-size: 14px; white-space: pre-line; overflow-wrap: anywhere; }
.mca-lead__comment, .mca-lead__hint { margin: 8px 0 0; padding: 8px 10px; border-radius: 10px; background: #fff; font-size: 13.5px; overflow-wrap: anywhere; }
.mca-lead__comment small { display: block; font-size: 12px; color: var(--muted); margin-bottom: 2px; }
.mca-lead__hint { overflow: hidden; display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; }

/* floating button */
.mca-fab { position: fixed; z-index: 40; right: clamp(16px, 2.2vw, 34px); bottom: max(20px, env(safe-area-inset-bottom)); display: inline-flex; align-items: center; gap: 10px; height: 58px; padding: 0 24px 0 20px; border: 0; border-radius: 999px; background: var(--ink); color: #fff; font: inherit; font-size: 16px; font-weight: 600; cursor: pointer; box-shadow: 0 18px 40px -14px rgba(0,0,0,.55); transition: transform .2s, background-color .2s; }
.mca-fab:hover { background: #000; transform: translateY(-2px); }
.mca-fab svg { width: 22px; height: 22px; }
.mca-body { padding-bottom: 110px; }

/* modal */
.mca-modal { position: fixed; inset: 0; z-index: 90; display: flex; align-items: center; justify-content: center; padding: 20px; background: rgba(20,24,26,.46); -webkit-backdrop-filter: blur(4px); backdrop-filter: blur(4px); opacity: 0; transition: opacity .2s; overscroll-behavior: contain; }
.mca-modal.is-open { opacity: 1; }
.mca-modal__box { position: relative; width: min(480px, 100%); max-height: calc(100dvh - 40px); overflow-y: auto; overscroll-behavior: contain; padding: 28px; border-radius: 30px; background: #fff; transform: translateY(12px); transition: transform .25s; }
.mca-modal.is-open .mca-modal__box { transform: none; }
.mca-modal__close { position: absolute; top: 16px; right: 16px; }
.mca-modal__head { padding-right: 48px; }
.mca-modal__head h2, .mca-modal__done h2 { margin: 0 0 6px; font-size: 26px; font-weight: 600; letter-spacing: -.02em; line-height: 1.1; }
.mca-modal__head p { margin: 0; font-size: 14px; }
.mca-modal__obj { display: flex; align-items: center; gap: 10px; margin: 0; padding: 10px 14px; border-radius: var(--r-md); background: #f4f6f6; font-weight: 500; }
.mca-modal__obj svg { color: var(--muted); }
.mca-modal__obj span { min-width: 0; overflow-wrap: anywhere; }
.mca-modal__done { display: flex; flex-direction: column; align-items: center; gap: 10px; text-align: center; padding: 8px 0 2px; }
.mca-modal__done p { margin: 0; }
.mca-modal__done-actions { display: flex; gap: 8px; margin-top: 8px; flex-wrap: wrap; justify-content: center; }
.mca-input select, .mca-input textarea { width: 100%; padding: 12px 16px; border-radius: var(--r-md); border: 1px solid var(--line); background: #f4f6f6; font: inherit; font-size: 15px; color: var(--ink); }
.mca-input select { height: 50px; padding-top: 0; padding-bottom: 0; }
.mca-input textarea { resize: vertical; min-height: 90px; line-height: 1.45; }
.mca-input select:focus, .mca-input textarea:focus { outline: none; border-color: var(--a-2); background: #fff; }
.mca-input.is-invalid select, .mca-input.is-invalid textarea { border-color: #f1a39b; background: #fff8f7; }
.mca-input small { font-weight: 400; color: #a6acb0; }

/* history drawer */
.mca-drawer { position: fixed; inset: 0; z-index: 80; }
.mca-drawer__scrim { position: absolute; inset: 0; background: rgba(20,24,26,.4); opacity: 0; transition: opacity .25s; }
.mca-drawer.is-open .mca-drawer__scrim { opacity: 1; }
.mca-drawer__panel { position: absolute; top: 0; right: 0; bottom: 0; width: min(520px, 100%); display: flex; flex-direction: column; background: #f4f6f6; transform: translateX(100%); transition: transform .25s ease; box-shadow: -30px 0 60px -30px rgba(0,0,0,.35); }
.mca-drawer.is-open .mca-drawer__panel { transform: none; }
.mca-drawer__head { display: flex; align-items: center; justify-content: space-between; gap: 12px; padding: 22px 22px 14px; }
.mca-drawer__head h2 { margin: 0; font-size: 26px; font-weight: 600; letter-spacing: -.02em; }
.mca-drawer__tools { display: flex; flex-direction: column; gap: 10px; padding: 0 22px 14px; }
.mca-seg--4 { grid-template-columns: repeat(4, minmax(0,1fr)); background: #e7eaeb; }
.mca-seg--4 span { height: 38px; font-size: 13px; padding: 0 4px; text-align: center; }
.mca-seg--4 input:checked + span { color: var(--ink); }
.mca-search--sm { width: 100%; height: 46px; background: #fff; }
.mca-leadlist--full { flex: 1; overflow-y: auto; overscroll-behavior: contain; padding: 0 22px 22px; }
.mca-leadlist--full .mca-lead { background: #fff; }
.mca-drawer .mca-empty { flex: 1; }
.mca-drawer__foot { padding: 14px 22px max(18px, env(safe-area-inset-bottom)); border-top: 1px solid var(--line); background: #f4f6f6; }

/* =========================================================
   M.Connect chess inside the cabinet
========================================================= */
.mca-chesscard .mc-head,
.mca-chesscard .mc-stat:not(.mc-stat--controls),
.mca-chesscard .mc-viewdock { display: none !important; }
.mca-chesscard .mc-stats { display: block; border: 0; background: none; padding: 0; margin: 0 0 12px; box-shadow: none; }
.mca-chesscard .mc-stat--controls { border: 0 !important; padding: 0 !important; background: none !important; display: flex; flex-wrap: wrap; gap: 8px; }
.mca-chesscard__body { margin: 0; min-width: 0; }
.mca-chesscard .mconnect-root, .mca-chesscard .mc-catalog { min-width: 0; max-width: 100%; }

/* =========================================================
   MOBILE
========================================================= */
body.mca-cab { overflow-x: clip; }
@media (max-width: 1000px) {
    .mca-top { position: sticky; top: 0; z-index: 30; margin: -12px calc(-1 * clamp(16px, 2.2vw, 34px)) 14px; padding: 12px clamp(16px, 2.2vw, 34px); background: rgba(238,240,240,.86); -webkit-backdrop-filter: blur(14px); backdrop-filter: blur(14px); }
    .mca-body { padding-top: 12px; }
}
@media (max-width: 760px) {
    .mca-body { padding: 12px 12px 110px; }
    .mca-top { margin: -12px -12px 12px; padding: 10px 12px; min-height: 0; }
    .mca-top__right { display: none; }
    .mca-top__right:has(.mca-chip--warn) { display: flex; }
    .mca-chip--warn { height: 34px; padding: 0 12px; font-size: 12px; }
    .mca-h1, .mca-h1--long { font-size: clamp(26px, 7.4vw, 34px); margin-bottom: 16px; }
    .mca-pagehead { margin-bottom: 16px; }
    .mca-pagehead__sub { font-size: 14px; }
    .mca-grid, .mca-main, .mca-rail { gap: 12px; }
    .mca-card { padding: 16px; border-radius: 22px; }
    .mca-card__head { margin-bottom: 14px; }
    .mca-card__head h2 { font-size: 22px; }
    .mca-rail .mca-card__head h2 { font-size: 20px; }
    .mca-chip { height: 38px; padding: 0 13px 0 11px; font-size: 13.5px; }

    .mca-hero__info { gap: 12px; }
    .mca-hero__actions .mca-btn { flex: 1 1 150px; height: 46px; padding: 0 14px; }
    .mca-profile__facts li { font-size: 14.5px; align-items: flex-start; }
    .mca-profile__facts li svg { margin-top: 1px; }
    .mca-kpi span { font-size: 13.5px; }

    .mca-tiles { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
    .mca-tile { min-height: 150px; padding: 14px 12px 12px 14px; border-radius: 20px; }
    .mca-tile__title { font-size: 16px; white-space: normal; }
    .mca-tile__price { font-size: 13.5px; white-space: normal; }
    .mca-tile__count { width: 44px; height: 44px; font-size: 16px; }
    .mca-tile__foot small { font-size: 12px; }

    .mca-folders { grid-template-columns: 1fr; gap: 8px; padding-bottom: 16px; margin-bottom: 16px; }
    .mca-folder { min-height: 0; flex-direction: row; align-items: center; gap: 12px; padding: 12px 14px; border-radius: 18px; }
    .mca-folder__ic svg { width: 32px; height: 32px; }
    .mca-folder__title { margin: 0; padding: 0; flex: 1; min-width: 0; font-size: 16px; overflow-wrap: anywhere; }
    .mca-folder__foot { width: auto; margin: 0; flex-direction: column; align-items: flex-end; gap: 2px; }
    .mca-folder__foot small { font-size: 12px; }
    .mca-folder__size { font-size: 12px; padding: 2px 8px; }
    .mca-fpanel__head h3 { font-size: 20px; }

    .mca-ftable__row { grid-template-columns: minmax(0,1fr) 40px; grid-template-areas: "name btn" "meta btn"; row-gap: 4px; padding: 12px 2px; }
    .mca-ftable__row > :nth-child(1) { grid-area: name; }
    .mca-ftable__row > :nth-child(2) { grid-area: meta; display: flex !important; }
    .mca-ftable__row > :nth-child(3), .mca-ftable__row > :nth-child(4) { display: none !important; }
    .mca-ftable__row > :nth-child(5) { grid-area: btn; }
    .mca-ftable__name { font-size: 15px; }
    .mca-ftag { font-size: 12px; padding: 3px 9px; }

    .mca-photos { gap: 8px; }
    .mca-photo { border-radius: 16px; }
    .mca-photo__dl { width: 36px; height: 36px; right: 8px; bottom: 8px; }

    .mca-feed__row { grid-template-columns: 40px minmax(0,1fr); gap: 8px; }
    .mca-feed__ic { width: 40px; height: 40px; }
    .mca-feed__ic svg { width: 18px; height: 18px; }
    .mca-feed__when small { font-size: 12px; }

    .mca-objects { gap: 12px; }

    .mca-fab { left: 12px; right: 12px; bottom: max(12px, env(safe-area-inset-bottom)); justify-content: center; height: 54px; }
    .mca-modal { padding: 0; align-items: flex-end; }
    .mca-modal__box { width: 100%; max-height: calc(100dvh - 24px); border-radius: 26px 26px 0 0; padding: 22px 16px max(18px, env(safe-area-inset-bottom)); transform: translateY(40px); }
    .mca-modal__head h2 { font-size: 23px; }
    .mca-drawer__head { padding: 16px 16px 12px; }
    .mca-drawer__head h2 { font-size: 22px; }
    .mca-drawer__tools, .mca-leadlist--full { padding-left: 12px; padding-right: 12px; }
    .mca-drawer__foot { padding-left: 12px; padding-right: 12px; }
    .mca-seg--4 span { font-size: 12px; }
}
@media (max-width: 380px) {
    .mca-tiles { grid-template-columns: minmax(0,1fr); }
    .mca-tile { min-height: 0; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 2px 10px; }
    .mca-tile__foot { margin-top: 6px; width: 100%; }
    .mca-kpis, .mca-kpis--4 { gap: 12px; }
    .mca-leadbox__stats .mca-lstat { padding: 8px 9px; font-size: 11.5px; }
    .mca-leadbox__stats .mca-lstat b { font-size: 20px; }
}
@media (max-width: 760px) {
    .mca-chip--static { height: auto; min-height: 34px; padding: 6px 12px; white-space: normal; max-width: 100%; line-height: 1.3; }
}
.mca-leadlist--full .mca-lead__comment { background: #f4f6f6; border-left: 3px solid currentColor; }
.mca-lead--work .mca-lead__comment { color: var(--mint-ink); }
.mca-lead--rejected .mca-lead__comment { color: var(--rose-ink); }
.mca-lead__comment small { color: inherit; opacity: .7; }
@media (max-width: 760px) {
    .mca-profile__info h2 { font-size: 20px; line-height: 1.2; overflow-wrap: anywhere; }
    .mca-profile__role { margin-bottom: 10px; font-size: 14px; }
    .mca-profile__role span { display: block; margin: 2px 0 0; }
    .mca-profile__actions .mca-iconbtn { width: 38px; height: 38px; }
}

/* =========================================================
   1.7.1 — deals, promo block, material counters, fixed feed
========================================================= */

/* material counters on object cards */
.mca-obj__mats { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 6px; margin-top: 12px; padding-top: 12px; border-top: 1px solid var(--line); }
.mca-mat { display: grid; grid-template-columns: auto 1fr; grid-template-rows: auto auto; align-items: center; column-gap: 6px; min-width: 0; padding: 8px 10px; border-radius: 12px; background: #fff; color: var(--ink); }
.mca-mat svg { grid-row: 1; }
.mca-mat small { grid-column: 1 / -1; margin-top: 1px; }
.mca-mat svg { width: 16px; height: 16px; flex: 0 0 auto; color: var(--muted); }
.mca-mat b { font-size: 15px; font-weight: 600; font-variant-numeric: tabular-nums; }
.mca-mat small { font-size: 12px; line-height: 1.2; color: var(--muted); overflow-wrap: anywhere; }
.mca-mat--promo { background: var(--rose); color: var(--rose-ink); }
.mca-mat--promo svg, .mca-mat--promo small { color: var(--rose-ink); }
.mca-mat.is-zero { background: transparent; box-shadow: inset 0 0 0 1px var(--line); }
.mca-mat.is-zero b, .mca-mat.is-zero small, .mca-mat.is-zero svg { color: #b3b8bc; }

/* "Новые материалы": capped height, list scrolls inside */
.mca-feed--fixed { display: flex; flex-direction: column; max-height: 640px; }
.mca-feed--fixed .mca-card__head { flex: 0 0 auto; }
.mca-feed__count { font-size: 15px; }
.mca-feed__scroll { flex: 1 1 auto; min-height: 0; overflow-y: auto; overscroll-behavior: contain; margin: 0 -8px -6px; padding: 0 8px 18px;
    scrollbar-width: thin; scrollbar-color: #d3d8da transparent;
    -webkit-mask-image: linear-gradient(180deg, #000 calc(100% - 28px), transparent); mask-image: linear-gradient(180deg, #000 calc(100% - 28px), transparent); }
.mca-feed__scroll::-webkit-scrollbar { width: 6px; }
.mca-feed__scroll::-webkit-scrollbar-thumb { background: #d3d8da; border-radius: 6px; }
.mca-feed__scroll:focus-visible { outline: 2px solid var(--a-2); outline-offset: 2px; border-radius: 12px; }

/* premium deals */
.mca-deals { background: #1b1e20; border-color: #1b1e20; color: #fff; overflow: hidden; position: relative; }
.mca-deals::before { content: ''; position: absolute; right: -120px; top: -160px; width: 420px; height: 420px; border-radius: 50%; background: radial-gradient(closest-side, rgba(226,239,173,.14), transparent); pointer-events: none; }
.mca-deals__head { position: relative; display: flex; align-items: flex-end; justify-content: space-between; gap: 16px; margin-bottom: 20px; }
.mca-deals__head h2 { display: flex; align-items: center; gap: 12px; margin: 0; font-size: 26px; font-weight: 500; letter-spacing: -.02em; line-height: 1.15; }
.mca-deals__n { display: inline-flex; align-items: center; justify-content: center; min-width: 34px; height: 34px; padding: 0 10px; border-radius: 999px; background: var(--red); font-size: 16px; font-weight: 600; }
.mca-deals__head p { margin: 6px 0 0; color: rgba(255,255,255,.6); font-size: 14px; }
.mca-deals__nav { display: flex; gap: 8px; flex: 0 0 auto; }
.mca-deals__nav .mca-round:disabled { opacity: .3; cursor: default; }
.mca-deals:not(.is-scrollable) .mca-deals__nav { display: none; }
.mca-deals__track { position: relative; display: grid; grid-auto-flow: column; grid-auto-columns: clamp(250px, calc((100% - 28px) / 3), 340px); gap: 14px; overflow-x: auto; scroll-snap-type: x mandatory; scrollbar-width: none; overscroll-behavior-x: contain; margin: 0 -26px; padding: 2px 26px 4px; scroll-padding: 0 26px; }
.mca-deals__track::-webkit-scrollbar { display: none; }
.mca-deals__track:focus-visible { outline: 2px solid rgba(255,255,255,.5); outline-offset: -2px; border-radius: 12px; }
.mca-deal { scroll-snap-align: start; display: flex; flex-direction: column; min-width: 0; border-radius: 24px; background: #26292c; border: 1px solid rgba(255,255,255,.07); overflow: hidden; }
.mca-deal__plan { position: relative; aspect-ratio: 4/3; margin: 8px 8px 0; border-radius: 18px; background: #f4f6f6; display: flex; align-items: center; justify-content: center; overflow: hidden; }
.mca-deal__plan img { position: relative; z-index: 1; max-width: 86%; max-height: 86%; object-fit: contain; mix-blend-mode: multiply; }
.mca-deal__ph { position: absolute; inset: 0; display: flex; align-items: center; justify-content: center; color: #cfd4d6; }
.mca-deal__ph svg { width: 54px; height: 54px; }
.mca-deal__plan img + .mca-deal__ph { display: none; }
.mca-deal__pct { position: absolute; z-index: 2; left: 10px; top: 10px; padding: 5px 11px; border-radius: 999px; background: var(--red); color: #fff; font-size: 15px; font-weight: 700; letter-spacing: -.01em; }
.mca-deal__num { position: absolute; z-index: 2; right: 10px; top: 10px; padding: 5px 10px; border-radius: 999px; background: rgba(27,30,32,.82); color: #fff; font-size: 13px; font-weight: 600; }
.mca-deal__body { display: flex; flex-direction: column; gap: 6px; flex: 1; padding: 16px 18px 18px; }
.mca-deal__title { margin: 0; font-size: 19px; font-weight: 600; letter-spacing: -.01em; line-height: 1.2; }
.mca-deal__facts { display: flex; flex-wrap: wrap; gap: 4px 12px; margin: 0; font-size: 13.5px; color: rgba(255,255,255,.6); }
.mca-deal__price { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 10px; margin-top: 8px; }
.mca-deal__price b { font-size: clamp(22px, 1.7vw, 26px); font-weight: 600; letter-spacing: -.025em; line-height: 1; white-space: nowrap; }
.mca-deal__price s { font-size: 14px; color: rgba(255,255,255,.45); white-space: nowrap; }
.mca-deal__save { align-self: flex-start; margin: 4px 0 0; padding: 5px 11px; border-radius: 999px; background: var(--lime); color: var(--lime-ink); font-size: 13.5px; font-weight: 600; }
.mca-deal__btn { margin-top: auto; height: 46px; padding: 0 14px; font-size: 14.5px; background: #fff; color: var(--ink) !important; }
.mca-deal__body .mca-deal__save + .mca-deal__btn { margin-top: 14px; }
.mca-deal__btn:hover { background: var(--lime); }
.mca-deal__btn svg { width: 18px; height: 18px; }

/* promo materials block */
.mca-promos { display: grid; grid-template-columns: repeat(auto-fill, minmax(min(230px, 100%), 1fr)); gap: 14px; }
.mca-pm { display: flex; flex-direction: column; min-width: 0; border-radius: 22px; background: #f4f6f6; overflow: hidden; }
.mca-pm__prev { position: relative; aspect-ratio: 4/3; margin: 8px 8px 0; border-radius: 16px; overflow: hidden; background: var(--sand); display: flex; align-items: center; justify-content: center; }
.mca-pm__prev--pdf { background: var(--rose); }
.mca-pm__prev--doc, .mca-pm__prev--docx, .mca-pm__prev--ppt, .mca-pm__prev--pptx { background: var(--sky); }
.mca-pm__prev--xls, .mca-pm__prev--xlsx { background: var(--mint); }
.mca-pm__prev img { width: 100%; height: 100%; object-fit: cover; }
.mca-pm__ext { display: flex; flex-direction: column; align-items: center; gap: 6px; color: var(--ink); }
.mca-pm__ext svg { width: 42px; height: 42px; opacity: .7; }
.mca-pm__ext b { font-size: 15px; letter-spacing: .02em; }
.mca-pm__tag { position: absolute; left: 10px; bottom: 10px; background: rgba(255,255,255,.92); border-color: transparent; }
.mca-pm__body { display: flex; flex-direction: column; gap: 4px; flex: 1; padding: 14px 16px 16px; }
.mca-pm__title { font-size: 16px; font-weight: 600; line-height: 1.3; overflow-wrap: anywhere; }
.mca-pm__cap { margin: 0; font-size: 13.5px; color: var(--muted); display: -webkit-box; -webkit-line-clamp: 3; -webkit-box-orient: vertical; overflow: hidden; }
.mca-pm__foot { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: auto; padding-top: 12px; }
.mca-pm__foot small { color: var(--muted); font-size: 13px; }
.mca-pm__dl { height: 40px; padding: 0 16px; font-size: 14px; }
.mca-pm__dl svg { width: 16px; height: 16px; }


@media (max-width: 760px) {
    .mca-obj__mats { gap: 4px; }
    .mca-mat { padding: 6px 8px; }
    .mca-mat small { font-size: 11.5px; }
    .mca-feed--fixed { max-height: 520px; }
    .mca-deals__head { margin-bottom: 14px; align-items: flex-start; }
    .mca-deals__head h2 { font-size: 22px; }
    .mca-deals__head p { font-size: 13px; }
    .mca-deals__nav { display: none; }
    .mca-deals__track { grid-auto-columns: 84%; gap: 10px; margin: 0 -16px; padding: 2px 16px 4px; scroll-padding: 0 16px; }
    .mca-deal { border-radius: 20px; }
    .mca-deal__body { padding: 14px 14px 16px; }
    .mca-deal__price b { font-size: 23px; }
    .mca-promos { grid-template-columns: repeat(2, minmax(0,1fr)); gap: 8px; }
    .mca-pm { border-radius: 18px; }
    .mca-pm__prev { margin: 6px 6px 0; border-radius: 13px; }
    .mca-pm__tag { display: none; }
    .mca-pm__body { padding: 10px 11px 12px; }
    .mca-pm__title { font-size: 14px; }
    .mca-pm__cap { font-size: 12.5px; -webkit-line-clamp: 2; }
    .mca-pm__foot { flex-direction: column; align-items: stretch; gap: 6px; padding-top: 8px; }
    .mca-pm__dl { height: 38px; justify-content: center; }
}
@media (max-width: 380px) {
    .mca-promos { grid-template-columns: minmax(0,1fr); }
}
@media (max-width: 1000px) {
    .mca-card { scroll-margin-top: 84px; }
}
.mca-nw { white-space: nowrap; }
.mca-top .mca-search { flex: 1 1 auto; min-width: 0; }
.mca-top .mca-search input { min-width: 0; width: 100%; }
@media (max-width: 760px) {
    .mca-top .mca-search { height: 44px; padding: 0 14px; }
}
