/* Дизайн-слой: компактность как в BizCore, светлая и тёмная тема, нижняя панель на телефоне.
   Цвета старых стилей переведены в токены theme.css; здесь — смысловые токены новых элементов. */
:root{--d-bg:#f4f5f8;--d-surface:#ffffff;--d-surface2:#f7f8fa;--d-line:#e6e8ee;--d-ink:#1b2130;--d-muted:#6b7586;--d-faint:#a3abb7;
 --d-accent:#4455c7;--d-accent-ink:#3949aa;--d-accent-soft:#eef0fc;--d-sel:#3b5a9c;--d-sel-soft:#eaf0f9;--d-red:#c0392b;--d-green:#1f7a52;--d-dot:#2f6a54;
 --d-shadow:0 1px 2px rgba(20,30,50,.04)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--d-bg:#0f1218;--d-surface:#171b23;--d-surface2:#1c212b;--d-line:#272d39;--d-ink:#e8ebf2;--d-muted:#98a1b2;--d-faint:#5f6878;
 --d-accent:#8392f2;--d-accent-ink:#a9b3f7;--d-accent-soft:#232947;--d-sel:#7d9ae0;--d-sel-soft:#1d2840;--d-red:#ec8679;--d-green:#5cc79a;--d-dot:#5cc79a;--d-shadow:none}}
:root[data-theme="dark"]{--d-bg:#0f1218;--d-surface:#171b23;--d-surface2:#1c212b;--d-line:#272d39;--d-ink:#e8ebf2;--d-muted:#98a1b2;--d-faint:#5f6878;
 --d-accent:#8392f2;--d-accent-ink:#a9b3f7;--d-accent-soft:#232947;--d-sel:#7d9ae0;--d-sel-soft:#1d2840;--d-red:#ec8679;--d-green:#5cc79a;--d-dot:#5cc79a;--d-shadow:none}
body{background:var(--d-bg)!important;color:var(--d-ink)}

/* ---- компактность ---- */
@media(max-width:780px){
 section{padding:12px max(12px,env(safe-area-inset-right,0px)) 90px max(12px,env(safe-area-inset-left,0px))!important}
 .heading{margin-bottom:10px!important;gap:10px!important;align-items:center!important}
 .heading h1{font-size:21px!important;margin:0 0 2px!important;letter-spacing:-.4px!important}
 .heading p,#subtitle{font-size:12px!important;margin:0!important}
 .heading .primary{padding:8px 12px!important;font-size:13px!important}
 .panel{padding:12px!important;margin-bottom:10px!important;border-radius:12px!important}
 .metricgrid,.mstats{gap:8px!important;margin-bottom:10px!important}
 .metric{padding:10px 11px!important;border-radius:11px!important}
 .metric strong{font-size:17px!important}
 .metric small{font-size:10.5px!important}
 .metrichead{font-size:12px!important;gap:6px!important}
 .metricicon{width:24px!important;height:24px!important}
 .metricicon svg{width:14px!important;height:14px!important}
 .balancehero{min-height:0!important;padding:14px 15px!important;border-radius:13px!important}
 .balancehero strong{font-size:26px!important}
 .periodbar{margin-bottom:10px!important}
 .periodbar button{padding:7px 2px!important;font-size:12.5px!important}
 .dashboardtop{gap:8px!important;margin-bottom:8px!important}
 .revenuepanel{padding:12px!important}
 .mstat{padding:9px 11px!important}.mstat strong{font-size:15px!important}
 .storagehint{margin:0 0 8px!important}
 header{min-height:54px}
}
.metric strong,.balancehero strong,.mstat strong,.pnl-kpi strong,.revenuepanel h2,.cards strong{font-family:'IBM Plex Mono',monospace!important;font-weight:600;letter-spacing:-.5px;font-variant-numeric:tabular-nums}
.metric,.panel,.mstat,.pnl-kpi,.mcard{box-shadow:var(--d-shadow)!important}

/* ---- переключатель темы ---- */
.themebtn{display:inline-flex!important;align-items:center;justify-content:center;margin-right:6px;padding-left:0!important;padding-right:0!important}
.themebtn svg{width:18px;height:18px;flex:none}

/* ---- нижняя панель (телефон) ---- */
.bottomnav{display:none}
@media(max-width:780px){
 .bottomnav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:40;background:var(--d-surface);border-top:1px solid var(--d-line);
  padding:6px max(8px,env(safe-area-inset-right,0px)) calc(6px + env(safe-area-inset-bottom,0px)) max(8px,env(safe-area-inset-left,0px))}
 .bottomnav a,.bottomnav button{display:flex;flex-direction:column;align-items:center;gap:2px;font:500 10.5px 'IBM Plex Sans',sans-serif;color:var(--d-muted);text-decoration:none;background:none;border:0;padding:4px 0;cursor:pointer}
 .bottomnav svg{width:21px;height:21px}
 .bottomnav .on{color:var(--d-accent)}
 .bottomnav .plus span{width:42px;height:42px;margin-top:-14px;border-radius:14px;background:var(--d-accent);color:#fff;display:grid;place-items:center;box-shadow:0 4px 12px rgba(68,85,199,.35)}
 .bottomnav .plus span svg{width:22px;height:22px}
 footer{padding-bottom:80px!important}
 #toast{bottom:84px!important}
}

/* ---- календарь как в BizCore ---- */
body.calpage .heading{display:none!important}
.bkc-head{display:flex;align-items:center;gap:10px;margin-bottom:12px}
.bkc-ic{width:38px;height:38px;border-radius:10px;background:var(--d-sel);color:#fff;display:grid;place-items:center;flex:none}
.bkc-ic svg{width:19px;height:19px}
.bkc-head div{flex:1;min-width:0}.bkc-head h2{margin:0;font-size:19px;letter-spacing:-.3px}.bkc-head p{margin:1px 0 0;font-size:12px;color:var(--d-muted)}
.bkc-count{font-size:12px;font-weight:600;color:var(--d-sel);background:var(--d-sel-soft);border-radius:999px;padding:5px 11px;white-space:nowrap}
.bkc-bar{display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:10px}
.bkc-seg{display:grid;grid-template-columns:repeat(3,1fr);background:var(--d-surface2);border:1px solid var(--d-line);border-radius:10px;padding:3px;min-width:200px}
.bkc-seg button{border:0;background:none;color:var(--d-muted);font:500 12.5px 'IBM Plex Sans',sans-serif;padding:7px 10px;border-radius:7px;cursor:pointer}
.bkc-seg button[aria-pressed="true"]{background:var(--d-surface);color:var(--d-ink);font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.bkc-label{flex:1;font-size:15px;text-transform:capitalize;white-space:nowrap}
.bkc-nav{display:flex;gap:6px}.bkc-nav button{height:32px;min-width:32px;padding:0 10px;border-radius:8px;border:1px solid var(--d-line);background:var(--d-surface);color:var(--d-ink);cursor:pointer;font:500 12.5px 'IBM Plex Sans',sans-serif}
.bkc-grid{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));gap:4px}
.bkc-wd{font-size:11px;color:var(--d-faint);text-align:center;padding:4px 0}.bkc-wd.wk{color:var(--d-red)}
.bkc-cell{min-height:clamp(58px,9vh,104px);background:var(--d-surface);border:1px solid var(--d-line);border-radius:10px;padding:6px 7px;display:flex;flex-direction:column;justify-content:space-between;cursor:pointer;font:inherit;text-align:left;color:var(--d-ink)}
.bkc-cell.other{background:var(--d-surface2);opacity:.55}
.bkc-cell.sel{border:2px solid var(--d-sel);background:var(--d-sel-soft)}
.bkc-dn{align-self:center;font:600 13px 'IBM Plex Sans',sans-serif}.bkc-dn.wk{color:var(--d-red)}
.bkc-cell.today .bkc-dn{background:var(--d-sel);color:#fff;border-radius:999px;align-self:stretch;text-align:center;line-height:20px}
.bkc-cnt{display:flex;align-items:center;gap:4px;font:500 10.5px 'IBM Plex Mono',monospace;color:var(--d-muted)}
.bkc-cnt i{display:flex;gap:2px}.bkc-cnt i b{width:4px;height:4px;border-radius:50%;background:var(--d-dot)}
.bkc-cnt em{font-style:normal;color:var(--d-faint)}
.bkc-day{margin-top:10px;background:var(--d-surface);border:1px solid var(--d-line);border-radius:12px;overflow:hidden}
.bkc-dayhead{display:flex;justify-content:space-between;align-items:center;padding:12px 14px;border-bottom:1px solid var(--d-line)}
.bkc-dayhead strong{font-size:14px}.bkc-dayhead span{font-size:12px;color:var(--d-muted)}
.bkc-item{display:flex;justify-content:space-between;gap:10px;width:100%;background:none;border:0;border-bottom:1px solid var(--d-line);padding:10px 14px;text-align:left;cursor:pointer;font:inherit;color:var(--d-ink)}
.bkc-item strong{display:block;font-size:13.5px;color:var(--d-ink)}.bkc-item small{font-size:12px;color:var(--d-muted)}
.bkc-item .r{display:flex;flex-direction:column;align-items:flex-end;gap:4px}.bkc-item .r b{font:500 13px 'IBM Plex Mono',monospace}
.bkc-foot{display:flex;justify-content:space-between;padding:10px 14px;background:var(--d-surface2);font-size:12.5px;color:var(--d-muted)}.bkc-foot b{font:500 13px 'IBM Plex Mono',monospace;color:var(--d-ink)}
.bkc-none{text-align:center;color:var(--d-faint);padding:24px 0;margin:0;font-size:13px}
@media(max-width:520px){.bkc-bar{display:grid;grid-template-columns:1fr auto}.bkc-seg{grid-column:1/-1;min-width:0}.bkc-cell{padding:5px}.bkc-cnt i{display:none}}
.askdlg{border:0;border-radius:14px;padding:18px;width:min(360px,calc(100vw - 32px));background:var(--d-surface);color:var(--d-ink);box-shadow:0 20px 50px rgba(0,0,0,.3)}
.askdlg::backdrop{background:rgba(10,15,25,.45)}.askdlg p{margin:0 0 14px;font-size:14px}
.askbtns{display:flex;gap:8px;justify-content:flex-end}
.bkfields{border:1px dashed var(--d-line);border-radius:10px;padding:8px 10px;margin:8px 0}
.chchips{display:flex;flex-wrap:wrap;gap:6px;margin:6px 0 10px}
.chchips button{border:1px solid var(--d-line);background:var(--d-surface);color:var(--d-ink);border-radius:999px;padding:5px 11px;font:500 12px 'IBM Plex Sans',sans-serif;cursor:pointer}
.chchips button.on{background:var(--d-accent);border-color:var(--d-accent);color:#fff}
/* Прибыль и убытки — упрощённо */
.pl-nav{display:flex;align-items:center;justify-content:space-between;margin:0 0 10px;font-size:13px;color:var(--d-muted)}
.pl-nav button{width:32px;height:32px;border-radius:8px;border:1px solid var(--d-line);background:var(--d-surface);color:var(--d-ink);cursor:pointer}
.pl-hero{background:var(--d-surface);border:1px solid var(--d-line);border-radius:14px;padding:16px;margin-bottom:10px;display:flex;flex-direction:column;gap:4px}
.pl-hero>span{font-size:12px;color:var(--d-muted)}
.pl-hero strong{font:600 30px 'IBM Plex Mono',monospace;letter-spacing:-1px;color:var(--d-green)}
.pl-hero.neg strong{color:var(--d-red)}
.pl-hero div{display:flex;gap:10px;align-items:center;font-size:12px;color:var(--d-muted)}.pl-hero em{font-style:normal}
.pl-d{font:600 11.5px 'IBM Plex Mono',monospace;padding:2px 6px;border-radius:6px}
.pl-d.up{color:var(--d-green);background:color-mix(in srgb,var(--d-green) 12%,transparent)}.pl-d.down{color:var(--d-red);background:color-mix(in srgb,var(--d-red) 12%,transparent)}
.pl-ladder{background:var(--d-surface);border:1px solid var(--d-line);border-radius:14px;overflow:hidden;margin-bottom:10px}
.pl-row{padding:12px 14px;border-bottom:1px solid var(--d-line)}
.pl-main{display:flex;justify-content:space-between;align-items:baseline;width:100%;background:none;border:0;padding:0;font:inherit;color:var(--d-ink);cursor:pointer;text-align:left}
.pl-main:disabled{cursor:default}
.pl-lab{font-size:14px;font-weight:500;display:flex;align-items:center;gap:6px}
.pl-chev{font-style:normal;color:var(--d-faint);transition:transform .15s;display:inline-block}.pl-chev.o{transform:rotate(90deg)}
.pl-val{font:600 16px 'IBM Plex Mono',monospace;letter-spacing:-.4px}
.pl-row.exp .pl-val::before{content:'− ';color:var(--d-faint)}
.pl-bar{height:5px;background:var(--d-surface2);border-radius:3px;margin:8px 0 5px;overflow:hidden}
.pl-bar i{display:block;height:100%;border-radius:3px;background:var(--d-accent)}
.pl-row.exp .pl-bar i{background:#c98a6b}
.pl-meta{display:flex;justify-content:space-between;font-size:11.5px;color:var(--d-muted)}
.pl-groups{margin-top:8px;border-top:1px dashed var(--d-line);padding-top:6px}
.pl-g{display:flex;justify-content:space-between;font-size:13px;padding:5px 0;color:var(--d-muted)}.pl-g b{font:500 13px 'IBM Plex Mono',monospace;color:var(--d-ink)}
.pl-total{display:flex;justify-content:space-between;align-items:baseline;padding:14px;background:var(--d-surface2);font-weight:600}
.pl-total b{font:600 18px 'IBM Plex Mono',monospace;color:var(--d-green)}
.pl-more{background:var(--d-surface);border:1px solid var(--d-line);border-radius:14px;padding:12px 14px}
.pl-more summary{cursor:pointer;font-size:13.5px;font-weight:500}
.opsbar{grid-template-columns:repeat(5,1fr)!important;background:var(--d-surface2)!important;border:1px solid var(--d-line)}
.opsbar button{font-size:12.5px!important;padding:8px 2px!important;color:var(--d-muted)!important}
.opsbar button.on{background:var(--d-sel)!important;color:#fff!important}
/* Объекты */
.objlist{display:flex;flex-direction:column;gap:6px}
.objrow{display:flex;justify-content:space-between;align-items:center;gap:10px;background:var(--d-surface);border:1px solid var(--d-line);border-radius:11px;padding:13px 14px;cursor:pointer;font:inherit;color:var(--d-ink);text-align:left}
.objname{font-size:15px;font-weight:600}.objmeta{font-size:11.5px;color:var(--d-muted);white-space:nowrap;display:flex;align-items:center;gap:5px}
.objdot{width:7px;height:7px;border-radius:50%;display:inline-block}.objdot.free{background:var(--d-green)}.objdot.busy{background:var(--d-sel)}.objdot.rep{background:#d97706}
.objdlg{border:0;border-radius:16px;padding:16px;width:min(460px,calc(100vw - 24px));max-height:88vh;overflow:auto;background:var(--d-surface);color:var(--d-ink);box-shadow:0 20px 50px rgba(0,0,0,.3)}
.objdlg::backdrop{background:rgba(10,15,25,.45)}
.objhead{display:flex;justify-content:space-between;align-items:center}.objhead strong{font-size:16px}
.objren{font-size:12.5px;margin:4px 0 6px}
.objdlg h4{margin:14px 0 6px;font-size:16px}
.objbox{border:1px solid var(--d-line);border-radius:11px;overflow:hidden}
.objbox.empty{padding:12px 14px;color:var(--d-faint);font-size:15px}
.objitem{display:flex;justify-content:space-between;gap:10px;width:100%;background:none;border:0;border-bottom:1px solid var(--d-line);padding:10px 12px;font:inherit;color:var(--d-ink);text-align:left;cursor:pointer}
.objitem:last-child{border-bottom:0}.objitem small{color:var(--d-muted);font-size:12px;white-space:nowrap}
.objadd{display:grid;grid-template-columns:1fr auto auto auto;gap:8px;align-items:end;margin-top:8px}
.objadd label{font-size:11px;color:var(--d-muted);font-weight:600;display:block;margin-bottom:3px}
.objadd input{width:100%;height:42px;border-radius:9px;border:1px solid var(--d-line);background:var(--d-surface2);color:var(--d-ink);padding:0 10px;font:inherit}
.objadd .sm{width:84px}.objadd .primary{height:42px;width:46px;padding:0;border-radius:10px;font-size:18px}
.objdlg .tiny{margin-top:6px}
.objfoot{display:flex;gap:12px;align-items:flex-start;margin-top:18px}.objfoot small{font-size:11px;color:var(--d-faint)}
.danger-link{color:var(--d-red)!important;white-space:nowrap;font-weight:600;text-decoration:none!important}
@media(max-width:520px){.objadd{grid-template-columns:1fr 1fr auto}.objadd>div:first-child{grid-column:1/-1}.objadd .sm{width:auto}}
.objitem small{display:flex;align-items:center;gap:6px}.objitem small .tiny{margin:0}
/* Команда */
.t2ic{background:#6b5bc0!important}
.t2tabs{display:grid;grid-template-columns:repeat(4,1fr);background:var(--d-surface2);border:1px solid var(--d-line);border-radius:10px;padding:3px;gap:2px;margin-bottom:12px}
.t2tabs button{border:0;background:none;color:var(--d-muted);font:500 12px 'IBM Plex Sans',sans-serif;padding:8px 2px;border-radius:7px;cursor:pointer;white-space:nowrap}
.t2tabs button[aria-pressed="true"]{background:var(--d-surface);color:var(--d-ink);font-weight:600;box-shadow:0 1px 3px rgba(0,0,0,.08)}
.t2list{background:var(--d-surface);border:1px solid var(--d-line);border-radius:12px;overflow:hidden;margin-bottom:12px}
.t2row{display:flex;align-items:center;gap:12px;width:100%;background:none;border:0;border-bottom:1px solid var(--d-line);padding:12px 14px;font:inherit;color:var(--d-ink);text-align:left;cursor:pointer}
.t2row:last-child{border-bottom:0}div.t2row{cursor:default}
.t2ava{width:32px;height:32px;border-radius:8px;background:#1c2e4a;color:#fff;display:grid;place-items:center;font-weight:700;font-size:13px;flex:none}
.t2name{flex:1;min-width:0;font-weight:600;font-size:14px}.t2name small{display:block;font-weight:400;font-size:12px;color:var(--d-muted)}.t2name.big{font-size:17px}
.t2num{min-width:34px;height:30px;border-radius:8px;background:var(--d-surface2);border:1px solid var(--d-line);display:grid;place-items:center;font:600 12px 'IBM Plex Mono',monospace;color:var(--d-muted)}
.t2chev{font-style:normal;color:var(--d-faint)}
.t2empty{padding:18px;text-align:center;color:var(--d-muted);font-size:15px}
.t2bar{display:flex;justify-content:flex-end;margin-bottom:8px}
.t2new{background:#1c2e4a;color:#fff;border:0;border-radius:999px;padding:8px 14px;font:600 12.5px 'IBM Plex Sans',sans-serif;cursor:pointer}
.t2card{background:var(--d-surface);border:1px solid var(--d-line);border-radius:12px;padding:14px;margin-bottom:10px;display:flex;flex-direction:column;gap:6px}
.t2card label{font-size:13px;font-weight:600;color:var(--d-muted);margin-top:6px}
.t2card input,.t2card select{height:44px;border-radius:9px;border:1px solid var(--d-line);background:var(--d-surface2);color:var(--d-ink);padding:0 12px;font:inherit}
.t2invite{margin-top:10px;height:44px;border-radius:10px;border:0;background:#6f7d90;color:#fff;font:600 14px 'IBM Plex Sans',sans-serif;cursor:pointer}
.t2invite:hover{background:#1c2e4a}
.t2help{font-size:12px;color:var(--d-muted);line-height:1.5}
.t2h{margin:14px 0 8px;font-size:17px;color:var(--d-muted)}
.t2mx{border:1px solid var(--d-line);border-radius:12px;overflow:hidden}
.t2mx table{width:100%;border-collapse:collapse}
.t2mx th{font-size:10px;letter-spacing:.4px;text-transform:uppercase;color:var(--d-muted);background:var(--d-surface2);padding:8px 2px;font-weight:600}
.t2mx td{padding:7px 4px;border-top:1px solid var(--d-line);text-align:center;font-size:13px}
.t2mx td:first-child{text-align:left;padding-left:12px}
.t2cb{appearance:none;-webkit-appearance:none;width:26px;height:26px;border-radius:7px;border:1.5px solid var(--d-line);background:var(--d-surface);cursor:pointer;display:inline-grid;place-items:center;margin:0}
.t2cb:checked{background:#2f6a54;border-color:#2f6a54}
.t2cb:checked::after{content:'';width:7px;height:12px;border:solid #fff;border-width:0 2px 2px 0;transform:rotate(45deg) translate(-1px,-1px)}
.t2na{color:var(--d-faint)}
.t2del{width:100%;height:44px;border-radius:10px;border:1.5px solid var(--d-red);background:none;color:var(--d-red);font:600 14px 'IBM Plex Sans',sans-serif;cursor:pointer;margin-top:4px}
.t2log{display:flex;justify-content:space-between;gap:12px;padding:11px 14px;border-bottom:1px solid var(--d-line);font-size:13px}
.t2log:last-child{border-bottom:0}.t2log small{display:block;color:var(--d-muted);font-size:12px}.t2log em{display:block;font-size:12px;color:var(--d-accent-ink)}
.t2log>span{text-align:right;white-space:nowrap;font-size:12px;color:var(--d-muted)}
.t2mx{overflow-x:auto}.t2mx table{table-layout:fixed;min-width:330px}.t2mx th:first-child,.t2mx td:first-child{width:38%}
.t2mx th{font-size:9px;letter-spacing:.2px}
input.t2cb{width:24px!important;height:24px!important;min-height:0!important;padding:0!important;flex:none}
.t2code{font-family:'IBM Plex Mono',monospace;color:var(--d-ink);letter-spacing:1px}
/* Настройка бизнеса */
.bz-eyebrow{font-size:10px;letter-spacing:1.6px;color:var(--d-muted);font-weight:700;margin:0 0 8px}
.bz-struct{border:1px solid var(--d-line);background:var(--d-surface2);border-radius:12px;padding:12px;margin:10px 0}
.bz-ok{font-weight:700;color:var(--d-green);font-size:14px}.bz-struct p{margin:4px 0 6px;font-size:13px;color:var(--d-muted)}
.bz-struct summary{cursor:pointer;font-size:13px;color:var(--d-accent-ink);font-weight:600}
.bz-cols{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin-top:8px}.bz-cols b{display:block;font-size:12px;margin-bottom:4px}
.bz-cols span{display:block;font-size:12px;color:var(--d-muted);padding:2px 0}
/* График поступлений: спокойная сетка и заметная линия в обеих темах */
:root{--d-chart:#294863;--d-grid:#eef0f4}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--d-chart:#8fa2f7;--d-grid:#232936}}
:root[data-theme="dark"]{--d-chart:#8fa2f7;--d-grid:#232936}
.revenuechart path{stroke:var(--d-grid)!important;stroke-dasharray:4 5;stroke-width:1}
.revenuechart polyline{stroke:var(--d-chart)!important;stroke-width:2.4!important;stroke-linejoin:round;stroke-linecap:round}
.revenuechart circle{fill:var(--d-chart)!important}
.revenuechart stop{stop-color:var(--d-chart)!important}
.revenuechart stop:first-child{stop-opacity:.22!important}
.chartcaption{color:var(--d-faint)!important;font-size:11px!important}
.rc{width:100%;height:auto;overflow:visible;display:block;margin-top:6px}
.rc-grid{stroke:var(--d-grid);stroke-width:1}
.rc-y{fill:var(--d-muted);font:500 19px 'IBM Plex Mono',monospace;text-anchor:end}
.rc-x{fill:var(--d-muted);font:500 19px 'IBM Plex Sans',sans-serif;text-anchor:middle}
.rc-bar{fill:var(--d-chart);opacity:.55}.rc-bar.best{opacity:1}.rc-bar:hover{opacity:.9}
.rc-avg{stroke:#d08a2f;stroke-width:1.5;stroke-dasharray:5 4}
.rc-sum{display:flex;flex-wrap:wrap;gap:6px 14px;margin-top:6px;font-size:12px;color:var(--d-muted)}
.rc-sum span{display:flex;align-items:center;gap:6px}
.rc-k{display:inline-block;width:12px;height:3px;border-radius:2px}.rc-k.avg{background:#d08a2f}.rc-k.best{background:var(--d-chart);height:10px;width:8px;border-radius:2px}
.revenuepanel .chartcaption{display:none!important}

/* Советник */
.advbell{position:relative;display:inline-flex;align-items:center;justify-content:center;padding:0}
.advbell .n{position:absolute;top:-4px;right:-4px;min-width:16px;height:16px;padding:0 4px;border-radius:8px;background:#d64545;color:#fff;font:600 10px/16px 'IBM Plex Sans',sans-serif;text-align:center}
.advbell .n[hidden]{display:none}
.advhero{border:1px solid var(--d-line);background:var(--d-surface);border-radius:12px;padding:16px 18px;margin-bottom:14px;display:grid;gap:2px}
.advhero span{font-size:12px;color:var(--d-muted);text-transform:uppercase;letter-spacing:.04em}
.advhero strong{font:600 28px 'IBM Plex Mono',monospace;color:var(--d-accent)}
.advhero small{color:var(--d-muted);font-size:12.5px}
.advlist{display:grid;gap:8px}
.advcard{all:unset;box-sizing:border-box;display:grid;grid-template-columns:4px 1fr auto;gap:12px;align-items:center;width:100%;cursor:pointer;border:1px solid var(--d-line);background:var(--d-surface);border-radius:10px;padding:11px 14px 11px 0;overflow:hidden}
.advcard i{align-self:stretch;background:var(--d-accent)}
.advcard.t-red i{background:#d64545}.advcard.t-amber i{background:#e0a030}.advcard.t-green i{background:#2f9e6a}
.advcard strong{font-size:14px;display:block;margin-bottom:2px}
.advcard p{margin:0;font-size:12.5px;line-height:1.45;color:var(--d-muted)}
.advcard b{color:var(--d-muted);font-size:18px}
.advcard:hover{border-color:var(--d-accent)}
.advnote{font-size:12px;margin-top:14px}
.advstrip{all:unset;box-sizing:border-box;display:flex;align-items:center;gap:10px;width:100%;cursor:pointer;margin-bottom:10px;border:1px solid var(--d-line);background:var(--d-surface);border-radius:10px;padding:9px 14px}
.advstrip span{font-size:11px;color:var(--d-muted);text-transform:uppercase;letter-spacing:.04em}
.advstrip strong{font:600 14px 'IBM Plex Mono',monospace;flex:1}
.advstrip em{font-style:normal;font-size:11px;background:#d64545;color:#fff;border-radius:8px;padding:1px 7px}
.advstrip b{color:var(--d-muted)}

/* Палитра в духе BizCore: тёмно-синий + бирюзовый */
:root{--d-bg:#f2f5f9;--d-surface:#fff;--d-surface2:#f6f8fb;--d-line:#dde4ec;--d-ink:#0f1c2e;--d-muted:#5a6a7e;--d-faint:#93a1b3;
 --d-accent:#0e8a96;--d-accent-ink:#0b6f79;--d-accent-soft:#e1f3f4;--d-sel:#0e8a96;--d-sel-soft:#e1f3f4;--d-red:#cc3340;--d-green:#1a8a5a;--d-dot:#1a8a5a;
 --d-chart:#0e8a96;--d-grid:#e6ebf1;--d-shadow:0 1px 2px rgba(15,28,46,.05);--d-hero:linear-gradient(135deg,#10294a 0%,#0f6a7c 100%)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]){--d-bg:#0a111e;--d-surface:#111a2a;--d-surface2:#162133;--d-line:#1f2d44;--d-ink:#e8eef6;--d-muted:#93a3b8;--d-faint:#5a6b82;
 --d-accent:#34c2b3;--d-accent-ink:#6ed8cc;--d-accent-soft:#12302f;--d-sel:#34c2b3;--d-sel-soft:#12302f;--d-red:#ec8679;--d-green:#5cc79a;--d-dot:#5cc79a;
 --d-chart:#34c2b3;--d-grid:#1b283c;--d-shadow:none;--d-hero:linear-gradient(135deg,#0d2240 0%,#0d5566 100%)}}
:root[data-theme="dark"]{--d-bg:#0a111e;--d-surface:#111a2a;--d-surface2:#162133;--d-line:#1f2d44;--d-ink:#e8eef6;--d-muted:#93a3b8;--d-faint:#5a6b82;
 --d-accent:#34c2b3;--d-accent-ink:#6ed8cc;--d-accent-soft:#12302f;--d-sel:#34c2b3;--d-sel-soft:#12302f;--d-red:#ec8679;--d-green:#5cc79a;--d-dot:#5cc79a;
 --d-chart:#34c2b3;--d-grid:#1b283c;--d-shadow:none;--d-hero:linear-gradient(135deg,#0d2240 0%,#0d5566 100%)}
.balancehero,.ownerpage .balancehero{background:var(--d-hero)!important;border:0!important;box-shadow:none!important}
.balancehero *{color:#fff}.balancehero p,.balancehero span,.balancehero small{color:rgba(255,255,255,.78)!important}
.rc-bar{opacity:.5}.rc-bar.best{opacity:1}
.rc-k.avg{background:#e0952a}
.panel,.metric,.mstat,.advcard,.advhero,.advstrip{box-shadow:var(--d-shadow)}
.advcard.t-amber i{background:#e0a030}.advcard.t-red i{background:var(--d-red)}.advcard.t-green i{background:var(--d-green)}

/* Плитки показателей: насыщенные значки */
.metric.teal,.teal{--metriccolor:#0e8a96}.metric.green,.green{--metriccolor:#1a9a62}.metric.red,.red{--metriccolor:#d0404f}
.metric.blue,.blue{--metriccolor:#2f6fd0}.metric.violet,.violet{--metriccolor:#6b5bd0}.metric.amber,.amber{--metriccolor:#d9902a}
:root[data-theme="dark"] .teal{--metriccolor:#34c2b3}:root[data-theme="dark"] .green{--metriccolor:#4fd39a}:root[data-theme="dark"] .red{--metriccolor:#ff7a85}
:root[data-theme="dark"] .blue{--metriccolor:#6fa3ff}:root[data-theme="dark"] .violet{--metriccolor:#a396ff}:root[data-theme="dark"] .amber{--metriccolor:#f0b24a}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .teal{--metriccolor:#34c2b3}:root:not([data-theme="light"]) .green{--metriccolor:#4fd39a}:root:not([data-theme="light"]) .red{--metriccolor:#ff7a85}:root:not([data-theme="light"]) .blue{--metriccolor:#6fa3ff}:root:not([data-theme="light"]) .violet{--metriccolor:#a396ff}:root:not([data-theme="light"]) .amber{--metriccolor:#f0b24a}}
.metricicon{background:color-mix(in srgb,var(--metriccolor) 18%,transparent)!important;color:var(--metriccolor)!important;border-radius:8px}
.metricicon svg{stroke-width:2!important}
.metric strong{color:var(--d-ink)}

/* Текст внутри ячеек и карточек: темнее и чётче */
.metrichead,.metric>small,.mstat span,.mstat small,.muted,small,.help,.cal-help,.hint{color:var(--d-muted)!important}
.metrichead{font-weight:500}
.metric>small,.mstat small{font-size:12px}
.mtable th,table th{color:var(--d-muted)!important;font-weight:600}
.mtable td,table td{color:var(--d-ink)}
.panel h3,.panelhead h3,.msect{color:var(--d-ink)}
.pnl-recon-row span,.channel span,.pnl-tx span{color:var(--d-ink)}
.pnl-tx span:first-child{color:var(--d-muted)}

/* Кнопки, вкладки, значки операций */
button:not(.t2new):not(.tiny):not(.language-trigger):not(.menutoggle):not(.businessbutton):not(.malert):not(.advcard):not(.advstrip):not(.clickrow):not(.pnl-tx){--btn:var(--d-accent)}
#add,.t2invite,button.primary,.primary{background:var(--d-accent)!important;border-color:var(--d-accent)!important;color:#fff!important}
.financetabs .active,.financetabs [aria-pressed="true"],.financetabs button.selected{color:var(--d-accent)!important;border-color:var(--d-accent)!important}
.periodbar .selected,[aria-pressed="true"]{color:var(--d-accent-ink)}
.income{background:color-mix(in srgb,var(--d-green) 16%,transparent)!important;color:var(--d-green)!important}
.expense{background:color-mix(in srgb,var(--d-red) 14%,transparent)!important;color:var(--d-red)!important}

/* Подсказка помощника */
.advpop{position:fixed;left:50%;top:78px;z-index:90;width:min(420px,calc(100vw - 24px));display:grid;grid-template-columns:auto 1fr auto;gap:12px;align-items:start;padding:13px 12px 13px 13px;border-radius:16px;background:var(--d-surface);border:1px solid var(--d-line);box-shadow:0 14px 34px -12px rgba(10,20,40,.35);transform:translate(-50%,-14px);opacity:0;transition:transform .28s ease,opacity .28s ease}
.advpop.in{transform:translate(-50%,0);opacity:1}
.advpop .ava{width:36px;height:36px;border-radius:50%;display:grid;place-items:center;color:#fff;background:linear-gradient(135deg,#10294a,#0f8b95)}
.advpop.t-red .ava{background:linear-gradient(135deg,#8c1d2c,#d0404f)}.advpop.t-amber .ava{background:linear-gradient(135deg,#a8661a,#e0a030)}.advpop.t-green .ava{background:linear-gradient(135deg,#0d6b48,#1a9a62)}
.advpop small{display:block;font-size:11px;color:var(--d-muted);letter-spacing:.03em}
.advpop strong{display:block;font-size:14.5px;margin:1px 0 3px;color:var(--d-ink)}
.advpop p{margin:0;font-size:13px;line-height:1.45;color:var(--d-muted)}
.advpop .ac{display:flex;gap:8px;margin-top:10px}
.advpop .ac button{font:500 12.5px 'IBM Plex Sans',sans-serif;padding:7px 13px;border-radius:9px;border:1px solid var(--d-line);background:var(--d-surface2);color:var(--d-ink);cursor:pointer}
.advpop .ac .go{background:var(--d-accent);border-color:var(--d-accent);color:#fff}
.advpop .x{all:unset;cursor:pointer;color:var(--d-faint);font-size:20px;line-height:1;padding:0 4px}

/* Шапка на телефоне: всё в один ряд без выхода за экран */
html,body{overflow-x:hidden}
@media (max-width:780px){
 header{gap:6px!important;padding:0 10px!important}
 header .topidentity{min-width:0;flex:1 1 auto;gap:8px!important}
 header .businessswitch{min-width:0;flex:1 1 auto}
 header .businessbutton{min-width:0;max-width:100%;gap:8px}
 header .businesslabel{min-width:0;overflow:hidden}
 header .businesslabel strong,header .businesslabel small{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
 header .businesslabel small{display:none}
 .topright{flex:none!important;gap:6px!important;margin-left:0!important}
 .topright .themebtn{margin-right:0!important}
 .topright #language-trigger{min-width:0!important;padding:0 8px!important;gap:4px!important}
 .topright #language-trigger svg:last-child{display:none}
}

/* Операционка: тише и компактнее */
.storagehint{display:none!important}
.opsbar{margin-bottom:10px}
.opsbar ~ .mstats{display:grid!important;grid-template-columns:repeat(4,1fr)!important;gap:0!important;padding:0!important;margin:0 0 12px!important;background:var(--d-surface);border:1px solid var(--d-line);border-radius:12px;overflow:hidden}
.opsbar ~ .mstats .mstat{border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important;padding:10px 8px!important;text-align:center;min-width:0;border-right:1px solid var(--d-line)!important}
.opsbar ~ .mstats .mstat:last-child{border-right:0!important}
.opsbar ~ .mstats .mstat span{display:block;font-size:10.5px!important;line-height:1.2;white-space:normal;color:var(--d-muted)}
.opsbar ~ .mstats .mstat strong{display:block;font-size:15px!important;margin-top:3px}
.opsbar ~ .mstats .mstat small{display:none}
.opsbar ~ .mtoolbar{display:flex;gap:8px;align-items:center;margin-bottom:10px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
.opsbar ~ .mtoolbar::-webkit-scrollbar{display:none}
.opsbar ~ .mtoolbar .mbtns{display:flex;gap:6px;flex-wrap:nowrap;flex:none}
.opsbar ~ .mtoolbar .mbtns button{white-space:nowrap;padding:6px 11px;min-height:0;font-size:12px;background:none;border:1px solid var(--d-line);box-shadow:none;color:var(--d-muted)}
.opsbar ~ .panel .empty{padding:22px 14px}
.opsbar ~ .panel .empty button{display:none}
.opsbar ~ .mtoolbar .mtabs{flex:none;flex-wrap:nowrap;white-space:nowrap}
.opsbar ~ .panel>.primary{display:none}

/* Единая шкала шрифтов: размеры и начертания */
body{font-size:14px;line-height:1.45;font-weight:400}
h1,.heading h1,.ownerpage .heading h1,.financepage .heading h1{font-size:24px!important;font-weight:600!important;line-height:1.2;letter-spacing:-.4px!important}
h2{font-size:18px;font-weight:600}
h3,.msect,.panelhead h3,.panel h3{font-size:15px!important;font-weight:600!important}
h4{font-size:14px;font-weight:600}
strong,b,th,.mbadge{font-weight:600}
.heading #subtitle,#subtitle{font-size:13px!important;font-weight:400}
small,.muted,.help,.cal-help,.hint,.metric>small,.mstat small{font-size:12.5px!important;font-weight:400}
label{font-size:12.5px;font-weight:500}
button{font-size:13px;font-weight:500}
input,select,textarea{font-size:14px;font-weight:400}
@media (max-width:780px){input,select,textarea{font-size:16px}}
td{font-size:14px}
th{font-size:12px;font-weight:600}
.mbadge{font-size:11.5px}
.metrichead{font-size:12.5px!important;font-weight:500}
.metric>strong,.mstat strong{font-weight:600}
.bottomnav a,.bottomnav button{font-size:11px;font-weight:500}
.opsbar ~ .mtoolbar:not(:has(.mbtns)){flex-wrap:wrap;overflow:visible}
.opsbar ~ .mtoolbar select{max-width:48%;min-width:0}
.periodnote{margin:2px 2px 12px;font-size:12.5px;line-height:1.5;color:var(--d-muted)}
.periodnote b{color:var(--d-ink)}

/* Меню: активный пункт и логотип в цвете приложения */
nav a.active{background:var(--d-accent-soft)!important;color:var(--d-accent-ink)!important;border-color:transparent!important}
nav a.active i{background:var(--d-accent)!important;color:#fff!important}
nav a.active span{color:var(--d-accent-ink)!important;font-weight:600}
nav a i{background:var(--d-surface2)!important;color:var(--d-muted)!important}
.brand .brandmark,.brandmark{background:var(--d-hero)!important;color:#fff!important}
.navgroup-title{color:var(--d-faint)!important;font-size:11px!important;letter-spacing:.08em}
.brand>b{background:var(--d-hero)!important;color:#fff!important}
.brand .brandname small{letter-spacing:.14em;color:var(--d-faint)!important;font-size:10.5px!important}

/* Тишина: счета и показатели отеля */
.accountsgrid{display:grid!important;grid-template-columns:1fr!important;gap:8px!important}
.accounttile{display:flex!important;align-items:center;gap:8px;padding:10px 12px 10px 14px!important;min-height:0!important}
.accounttilemain{all:unset;box-sizing:border-box;cursor:pointer;flex:1;min-width:0;display:flex!important;align-items:center;justify-content:space-between;gap:10px}
.accounttilemain .accounttiletop{display:none!important}
.accounttilemain h3{margin:0!important;font-size:14px!important;font-weight:600!important;color:var(--d-ink);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.accounttilemain strong{font:600 15px 'IBM Plex Mono',monospace!important;color:var(--d-ink);white-space:nowrap;margin:0!important}
.accounttilemain small,.accounttilemain .accounttilelink{display:none!important}
.accounttilefooter{border:0!important;padding:0!important;margin:0!important;flex:none}
.accounttilefooter>span{display:none}
.accounttilefooter .tiny{padding:5px 9px;font-size:12px;background:none;border:1px solid var(--d-line);color:var(--d-muted)}
.hotelkpis .cal-help{display:none}
.accounttilemain{flex-direction:column!important;align-items:flex-start!important;gap:2px!important}
.accounttilemain h3{max-width:100%}
.accounttilefooter .tiny{font-size:0!important;width:34px;height:34px;padding:0!important;display:grid;place-items:center;border-radius:9px}
.accounttilefooter .tiny::before{content:'✎';font-size:15px;color:var(--d-muted)}

/* Все блоки цифр: одна тонкая полоса */
.mstats{display:grid!important;gap:0!important;padding:0!important;margin:0 0 12px!important;background:var(--d-surface);border:1px solid var(--d-line);border-radius:12px;overflow:hidden;grid-template-columns:repeat(3,1fr)!important}
.mstats:has(.mstat:nth-child(4)):not(:has(.mstat:nth-child(5))){grid-template-columns:repeat(4,1fr)!important}
.mstats .mstat{border:0!important;border-radius:0!important;box-shadow:none!important;background:none!important;padding:10px 8px!important;text-align:center;min-width:0;border-right:1px solid var(--d-line)!important;border-bottom:1px solid var(--d-line)!important}
.mstats .mstat span{display:block;font-size:11.5px!important;line-height:1.2;color:var(--d-muted)}
.mstats .mstat strong{display:block;font-size:15px!important;margin-top:3px}
.mstats .mstat small{display:none}
.accounttile{padding:10px 12px!important}
.accounttilemain{padding:0!important;margin:0!important}
.accounttilemain h3,.accounttilemain strong{padding:0!important}

/* Таблица номеров и графики: влезают в экран, цвет приложения */
.panel:has(.mbar) .mtable th:nth-child(3),.panel:has(.mbar) .mtable td:nth-child(3),
.panel:has(.mbar) .mtable th:nth-child(4),.panel:has(.mbar) .mtable td:nth-child(4),
.panel:has(.mbar) .mtable th:nth-child(5),.panel:has(.mbar) .mtable td:nth-child(5){display:none}
.panel:has(.mbar) .mtable th,.panel:has(.mbar) .mtable td{padding:10px 8px}
.mbar i,.mseason i,.hist-bars i{background:var(--d-chart)!important}
.channeltrack span{background:var(--d-chart)!important}
.hist-bars button.sel i{background:var(--d-accent-ink)!important}

/* Дисциплина: единая геометрия — радиусы 12/10, высота полей и кнопок 40, отступы 12 */
:root{--r-card:12px;--r-ctl:10px;--h-ctl:40px;--gap:12px}
.panel,.metric,.mstats,.advcard,.advhero,.accounttile,.operationchoices button,.objrow,.t2row,.t2card{border-radius:var(--r-card)!important}
input:not([type=checkbox]):not([type=radio]),select,textarea{border-radius:var(--r-ctl)!important}
input:not([type=checkbox]):not([type=radio]):not([type=file]),select{min-height:var(--h-ctl)}
#add,.modalfoot button,.t2invite,button.primary{min-height:var(--h-ctl);border-radius:var(--r-ctl)!important}
.panel{margin-bottom:var(--gap)}
.metric>strong,.metriccard strong,.metric strong{white-space:nowrap;font-size:clamp(16px,5.4vw,22px)!important}
.toolbar{display:grid!important;grid-template-columns:1fr 1fr;gap:8px!important;align-items:center}
.toolbar #search,.toolbar input[type=search],.toolbar input[placeholder^="Поиск"]{grid-column:1/-1}
.toolbar label{display:flex;align-items:center;gap:6px;font-size:12.5px;color:var(--d-muted)}
.toolbar label input{flex:1;min-width:0}
.toolbar button{grid-column:1/-1;justify-self:start}
.ledgermore{display:block;width:100%;margin:12px 0 4px;padding:11px;border:1px solid var(--d-line);background:var(--d-surface);color:var(--d-accent-ink);border-radius:var(--r-ctl);font-weight:500;cursor:pointer}
.cards strong,.metriccard strong,.reportcards strong,.mcard strong{white-space:nowrap}
.cards{display:grid!important;grid-template-columns:1fr 1fr!important;gap:0!important;margin:0 0 12px!important;background:var(--d-surface);border:1px solid var(--d-line);border-radius:var(--r-card);overflow:hidden}
.cards>.card{background:none!important;border:0!important;box-shadow:none!important;border-radius:0!important;padding:12px 14px!important;min-height:0!important;border-right:1px solid var(--d-line)!important;border-bottom:1px solid var(--d-line)!important}
.cards>.card:nth-child(2n){border-right:0!important}.cards>.card:nth-last-child(-n+2){border-bottom:0!important}
.cards>.card:first-child:after{display:none}
.cards>.card label{display:block;font-size:12px!important;color:var(--d-muted)!important;font-weight:500}
.cards>.card strong{display:block;font:600 17px 'IBM Plex Mono',monospace!important;color:var(--d-ink)!important;margin-top:4px;white-space:nowrap}
.cards>.card small{display:none}
@media (max-width:780px){.tablewrap table{font-size:13px}.tablewrap th,.tablewrap td{padding:9px 7px!important}}
.mtoolbar{display:flex;gap:8px;align-items:center;margin-bottom:10px;overflow-x:auto;flex-wrap:nowrap;scrollbar-width:none}
.mtoolbar::-webkit-scrollbar{display:none}
.mtoolbar .mtabs{flex:none;white-space:nowrap}
.mbtns{display:flex;gap:6px;flex-wrap:nowrap;flex:none}
.mbtns button{white-space:nowrap;padding:6px 11px;min-height:0;font-size:12px;background:none;border:1px solid var(--d-line);box-shadow:none;color:var(--d-muted)}
.panel:has(.empty)>.primary,.panel:has(.empty)>p>.primary{display:none}
.t2ic,.bkc-ic{background:var(--d-accent)!important;color:#fff!important}
.bkc-count{background:var(--d-accent-soft)!important;color:var(--d-accent-ink)!important}
.mtoolbar:has(.mbtns){flex-wrap:wrap!important;overflow:visible!important}
.mtoolbar:has(.mbtns) .mbtns{flex-wrap:wrap!important}
.mtoolbar:has(.mbtns) .mbtns{flex:1 1 100%!important;max-width:100%}

