/* C2: правки вида для группы страниц «money». Подключается после c2.css.
   Движение денег (Факт и Прогноз), Сроки платежей, Расходы, Юани у Lily, Налог 3 %, BERNQ должен мне.
   Все страницы группы завёрнуты в .kv.m2; свои куски — с приставками m2-, cf2-, ly2-. */

/* ---------------------------------------------------------------- общее */
.m2 .num{white-space:nowrap;font-variant-numeric:tabular-nums}
.m2 .k-note{color:#5E5E68;line-height:1.5}
.m2 .k-card>.k-h{align-items:center}
.m2 .k-card>.c2-key{margin-bottom:16px}
.m2 .k-card>.c2-key+*{margin-top:0}
.m2 .k-link,.m2 .k-link:visited{color:#4A48B8}
.m2 .k-link:hover{color:#2F2D8A}
.m2-cap{margin:-6px 0 0!important;font-size:13.5px!important}
.m2-h3{font-size:16px;font-weight:700;letter-spacing:-.01em;margin:24px 0 12px;color:#1C1C1E}
.m2 .neg{color:#C2413A}.m2 .pos{color:#2E7D52}

/* значок «сверено» / «последняя запись» */
.m2-fresh{display:inline-flex;align-items:center;gap:8px;min-height:40px;box-sizing:border-box;padding:0 15px;border-radius:999px;white-space:nowrap;
  font-size:13.5px;font-weight:600;color:#3C3C43;background:rgba(255,255,255,.5);border:1px solid rgba(255,255,255,.65);box-shadow:var(--glass-sh);
  -webkit-backdrop-filter:var(--c2-blur);backdrop-filter:var(--c2-blur)}
.m2-fresh i{width:8px;height:8px;border-radius:50%;background:#3E9C69;box-shadow:0 0 0 3px rgba(62,156,105,.18);flex:none}

/* кнопки: главная — индиго, вторая — стекло */
.m2 .k-btn,.m2 .k-btn:hover{background:#4A48B8;color:#fff;border:0;border-radius:13px;box-shadow:0 8px 18px -10px rgba(74,72,184,.75)}
.m2 .k-btn:hover{background:#3F3DA8}
.m2 .k-btn2{min-height:42px;border-radius:13px;border:1px solid rgba(255,255,255,.7);background:rgba(255,255,255,.55);color:#1C1C1E;font-weight:600;
  box-shadow:var(--glass-sh);-webkit-backdrop-filter:var(--c2-blur);backdrop-filter:var(--c2-blur)}
.m2 .k-btn2:hover{background:rgba(255,255,255,.9)}
.m2 .k-btn2:disabled{opacity:.6;cursor:default}
.m2 .pm-tb{min-height:36px;border-radius:11px;border:1px solid rgba(60,60,67,.14);background:rgba(255,255,255,.7);color:#1C1C1E;font-weight:600}
.m2 .pm-tb:hover{background:#fff}
.m2 .pm-tb.pm-del{color:#A8352F;border-color:rgba(221,95,88,.3);background:rgba(221,95,88,.06)}
.m2 .pm-tb.pm-del:hover{background:rgba(221,95,88,.12)}
.m2 .pm-tb.pm-ok,.m2 .pm-tb.pm-ok:hover{background:#4A48B8;border-color:#4A48B8;color:#fff}
.m2 .k-chip{font-size:12px;padding:3px 10px!important}

/* формы в стеклянных карточках */
.m2 .pm-form label{font-size:13.5px;font-weight:500;color:#3C3C43}
.m2 .pm-form :where(input,select){min-height:46px;border-radius:13px!important;background:rgba(255,255,255,.8)!important}
.m2 .pm-form .mu-chk{flex-direction:row;align-items:center;gap:9px;font-size:14px;color:#1C1C1E;white-space:nowrap}
.m2 .pm-form .mu-chk input{width:20px;height:20px;min-height:0;accent-color:#4A48B8;margin:0}

/* ---------------------------------------------------------------- плитки */
/* в c2.css цвет по порядку (:nth-child) сильнее класса оттенка; здесь оттенок, заданный явно, главнее */
.m2 .k-kpis>.k-kpi.c2-t-rose{--t1:rgba(236,92,128,.2);--t2:rgba(236,92,128,.06);--ts:rgba(236,92,128,.38);--tc:#B02E55;--tb:rgba(236,92,128,.14)}
.m2 .k-kpis>.k-kpi.c2-t-amber{--t1:rgba(240,166,60,.22);--t2:rgba(240,166,60,.07);--ts:rgba(240,166,60,.4);--tc:#975A08;--tb:rgba(240,166,60,.17)}
.m2 .k-kpis>.k-kpi.c2-t-blue{--t1:rgba(64,140,230,.2);--t2:rgba(64,140,230,.06);--ts:rgba(64,140,230,.38);--tc:#1F5FA8;--tb:rgba(64,140,230,.14)}
.m2 .k-kpis>.k-kpi.c2-t-teal{--t1:rgba(52,170,180,.22);--t2:rgba(52,170,180,.07);--ts:rgba(52,170,180,.4);--tc:#1B6E77;--tb:rgba(52,170,180,.15)}
.m2 .k-kpis>.k-kpi.c2-t-indigo{--t1:rgba(94,92,230,.24);--t2:rgba(150,110,230,.08);--ts:rgba(94,92,230,.42);--tc:#4A48B8;--tb:rgba(94,92,230,.13)}
.m2 .k-kpis>.k-kpi.c2-t-green{--t1:rgba(62,156,105,.22);--t2:rgba(62,156,105,.07);--ts:rgba(62,156,105,.4);--tc:#22603F;--tb:rgba(62,156,105,.15)}
.m2 .k-kpi-n .num{font-weight:600;color:#3A3A44}
@media (max-width:760px){
  .m2 .k-kpis{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .m2 .k-kpis.m2-k3>:first-child,.m2 .k-kpis.m2-k1>:first-child{grid-column:1 / -1}
  .m2 .k-kpi-d{font-size:12px!important}
  .m2 .k-kpi-d>span:first-child:not(:empty){padding:3px 9px;white-space:normal}
}

/* ---------------------------------------------------------------- строки (как во всплывающем окне) */
.m2-rows{display:flex;flex-direction:column}
.m2-rows>.c2-r:first-child{padding-top:2px}
.m2-rows>.c2-r.m2-start{border-bottom:1.5px solid rgba(60,60,67,.2)}
.m2-rows>.c2-r.m2-start .c2-r-l>span,.m2-rows>.c2-r.m2-start .c2-r-v{font-weight:700}
.m2-rows .c2-r-l small .k-link{font-size:13px;padding:0}
.m2-rv{display:flex;flex-direction:column;align-items:flex-end;gap:6px}
.m2-chip{font-size:12px;font-weight:600;padding:3px 10px;border-radius:999px;white-space:nowrap;letter-spacing:0}
.m2-chip.red{background:rgba(221,95,88,.14);color:#A8352F}
.m2-chip.amber{background:rgba(240,166,60,.18);color:#7A4806}
.m2-chip.mut{background:rgba(118,118,128,.12);color:#3C3C43}

/* ---------------------------------------------------------------- «Что сделать», «Что проверить» */
.m2-todo{display:flex;flex-direction:column;gap:12px}
.m2-ti{display:grid;grid-template-columns:36px minmax(0,1fr);gap:14px;align-items:start;padding:16px 18px;border-radius:20px;border:1px solid rgba(255,255,255,.7);
  background:linear-gradient(150deg,rgba(94,92,230,.14),rgba(94,92,230,.04)),rgba(255,255,255,.4)}
.m2-ti.red{background:linear-gradient(150deg,rgba(236,92,108,.18),rgba(236,92,108,.05)),rgba(255,255,255,.4)}
.m2-ti.amber{background:linear-gradient(150deg,rgba(240,166,60,.2),rgba(240,166,60,.06)),rgba(255,255,255,.4)}
.m2-ti-ic{width:36px;height:36px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:rgba(94,92,230,.16);color:#4A48B8}
.m2-ti.red .m2-ti-ic{background:rgba(236,92,108,.18);color:#A8352F}
.m2-ti.amber .m2-ti-ic{background:rgba(240,166,60,.22);color:#7A4806}
.m2-ti-ic svg{width:18px;height:18px;fill:none;stroke:currentColor;stroke-width:2.2;stroke-linecap:round;stroke-linejoin:round}
.m2-ti-b{display:flex;flex-direction:column;gap:5px;min-width:0}
.m2-ti-b b{font-size:15px;font-weight:700;line-height:1.35;color:#1C1C1E}
.m2-ti-b>span{font-size:14px;line-height:1.5;color:#4A4A56}
.m2-ti-b .num{font-weight:600;color:#1C1C1E}
.m2-ok{padding:16px 18px;border-radius:20px;font-weight:600;color:#22603F;background:linear-gradient(150deg,rgba(62,156,105,.2),rgba(62,156,105,.06)),rgba(255,255,255,.4)}

/* ---------------------------------------------------------------- таблицы: стеклянные */
.m2 .k-scroll{border-radius:18px;background:rgba(255,255,255,.55);border:1px solid rgba(255,255,255,.75);box-shadow:inset 0 1px 0 rgba(255,255,255,.8),0 1px 2px rgba(16,24,40,.03)}
.m2 .k-table{background:transparent!important;border:0!important;border-radius:0!important;box-shadow:none!important;overflow:visible!important}
.m2 .k-table thead th{background:rgba(118,118,128,.07)!important;padding:11px 14px!important;font-size:12.5px!important;font-weight:600!important;color:#5E5E68!important;
  border-bottom:1px solid rgba(60,60,67,.1)!important;white-space:nowrap}
.m2 .k-table td,.m2 .k-table tbody th{padding:12px 14px!important;border-bottom:1px solid rgba(60,60,67,.08)!important}
.m2 .k-table tr:last-child>td,.m2 .k-table tr:last-child>th{border-bottom:0!important}
.m2 .k-table :is(th,td):first-child{padding-left:18px!important}
.m2 .k-table :is(th,td):last-child{padding-right:18px!important}
.m2 .k-table tbody tr:hover td{background:rgba(255,255,255,.55)}
.m2 .k-table tr.k-sum td{border-top:1.5px solid rgba(60,60,67,.22)!important;font-weight:700}
.m2 .k-table tr.k-hl td{background:rgba(62,156,105,.07)}
.m2 .k-table .r,.m2 .k-table td b{white-space:nowrap}
.m2 .k-table td small{display:block;font-size:12.5px;color:#6B6B76;margin-top:2px}
.m2 .k-card>.k-scroll+.k-note,.m2 .k-card>.k-scroll+.pm-foot{margin-top:14px}
.m2-t tr.m2-flag td{background:rgba(240,166,60,.1)}
.m2-t .ph{display:none}

/* ---------------------------------------------------------------- Движение денег */
.cf2-grid{display:grid;grid-template-columns:minmax(0,1.15fr) minmax(0,1fr);grid-template-areas:"ah todo" "due due" "wf m";gap:20px;align-items:start}
.cf2-ah{grid-area:ah}.cf2-todo{grid-area:todo}.cf2-due{grid-area:due;min-width:0;display:flex;flex-direction:column}.cf2-wf{grid-area:wf}.cf2-m{grid-area:m}
.cf2-wf,.cf2-m{align-self:stretch}
@media (max-width:1100px){.cf2-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"todo" "ah" "due" "wf" "m"}}

/* откуда пришли и куда ушли */
.cf2-wf-rows{display:flex;flex-direction:column;gap:1px}
.cf2-wr{display:grid;grid-template-columns:minmax(140px,1.05fr) minmax(0,1.3fr) minmax(112px,auto);gap:14px;align-items:center;padding:7px 10px;margin:0 -10px;font-size:14.5px;border-radius:10px}
.cf2-wr.fin{font-weight:700;border-top:1.5px solid rgba(60,60,67,.2);border-radius:0 0 10px 10px;margin-top:6px;padding-top:12px}
.cf2-wl{min-width:0;line-height:1.3}
.cf2-wt{position:relative;height:18px;border-radius:7px;background:rgba(118,118,128,.1)}
.cf2-wt i{position:absolute;top:0;bottom:0;border-radius:7px}
.cf2-wt u{position:absolute;top:-4px;bottom:-4px;width:1.5px;background:rgba(60,60,67,.4);text-decoration:none}
.cf2-wr b{text-align:right;font-weight:600}
.cf2-wr.fin b{font-weight:700}

/* как менялись деньги */
.cf2-mw{position:relative;min-width:0}
.cf2-plot svg{display:block;max-width:100%;height:auto}
.cf2-plot text{font-size:12px;fill:#8E8E93;font-weight:500;font-variant-numeric:tabular-nums}
.cf2-hits{position:absolute;top:0;display:grid}
.cf2-hits>.c2-hit{display:block;border:0!important;background:transparent!important;padding:0!important;margin:0!important;min-height:0!important;border-radius:10px!important;box-shadow:none!important;cursor:pointer}
.cf2-hits>button.c2-hit:hover,.cf2-hits>.c2-hit.on{background:rgba(118,118,128,.14)!important}
.cf2-hits>span.c2-hit{cursor:default}
.cf2-ml{display:grid;margin-top:8px;font-size:13px;font-weight:500;color:#8E8E93;text-align:center}
.cf2-ml .on{color:#1C1C1E;font-weight:700}

/* «Всё время»: строка под панелью периода и годы под подписями месяцев */
.cf3 .cf3-span{flex:1 1 100%;margin:-2px 0 0;padding:0 4px;font-size:13.5px;line-height:1.45;color:#5E5E68}
.cf3 .cf3-my{display:grid;margin-top:5px;font-size:12px;font-weight:600;color:#8E8E93;font-variant-numeric:tabular-nums}
.cf3 .cf3-my>span{min-width:0;margin:0 3px;padding-top:4px;border-top:1.5px solid rgba(60,60,67,.16);text-align:center;white-space:nowrap}
@media (max-width:760px){
  .cf3 .cf3-span{order:1;padding:0 2px}
  .cf3 .k-top-r{order:2}
  .cf3 .cf3-modes>button{padding-left:4px!important;padding-right:4px!important;white-space:nowrap}
}

/* все строки по месяцам */
.cf2-t{min-width:960px}
.cf2-t th,.cf2-t td{white-space:nowrap;text-align:right}
.m2 .cf2-t tbody th{text-align:left;position:sticky;left:0;z-index:1;background:#F4F5F9!important;font-weight:500!important;color:#3A3A44!important;font-size:14px!important}
.m2 .cf2-t tr.sub>td{background:rgba(118,118,128,.06)}
.m2 .cf2-t thead th:first-child{position:sticky;left:0;z-index:2;background:#ECEDF2!important}
.cf2-t tr.sub>*,.cf2-t tr.bal>*{font-weight:700!important}
.cf2-t td.neg{color:#C2413A}

/* ---------------------------------------------------------------- Сроки платежей */
.m2-due-g{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:32px;align-items:start}
.m2-due-tl{display:flex;flex-direction:column;gap:18px;min-width:0}
.m2-tl{position:relative;height:118px;margin:4px 48px 0 6px}
.m2-tl-line{position:absolute;left:0;right:0;top:44px;height:6px;border-radius:3px;background:rgba(118,118,128,.16)}
.m2-tl-m{position:absolute;top:41px;width:1.5px;height:12px;background:rgba(60,60,67,.22)}
.m2-tl-m span{position:absolute;top:56px;left:50%;transform:translateX(-50%);font-size:12px;color:#8E8E93;white-space:nowrap;font-weight:500}
.m2-tl-p{position:absolute;top:0;transform:translateX(-50%);display:flex;flex-direction:column;align-items:center;gap:4px;padding:2px 4px;border-radius:10px}
.m2-tl-p b{font-size:12.5px;font-weight:700;white-space:nowrap;background:rgba(255,255,255,.88);border-radius:8px;padding:3px 8px;box-shadow:0 2px 8px rgba(16,24,40,.1)}
.m2-tl-p i{width:16px;height:16px;border-radius:50%;border:3px solid #fff;box-sizing:border-box;box-shadow:0 1px 4px rgba(16,24,40,.22);margin-top:9px;flex:none}
.m2-tl-p.below{top:37px;flex-direction:column-reverse}
.m2-tl-p.below i{margin:0}
.m2-tl-p.now{transform:none;align-items:flex-start;padding-left:0}
.m2-tl-p.red i{background:#C2413A}.m2-tl-p.amber i{background:#D89533}
.m2-tl-p.now i{background:#4A48B8}
.m2-tl-p.now b{background:#4A48B8;color:#fff}
.m2-tl-p.c2-hit{cursor:default}
@media (max-width:1000px){.m2-due-g{grid-template-columns:minmax(0,1fr);gap:20px}}

/* ---------------------------------------------------------------- Юани у Lily */
.ly2-grid{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(0,1fr);gap:20px;align-items:start}
@media (max-width:1100px){.ly2-grid{grid-template-columns:minmax(0,1fr)}}
.m2 .k-bars-r{border-bottom-color:rgba(60,60,67,.08)}
.m2 .k-bars-r.c2-hit{margin:0 -10px;padding-left:10px;padding-right:10px;border-radius:12px}
.m2 .k-bars-l small{color:#6B6B76}
.m2 .k-bars-v{min-width:118px}

/* ---------------------------------------------------------------- Расходы, Налог, Вы и BERNQ */
/* кнопки в верхней строке */
.m2 .k-top-r .k-btn{min-height:42px;padding:0 20px;font-weight:600}
.m2 .k-top-r .k-btn2{padding:0 18px}
.m2 .ow-cap td:nth-child(2){min-width:0}
.m2 .ow-note.clamp{display:-webkit-box;-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
.m2 .ow-more{display:inline-block;margin-top:4px;padding:6px 0;font-size:13.5px;font-weight:600;min-height:0;background:none;border:0}
.c2-pop .m2-full{font-size:15px;line-height:1.55;margin:16px 0 8px;color:#1C1C1E;overflow-wrap:anywhere}
@media (min-width:701px){.xp2 .k-bars-r{grid-template-columns:minmax(160px,300px) minmax(0,1fr) auto auto}}
.m2 .ow-cap b.pos{color:#2E7D52}.m2 .ow-cap b.neg{color:#C2413A}
.m2 .k-row{gap:20px}
.xp2 .k-row>.k-wide,.tx2 .k-row>.k-wide{flex:1.7 1 560px}
.m2 .pm-form-xp{grid-template-columns:repeat(2,minmax(0,1fr))}
.m2 .pm-form-xp .pm-wide,.m2 .pm-form-xp label:nth-child(2),.m2 .pm-form-xp .pm-acts{grid-column:1 / -1}
.m2 .pm-form-xp label:nth-child(4){grid-row:1;grid-column:2}
.m2 .pm-form-xp .pm-acts{justify-content:space-between}
.m2 .pm-xcur .k-bars-x{min-width:0}
@media (min-width:761px){.xp2 .k-bars-x{min-width:150px}}
.m2 .pm-plan{height:8px;background:rgba(118,118,128,.14);border-radius:4px;margin:2px 0 8px}
.m2 .pm-plan i{background:linear-gradient(90deg,#3E9C69,#7CCB97)}
.m2 .pm-plan i.hot{background:linear-gradient(90deg,#D89533,#F0A63C)}
.m2 .k-bars-r.pm-click:hover{background:rgba(118,118,128,.1)}
.m2 .k-bars-r.pm-on{background:rgba(221,95,88,.08)}
.m2 .k-bars-r.pm-click:focus-visible{outline:3px solid rgba(74,72,184,.45);outline-offset:-2px}
.m2 .k-cols-c.cur i{outline:none}
.m2 .k-cols-c.c2-hit{padding:4px 0 0;border-radius:12px;cursor:default}
.m2 .k-cols-t{font-weight:600;color:#3A3A44}
.m2 .k-cols-l{font-weight:500;color:#8E8E93}
.m2 .k-cols-c.cur .k-cols-l{color:#1C1C1E;font-weight:700}

/* ---------------------------------------------------------------- формы во всплывающем окне (окно живёт в body, вне .m2) */
.c2-pop .m2f{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;padding:18px 0 6px}
.c2-pop .m2f>.w{grid-column:1 / -1}
.c2-pop .m2f label{display:flex;flex-direction:column;gap:6px;font-size:13.5px;font-weight:500;color:#3C3C43;min-width:0}
.c2-pop .m2f :is(input:not([type=checkbox]),select){width:100%;min-width:0;min-height:46px;padding:0 13px;box-sizing:border-box;border-radius:13px!important;
  border:1px solid rgba(60,60,67,.18)!important;background:rgba(255,255,255,.9)!important;font:inherit;font-size:15px;color:#1C1C1E;box-shadow:none}
.c2-pop .m2f :is(input,select):focus-visible{outline:3px solid rgba(74,72,184,.35);outline-offset:1px;border-color:#4A48B8!important}
.c2-pop .m2f .dd-btn{width:100%;min-height:46px;border-radius:13px!important}
.c2-pop .m2f label.m2f-chk{flex-direction:row;align-items:center;gap:10px;font-size:15px;color:#1C1C1E;cursor:pointer;min-height:44px}
.c2-pop .m2f .m2f-chk input{width:22px;height:22px;min-height:0;margin:0;accent-color:#4A48B8;flex:none}
.c2-pop .m2f-err{margin:0;padding:10px 14px;border-radius:13px;background:rgba(221,95,88,.1);color:#A8352F;font-size:14px;font-weight:500}
.c2-pop .m2f-err[hidden]{display:none}
.c2-pop .m2f-acts{display:flex;justify-content:flex-end;align-items:center;gap:10px;margin-top:4px}
.c2-pop .m2f-acts button{min-height:46px;padding:0 22px;border-radius:13px!important;font:inherit;font-size:15px;font-weight:600;cursor:pointer}
.c2-pop .m2f-go{border:0!important;background:#4A48B8!important;color:#fff!important;box-shadow:0 8px 18px -10px rgba(74,72,184,.75)!important}
.c2-pop .m2f-go:hover{background:#3F3DA8!important}
.c2-pop .m2f-go:disabled{opacity:.55;cursor:default}
.c2-pop .m2f-no{border:1px solid rgba(60,60,67,.16)!important;background:rgba(255,255,255,.8)!important;color:#1C1C1E!important;box-shadow:none!important}
.c2-pop .m2f-no:hover{background:#fff!important}
/* сообщение и выпадающий список поверх окна с формой */
body:has(.m2-pop) #toast{z-index:700}
@media (max-width:760px){
  .c2-pop .m2f{gap:12px;padding-top:14px}
  .c2-pop .m2f-acts button{flex:1}
}

/* ---------------------------------------------------------------- Прогноз */
.m2 .fc2-cfg,.m2 .fc2-cfg:hover{background:linear-gradient(135deg,#6E6CF0,#4A48B8);box-shadow:0 10px 22px -12px rgba(74,72,184,.75)}
.m2 .fc2-levers{border-radius:28px;padding:18px 24px;-webkit-backdrop-filter:var(--c2-blur);backdrop-filter:var(--c2-blur)}
.m2 .fc2-lv{font-size:14px;font-weight:500}
.m2 .fc2-lv b{color:#1C1C1E;font-weight:700}
.m2 .fc2-lv input[type=range]{accent-color:#4A48B8}
.m2 .fc2-lv small{font-size:12.5px;color:#6B6B76}
.m2 .fc-chart{padding:24px 26px}
.m2 .fc-chart .dash-h{display:flex;justify-content:space-between;align-items:center;gap:12px;flex-wrap:wrap;margin-bottom:14px}
.m2 .fc-chart .dash-h h2{font-size:21px;font-weight:700;letter-spacing:-.02em;margin:0}
.m2 .fc-chart>.c2-key{margin-bottom:14px}
.m2 .fc-plot svg{height:auto}
.m2 .fc-plotw{min-width:0}
.m2 .fc-line{stroke:#4A48B8}
.m2 .fc-band{fill:rgba(94,92,230,.14)}
.m2 .fc-neg{fill:rgba(221,95,88,.08)}
.m2 .fc-buf{stroke:#D89533}
.m2 .fc-bufl{fill:#975A08}
.m2 .fc-mark{stroke:rgba(60,60,67,.18)}
.m2 .fc-g{stroke:rgba(60,60,67,.08)}.m2 .fc-g0{stroke:rgba(60,60,67,.4)}
.m2 .fc-gl,.m2 .fc-tick{fill:#8E8E93;font-weight:500}
.m2 .fc-gl.neg{fill:#C2413A}
.m2 .fc-cross line{stroke:#4A48B8}
.m2 .fc-cross circle{stroke:#8E8CF0}.m2 .fc-cross circle.b{stroke:#4A48B8}
.m2 .fc-tip{background:rgba(28,28,30,.9);color:#fff;border:0;border-radius:14px;box-shadow:0 14px 30px -10px rgba(0,0,0,.45);
  -webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);font-size:12.5px}
.m2 .fc-tip small{color:rgba(255,255,255,.72)}
.m2 .fc-tip strong{color:#fff}.m2 .fc-tip strong.neg{color:#FF9A8F}
.m2 .fc-tip hr{border-top-color:rgba(255,255,255,.22)}
.m2 .fc-tip div{color:rgba(255,255,255,.78)}.m2 .fc-tip div b{color:#fff}
.m2 .fc-tip div.ev,.m2 .fc-tip div.ev b{color:#FF9A8F}
.m2 .fc-badge{background:rgba(240,166,60,.25);color:#FFD08A}.m2 .fc-badge.neg{background:rgba(221,95,88,.28);color:#FFB4AC}
.m2 .fc-evl{border-top-color:rgba(60,60,67,.1);gap:10px 20px;padding-top:12px}
.m2 .fc-evl span{font-size:13px;color:#3A3A44}
.m2 .cf-table{border-radius:28px}
.m2 .cf-table tr.cf-h th,.fs-ov .cf-table tr.cf-h th{text-transform:none;letter-spacing:0;font-size:13.5px;color:#3A3A44;font-weight:700}
.m2 .fc2-th h2{font-size:21px;font-weight:700;letter-spacing:-.02em}
.m2 .fc2-th{padding:20px 24px 12px}
.fc2-panel{background:rgba(249,249,251,.94);-webkit-backdrop-filter:var(--c2-blur);backdrop-filter:var(--c2-blur);border-radius:28px 0 0 28px}
.fc2-sec{border-radius:18px;border-color:rgba(60,60,67,.08);background:rgba(255,255,255,.8)}
.fc2-sh i{color:#4A48B8}
.fc2-shade{background:rgba(28,28,40,.22);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}

/* «На весь экран» */
.fs-btn,.fs-btn:hover,.fs-close,.fs-close:hover{border-radius:12px!important;border:1px solid rgba(255,255,255,.75)!important;background:rgba(255,255,255,.6)!important;color:#1C1C1E!important;
  font-weight:600;box-shadow:var(--glass-sh)!important;-webkit-backdrop-filter:var(--c2-blur);backdrop-filter:var(--c2-blur)}
.fs-btn:hover,.fs-close:hover{background:#fff!important}
.fs-ov{background:radial-gradient(900px 600px at 0% -10%,rgba(120,118,230,.18),transparent 60%),#EEF0F5!important}
.fs-body{border-radius:22px!important;background:rgba(255,255,255,.75)!important;border:1px solid rgba(255,255,255,.8)!important;box-shadow:var(--glass-sh)}

/* ---------------------------------------------------------------- телефон */
@media (max-width:760px){
  .m2{gap:14px}
  .m2 .k-top{gap:10px}
  .m2 .k-top-l,.m2 .k-top-r{width:100%}
  .m2 .k-top-l>.dash-seg{flex:1 1 100%;display:flex}
  .m2 .k-top-l>.dash-seg>button{flex:1}
  .m2 .k-top-l>.k-period{flex:1 1 100%;justify-content:space-between}
  .m2 .k-top-r .k-btn2,.m2 .k-top-r .k-btn{flex:1;padding:0 12px}
  .m2 .k-card>.k-h{flex-direction:column;align-items:flex-start;gap:2px}
  .m2 .k-card>.k-h .c2-chev{display:none}
  .m2-ti{grid-template-columns:30px minmax(0,1fr);gap:12px;padding:14px}
  .m2-ti-ic{width:30px;height:30px}
  .m2-ti-b b{font-size:14.5px}.m2-ti-b>span{font-size:13.5px}
  .cf2-wr{grid-template-columns:minmax(0,1fr) auto;gap:6px 12px;font-size:14px}
  .cf2-wt{grid-column:1 / -1;grid-row:2;height:12px}
  .cf2-ml{font-size:11.5px}
  .m2-tl{margin:4px 40px 0 4px}
  .m2 .k-scroll{border-radius:16px}
  .m2 .k-table thead th{padding:10px 10px!important}
  .m2 .k-table td,.m2 .k-table tbody th{padding:11px 10px!important}
  .m2 .k-table :is(th,td):first-child{padding-left:14px!important}
  .m2 .k-table :is(th,td):last-child{padding-right:14px!important}
  .m2-t .md{display:none}
  .m2-t .ph{display:inline}
  /* таблица-«стопка»: строка — блок, отступы у строки, а не у ячеек */
  .m2 .k-table.k-stack tr,.m2 .k-table.pm-xt tr{padding:12px 14px!important;border-bottom:1px solid rgba(60,60,67,.08)!important}
  .m2 .k-table.k-stack tr:last-child,.m2 .k-table.pm-xt tr:last-child{border-bottom:0!important}
  .m2 .k-table.k-stack td,.m2 .k-table.pm-xt td{padding:0!important;border:0!important}
  .m2 .k-kpi-l{gap:7px}
  .m2 .k-kpi-l .c2-chev{width:15px;height:15px}
  .m2 .k-kpi-d>span:first-child:not(:empty){border-radius:10px}
  .m2-t{font-size:13.5px}
  .m2 .m2-t thead th{white-space:normal;vertical-align:bottom}
  .m2 .m2-t td,.m2 .m2-t thead th{padding-left:8px!important;padding-right:8px!important}
  .m2 .m2-t :is(th,td):first-child{padding-left:12px!important}
  .m2 .m2-t :is(th,td):last-child{padding-right:12px!important}
  .m2-t td:first-child{white-space:nowrap}
  .m2-t td small.ph{display:block;white-space:normal}
  .m2 .k-table.k-stack tr.k-hl{background:rgba(62,156,105,.08)}
  .m2 .k-table.k-stack tr.k-hl td{background:transparent!important}
  /* Налог: строка полугодия — название сверху, суммы парами с подписями */
  .m2 .pm-tax{min-width:0}
  .m2 .pm-tax thead{display:none}
  .m2 .pm-tax tr{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px 14px;padding:12px 14px;border-bottom:1px solid rgba(60,60,67,.08)}
  .m2 .pm-tax tr:last-child{border-bottom:0}
  .m2 .pm-tax tr.k-sum{border-top:1.5px solid rgba(60,60,67,.22)}
  .m2 .k-table.pm-tax tr>td{padding:0!important;border:0!important;text-align:left!important}
  .m2 .pm-tax td:first-child small{font-weight:400}
  .m2 .pm-tax td:first-child{grid-column:1 / -1;font-weight:600;min-width:0}
  .m2 .pm-tax td:empty{display:none}
  .m2 .pm-tax td[data-l]::before{content:attr(data-l);display:block;font-size:12px;font-weight:500;color:#6B6B76;margin-bottom:2px}
  .m2 .fc2-levers{padding:16px;gap:16px;grid-template-columns:minmax(0,1fr)}
  .m2 .fc-plotw{overflow-x:auto;overscroll-behavior-x:contain;margin:0 -16px;padding:0 16px 6px}
  .m2 .fc-plot{min-width:840px}
  .m2 .fc2-th{flex-direction:column;align-items:flex-start;gap:4px;padding:18px 16px 10px}
  .m2 .fc-chart{padding:18px 16px}
  .fc2-panel{border-radius:24px 0 0 24px}
}
@media (max-width:760px){.m2 .pm-tax tr.k-sum td{border-top:0!important}}

.m2 .k-top-l:empty{display:none}
.m2 .k-top:has(>.k-top-l:empty){justify-content:flex-end}

/* «Переведено Lily» → «Чьими деньгами»: переводы в учёте и переключатель «С вашей карты» (22.10.2026) */
.c2-pop .ly-own{display:flex;flex-direction:column;gap:2px;margin:0 0 14px;padding:12px 14px;border-radius:16px;background:rgba(94,92,230,.07);box-shadow:inset 0 0 0 1px rgba(94,92,230,.16)}
.c2-pop .ly-own-h{display:flex;flex-direction:column;gap:3px;padding-bottom:8px}
.c2-pop .ly-own-h b{font-size:15px;font-weight:600;color:#1C1C1E}
.c2-pop .ly-own-h small{font-size:13px;line-height:1.45;color:#5E5E68}
.c2-pop .ly-own-r{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:10px 0;border-top:1px solid rgba(60,60,67,.1)}
.c2-pop .ly-own-l{display:flex;flex-direction:column;gap:2px;min-width:0}
.c2-pop .ly-own-l b{font-size:14.5px;font-weight:600;color:#1C1C1E}
.c2-pop .ly-own-l small{font-size:13px;color:#5E5E68}
.c2-pop .ly-sw{display:inline-flex;align-items:center;gap:9px;flex:none;min-height:44px;padding:0 12px 0 8px;border:0;border-radius:14px;
  background:rgba(255,255,255,.85);box-shadow:inset 0 0 0 1px rgba(60,60,67,.12),0 1px 2px rgba(0,0,0,.04);font:inherit;font-size:14px;font-weight:500;color:#1C1C1E;cursor:pointer;white-space:nowrap}
.c2-pop .ly-sw i{position:relative;width:38px;height:22px;border-radius:999px;background:rgba(120,120,128,.24);flex:none;transition:background .2s}
.c2-pop .ly-sw i::after{content:"";position:absolute;top:2px;left:2px;width:18px;height:18px;border-radius:50%;background:#fff;box-shadow:0 1px 3px rgba(0,0,0,.25);transition:transform .2s}
.c2-pop .ly-sw[aria-checked="true"] i{background:#5E5CE6}
.c2-pop .ly-sw[aria-checked="true"] i::after{transform:translateX(16px)}
.c2-pop .ly-sw:disabled{opacity:.6;cursor:default}
.c2-pop .ly-sw:focus-visible{outline:2px solid #4A48B8;outline-offset:2px}
.c2-pop .ly-own-n{margin:0 0 14px;font-size:13.5px;color:#5E5E68}
@media (prefers-reduced-motion:reduce){.c2-pop .ly-sw i,.c2-pop .ly-sw i::after{transition:none}}
@media (max-width:520px){
  .c2-pop .ly-own-r{flex-wrap:wrap;row-gap:8px}
  .c2-pop .ly-own-l{flex:1 1 100%}
}

/* «Расходы»: курсовая разница в плюс (доход) зелёная со знаком «+» */
.pm-xt td.xn b.xp-plus,.m2 .k-table.pm-xt td.xn b.xp-plus{color:#2E7D52!important}

/* ---------------------------------------------------------------- «Займы» (js/pages/loans.js) */
.ln-t td small{display:block;margin-top:2px;font-size:12.5px;color:#6B6B76;font-weight:400}
.ln-t td small.warn{color:#975A08;font-weight:600}.ln-t td small.neg{color:#C2413A;font-weight:600}
.ln-t td.ln-n b{font-weight:600;color:#1C1C1E}
.ln-t tbody tr.ln-r{cursor:pointer}
.ln-t tbody tr.ln-r:hover td{background:rgba(118,118,128,.06)}
.ln-t tbody tr.ln-r:focus-visible{outline:3px solid rgba(74,72,184,.45);outline-offset:-3px}
.ln-t tr.ln-done td{color:#6B6B76}
.ln-t tr.ln-tot td{border-top:1.5px solid rgba(60,60,67,.2)!important;background:rgba(118,118,128,.04);font-weight:700}
.ln-t tr.ln-tot td small{font-weight:400}
.ln-t td.ln-l b{font-weight:700}
.ln-past{margin-top:12px}
/* окно займа */
.c2-pop .m2f [hidden]{display:none!important}
.ln-pop .ln-pv{display:inline-flex;align-items:center;gap:12px}
.ln-pop .ln-pay{margin-top:14px;padding:16px 0 4px;border-top:1px solid rgba(60,60,67,.1)}
.ln-pop .ln-pay-t{font-size:15px;font-weight:700;color:#1C1C1E}
.ln-pop .ln-acts{display:flex;flex-wrap:wrap;gap:10px;margin-top:14px}
.ln-pop .ln-del{color:#A8352F!important}
.c2-pop .m2f .ln-int-n{margin:-4px 0 0}
@media (max-width:760px){
  .m2 .k-table.ln-t thead{display:none}
  .m2 .k-table.ln-t,.m2 .k-table.ln-t tbody{display:block}
  .m2 .k-table.ln-t tr{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"n l" "u p";gap:4px 12px;padding:12px 14px;border-bottom:1px solid rgba(60,60,67,.08)}
  .m2 .k-table.ln-t tr:last-child{border-bottom:0}
  .m2 .k-table.ln-t td{display:block;padding:0!important;border:0!important;background:none!important;text-align:left!important;min-width:0}
  .m2 .k-table.ln-t td.ln-n{grid-area:n}.m2 .k-table.ln-t td.ln-n b{white-space:normal}
  .m2 .k-table.ln-t td.ln-l{grid-area:l;text-align:right!important}
  .m2 .k-table.ln-t td.ln-u{grid-area:u}.m2 .k-table.ln-t td.ln-p{grid-area:p;text-align:right!important}
  .m2 .k-table.ln-t td.ln-d,.m2 .k-table.ln-t td.ln-b{display:none}
  .m2 .k-table.ln-t td.ln-u .num,.m2 .k-table.ln-t td.ln-p .num{font-size:13px;color:#6B6B76}
  .m2 .k-table.ln-t td.ln-u small{display:inline;margin-left:6px}
  .m2 .k-table.ln-t td.ln-p small{display:none}
  .m2 .k-table.ln-t td.ln-p .num::before{content:'взяли '}
  .m2 .k-table.ln-t tr.ln-tot{grid-template-areas:"n l";border-top:1.5px solid rgba(60,60,67,.2);background:rgba(118,118,128,.04)}
  .m2 .k-table.ln-t tr.ln-tot td.ln-u,.m2 .k-table.ln-t tr.ln-tot td.ln-p{display:none}
  .ln-pop .ln-acts .k-btn2{flex:1}
}
