:host{
  display:block;
  color:var(--text);
  font:15px/1.45 Inter,ui-sans-serif,system-ui,-apple-system,"Segoe UI",sans-serif;
  --bg2:var(--bg-2);
  --panel2:var(--panel-2);
  --green:#70dfa5;
  --blue:#8fd1ff;
  --purple:#b8a7ff;
  --pink:var(--accent);
  --amber:#f0c85b;
}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:18px}

button,input,select,textarea{font:inherit}.page{width:min(1280px,calc(100% - 36px));margin:auto;padding:42px 0 72px}
.hero{display:grid;grid-template-columns:1.7fr .7fr;gap:18px;margin-bottom:18px}.glass{background:var(--panel);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);backdrop-filter:blur(20px);-webkit-backdrop-filter:blur(20px)}
h1{font-size:clamp(48px,6vw,78px);line-height:.93;margin:0 0 16px;letter-spacing:-.055em}.lead{max-width:760px;font-size:18px;color:#d6e2f4;margin:0}
.stats{display:grid;grid-template-columns:1.4fr repeat(3,1fr);gap:14px;margin-bottom:18px}.stat{padding:22px;min-height:140px}.kicker{color:var(--muted);font-size:13px;margin-bottom:8px}.value{font-size:clamp(32px,3.4vw,52px);font-weight:780;line-height:1;letter-spacing:-.04em}.sub{color:var(--muted);font-size:13px;margin-top:10px}
.section{padding:26px;margin-bottom:18px}.section-head{display:flex;justify-content:space-between;align-items:flex-start;gap:18px;margin-bottom:22px}.section h2{font-size:32px;line-height:1;margin:0;letter-spacing:-.035em}.desc{color:var(--muted);margin-top:7px}.head-actions{display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.btn,.chip{border:1px solid var(--line);background:rgba(255,255,255,.04);color:var(--text);border-radius:14px;padding:10px 14px;cursor:pointer;transition:.2s}.btn:hover,.chip:hover,.chip.active{background:rgba(255,255,255,.10);border-color:rgba(255,255,255,.22);transform:translateY(-1px)}.btn.primary{background:linear-gradient(135deg,rgba(101,200,255,.18),rgba(155,130,255,.16));border-color:rgba(126,182,255,.25)}
.empty-card{grid-column:1/-1;padding:20px;border:1px dashed rgba(255,255,255,.12);border-radius:18px;color:var(--muted);text-align:center;background:rgba(255,255,255,.018)}
.budget-grid{display:grid;grid-template-columns:260px 1fr;gap:28px;align-items:center}.budget-overview{display:grid;gap:16px}.ring{width:210px;aspect-ratio:1;border-radius:50%;display:grid;place-items:center;margin:auto;background:conic-gradient(var(--blue) 0deg,rgba(255,255,255,.10) 0);position:relative}.ring:after{content:"";position:absolute;inset:17px;border-radius:50%;background:rgba(5,15,27,.92);border:1px solid rgba(255,255,255,.06)}.ring-content{position:relative;z-index:1;text-align:center}.ring-content strong{display:block;font-size:46px}.ring-content span{color:var(--muted);font-size:13px}.triple{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.mini{padding:14px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);border-radius:18px}.mini small{display:block;color:var(--muted);margin-bottom:5px}.mini b{font-size:22px}
.budget-list{display:grid;gap:8px}.budget-row{border:1px solid transparent;border-radius:18px;transition:.2s}.budget-row:hover{border-color:rgba(255,255,255,.08);background:rgba(255,255,255,.02)}.budget-main{display:grid;grid-template-columns:150px 1fr 185px 64px 36px;gap:14px;align-items:center;padding:14px;cursor:pointer}.name{font-weight:650;display:flex;align-items:center;gap:9px}.dot{width:10px;height:10px;border-radius:50%}.track{height:11px;border-radius:999px;background:rgba(255,255,255,.075);overflow:hidden}.track i{display:block;height:100%;border-radius:999px}.amount{color:#dfe8f6;text-align:right}.pct{color:var(--muted);text-align:right}.edit-icon{color:var(--muted);text-align:center}.budget-extra{display:none;padding:0 14px 14px;color:var(--muted);font-size:13px}.budget-row.open .budget-extra{display:block}
.chart{height:320px;position:relative;margin-top:14px;border:1px solid rgba(255,255,255,.07);border-radius:22px;overflow:hidden;background:radial-gradient(420px 180px at 18% 0,rgba(88,231,173,.075),transparent 70%),linear-gradient(180deg,rgba(255,255,255,.025),rgba(255,255,255,.008))}.chart canvas{width:100%;height:100%;display:block;cursor:crosshair}.legend{display:flex;gap:14px;flex-wrap:wrap;color:var(--muted);font-size:13px}.legend span:before{content:"";width:9px;height:9px;border-radius:50%;display:inline-block;margin-right:6px;background:var(--c);box-shadow:0 0 14px var(--c)}.chart-tooltip{position:absolute;z-index:4;min-width:170px;padding:11px 13px;border:1px solid rgba(255,255,255,.13);border-radius:13px;background:rgba(5,15,27,.94);box-shadow:0 14px 40px rgba(0,0,0,.35);backdrop-filter:blur(14px);pointer-events:none;opacity:0;transform:translate(-50%,-8px);transition:opacity .15s,transform .15s;font-size:12px}.chart-tooltip.open{opacity:1;transform:translate(-50%,-14px)}.chart-tooltip b{display:block;margin-bottom:6px;color:var(--text)}.chart-tooltip span{display:flex;justify-content:space-between;gap:18px;color:var(--muted);margin-top:3px}.chart-tooltip strong{color:var(--text)}
.two{display:grid;grid-template-columns:1fr 1fr;gap:18px;margin-bottom:18px}.two>.section{margin:0}.compare-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.compare{padding:16px;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025)}.compare small{color:var(--muted)}.compare b{display:block;font-size:25px;margin:6px 0}.insight{margin-top:12px;padding:18px;border-radius:18px;background:linear-gradient(135deg,rgba(99,199,255,.08),rgba(154,130,255,.07));border:1px solid rgba(255,255,255,.08);font-size:18px;font-weight:650}
.timeline{display:grid;gap:9px}.event{position:relative;display:grid;grid-template-columns:74px 1fr auto;gap:14px;align-items:center;padding:14px 16px;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:linear-gradient(115deg,rgba(255,255,255,.035),rgba(255,255,255,.012));overflow:hidden;transition:transform .22s,border-color .22s,background .22s;animation:itemIn .36s both}.event:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--event-color,var(--blue));box-shadow:0 0 18px var(--event-color,var(--blue))}.event:hover{transform:translateX(4px);border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.045)}.event-income{--event-color:var(--green)}.event-expense{--event-color:var(--pink)}.event-future{border-style:dashed}.event small{display:block;color:var(--muted);margin-top:2px}.event-meta{display:flex;gap:6px;align-items:center;flex-wrap:wrap;margin-top:5px}.event-pill{display:inline-flex!important;width:max-content;margin:0!important;padding:3px 7px;border-radius:999px;background:rgba(255,255,255,.055);font-size:10px!important;letter-spacing:.02em}.positive{color:var(--green);font-weight:700}.negative{color:var(--pink);font-weight:700}.forecast{position:relative;padding:18px;border-radius:20px;border:1px solid rgba(255,255,255,.09);background:linear-gradient(135deg,rgba(255,186,102,.11),rgba(155,130,255,.065));margin-bottom:12px;overflow:hidden}.forecast:after{content:"";position:absolute;width:130px;height:130px;right:-55px;top:-75px;border-radius:50%;background:rgba(255,186,102,.12)}.forecast b{font-size:34px;display:block;margin-top:3px}
.accounts-top{display:flex;align-items:end;justify-content:space-between;gap:12px;margin-bottom:14px}.accounts-total b{font-size:40px;display:block}.accounts-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:10px}.account{padding:16px;border-radius:18px;border:1px solid rgba(255,255,255,.075);background:linear-gradient(145deg,rgba(255,255,255,.038),rgba(255,255,255,.014));cursor:pointer;transition:transform .23s,border-color .23s,background .23s;animation:itemIn .36s both}.account:hover{background:rgba(255,255,255,.055);border-color:rgba(101,200,255,.2);transform:translateY(-3px)}.account small{color:var(--muted)}.account b{display:block;font-size:26px;margin:4px 0}.bank{display:inline-flex;padding:5px 9px;border-radius:10px;background:rgba(255,255,255,.05);font-size:12px;margin-top:8px}.account-actions{display:grid;grid-template-columns:1fr 1fr;gap:7px;margin-top:14px}.balance-btn{border:1px solid var(--line);border-radius:11px;padding:8px 9px;background:rgba(255,255,255,.035);color:var(--text);cursor:pointer;transition:.2s}.balance-btn:hover{transform:translateY(-1px);background:rgba(255,255,255,.09)}.balance-btn.subtract{color:#ff9bb7;background:rgba(255,115,155,.055)}.balance-btn.add{color:#79edba;background:rgba(88,231,173,.055)}
.debt-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.box{text-align: center;padding:16px;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);}.box small{color:var(--muted)}.box b{display:block;font-size:28px;margin-top:5px}.range-row{display:grid;grid-template-columns:1fr auto;gap:14px;align-items:center;margin-top:14px}input[type=range]{width:100%;accent-color:#7dd5ff}
.goals{display:grid;grid-template-columns:repeat(3,1fr);gap:10px}.goal{padding:14px;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025);cursor:pointer;transition:.2s}.goal:hover,.goal:focus-visible{border-color:rgba(155,130,255,.4);background:rgba(155,130,255,.06);outline:none}.goal-visual{height:82px;border-radius:14px;background:linear-gradient(135deg,rgba(101,200,255,.18),rgba(155,130,255,.08));margin-bottom:12px}.goal small{color:var(--muted)}.goal b{display:block;margin-top:4px}.meter{height:8px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden;margin:10px 0}.meter i{height:100%;display:block;background:linear-gradient(90deg,var(--green),var(--blue))}
.subs{display:grid;grid-template-columns:1.2fr .8fr;gap:12px}.sub-list,.sub-total{text-align: center;padding:16px;border-radius:18px;border:1px solid rgba(255,255,255,.07);background:rgba(255,255,255,.025)}.sub-row{display:flex;justify-content:space-between;align-items:center;padding:11px 0;border-top:1px solid rgba(255,255,255,.06)}.sub-row:first-child{border-top:0}.toggle{width:48px;height:28px;border-radius:999px;background:rgba(255,255,255,.12);position:relative;cursor:pointer}.toggle:after{content:"";position:absolute;top:3px;left:3px;width:22px;height:22px;border-radius:50%;background:#fff;transition:.2s}.toggle.on{background:rgba(88,231,173,.28)}.toggle.on:after{left:23px}.sub-total b{display:block;font-size:36px;margin:8px 0}
.cushion{display:grid;grid-template-columns:1.3fr .7fr;gap:14px;align-items:stretch}.cushion-card{padding:18px;border-radius:20px;border:1px solid rgba(255,255,255,.075);background:rgba(255,255,255,.025)}.cushion-card label{display:block;color:var(--muted);margin-bottom:8px}.cushion-big{font-size:56px;font-weight:800;line-height:1}.field-inline{display:flex;gap:10px;align-items:center;flex-wrap:wrap}.field-inline input{width:190px}.scale{height:8px;background:rgba(255,255,255,.10);border-radius:999px;position:relative;margin-top:20px}.scale-fill{position:absolute;inset:0 auto 0 0;width:0;border-radius:999px;background:linear-gradient(90deg,var(--green),var(--blue))}.scale-mark{position:absolute;top:-7px;width:2px;height:22px;background:white;left:0}.scale-labels{display:flex;justify-content:space-between;color:var(--muted);font-size:12px;margin-top:8px}
.summary p{margin:0;color:#d7e1f0;font-size:18px;line-height:1.55}.footer-note{margin-top:18px;padding:18px 22px;display:flex;justify-content:space-between;gap:16px;align-items:center;background:linear-gradient(135deg,rgba(88,231,173,.07),rgba(155,130,255,.06))}
.dream-card{display:grid;grid-template-columns:minmax(0,1.3fr) minmax(240px,.7fr);gap:18px;align-items:stretch}.dream-copy,.dream-progress{padding:20px;border:1px solid rgba(255,255,255,.075);border-radius:20px;background:rgba(255,255,255,.025)}.dream-copy b{display:block;font-size:clamp(28px,4vw,48px);line-height:1.05}.dream-copy p{margin:10px 0 0;color:var(--muted)}.dream-progress small{color:var(--muted)}.dream-progress b{display:block;margin:7px 0;font-size:28px}.dream-progress .meter{margin-top:14px}
input,select,textarea{border:1px solid var(--line);background:rgba(255,255,255,.045);color:var(--text);border-radius:14px;padding:12px 14px;outline:none}textarea{resize:vertical}select option{background:#0c1725}.modal{position:fixed;inset:0;background:rgba(2,8,14,.76);display:none;align-items:center;justify-content:center;padding:20px;z-index:50}.modal.open{display:flex}.modal-card{width:min(700px,100%);padding:24px}.modal-card h3{font-size:28px;margin:0}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px;margin-top:18px}.field label{display:block;color:var(--muted);font-size:13px;margin-bottom:7px}.field input,.field select,.field textarea{width:100%}.field.wide{grid-column:1/-1}.banks{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.actions{display:flex;justify-content:flex-end;gap:8px;margin-top:18px}

/* Icons — matched to the reference dashboard */
.title-wrap{display:flex;align-items:flex-start;gap:12px;min-width:0}
.icon-badge{width:42px;height:42px;border-radius:13px;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;border:1px solid rgba(255,255,255,.08);background:rgba(255,255,255,.045);box-shadow:inset 0 1px 0 rgba(255,255,255,.05),0 7px 20px rgba(0,0,0,.12)}
.icon-badge svg{width:20px;height:20px;display:block;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round;overflow:visible}
.icon-blue{color:#7bd3ff;background:linear-gradient(145deg,rgba(76,153,255,.22),rgba(39,87,174,.10))}
.icon-green{color:#65ecad;background:linear-gradient(145deg,rgba(54,205,145,.20),rgba(33,110,81,.10))}
.icon-pink{color:#ff7fa4;background:linear-gradient(145deg,rgba(246,85,135,.20),rgba(124,35,70,.10))}
.icon-purple{color:#a98cff;background:linear-gradient(145deg,rgba(126,89,255,.22),rgba(76,46,153,.10))}
.icon-amber{color:#ffbd62;background:linear-gradient(145deg,rgba(255,170,64,.22),rgba(139,85,24,.10))}
.icon-neutral{color:#c8d6e9;background:rgba(255,255,255,.045)}
.stat{display:flex;align-items:center;cursor:pointer;transition:transform .2s,border-color .2s,box-shadow .2s}
.stat:hover,.stat:focus-visible{transform:translateY(-2px);border-color:rgba(101,200,255,.32);box-shadow:0 22px 72px rgba(0,0,0,.26),0 0 24px rgba(101,200,255,.11);outline:none}
.stat:active{transform:translateY(0)}
.stat-card-row{display:flex;align-items:center;gap:18px;width:100%;min-width:0}
.stat-icon{width:58px;height:58px;border-radius:18px}
.stat-icon svg{width:26px;height:26px}
.stat-info{min-width:0}.stat-info .kicker{margin-bottom:6px}.stat-info .value{font-size:clamp(30px,3vw,46px)}.stat-info .sub{margin-top:8px}
.mini-icon{width:32px;height:32px;border-radius:10px;box-shadow:none}
.mini-icon svg{width:16px;height:16px}
.name .mini-icon{width:34px;height:34px;border-radius:10px}
.account-head,.sub-item-head,.goal-top,.event-main{display:flex;align-items:center;gap:10px}
.account-head{margin-bottom:10px}.goal-top{margin-bottom:9px}.sub-item-head b{display:block}
.event{grid-template-columns:46px 1fr auto}.event .mini-icon{width:36px;height:36px;border-radius:11px}.event>div:last-child{text-align:right}.event>div:last-child small{font-weight:400}
.compare b{font-size:28px}.compare span{color:var(--muted);font-size:13px}
@media(max-width:680px){.title-wrap{gap:10px}.icon-badge{width:38px;height:38px;border-radius:12px}.stat-card-row{gap:14px}.stat-icon{width:52px;height:52px}.event{grid-template-columns:42px 1fr}.event>div:last-child{grid-column:2;text-align:left}}

@media(max-width:980px){.hero,.two{grid-template-columns:1fr}.stats{grid-template-columns:1fr 1fr}.budget-grid{grid-template-columns:1fr}.ring{width:180px}.accounts-grid{grid-template-columns:1fr}.goals{grid-template-columns:1fr}.cushion{grid-template-columns:1fr}.subs{grid-template-columns:1fr}.dream-card{grid-template-columns:1fr}}
@media(max-width:680px){.page{width:min(100% - 20px,1280px);padding-top:16px}.stats{grid-template-columns:1fr}.section{padding:20px}.section-head{flex-direction:column}.budget-main{grid-template-columns:1fr}.amount,.pct{text-align:left}.triple,.compare-cards,.debt-grid{grid-template-columns:1fr}.event{grid-template-columns:56px 1fr}.event>div:last-child{grid-column:2}.form-grid{grid-template-columns:1fr}.value{font-size:38px}}

/* FINAL — растянутый desktop layout */
@media (min-width:981px){
  .page{
    width:min(1620px,calc(100% - 20px));
    padding:28px 0 64px;
  }
  .hero{grid-template-columns:1.9fr .7fr;gap:16px}
  .stats{gap:16px;margin-bottom:20px}
  .stat{min-height:152px;padding:24px 26px}
  .section{padding:30px 32px;margin-bottom:20px}
  .section-head{margin-bottom:24px}
  .two{
    gap:20px;
    margin-bottom:20px;
    align-items:stretch;
  }
  .two>.section{
    height:100%;
    min-width:0;
  }
  .budget-grid{grid-template-columns:300px minmax(0,1fr);gap:36px}
  .chart{height:350px}
  .accounts-grid{gap:12px}
  .goals{gap:12px}
  .footer-note{padding:22px 28px}
}
@media (min-width:1500px){
  .page{width:min(1740px,calc(100% - 28px))}
  .section{padding:34px 38px}
  .chart{height:380px}
  .budget-grid{grid-template-columns:330px minmax(0,1fr);gap:42px}
}



/* Finance task refinements */
.accounts-section{width:100%}
.accounts-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}
.account{position:relative;user-select:none;-webkit-user-select:none}
.account:after{content:"ПКМ — изменить / удалить";display:block;margin-top:10px;color:var(--muted);font-size:11px;opacity:.7}
.context-menu{position:fixed;z-index:120;min-width:170px;padding:6px;border:1px solid var(--line);border-radius:14px;background:#0b1828;box-shadow:0 18px 55px rgba(0,0,0,.45);display:none}
.context-menu.open{display:grid}
.context-menu button{border:0;background:transparent;color:var(--text);text-align:left;padding:10px 12px;border-radius:10px;cursor:pointer}
.context-menu button:hover{background:rgba(255,255,255,.08)}
.context-menu button.danger{color:#ff9bb7}
.empty-card.compact{padding:14px;text-align:left}
.budget-main{grid-template-columns:minmax(170px,1.15fr) minmax(120px,1fr) 190px 74px 36px}
.name-copy{display:grid;gap:2px}.name-copy small{color:var(--muted);font-weight:400}
.limit-ok{color:var(--muted)}.limit-over{color:var(--pink);font-weight:700}
.debt-list{display:grid;gap:10px;margin-top:12px}.debt-item{display:grid;grid-template-columns:1fr auto;gap:12px;align-items:center;padding:14px 16px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.025)}
.debt-item-actions,.sub-actions{display:flex;gap:6px}.icon-btn{width:34px;height:34px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.035);color:var(--text);cursor:pointer}.icon-btn:hover{background:rgba(255,255,255,.09)}
.debt-slider-wrap{margin-top:18px}.debt-slider-head{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:9px}.debt-slider{display:flex;gap:10px;overflow-x:auto;overscroll-behavior-inline:contain;scroll-snap-type:x mandatory;padding:2px 2px 8px;cursor:grab;scrollbar-width:thin}.debt-slider.dragging{cursor:grabbing;scroll-snap-type:none}.debt-slide{flex:0 0 min(310px,82%);scroll-snap-align:start;padding:14px;border:1px solid rgba(255,255,255,.07);border-radius:17px;background:rgba(255,255,255,.025)}.debt-slide b{display:block;font-size:20px;margin:4px 0}.debt-slide small{color:var(--muted)}
.sub-row{gap:12px}.sub-item-head{min-width:0;flex:1}.sub-item-head>div{min-width:0}.sub-item-head b{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sub-actions{align-items:center}
.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;margin-top:4px}.summary-cell{text-align: center;padding:15px;border:1px solid rgba(255,255,255,.07);border-radius:18px;background:rgba(255,255,255,.025)}.summary-cell small{display:block;color:var(--muted);margin-bottom:6px}.summary-cell b{font-size:22px}.summary-insight{margin-top:12px;padding:16px 18px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:linear-gradient(135deg,rgba(99,199,255,.07),rgba(154,130,255,.055));font-weight:650}.summary-note{margin-top:8px;color:var(--muted);font-size:12px}
.check-row{display:flex;align-items:center;gap:10px;margin-top:8px}.check-row input{width:auto}
.expense-history{margin-top:24px;padding-top:22px;border-top:1px solid rgba(255,255,255,.075)}.expense-history-head{display:flex;align-items:end;justify-content:space-between;gap:14px;margin-bottom:12px}.expense-history-head h3{margin:0;font-size:22px}.expense-history-total{text-align:right}.expense-history-total small{display:block;color:var(--muted)}.expense-history-total b{font-size:20px}.expense-history-list{display:grid;gap:8px}.expense-history-row{display:grid;grid-template-columns:42px minmax(0,1fr) auto;gap:11px;align-items:center;padding:12px 14px;border:1px solid rgba(255,255,255,.065);border-radius:16px;background:rgba(255,255,255,.02);animation:itemIn .34s both}.expense-history-row>div:nth-child(2){min-width:0}.expense-history-row b{display:block;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.expense-history-row small{color:var(--muted)}.expense-history-amount{text-align:right;color:var(--pink);font-weight:750}
.type-switch{display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:5px;margin-top:18px;border:1px solid rgba(255,255,255,.08);border-radius:16px;background:rgba(255,255,255,.025)}.type-option{border:0;border-radius:12px;padding:11px 14px;background:transparent;color:var(--muted);cursor:pointer;transition:.2s}.type-option.active[data-event-type="income"]{color:#c9ffe8;background:rgba(88,231,173,.14);box-shadow:inset 0 0 0 1px rgba(88,231,173,.18)}.type-option.active[data-event-type="expense"]{color:#ffd2df;background:rgba(255,115,155,.14);box-shadow:inset 0 0 0 1px rgba(255,115,155,.18)}
.adjust-modal-card{width:min(520px,100%)}.adjust-account-box{display:flex;justify-content:space-between;align-items:center;gap:14px;margin-top:18px;padding:16px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:linear-gradient(135deg,rgba(101,200,255,.07),rgba(155,130,255,.045))}.adjust-account-box small{display:block;color:var(--muted)}.adjust-account-box b{font-size:21px}.adjust-preview{display:flex;justify-content:space-between;gap:12px;margin-top:12px;padding:13px 15px;border-radius:15px;background:rgba(255,255,255,.03);color:var(--muted)}.adjust-preview b{color:var(--text)}
.section,.stat{animation:sectionRise .55s both}.stats .stat:nth-child(2){animation-delay:.05s}.stats .stat:nth-child(3){animation-delay:.1s}.stats .stat:nth-child(4){animation-delay:.15s}.section{position:relative;transition:border-color .25s,box-shadow .25s}.section:hover{border-color:rgba(255,255,255,.15);box-shadow:0 24px 78px rgba(0,0,0,.27)}.modal.open .modal-card{animation:modalIn .24s ease-out both}.ring,.meter i,.track i,.scale-fill{transition:width .45s ease,background .45s ease,transform .25s}.chart.chart-pop canvas{animation:chartPop .38s ease-out both}
@keyframes sectionRise{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@keyframes itemIn{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:none}}@keyframes modalIn{from{opacity:0;transform:translateY(12px) scale(.975)}to{opacity:1;transform:none}}@keyframes chartPop{from{opacity:.45;transform:scale(.992)}to{opacity:1;transform:none}}
.delete-modal-card{width:min(480px,100%);padding:28px;position:relative;overflow:hidden;text-align:center;background:linear-gradient(160deg,rgba(20,36,56,.98),rgba(9,21,36,.98))}
.delete-modal-card:before{content:"";position:absolute;width:210px;height:210px;border-radius:50%;top:-130px;right:-90px;background:rgba(255,115,155,.15);filter:blur(8px);pointer-events:none}
.delete-icon{width:62px;height:62px;margin:0 auto 17px;border-radius:20px;display:grid;place-items:center;color:#ff91b0;background:linear-gradient(145deg,rgba(255,115,155,.22),rgba(255,115,155,.08));border:1px solid rgba(255,145,176,.24);box-shadow:0 14px 38px rgba(255,72,126,.12)}
.delete-icon svg{width:28px;height:28px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.delete-modal-card h3{font-size:30px}.delete-modal-card .desc{max-width:350px;margin:10px auto 0;line-height:1.55}
.delete-account-name{display:block;margin:18px 0 6px;padding:13px 16px;border-radius:15px;background:rgba(255,255,255,.045);border:1px solid rgba(255,255,255,.08);font-size:18px;overflow-wrap:anywhere}
.delete-warning{color:var(--muted);font-size:12px}
.delete-actions{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:24px}
.delete-actions .btn{padding:12px 16px}.btn.danger{color:#fff;background:linear-gradient(135deg,#d94770,#b82f58);border-color:rgba(255,150,180,.32);box-shadow:0 10px 28px rgba(190,41,84,.22)}.btn.danger:hover{background:linear-gradient(135deg,#e6537c,#c63761);border-color:rgba(255,180,200,.45)}
[hidden]{display:none!important}
.budget-row{position:relative;overflow:hidden;border-color:rgba(255,255,255,.065);background:linear-gradient(115deg,rgba(255,255,255,.035),rgba(255,255,255,.012));animation:itemIn .34s both}.budget-row:before{content:"";position:absolute;inset:0 auto 0 0;width:3px;background:var(--budget-accent,var(--blue));box-shadow:0 0 18px var(--budget-accent,var(--blue))}.budget-row:hover{transform:translateX(3px);border-color:color-mix(in srgb,var(--budget-accent,var(--blue)) 34%,transparent);background:rgba(255,255,255,.045)}.budget-row .mini-icon{color:var(--budget-accent,var(--blue));background:color-mix(in srgb,var(--budget-accent,var(--blue)) 13%,transparent)}.budget-row .track{height:9px}.budget-row .track i{background:linear-gradient(90deg,var(--budget-accent),color-mix(in srgb,var(--budget-accent) 65%,white))!important;box-shadow:0 0 14px color-mix(in srgb,var(--budget-accent) 45%,transparent)}.budget-row.budget-warning{--budget-accent:var(--amber)}.budget-row.budget-over{--budget-accent:var(--pink)}.budget-status{display:inline-flex;margin-top:3px;padding:2px 7px;border-radius:999px;font-size:10px;background:rgba(255,255,255,.05);color:var(--muted)}.budget-insight{margin-top:15px;padding:13px 15px;border:1px solid rgba(255,255,255,.075);border-radius:15px;background:linear-gradient(135deg,rgba(101,200,255,.06),rgba(155,130,255,.04));color:#dce8f8}
.history-toolbar{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-bottom:12px}.history-search{flex:1 1 220px;min-width:0}.history-filters{display:flex;gap:6px;flex-wrap:wrap}.history-filter.active{color:#fff;background:rgba(101,200,255,.13);border-color:rgba(101,200,255,.25)}
.goal{position:relative;min-height:230px;padding:18px;overflow:hidden;color:var(--text);text-align:left;background:linear-gradient(145deg,rgba(155,130,255,.09),rgba(255,255,255,.015));border-color:rgba(155,130,255,.14);animation:itemIn .38s both}.goal:before{content:"";position:absolute;width:150px;height:150px;right:-70px;top:-80px;border-radius:50%;background:rgba(155,130,255,.12);filter:blur(4px)}.goal:hover,.goal:focus-visible{transform:translateY(-4px);border-color:rgba(155,130,255,.42);box-shadow:0 18px 46px rgba(23,12,55,.22)}.goal-visual{height:70px;display:flex;align-items:center;justify-content:space-between;padding:0 4px;background:none;margin-bottom:8px}.goal-photo{width:58px;height:58px;display:grid;place-items:center;flex:0 0 auto;border:1px solid rgba(155,130,255,.2);border-radius:18px;background:linear-gradient(145deg,rgba(155,130,255,.18),rgba(101,200,255,.07)) center/cover no-repeat;box-shadow:0 10px 28px rgba(32,18,75,.2);overflow:hidden}.goal-photo .icon-badge{width:100%;height:100%;border:0;border-radius:0;background:transparent}.goal-visual strong{font-size:26px;color:#cdbfff}.goal-top{justify-content:space-between}.goal-title{font-size:19px;font-weight:750}.goal-details{display:grid;gap:5px;margin-top:12px;color:var(--muted);font-size:12px}.goal-monthly{color:#dfd7ff;font-weight:650}.goal-empty{grid-column:1/-1;min-height:180px;display:grid;place-items:center;text-align:center;padding:28px;color:var(--text);border:1px dashed rgba(155,130,255,.24);border-radius:22px;background:radial-gradient(260px 130px at 50% 0,rgba(155,130,255,.10),transparent 75%);cursor:pointer;transition:.22s}.goal-empty:hover{border-color:rgba(155,130,255,.48);transform:translateY(-2px)}.goal-empty .icon-badge{margin:0 auto 10px}.goal-empty b{display:block;font-size:20px}.goal-empty span:last-child{display:block;color:var(--muted);margin-top:5px}.goal-photo-editor{display:grid;grid-template-columns:120px 1fr;gap:14px;align-items:center}.goal-photo-preview{width:120px;height:90px;display:grid;place-items:center;border:1px dashed rgba(155,130,255,.28);border-radius:16px;background:rgba(155,130,255,.045) center/cover no-repeat;color:var(--muted);font-size:12px}.goal-photo-controls{display:grid;gap:8px}.goal-photo-controls input{width:100%}.photo-remove{justify-self:start}
.cushion-card:last-child{text-align: center;position:relative;overflow:hidden;transition:.3s}.cushion-card:last-child:after{content:"";position:absolute;width:150px;height:150px;right:-75px;top:-80px;border-radius:50%;background:var(--cushion-glow,rgba(101,200,255,.12));transition:.3s}.cushion-status{display:inline-flex;margin-top:14px;padding:6px 10px;border-radius:999px;font-size:12px;font-weight:700;color:var(--cushion-color,var(--muted));background:var(--cushion-bg,rgba(255,255,255,.05));border:1px solid var(--cushion-border,var(--line))}.cushion-low{--cushion-color:#ff9bb7;--cushion-bg:rgba(255,115,155,.09);--cushion-border:rgba(255,115,155,.2);--cushion-glow:rgba(255,115,155,.15)}.cushion-normal{--cushion-color:#ffd095;--cushion-bg:rgba(255,186,102,.09);--cushion-border:rgba(255,186,102,.2);--cushion-glow:rgba(255,186,102,.15)}.cushion-strong{--cushion-color:#82efbd;--cushion-bg:rgba(88,231,173,.09);--cushion-border:rgba(88,231,173,.2);--cushion-glow:rgba(88,231,173,.15)}
.calendar-box{margin-top:16px;padding:15px;border:1px solid rgba(255,255,255,.075);border-radius:19px;background:rgba(255,255,255,.018)}.calendar-head{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-bottom:12px}.calendar-head b{text-transform:capitalize}.calendar-nav{width:32px;height:32px;border:1px solid var(--line);border-radius:10px;background:rgba(255,255,255,.035);color:var(--text);cursor:pointer}.calendar-week,.calendar-grid{display:grid;grid-template-columns:repeat(7,1fr);gap:4px}.calendar-week span{text-align:center;color:var(--muted);font-size:10px}.calendar-day{position:relative;min-height:38px;padding:6px 4px;border:1px solid transparent;border-radius:10px;background:transparent;color:var(--muted);text-align:center;font:inherit;cursor:pointer}.calendar-day.current{color:var(--text);background:rgba(255,255,255,.025)}.calendar-day.today{border-color:rgba(101,200,255,.35);color:#fff}.calendar-day:hover{background:rgba(255,255,255,.07)}.calendar-dots{display:flex;justify-content:center;gap:3px;margin-top:4px}.calendar-dot{width:5px;height:5px;border-radius:50%;background:var(--dot)}.calendar-dot.due{animation:pulseDot 1.5s infinite}.event-actions{display:flex;gap:6px;flex-wrap:wrap;margin-top:8px}.event-action{border:1px solid var(--line);border-radius:9px;padding:6px 9px;background:rgba(255,255,255,.04);color:var(--text);font-size:11px;cursor:pointer}.event-action.complete{color:#a9f7d3;border-color:rgba(88,231,173,.2)}.event-action.move{color:#ffd095;border-color:rgba(255,186,102,.2)}.event-due{border-color:rgba(255,186,102,.2);box-shadow:inset 0 0 32px rgba(255,186,102,.025)}
.delete-icon.icon-amber{color:#ffd095;background:linear-gradient(145deg,rgba(255,186,102,.20),rgba(255,186,102,.06));border-color:rgba(255,186,102,.24)}
.alert-strip{display:flex;gap:10px;align-items:flex-start;margin-bottom:18px;padding:14px 17px;border:1px solid rgba(255,186,102,.14);border-radius:18px;background:linear-gradient(135deg,rgba(255,186,102,.075),rgba(255,115,155,.035));animation:sectionRise .45s both}.alert-strip .icon-badge{width:34px;height:34px;border-radius:11px}.alert-strip b{display:block}.alert-strip small{color:var(--muted)}
.toast{position:fixed;z-index:180;left:50%;bottom:24px;display:flex;align-items:center;gap:14px;max-width:calc(100% - 24px);padding:12px 14px 12px 17px;border:1px solid rgba(255,255,255,.13);border-radius:15px;background:rgba(7,20,34,.96);box-shadow:0 18px 55px rgba(0,0,0,.42);opacity:0;pointer-events:none;transform:translate(-50%,18px);transition:.25s}.toast.open{opacity:1;pointer-events:auto;transform:translate(-50%,0)}.toast button{border:0;border-radius:10px;padding:7px 10px;background:rgba(101,200,255,.12);color:#aee4ff;cursor:pointer}.summary-head-actions{display:flex;gap:8px;align-items:center}.closed-badge{display:inline-flex;padding:6px 9px;border-radius:999px;background:rgba(88,231,173,.09);color:#85efbd;font-size:11px}
@keyframes pulseDot{50%{transform:scale(1.6);box-shadow:0 0 8px var(--dot)}}
@media(max-width:980px){.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:680px){.budget-main{grid-template-columns:1fr}.summary-grid{grid-template-columns:1fr}.account:after{content:"Долгое нажатие — изменить / удалить"}.debt-item{grid-template-columns:1fr}.debt-item-actions{justify-content:flex-start}.debt-slide{flex-basis:88%}.delete-modal-card{padding:24px 20px}.delete-actions{grid-template-columns:1fr}.expense-history-head{align-items:flex-start;flex-direction:column}.expense-history-total{text-align:left}.expense-history-row{grid-template-columns:38px minmax(0,1fr)}.expense-history-amount{grid-column:2;text-align:left}.account-actions{grid-template-columns:1fr}.chart-tooltip{min-width:150px}.goal{min-height:210px}.goal-photo-editor{grid-template-columns:1fr}.goal-photo-preview{width:100%;height:140px}.calendar-day{min-height:34px;padding-inline:2px}.summary-head-actions{width:100%;flex-wrap:wrap}.summary-head-actions .btn{flex:1}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.section,.stat,.account,.event,.expense-history-row,.modal.open .modal-card,.chart.chart-pop canvas{animation:none!important}.section,.account,.event,.btn,.chip{transition:none!important}}

/* Интеграция в основную страницу «Жизнь»: без второго фона и внешних отступов документа. */
:host{min-width:0}
.page{width:100%!important;max-width:none!important;margin:0!important;padding:0!important;background:transparent!important}
.section,.stat,.footer-note{color:var(--text)}
.modal{z-index:1200}
@media(max-width:680px){.modal{padding:12px}.modal-card{max-height:calc(100dvh - 24px);overflow-y:auto}}

/* Финальный проход: единая стеклянная панель, центрированные заголовки и реальные действия. */
.section,.stat,.footer-note{border-color:rgba(255,255,255,.105);background:linear-gradient(145deg,rgba(255,255,255,-2.955),rgba(255,255,255,-2.982));box-shadow:inset 0 1px 0 rgba(255,255,255,.045),0 18px 58px rgba(0,0,0,.18)}
.section>.section-head{position:relative;justify-content:center;text-align:center;padding-inline:min(190px,18vw)}
.section>.section-head>.title-wrap{justify-content:center;align-items:center;text-align:center}
.section>.section-head>.head-actions,.section>.section-head>button,.section>.section-head>.summary-head-actions{position:absolute;right:0;top:50%;transform:translateY(-50%)}
.modal-card>.section-head{position:relative;justify-content:center;text-align:center}
.modal-card>.section-head>div:first-child{width:100%;padding-inline:44px}
.modal-card>.section-head>[data-close]{position:absolute;right:0;top:0}
#accountsGrid{display:grid;grid-template-columns:1fr;gap:18px}
.account-group{display:grid;gap:10px}.account-group__head{display:flex;align-items:center;justify-content:space-between;padding:0 4px;color:var(--muted)}.account-group__head strong{color:var(--text);font-size:18px}.account-group__grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:10px}
.account{cursor:pointer}.account:after{content:"Нажми — операции · ПКМ — управление"}.account-actions{grid-template-columns:repeat(3,minmax(0,1fr))}.balance-btn.save{color:#fff;border-color:rgba(255,255,255,.26);background:rgba(255,255,255,.075);box-shadow:0 0 16px rgba(255,255,255,.13)}.balance-btn.save:hover{box-shadow:0 0 24px rgba(255,255,255,.28)}
.spent-btn{min-height:34px;border:1px solid color-mix(in srgb,var(--budget-accent) 35%,var(--line));border-radius:10px;background:color-mix(in srgb,var(--budget-accent) 9%,transparent);color:var(--text);font-size:11px;font-weight:700;cursor:pointer}.budget-main{grid-template-columns:minmax(170px,1.15fr) minmax(120px,1fr) 180px 74px 102px}
.expense-history-row{cursor:context-menu}.expense-history-row:hover{border-color:rgba(255,255,255,.15);background:rgba(255,255,255,.04)}.saving-amount{color:#fff;font-weight:750;text-shadow:0 0 14px rgba(255,255,255,.45)}
.calendar-day.selected{border-color:var(--purple);background:rgba(155,130,255,.17);box-shadow:0 0 0 2px rgba(155,130,255,.09)}
.debt-status{display:inline-flex;margin-top:7px;padding:4px 8px;border:1px solid var(--line);border-radius:999px;color:var(--amber);font-size:11px}.debt-item.is-paid,.debt-slide.is-paid{opacity:.7;border-color:rgba(88,231,173,.18)}.debt-item.is-paid .debt-status{color:var(--green)}.debt-paid{color:var(--green);white-space:nowrap}
.cushion-money-label{margin-top:16px}.cushion-targets{display:flex;gap:7px;flex-wrap:wrap;margin-top:14px}.cushion-targets button{flex:1;min-width:86px;padding:9px;border:1px solid var(--line);border-radius:11px;background:rgba(255,255,255,.03);color:var(--muted);cursor:pointer}.cushion-targets button.active{color:#fff;border-color:rgba(101,200,255,.32);background:rgba(101,200,255,.12);box-shadow:0 0 18px rgba(101,200,255,.12)}.cushion-details{position:relative;z-index:1;display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:16px}.cushion-details span{display:grid;gap:3px;padding:9px;border:1px solid var(--line);border-radius:11px;color:var(--muted);font-size:11px}.cushion-details b{color:var(--text);font-size:13px}.cushion-large{--cushion-color:#d9d2ff;--cushion-bg:rgba(155,130,255,.11);--cushion-border:rgba(155,130,255,.24);--cushion-glow:rgba(155,130,255,.17)}
.cushion-withdraw-btn{color:#ffd095;border-color:rgba(255,186,102,.25)}.form-error{margin-top:10px;padding:10px 12px;border:1px solid rgba(255,115,155,.3);border-radius:12px;background:rgba(255,115,155,.08);color:#ffb2c8}.timeline .event{cursor:context-menu}
.dream-photo{min-height:150px;border:1px solid rgba(255,115,155,.2);border-radius:18px;background:center/cover no-repeat;box-shadow:inset 0 0 32px rgba(0,0,0,.18)}
.dream-card.has-photo{grid-template-columns:minmax(150px,.45fr) minmax(0,1fr) minmax(240px,.7fr)}
[data-id="summary"][hidden]{display:none!important}
@media(max-width:980px){.dream-card.has-photo{grid-template-columns:1fr}}

@media(max-width:680px){
  .section>.section-head{padding-inline:0;align-items:center;text-align:center}.section>.section-head>.title-wrap{width:100%;flex-direction:column}.section>.section-head>.head-actions,.section>.section-head>button,.section>.section-head>.summary-head-actions{position:static;transform:none;justify-content:center;width:100%}
  .account:after{content:"Нажми — операции · удерживай — управление"}.account-actions{grid-template-columns:1fr}.budget-main{grid-template-columns:1fr}.spent-btn{width:100%}.actions{justify-content:center;flex-wrap:wrap}.actions>.btn{flex:1 1 130px;max-width:100%}
  .modal-card>.section-head{align-items:center}.modal-card>.section-head>div:first-child{padding-inline:34px}.cushion-details{grid-template-columns:1fr}.debt-item-actions{flex-wrap:wrap}.debt-paid{width:100%}
  #sections{display:flex;flex-direction:column}.accounts-section{order:1}#statsRow{order:2}[data-id="budget"]{order:3}#pair2{order:4}[data-id="subs"]{order:5}[data-id="flow"]{order:6}[data-id="cushion"]{order:7}[data-id="goals"]{order:8}[data-id="compare"]{order:10}[data-id="summary"]{order:11}
}
