@font-face{font-family:"Geologica";src:url("../fonts/geologica.woff2") format("woff2");font-weight:300 800;font-display:swap}
@font-face{font-family:"Unbounded";src:url("../fonts/unbounded.woff2") format("woff2");font-weight:400 900;font-display:swap}

/* ===== Токены ===== */
:root{
  --bg:#F3F4EE; --bg2:#ECEDE5;
  --ink:#161616; --ink2:#3A3A37; --muted:#74746D; --line:rgba(22,22,22,.09);
  --glass:rgba(255,255,255,.62); --glass-hi:rgba(255,255,255,.9); --glass-edge:rgba(255,255,255,.95);
  --glass-shadow:0 18px 40px -18px rgba(60,70,20,.22), 0 2px 6px rgba(0,0,0,.04);
  --chip:rgba(22,22,22,.06); --field:rgba(22,22,22,.05);
  --lime:#CDF000; --lime-ink:#141414; --lime-soft:rgba(205,240,0,.42);
  --glow-a:rgba(205,240,0,.55); --glow-b:rgba(205,240,0,.0);
  --danger:#D9352B; --ok:#4E7A00;
  --r-xl:34px; --r-lg:26px; --r-md:18px; --r-sm:12px;
  --font:"Geologica",system-ui,-apple-system,"Segoe UI",Roboto,sans-serif;
  --safe-t:env(safe-area-inset-top,0px); --safe-b:env(safe-area-inset-bottom,0px);
  color-scheme:light;
}
@media (prefers-color-scheme:dark){
  :root:not([data-theme="light"]){
    --bg:#121310; --bg2:#191A16;
    --ink:#F1F2EC; --ink2:#D2D3CC; --muted:#93948C; --line:rgba(255,255,255,.08);
    --glass:rgba(255,255,255,.055); --glass-hi:rgba(255,255,255,.1); --glass-edge:rgba(255,255,255,.12);
    --glass-shadow:0 18px 40px -20px rgba(0,0,0,.7);
    --chip:rgba(255,255,255,.08); --field:rgba(255,255,255,.07);
    --lime-soft:rgba(205,240,0,.22); --glow-a:rgba(205,240,0,.20);
    --danger:#FF6A5C; --ok:#CDF000;
    color-scheme:dark;
  }
}
:root[data-theme="dark"]{
  --bg:#121310; --bg2:#191A16;
  --ink:#F1F2EC; --ink2:#D2D3CC; --muted:#93948C; --line:rgba(255,255,255,.08);
  --glass:rgba(255,255,255,.055); --glass-hi:rgba(255,255,255,.1); --glass-edge:rgba(255,255,255,.12);
  --glass-shadow:0 18px 40px -20px rgba(0,0,0,.7);
  --chip:rgba(255,255,255,.08); --field:rgba(255,255,255,.07);
  --lime-soft:rgba(205,240,0,.22); --glow-a:rgba(205,240,0,.20);
  --danger:#FF6A5C; --ok:#CDF000;
  color-scheme:dark;
}

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{margin:0;min-height:100vh;background:var(--bg);color:var(--ink);font:16px/1.4 var(--font);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;overflow-x:hidden}
input,select,button,textarea{font:inherit;color:inherit}
button{cursor:pointer;background:none;border:0;padding:0}
a{color:inherit;text-decoration:none}
img{display:block;max-width:100%}
[hidden]{display:none!important}
:focus-visible{outline:2px solid var(--ink);outline-offset:2px}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}

/* фоновое лаймовое свечение */
.glow{position:fixed;inset:0;pointer-events:none;z-index:0;
  background:radial-gradient(60vmax 40vmax at 30% 22%,var(--glow-a),var(--glow-b) 70%);opacity:.9}
body[data-view="edit"] .glow,body[data-view="list"] .glow,body[data-view="items"] .glow,body[data-view="set"] .glow{opacity:.35}

.view{position:relative;z-index:1;max-width:560px;margin:0 auto;padding:calc(18px + var(--safe-t)) 18px calc(40px + var(--safe-b))}
body[data-view="edit"] .view{max-width:820px;padding-bottom:calc(150px + var(--safe-b))}

/* ===== Стекло ===== */
.glass{background:var(--glass);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow);
  -webkit-backdrop-filter:blur(22px) saturate(1.4);backdrop-filter:blur(22px) saturate(1.4)}

/* ===== Шапки ===== */
.top{display:flex;align-items:center;gap:12px;min-height:56px;margin-bottom:10px}
.top .sp{flex:1}
.h-app{margin:0;font-weight:750;font-size:31px;white-space:nowrap;line-height:1.02;letter-spacing:-.035em}
.h-page{margin:6px 0 22px;font-weight:780;font-size:46px;line-height:.98;letter-spacing:-.045em;overflow-wrap:anywhere}
.h-page small{display:block;margin-top:8px;font-size:16px;font-weight:450;letter-spacing:0;color:var(--muted)}
.h-sec{margin:28px 4px 12px;font-weight:700;font-size:24px;letter-spacing:-.025em}

.circle{width:52px;height:52px;border-radius:50%;display:grid;place-items:center;flex:none;background:var(--chip);position:relative}
.circle svg{width:24px;height:24px}
.pill{display:inline-flex;align-items:center;gap:8px;height:48px;padding:0 20px 0 14px;border-radius:999px;font-size:16px;font-weight:500}
.pill svg{width:20px;height:20px}
.badge{position:absolute;top:-4px;right:-4px;min-width:22px;height:22px;padding:0 6px;border-radius:11px;background:var(--danger);color:#fff;font-size:12.5px;font-weight:700;line-height:22px;text-align:center;box-shadow:0 0 0 3px var(--bg)}
.badge.inline{position:static;box-shadow:none;display:inline-block;vertical-align:2px;margin-left:8px}

/* ===== Главная ===== */
.hero{position:relative;margin:2px -18px 8px;height:min(56vh,430px);display:grid;place-items:center}
.hero img{width:min(86vw,400px);height:auto;filter:drop-shadow(0 26px 34px rgba(80,100,0,.18))}
.navcard{display:grid;grid-template-columns:60px 1px minmax(0,1fr) 28px;align-items:center;gap:0 18px;width:100%;
  min-height:112px;padding:0 26px 0 22px;margin-bottom:16px;border-radius:var(--r-xl);text-align:left;position:relative}
.navcard .ico{display:grid;place-items:center}
.navcard .ico svg{width:46px;height:46px}
.navcard .div{align-self:stretch;margin:24px 0;background:var(--line)}
.navcard b{font-size:30px;font-weight:620;letter-spacing:-.03em}
.navcard .arr svg{width:28px;height:28px}
.navcard .badge{top:14px;right:16px}
.navcard:active,.bigcard:active,.tile:active{transform:scale(.985)}

/* ===== Большие карточки (сметы) ===== */
.bigcard{display:block;position:relative;width:100%;height:262px;margin-bottom:18px;border-radius:40px;overflow:hidden;text-align:left;isolation:isolate}
.bigcard::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(70% 80% at 72% 40%,var(--lime-soft),transparent 70%)}
.bigcard img{position:absolute;right:4px;top:6px;width:196px;height:auto;filter:drop-shadow(0 18px 22px rgba(60,80,0,.18))}
.bigcard b{position:absolute;left:30px;bottom:26px;font-size:40px;font-weight:720;letter-spacing:-.04em;line-height:1}
.bigcard .arr{position:absolute;right:28px;bottom:30px}
.bigcard .arr svg{width:30px;height:30px}
.bigcard .badge{top:18px;left:22px;right:auto}

/* ===== Плитки ===== */
.tiles{display:grid;grid-template-columns:1fr 1fr;gap:14px}
.tile{position:relative;display:flex;flex-direction:column;justify-content:flex-end;min-height:206px;padding:18px 18px 18px;border-radius:var(--r-lg);text-align:left;overflow:hidden;isolation:isolate}
.tile::before{content:"";position:absolute;inset:0;z-index:-1;background:radial-gradient(60% 50% at 50% 34%,var(--lime-soft),transparent 72%)}
.tile img{position:absolute;left:50%;top:10px;width:132px;height:132px;transform:translateX(-50%);object-fit:contain;filter:drop-shadow(0 12px 14px rgba(60,80,0,.16))}
.tile b{font-size:19px;font-weight:650;letter-spacing:-.025em;line-height:1.1;overflow-wrap:anywhere;hyphens:auto}
.tile span{font-size:14px;color:var(--muted);margin-top:3px;padding-right:26px}
.tile .arr{position:absolute;right:16px;bottom:18px;padding:0;margin:0;color:var(--ink)}
.tile .arr svg{width:20px;height:20px}
.tile .badge{top:12px;right:12px}
.tile.add{border:1.5px dashed var(--line);background:transparent;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none}
.tile.add::before{display:none}
.tile.add img{opacity:.92}
.tile .more{position:absolute;top:8px;right:8px;width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}
.tile .more svg{width:20px;height:20px}
.tiles.three{grid-template-columns:1fr}
.tiles.three .tile{min-height:120px;flex-direction:row;align-items:center;justify-content:flex-start;padding:16px 22px 16px 130px}
.tiles.three .tile img{left:10px;top:50%;transform:translateY(-50%);width:104px;height:104px}
.tiles.three .tile::before{background:radial-gradient(40% 80% at 14% 50%,var(--lime-soft),transparent 72%)}
.tiles.three .tile div{display:flex;flex-direction:column}
.tiles.three .tile b{font-size:24px}
.tiles.three .tile .arr{bottom:auto;top:50%;transform:translateY(-50%)}

/* ===== Списки ===== */
.search{display:flex;align-items:center;gap:10px;height:52px;padding:0 16px;border-radius:var(--r-md);margin-bottom:14px}
.search svg{width:20px;height:20px;color:var(--muted);flex:none}
.search input{flex:1;min-width:0;border:0;background:transparent;font-size:17px;outline:none}
.list{display:flex;flex-direction:column;gap:10px}
.row{display:grid;grid-template-columns:64px minmax(0,1fr) auto;align-items:center;gap:14px;padding:12px 16px 12px 12px;border-radius:var(--r-md);text-align:left;width:100%}
.row .ph{width:64px;height:64px;border-radius:14px;background:var(--field);display:grid;place-items:center;overflow:hidden}
.row .ph img{width:100%;height:100%;object-fit:cover}
.row .ph.icon img{object-fit:contain;padding:4px}
.row .ph svg{width:26px;height:26px;color:var(--muted)}
.row .tx{min-width:0}
.row .tx b{display:block;font-size:17px;font-weight:600;letter-spacing:-.01em;overflow-wrap:anywhere}
.row .tx span{display:block;font-size:14px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.row .pr{font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.row .pr small{display:block;font-weight:450;font-size:13px;color:var(--muted)}
.row.est{grid-template-columns:minmax(0,1fr) auto;padding:16px 18px}
.row .tx span.tag{display:inline-block;white-space:nowrap;margin-top:6px;font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--chip)}
.row .tx span.tag.warn{background:#FFE3DF;color:#9A1F14}
.row .tx span.tag.ok{background:var(--lime);color:var(--lime-ink)}
:root[data-theme="dark"] .row .tx span.tag.warn{background:rgba(255,106,92,.18);color:#FFB2AA}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .row .tx span.tag.warn{background:rgba(255,106,92,.18);color:#FFB2AA}}
.empty{padding:34px 18px;text-align:center;color:var(--muted);border-radius:var(--r-lg);border:1.5px dashed var(--line)}
.empty b{display:block;color:var(--ink);font-size:18px;margin-bottom:4px}
.addbtn{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;height:60px;border-radius:var(--r-md);border:1.5px dashed var(--line);font-weight:600;font-size:17px;margin-top:12px}
.addbtn svg{width:22px;height:22px}

/* ===== Кнопки ===== */
.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;height:54px;padding:0 22px;border-radius:999px;font-weight:600;font-size:17px;background:var(--chip);white-space:nowrap}
.btn.lime{background:var(--lime);color:var(--lime-ink)}
.btn.ink{background:var(--ink);color:var(--bg)}
.btn.danger{color:var(--danger)}
.btn.wide{width:100%}
.btn.sm{height:42px;padding:0 16px;font-size:15px}
.btn:disabled{opacity:.45}
.btn svg{width:20px;height:20px}
.btns{display:flex;gap:10px;flex-wrap:wrap}
.btns .btn{flex:1}

/* ===== Формы ===== */
.form{display:flex;flex-direction:column;gap:14px}
.fld{display:flex;flex-direction:column;gap:6px;font-size:14px;color:var(--muted)}
.fld em{font-style:normal;color:var(--danger)}
.fld input,.fld select,.fld textarea{width:100%;border:1.5px solid transparent;background:var(--field);border-radius:14px;padding:14px 16px;font-size:17px;color:var(--ink);outline:none}
.fld input:focus,.fld textarea:focus,.fld select:focus{border-color:var(--ink)}
.fld input.bad{border-color:var(--danger)}
.fld .hint{font-size:13px}
.two{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.card{border-radius:var(--r-lg);padding:20px;margin-bottom:14px}
.card h2{margin:0 0 4px;font-size:21px;letter-spacing:-.02em}
.card p{margin:0 0 14px;color:var(--muted);font-size:15px}
.seg{display:grid;grid-auto-flow:column;grid-auto-columns:1fr;gap:4px;padding:4px;border-radius:16px;background:var(--field)}
.seg button{min-height:44px;padding:4px 6px;line-height:1.15;border-radius:12px;font-size:14.5px;font-weight:550;color:var(--muted)}
.seg button[aria-pressed="true"]{background:var(--glass-hi);color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.photo-pick{display:flex;align-items:center;gap:14px}
.photo-pick .ph{width:96px;height:96px;border-radius:20px;background:var(--field);overflow:hidden;display:grid;place-items:center;flex:none}
.photo-pick .ph img{width:100%;height:100%;object-fit:cover}
.photo-pick .ph svg{width:30px;height:30px;color:var(--muted)}
.logo-slots{display:grid;grid-template-columns:1fr 1fr;gap:12px}
.lprev{height:110px;border-radius:16px;display:grid;place-items:center;padding:12px;margin-bottom:8px}
.lprev.l{background:#fff}.lprev.d{background:#1A1A1A}
.lprev img{max-height:86px;width:auto;object-fit:contain}
.muted{color:var(--muted)}
.small{font-size:14px}
.sync{margin:22px 4px 0;font-size:13px;color:var(--muted);text-align:center}
.sync.bad{color:var(--danger)}

/* ===== Вход ===== */
.auth{min-height:calc(100vh - 60px);display:flex;flex-direction:column;justify-content:center}
.auth .hero{height:230px}
.auth .hero img{width:220px}
.auth .h-page{text-align:center;margin-bottom:8px}
.auth p.lead{text-align:center;color:var(--muted);margin:0 0 22px}
.auth .err{min-height:22px;color:var(--danger);font-size:15px;text-align:center}

/* ===== Редактор ===== */
.ed-head{border-radius:var(--r-lg);padding:18px 18px 8px;margin-bottom:12px}
.ed-head .proj{width:100%;border:0;background:transparent;font-size:28px;font-weight:720;letter-spacing:-.03em;padding:2px 0;outline:none}
.ed-head .proj::placeholder{color:var(--muted)}
.ed-head .meta{display:flex;flex-wrap:wrap;gap:6px;margin:8px 0 10px}
.chip{display:inline-flex;align-items:center;gap:6px;height:34px;padding:0 13px;border-radius:999px;background:var(--chip);font-size:14px;font-weight:550}
.chip.lime{background:var(--lime);color:var(--lime-ink)}
.chip.warn{background:#FFE3DF;color:#9A1F14}
.chip svg{width:16px;height:16px}
.ed-fields{display:grid;grid-template-columns:1fr 1fr;gap:10px;padding:6px 0 10px}
.ed-fields .fld input{padding:11px 13px;font-size:16px}
.ed-fields .full{grid-column:1/-1}
details.req summary{list-style:none;cursor:pointer;color:var(--muted);font-size:14px;padding:6px 0 10px}
details.req summary::-webkit-details-marker{display:none}

.tabs{position:sticky;top:0;z-index:5;display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -18px 6px;padding:calc(8px + var(--safe-t)) 18px 10px;background:linear-gradient(var(--bg) 70%,transparent)}
.tabs::-webkit-scrollbar{display:none}
.tabs button{flex:none;height:42px;padding:0 18px;border-radius:999px;font-size:16px;font-weight:600;color:var(--muted);background:var(--chip)}
.tabs button[aria-current="true"]{background:var(--ink);color:var(--bg)}

.blk{scroll-margin-top:72px;margin-bottom:8px}
.blk>h2{margin:22px 4px 10px;font-size:30px;font-weight:760;letter-spacing:-.04em;line-height:1}
.grp{border-radius:var(--r-lg);padding:6px 0 4px;margin-bottom:12px;overflow:hidden}
.grp>h3{margin:12px 18px 2px;font-size:18px;font-weight:680;letter-spacing:-.015em}
.sub{padding:4px 0 6px}
.sub-h{display:flex;align-items:center;gap:8px;padding:12px 18px 6px}
.sub-h h4{margin:0;flex:1;font-size:15px;font-weight:600;color:var(--muted)}
.mk{height:32px;padding:0 12px;border-radius:999px;background:var(--chip);font-size:13.5px;font-weight:600;display:inline-flex;align-items:center;gap:5px}
.mk.on{background:var(--lime);color:var(--lime-ink)}
.mk svg{width:15px;height:15px}

.it{padding:12px 18px;border-top:1px solid var(--line);position:relative}
.it:first-of-type{border-top:0}
.it.off>*:not(.it-ctl){opacity:.38}
.it-top{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:4px 12px;align-items:start}
.it-name{display:block;text-align:left;font-size:17px;font-weight:620;letter-spacing:-.01em;line-height:1.25;overflow-wrap:anywhere}
.it-name.swap{text-decoration:underline dotted var(--muted);text-underline-offset:4px;text-decoration-thickness:1.5px}
.it-note{font-size:14px;color:var(--muted);margin-top:2px;overflow-wrap:anywhere}
.it-sum{font-size:17px;font-weight:700;font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}
.it-sum small{display:block;font-size:12.5px;font-weight:500;color:var(--muted)}
.it-name-in{width:100%;border:0;border-bottom:1.5px dashed var(--line);background:transparent;font-size:17px;font-weight:620;padding:2px 0;outline:none}
.it-name-in:focus{border-bottom-color:var(--ink)}
.it-nums{display:grid;grid-template-columns:1fr 1fr 1.3fr;gap:8px;margin-top:10px}
.it-nums.mu{grid-template-columns:1fr 1fr 1.3fr 1.2fr}
.num{display:flex;flex-direction:column;gap:3px;font-size:12.5px;color:var(--muted);min-width:0}
.num input,.num .ro{width:100%;min-width:0;height:42px;border:1.5px solid transparent;background:var(--field);border-radius:12px;padding:0 10px;font-size:16px;color:var(--ink);text-align:center;font-variant-numeric:tabular-nums;outline:none}
.num .ro{display:flex;align-items:center;justify-content:center;background:transparent;border:1.5px solid var(--line);white-space:nowrap;overflow:hidden}
.num input:focus{border-color:var(--ink)}
.num.mu input{background:var(--lime-soft)}
.it-ctl{display:flex;gap:6px;margin-top:10px;flex-wrap:wrap}
.it-ctl button{height:36px;padding:0 13px;border-radius:999px;background:var(--chip);font-size:14px;font-weight:550;display:inline-flex;align-items:center;gap:6px}
.it-ctl button svg{width:16px;height:16px}
.it-ctl .sp{flex:1}
.it-ctl .del{color:var(--danger)}
.it-ctl [aria-pressed="false"]{color:var(--muted)}
.it-cm{width:100%;margin-top:8px;border:1.5px dashed var(--line);background:transparent;border-radius:12px;padding:9px 12px;font-size:15px;outline:none}
.it-cm:focus{border-style:solid;border-color:var(--ink)}
.sub-add{display:flex;align-items:center;gap:8px;width:calc(100% - 24px);margin:6px 12px 6px;height:48px;padding:0 16px;border-radius:14px;border:1.5px dashed var(--line);font-weight:600;font-size:15.5px;color:var(--ink2)}
.sub-add svg{width:20px;height:20px}
.tot-line{display:flex;justify-content:space-between;align-items:center;gap:12px;margin:2px 12px 8px;padding:12px 16px;border-radius:14px;background:var(--lime);color:var(--lime-ink);font-weight:650;font-variant-numeric:tabular-nums}
.tot-line.blk-t{margin:4px 0 12px;font-size:17px}
.fin{border-radius:var(--r-lg);padding:8px 18px;margin-top:18px}
.fin h3{margin:12px 0 6px;font-size:22px;letter-spacing:-.02em}
.fin>div{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:11px 0;border-top:1px solid var(--line);font-variant-numeric:tabular-nums}
.fin>div:first-of-type{border-top:0}
.fin .inner{color:var(--muted);font-size:15px}
.fin .tax input{width:64px;height:38px;border:0;background:var(--field);border-radius:10px;text-align:center;font-size:16px;margin:0 4px;outline:none}
.fin .pay{margin:6px -10px 10px;padding:14px 12px;border-radius:14px;background:var(--lime);color:var(--lime-ink);font-size:19px;font-weight:700;border-top:0!important}
.fin select{border:0;background:var(--field);border-radius:10px;height:38px;padding:0 10px;font-size:16px}

.dock{position:fixed;left:0;right:0;bottom:0;z-index:8;padding:0 12px calc(12px + var(--safe-b));pointer-events:none}
.dock-in{pointer-events:auto;max-width:820px;margin:0 auto;display:flex;align-items:center;gap:10px;padding:10px 10px 10px 22px;border-radius:999px}
.dock .sums{flex:1;min-width:0;display:flex;flex-direction:column;line-height:1.15}
.dock .sums span{font-size:13px;color:var(--muted)}
.dock .sums b{font-size:20px;font-variant-numeric:tabular-nums;letter-spacing:-.02em;white-space:nowrap}
.dock .btn{height:56px}

/* ===== Нижний лист ===== */
.sheet-wrap{position:fixed;inset:0;z-index:30;display:flex;align-items:flex-end;justify-content:center}
.sheet-bg{position:absolute;inset:0;background:rgba(10,12,6,.38);animation:fade .18s ease-out}
.sheet{position:relative;width:100%;max-width:620px;max-height:88vh;display:flex;flex-direction:column;background:var(--bg);border-radius:30px 30px 0 0;padding:10px 18px calc(18px + var(--safe-b));animation:up .22s cubic-bezier(.2,.8,.2,1);box-shadow:0 -10px 40px rgba(0,0,0,.18)}
.sheet::before{content:"";display:block;width:44px;height:5px;border-radius:3px;background:var(--line);margin:0 auto 10px;flex:none}
.sheet .sh-top{display:flex;align-items:center;gap:10px;margin-bottom:12px;flex:none}
.sheet .sh-top h2{flex:1;margin:0;font-size:24px;letter-spacing:-.025em;line-height:1.1}
.sheet .sh-top .circle{width:44px;height:44px}
.sheet .sh-body{overflow-y:auto;-webkit-overflow-scrolling:touch;margin:0 -18px;padding:0 18px 4px;flex:1;min-height:0}
.sheet .sh-foot{flex:none;padding-top:12px}
.menu{display:flex;flex-direction:column;gap:4px}
.menu button{display:flex;align-items:center;gap:14px;width:100%;min-height:54px;padding:0 16px;border-radius:16px;text-align:left;font-size:17px;font-weight:520}
.menu button:hover,.menu button:focus-visible{background:var(--chip)}
.menu button svg{width:22px;height:22px;flex:none;color:var(--muted)}
.menu button.danger{color:var(--danger)}
.menu button.danger svg{color:var(--danger)}
.menu hr{border:0;border-top:1px solid var(--line);margin:6px 8px}
.menu button[aria-checked="true"]::after{content:"";width:10px;height:10px;border-radius:50%;background:var(--lime);margin-left:auto;box-shadow:0 0 0 3px var(--ink)}
@keyframes up{from{transform:translateY(40px);opacity:.4}}
@keyframes fade{from{opacity:0}}

/* выбор позиции */
.pick-chips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -18px 10px;padding:0 18px}
.pick-chips::-webkit-scrollbar{display:none}
.pick-chips button{flex:none;height:38px;padding:0 14px;border-radius:999px;background:var(--chip);font-size:14.5px;font-weight:550;color:var(--muted)}
.pick-chips button[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.pick-grp{margin:14px 2px 8px;font-size:14px;font-weight:600;color:var(--muted)}
.pick{display:grid;grid-template-columns:56px minmax(0,1fr) auto;align-items:center;gap:12px;width:100%;padding:8px 8px 8px 8px;border-radius:16px;text-align:left}
.pick:hover{background:var(--chip)}
.pick .ph{width:56px;height:56px;border-radius:12px;background:var(--field);overflow:hidden;display:grid;place-items:center}
.pick .ph img{width:100%;height:100%;object-fit:cover}
.pick .ph svg{width:22px;height:22px;color:var(--muted)}
.pick b{display:block;font-size:16px;font-weight:600}
.pick span{display:block;font-size:13.5px;color:var(--muted)}
.pick .plus{width:40px;height:40px;border-radius:50%;background:var(--lime);color:var(--lime-ink);display:grid;place-items:center;position:relative}
.pick .plus svg{width:20px;height:20px}
.pick .plus i{position:absolute;top:-5px;right:-5px;min-width:20px;height:20px;border-radius:10px;background:var(--ink);color:var(--bg);font-style:normal;font-size:12px;font-weight:700;line-height:20px;text-align:center;padding:0 5px}
.adhoc{display:flex;align-items:center;gap:12px;width:100%;padding:14px 16px;border-radius:16px;background:var(--chip);text-align:left;margin-bottom:8px}
.adhoc svg{width:24px;height:24px;flex:none}
.adhoc b{display:block;font-size:16px}
.adhoc span{display:block;font-size:13.5px;color:var(--muted)}

/* чат */
.chat{display:flex;flex-direction:column;gap:8px;padding:6px 0}
.msg{max-width:82%;padding:10px 14px;border-radius:20px;font-size:16px;line-height:1.35;white-space:pre-wrap;overflow-wrap:anywhere}
.msg small{display:block;font-size:12px;opacity:.65;margin-bottom:2px;font-weight:600}
.msg time{display:block;font-size:11.5px;opacity:.55;margin-top:3px;text-align:right}
.msg.me{align-self:flex-end;background:var(--lime);color:var(--lime-ink);border-bottom-right-radius:6px}
.msg.them{align-self:flex-start;background:var(--chip);border-bottom-left-radius:6px}
.chat-in{display:flex;gap:8px;align-items:flex-end}
.chat-in textarea{flex:1;min-height:48px;max-height:140px;resize:none;border:1.5px solid transparent;background:var(--field);border-radius:22px;padding:12px 16px;font-size:16px;outline:none}
.chat-in textarea:focus{border-color:var(--ink)}
.chat-in .circle{width:48px;height:48px;background:var(--lime);color:var(--lime-ink)}

/* уведомление */
.toast{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(22px + var(--safe-b));z-index:40;display:flex;align-items:center;gap:14px;
  max-width:calc(100vw - 24px);padding:14px 18px;border-radius:18px;background:var(--ink);color:var(--bg);font-size:15px;box-shadow:0 10px 30px rgba(0,0,0,.25)}
body[data-view="edit"] .toast{bottom:calc(98px + var(--safe-b))}
.toast button{color:var(--lime);font-weight:700}

.boot{position:relative;z-index:2;max-width:560px;margin:12px auto 0;padding:14px 16px;border-radius:14px;background:#FBEBD2;color:#5A3A08;font-size:15px;line-height:1.45}
.boot b{display:block;margin-bottom:4px}
.boot code{font-size:12.5px;word-break:break-all}

/* ===== Большие экраны ===== */
@media (min-width:900px){
  .view{max-width:760px}
  .tiles{grid-template-columns:repeat(3,1fr)}
  .tiles.three{grid-template-columns:repeat(3,1fr)}
  .tiles.three .tile{flex-direction:column;align-items:flex-start;justify-content:flex-end;min-height:220px;padding:18px}
  .tiles.three .tile img{left:50%;top:14px;transform:translateX(-50%);width:130px;height:130px}
  .tiles.three .tile::before{background:radial-gradient(60% 50% at 50% 34%,var(--lime-soft),transparent 72%)}
  .bigs{display:grid;grid-template-columns:1fr 1fr;gap:18px}
  .bigs .bigcard{margin:0}
}
@media (max-width:380px){
  .h-page{font-size:40px}
  .navcard{grid-template-columns:56px 1px 1fr 24px;gap:0 16px;min-height:98px;padding:0 20px 0 16px}
  .navcard b{font-size:27px}
  .tile{min-height:186px}
  .tile img{width:116px;height:116px}
  .bigcard{height:220px}
  .bigcard img{width:200px}
  .bigcard b{font-size:34px}
  .it-nums.mu{grid-template-columns:1fr 1fr}
}

/* правки после проверки */
.sheet>*{flex-shrink:0}
.sheet>.sh-body{flex-shrink:1}
.tot-line b{white-space:nowrap}
.row .tx span.badge{display:inline-block;white-space:nowrap;overflow:visible;color:#fff;font-size:12.5px}
.fld>span.lb{display:block}
.dock-in.two-b .btn{padding:0 10px;font-size:15.5px;min-width:0}

/* длинные стрелки и новые отступы (правки по эскизу) */
.lar{flex:1 1 auto;min-width:30px;height:1.8px;background:currentColor;position:relative;margin:0 2px 0 16px;border-radius:1px}
.lar::after{content:"";position:absolute;right:-1px;top:50%;width:11px;height:11px;border-top:1.8px solid currentColor;border-right:1.8px solid currentColor;transform:translateY(-50%) rotate(45deg);transform-origin:center}
.tl{display:flex;align-items:center;min-width:0}
.tl b{flex:0 1 auto;min-width:0}
body[data-view="home"] .top{margin-top:30px;margin-bottom:0}
.navcard{display:flex;align-items:center;gap:0;min-height:0;padding:22px;margin-bottom:14px}
.navcard .ico{flex:none;width:38px;height:38px}
.navcard .ico svg{width:38px;height:38px}
.navcard .div{flex:none;width:1px;align-self:stretch;margin:0 20px;background:var(--line)}
.navcard b{font-size:30px;line-height:38px;flex:none}
.navcard .lar{margin-left:20px}
.navcard .badge{top:-6px;right:-6px}
.bigcard .tl{position:absolute;left:30px;right:28px;bottom:28px}
.bigcard .tl b{position:static;font-size:40px;line-height:1}
.tile .tl b{padding:0;font-size:19px}
.tile .tl .lar{min-width:22px;margin-left:12px}
.tile span.sub{padding-right:0;margin-top:4px}
.tiles.three .tile div{flex:1;min-width:0}
.tiles.three .tile .tl b{font-size:24px}
@media (max-width:380px){.navcard b{font-size:26px}.bigcard .tl b{font-size:34px}}

.tile>b.tt,.tile>.tl{position:relative;z-index:1}
.tile>.tl.sub{margin-top:4px;padding:0;font-size:14px;color:var(--muted)}
.tile>.tl.sub>span:first-child{flex:none;padding:0;margin:0;color:var(--muted)}
.tile>.tl.sub .lar{color:var(--ink);min-width:24px;margin-left:12px}

.lar{display:none}
.toast{width:max-content}

/* выбор иконки и заметная кнопка «⋯» */
.icpick{display:grid;grid-template-columns:repeat(auto-fill,minmax(84px,1fr));gap:10px}
.icpick button{aspect-ratio:1;border-radius:18px;background:var(--field);border:2px solid transparent;display:grid;place-items:center;padding:8px}
.icpick button img{width:100%;height:100%;object-fit:contain}
.icpick button[aria-pressed="true"]{border-color:var(--ink);background:var(--lime-soft)}
.icpick.sm{grid-template-columns:repeat(3,72px)}
.photo-pick .ph.icon img{object-fit:contain;padding:8px}
.tile .more{width:36px;height:36px;top:10px;right:10px;background:var(--glass-hi);color:var(--ink);box-shadow:0 2px 8px rgba(0,0,0,.08)}

/* ===== Обновление 4: тёмные иконки, финансы, справочник, первый запуск ===== */
img.id{display:none!important}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) img.il{display:none!important}:root:not([data-theme="light"]) img.id{display:block!important}}
:root[data-theme="dark"] img.il{display:none!important}
:root[data-theme="dark"] img.id{display:block!important}

/* главная: четыре раздела */
body[data-view="home"] .hero{height:min(34vh,300px);margin-bottom:4px}
body[data-view="home"] .hero img{width:min(66vw,290px)}
body[data-view="home"] .navcard{padding:18px 22px;margin-bottom:12px}
body[data-view="home"] .navcard .ico,body[data-view="home"] .navcard .ico svg{width:34px;height:34px}
body[data-view="home"] .navcard b{font-size:27px;line-height:34px}

/* логотип не задан */
.lprev img[hidden]+.nolg{display:block}
.lprev .nolg{display:none}

/* аккаунт */
.acc-top{display:flex;align-items:center;gap:14px;margin-bottom:10px}
.acc-ic{width:64px;height:64px;flex:none}
.acc-ic img{width:100%;height:100%;object-fit:contain}
.acc-top h2{margin:0 0 6px}
#accLine{color:var(--ink);line-height:1.5}

/* финансы */
.fin-hero{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-bottom:16px}
.sum-card{display:block;border-radius:var(--r-lg);padding:16px 16px 14px;text-align:left}
.sum-card span{display:block;font-size:14px;color:var(--muted)}
.sum-card b{display:block;font-size:24px;letter-spacing:-.03em;margin:4px 0 4px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.sum-card em{display:inline-block;margin-top:6px;font-style:normal;font-size:12.5px;font-weight:600;padding:2px 9px;border-radius:999px;background:#FFE3DF;color:#9A1F14}
.sum-card.main{background:var(--lime);color:var(--lime-ink)}
.sum-card.main span{color:rgba(20,20,20,.62)}
.fchips{display:flex;gap:6px;overflow-x:auto;scrollbar-width:none;margin:0 -18px 12px;padding:0 18px}
.fchips::-webkit-scrollbar{display:none}
.fchips .chip{flex:none;white-space:nowrap}
.fchips .chip[aria-pressed="true"]{background:var(--ink);color:var(--bg)}
.debt{display:block;width:100%;text-align:left;border-radius:var(--r-md);padding:14px 16px}
.debt .t{display:flex;justify-content:space-between;gap:10px;align-items:flex-start}
.debt .t b{font-size:17px;letter-spacing:-.01em;overflow-wrap:anywhere}
.debt .t small{display:block;color:var(--muted);font-size:14px;margin-top:2px}
.debt .amt{text-align:right;font-weight:700;font-size:17px;white-space:nowrap;font-variant-numeric:tabular-nums}
.debt .amt small,.dd-sum small{display:block;font-weight:500;font-size:12.5px;color:var(--muted)}
.bar{height:6px;border-radius:3px;background:var(--field);margin:12px 0 8px;overflow:hidden}
.bar i{display:block;height:100%;background:var(--lime);border-radius:3px}
.bar.big{height:10px;border-radius:5px;margin:-8px 0 16px}
.m{display:flex;gap:6px 8px;align-items:center;flex-wrap:wrap;font-size:13px;color:var(--muted)}
.tg{font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--chip);color:var(--ink);white-space:nowrap}
.tg.late{background:#FFE3DF;color:#9A1F14}
.tg.proc{background:#FFF1C2;color:#6B4E00}
.tg.ok{background:var(--lime);color:var(--lime-ink)}
.row .tx .tg{display:inline-block;margin-top:6px}
.fab{position:fixed;right:18px;bottom:calc(20px + var(--safe-b));z-index:8;height:58px;padding:0 22px;border-radius:999px;background:var(--lime);color:var(--lime-ink);font-weight:650;font-size:17px;display:flex;align-items:center;gap:8px;box-shadow:0 10px 26px -8px rgba(80,100,0,.55)}
.fab svg{width:20px;height:20px}
body[data-view="finl"] .view{padding-bottom:calc(110px + var(--safe-b))}
body[data-view="finl"] .toast{bottom:calc(92px + var(--safe-b))}
.dd-sum{display:flex;justify-content:space-between;gap:12px}
.dd-sum span{display:block;font-size:13.5px;color:var(--muted)}
.dd-sum b{font-size:24px;letter-spacing:-.03em;font-variant-numeric:tabular-nums;white-space:nowrap}
.dd-sum .r{text-align:right}
.dd-sum .r b{font-size:18px}
.dd-note{margin:4px 4px 0;color:var(--ink2);white-space:pre-wrap}
.kpi{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin:14px 0}
.kpi div{border-radius:var(--r-md);padding:12px}
.kpi span{display:block;font-size:12.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi b{display:block;font-size:17px;white-space:nowrap;font-variant-numeric:tabular-nums;overflow:hidden;text-overflow:ellipsis}
.kpi .hl{background:var(--lime);color:var(--lime-ink);border-color:transparent}
.kpi .hl span{color:rgba(20,20,20,.62)}
.chart{border-radius:var(--r-lg);padding:16px 16px 10px;margin-bottom:12px}
.chart h3{margin:0 0 12px;font-size:17px}
.cols{display:flex;align-items:flex-end;gap:6px;height:150px;border-bottom:1px solid var(--line);padding-bottom:2px}
.cols i{flex:1;min-width:0;background:var(--ink);opacity:.12;border-radius:5px 5px 2px 2px}
.cols i.on{background:var(--lime);opacity:1}
.cols i.neg{background:var(--danger);opacity:.7}
.mon{display:flex;gap:6px;margin-top:6px}
.mon span{flex:1;min-width:0;text-align:center;font-size:11px;color:var(--muted);overflow:hidden;white-space:nowrap}
.hbr{padding:8px 0;border-top:1px solid var(--line)}
.hbr:first-of-type{border-top:0}
.hl1{display:flex;justify-content:space-between;gap:10px;font-size:15px}
.hl1 b{font-variant-numeric:tabular-nums;white-space:nowrap}
.hl1 b.neg{color:var(--danger)}
.hbr .tr{height:8px;border-radius:4px;background:var(--field);overflow:hidden;margin:6px 0 4px}
.hbr .tr i{display:block;height:100%;background:var(--lime);border-radius:4px}
.hbr .tr.neg i{background:var(--danger)}
.hl2{font-size:12.5px;color:var(--muted)}
.fstat-ctl{display:grid;grid-template-columns:1fr 1fr;gap:10px}
.fstat-ctl .fld input,.fstat-ctl .fld select{padding:11px 12px;font-size:16px}
.ferr{margin:0;color:var(--danger);font-size:14px;min-height:18px}
.sheet .form{gap:12px}
.sh-foot.btns .btn.lime{flex:1}
.sh-foot.btns .btn.danger{flex:none;width:54px;padding:0}

/* справочник */
.tip h2{font-size:18px}
.tip p{margin:0;color:var(--ink2)}
.lesson summary{list-style:none;display:flex;align-items:center;gap:12px;font-weight:650;font-size:18px;cursor:pointer}
.lesson summary::-webkit-details-marker{display:none}
.lesson .ln{width:30px;height:30px;border-radius:50%;background:var(--lime);color:var(--lime-ink);display:grid;place-items:center;font-size:15px;flex:none}
.lesson ol{margin:12px 0 0;padding-left:22px;color:var(--ink2);line-height:1.5}
.lesson li{margin:4px 0}
.chk{display:flex;align-items:center;border-radius:var(--r-md);padding:4px 6px 4px 4px}
.chk-b{flex:1;display:flex;align-items:center;gap:12px;padding:10px;text-align:left;min-width:0}
.chk .box{width:28px;height:28px;border-radius:9px;border:2px solid var(--line);flex:none;display:grid;place-items:center}
.chk.on .box{background:var(--lime);border-color:var(--lime);color:var(--lime-ink)}
.chk .box svg{width:18px;height:18px}
.chk .t{font-size:16px;overflow-wrap:anywhere}
.chk.on .t{color:var(--muted);text-decoration:line-through}
.chk-x{width:38px;height:38px;border-radius:50%;display:grid;place-items:center;color:var(--muted);flex:none}
.chk-x svg{width:18px;height:18px}
.row .chk-x{margin-left:auto}
.row a.tx{display:block;min-width:0}
/* видео без чёрных полей: плеер подстраивается под пропорции ролика */
.vplayer{width:fit-content;max-width:100%;margin:0 auto 16px;border-radius:var(--r-lg);overflow:hidden;padding:0;background:transparent;box-shadow:0 10px 30px rgba(0,0,0,.12)}
.vplayer video{display:block;width:auto;height:auto;max-width:100%;max-height:72vh;background:transparent}

/* первый запуск */
body[data-view="welcome"] .view{padding-top:calc(22px + var(--safe-t))}
.ob-dots{display:flex;gap:6px;justify-content:center;margin-bottom:6px}
.ob-dots i{width:8px;height:8px;border-radius:4px;background:var(--line);transition:width .2s}
.ob-dots i.on{width:26px;background:var(--ink)}
.ob-dots i.done{background:var(--lime)}
.ob-pic{display:grid;place-items:center;height:190px}
.ob-pic img{width:180px;height:180px;object-fit:contain;filter:drop-shadow(0 18px 24px rgba(80,100,0,.18))}
body[data-view="welcome"] .h-page{text-align:center;font-size:40px}
body[data-view="welcome"] .h-page small{max-width:420px;margin:10px auto 0;line-height:1.4}
.ob-nav{display:flex;gap:10px;margin-top:18px}
.ob-nav .btn{flex:1}
.ob-nav .btn.lime{flex:2}
.ob-skip{margin-top:8px;background:transparent;color:var(--muted)}
@media (max-width:380px){.fin-hero b,.sum-card b{font-size:20px}.kpi b{font-size:15px}.fstat-ctl{grid-template-columns:1fr}}

.tile .badge{color:#fff;padding:0 7px;margin:0;font-size:12.5px;font-weight:700}
.sum-card em{white-space:nowrap;font-size:12px}
body[data-view="finl"] .toast{bottom:calc(96px + var(--safe-b))}

.zp{display:flex;gap:14px;align-items:flex-start;margin-bottom:16px}
.zp-ic{width:72px;height:72px;flex:none}
.zp-ic img{width:100%;height:100%;object-fit:contain}
.zp p{margin:4px 0 12px}

/* ===== обновление 5: команда, общая база, модерация, карточка предприятия ===== */
.seg a{display:grid;place-items:center;min-height:44px;padding:4px 6px;line-height:1.15;border-radius:12px;font-size:14.5px;font-weight:550;color:var(--muted);text-align:center}
.seg a[aria-pressed="true"]{background:var(--glass-hi);color:var(--ink);box-shadow:0 1px 4px rgba(0,0,0,.08)}
.ptabs{margin:-4px 0 18px}
.ph2{margin:18px 4px 10px;font-size:15px;font-weight:600;color:var(--muted)}
.pinfo p{margin:0 0 10px;font-size:15px;line-height:1.45}
.pinfo p:last-child{margin:0}
.pinfo svg{width:17px;height:17px;vertical-align:-3px}
.pinfo a{text-decoration:underline;overflow-wrap:anywhere}
.prow{grid-template-columns:minmax(0,1fr) auto;padding:6px 8px 6px 12px;gap:6px}
.prow-main{display:grid;grid-template-columns:64px minmax(0,1fr);align-items:center;gap:14px;text-align:left;padding:6px 0;min-width:0}
.prow .tag{display:inline-block;margin-top:6px;font-size:13px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--chip);white-space:nowrap}
.prow .tag.warn{background:#FFE3DF;color:#9A1F14}
.pstar{width:48px;height:48px;border-radius:50%;display:grid;place-items:center;color:var(--muted)}
.pstar svg{width:26px;height:26px}
.pstar.on{color:var(--ink)}
.pstar.on svg{color:var(--lime);stroke:var(--lime-ink)}
.pcard{display:grid;grid-template-columns:72px minmax(0,1fr);gap:14px;align-items:center;margin-bottom:12px}
.pcard .ph{width:72px;height:72px;border-radius:18px;background:var(--field);display:grid;place-items:center;overflow:hidden}
.pcard .ph img{width:100%;height:100%;object-fit:cover}
.pcard .ph svg{width:30px;height:30px;color:var(--muted)}
.pcard b{display:block;font-size:18px}
.pcard span{display:block}
.pcard .chip{display:inline-flex}
.pshare{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:start;padding:14px 16px;border-radius:16px;background:var(--field);cursor:pointer}
.pshare input{width:22px;height:22px;margin:1px 0 0;accent-color:#7DA600}
.pshare b{display:block;color:var(--ink);font-size:16px;margin-bottom:4px}
.pshare span span{display:block;font-size:13.5px;line-height:1.4;color:var(--muted)}
.pstat{display:flex;flex-wrap:wrap;align-items:center;gap:8px 10px}
.pfrom{display:flex;align-items:center;gap:8px;margin:0}
.pfrom svg{width:20px;height:20px;flex:none}
.modcard{position:relative;display:grid;grid-template-columns:52px minmax(0,1fr);gap:14px;align-items:center}
.modcard .mc-ic{width:52px;height:52px;border-radius:16px;background:var(--lime);color:var(--lime-ink);display:grid;place-items:center}
.modcard .mc-ic svg{width:28px;height:28px}
.modcard .tx b{display:block;font-size:17px}
.modcard .tx span{color:var(--muted);font-size:14px}
.modcard .badge{top:12px;right:12px}
.mcard .pcard{margin-bottom:0}
.mcard .pcard span{font-size:14.5px}
.firmcard{position:relative}
.firmcard h2{margin:10px 0 14px;font-size:22px;overflow-wrap:anywhere}
.fc-logo{float:right;margin:0 0 8px 12px}
.fc-logo img{max-width:120px;max-height:56px;object-fit:contain}
.fc-rows{margin:0;display:flex;flex-direction:column;clear:both}
.fc-rows div{padding:10px 0;border-top:1px solid var(--line)}
.fc-rows dt{color:var(--muted);font-size:13px;margin-bottom:2px}
.fc-rows dd{margin:0;font-weight:600;font-size:16px;overflow-wrap:anywhere;font-variant-numeric:tabular-nums}
.fc-miss{margin:-2px 4px 14px;font-size:14px}
.fc-miss a{text-decoration:underline;color:var(--ink)}
.fc-btns{display:flex;flex-direction:column;gap:10px}
#reqCard>.btn{display:flex}

/* ===== шрифты: Unbounded — заголовки, Geologica — всё остальное ===== */
:root{--font-h:"Unbounded","Geologica",system-ui,sans-serif}
.h-app,.h-page,.h-sec,.navcard b,.bigcard b,.bigcard .tl b,.tile b,.tile .tl b,.blk>h2,.sheet .sh-top h2,.card h2,.ed-head .proj,.firmcard h2{font-family:var(--font-h);hyphens:auto;-webkit-hyphens:auto}
.h-app{font-size:22px;font-weight:700;letter-spacing:-.02em}
.h-page,body[data-view="welcome"] .h-page{font-size:31px;font-weight:700;line-height:1.08;letter-spacing:-.025em;overflow-wrap:normal}
.h-page small{font-family:var(--font);hyphens:manual;-webkit-hyphens:manual}
.h-sec{font-size:19px;font-weight:650;letter-spacing:-.015em}
.navcard b,body[data-view="home"] .navcard b{font-size:21px;font-weight:600;line-height:30px;letter-spacing:-.015em}
.bigcard b,.bigcard .tl b{font-size:27px;font-weight:700;letter-spacing:-.025em}
.tile b,.tile .tl b{font-size:14.5px;font-weight:600;letter-spacing:-.015em;line-height:1.2;overflow-wrap:break-word}
.tiles.three .tile b,.tiles.three .tile .tl b{font-size:19px}
.blk>h2{font-size:22px;font-weight:700;letter-spacing:-.025em}
.sheet .sh-top h2{font-size:18px;font-weight:650;letter-spacing:-.01em;line-height:1.2}
.card h2{font-size:16.5px;font-weight:650;letter-spacing:-.01em;line-height:1.25}
.ed-head .proj{font-size:21px;font-weight:650;letter-spacing:-.02em}
.firmcard h2{font-size:19px}
@media (max-width:380px){.h-page,body[data-view="welcome"] .h-page{font-size:27px}.navcard b,body[data-view="home"] .navcard b{font-size:19px}.bigcard .tl b{font-size:24px}}
.tile{padding-left:16px;padding-right:14px}
.tile b.long{font-size:12px;letter-spacing:-.03em}

/* ===== быстрый тур и выбор обучения ===== */
.lchoice{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:4px 0 4px}
.lc{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:8px;padding:14px 14px 16px;border-radius:var(--r-lg);text-align:left;min-height:150px}
.lc img{width:64px;height:64px;object-fit:contain}
.lc b{display:block;font-family:var(--font-h);font-size:15px;font-weight:650;letter-spacing:-.01em}
.lc span span{display:block;font-size:13.5px;color:var(--muted);margin-top:3px}
.lc.lime-c{background:var(--lime);color:var(--lime-ink)}
.lc.lime-c span span{color:var(--lime-ink);opacity:.75}
.ob-q{margin:6px 4px 10px;font-weight:600;text-align:center}
.tr-top{align-items:center;gap:10px}
.tr-dots{display:flex;gap:5px}
.tr-dots i{width:7px;height:7px;border-radius:4px;background:var(--line);transition:width .2s}
.tr-dots i.done{background:var(--ink);opacity:.35}
.tr-dots i.on{width:22px;background:var(--ink)}
.tr-slide{display:flex;flex-direction:column;align-items:center;gap:18px;touch-action:pan-y;user-select:none;-webkit-user-select:none;animation:trIn .28s ease}
@keyframes trIn{from{opacity:0;transform:translateX(18px)}to{opacity:1;transform:none}}
.tr-phone{height:min(54vh,520px);aspect-ratio:600/1298;border:7px solid #181818;border-radius:34px;overflow:hidden;background:#181818;box-shadow:0 24px 48px rgba(40,60,0,.22)}
.tr-phone img{display:block;width:100%;height:100%;object-fit:cover;border-radius:27px}
.tr-tx{width:100%;text-align:center;padding:0 4px}
.tr-n{display:inline-block;font-size:13px;font-weight:600;color:var(--muted);margin-bottom:6px}
.tr-tx h1{margin:0 0 8px;font-family:var(--font-h);font-size:23px;line-height:1.15;letter-spacing:-.02em}
.tr-tx p{margin:0;color:var(--muted);font-size:16px;line-height:1.45}
.tr-nav{display:flex;gap:10px;margin-top:22px}
.tr-nav .btn{flex:1}.tr-nav .btn.lime{flex:2}
.tr-end{display:flex;flex-direction:column;align-items:center;text-align:center;padding-top:4vh}
.tr-ic{width:132px;height:132px;border-radius:30px;margin-bottom:18px;box-shadow:0 18px 36px rgba(0,0,0,.18)}
.tr-end .h-page small{max-width:420px;margin:10px auto 0;line-height:1.45}
.tr-btns{display:flex;flex-direction:column;gap:10px;width:100%;margin-top:10px}
.lchoice + .ob-nav .btn.lime{background:var(--chip);color:var(--ink)}
.rs-ck{display:grid;grid-template-columns:26px minmax(0,1fr);gap:12px;align-items:start;padding:14px 16px;border-radius:16px;background:var(--field);cursor:pointer}
.rs-ck input{width:22px;height:22px;margin:1px 0 0;accent-color:#D23B2E}
.rs-ck b{display:block;color:var(--ink);font-size:16px;margin-bottom:3px}
.rs-ck span span{display:block;font-size:13.5px;line-height:1.4;color:var(--muted)}
.card.reset h2{color:var(--danger)}

/* ===== обновление 7 ===== */
/* главная: логотип вместо картинки, меню ниже */
.home-logo{height:auto!important;margin:18px -18px 26px!important}
.home-logo img{width:150px!important;height:150px;border-radius:36px;box-shadow:0 22px 44px rgba(40,60,0,.22);filter:none!important}
@media (min-width:900px){.home-logo{margin:30px -18px 40px!important}.home-logo img{width:170px!important;height:170px}}
/* ПК: плитки «создать/история/шаблоны» — картинка сверху, текст снизу, без наложения */
@media (min-width:900px){
  .tiles.three .tile{padding-top:168px!important;min-height:250px}
  .tiles.three .tile div{flex:none!important;margin-top:auto}
  .tiles.three .tile img{top:18px!important}
}
/* прокрутка рядов на компьютере */
.hsw{position:relative}
.hsw:has(> .tabs){position:sticky;top:0;z-index:5}
.hsw > .tabs{position:static}
.hs-btn{position:absolute;top:50%;transform:translateY(-50%);z-index:3;width:36px;height:36px;border-radius:50%;display:grid;place-items:center;background:var(--glass-hi);color:var(--ink);box-shadow:0 4px 14px rgba(0,0,0,.14)}
.hs-btn svg{width:18px;height:18px}
.hs-l{left:-6px}.hs-r{right:-6px}
.hsw > .tabs ~ .hs-btn{top:calc(50% + 2px)}
.dragging{cursor:grabbing;user-select:none}
.dragging *{pointer-events:none}
/* смета: своя цена, разовая техника */
.num.own input{background:#FFF3C4;border-color:#E2C14A}
:root[data-theme="dark"] .num.own input{background:rgba(226,193,74,.18)}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .num.own input{background:rgba(226,193,74,.18)}}
.it-own{font-size:12.5px;color:#9A7A10;margin-top:3px}
.it-own button{text-decoration:underline;font-size:12.5px;color:inherit;padding:0 2px}
.adhocs{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-bottom:8px}
.adhocs .adhoc{margin:0;align-items:flex-start}
.ah-pic{width:26px;height:26px;object-fit:contain;flex:none}
@media (max-width:420px){.adhocs{grid-template-columns:1fr}}
.sheet .sh-foot.btns{display:flex;gap:8px}
.sheet .sh-foot.btns .btn{flex:1}
/* «Техника московских танталов» */
.zp-btns{flex-wrap:wrap}
.zp-mini{display:flex;align-items:center;gap:12px;width:100%;padding:10px 14px;border-radius:18px;margin-top:12px;text-align:left}
.zp-mini img{width:44px;height:44px;object-fit:contain}
.zp-mini b{display:block;font-size:15px}
.zp-mini span span{display:block;font-size:13px;color:var(--muted)}
/* рейтинг и зоны */
.rt{display:inline-flex;align-items:center;gap:4px;font-size:13px;font-weight:600;padding:2px 9px;border-radius:999px;background:var(--chip);color:var(--ink);white-space:nowrap;margin-top:4px}
.rt.none{font-weight:450;color:var(--muted)}
.rt.gold{background:linear-gradient(135deg,#FFE27A,#F2B705);color:#4A3500}
.rt.red{background:#FFDCD8;color:#A3160A}
.rt.white{background:#fff;color:#222;box-shadow:inset 0 0 0 1px var(--line)}
.prow .tx .rt{display:inline-flex;margin-top:5px}
.prow.z-red{box-shadow:inset 3px 0 0 #E5483A}
.prow.z-gold{box-shadow:inset 3px 0 0 #F2B705}
.p-rt{margin:0 0 6px}
.tree{display:flex;flex-direction:column;gap:10px;padding:12px 14px;border-radius:16px;background:var(--field);margin-top:8px}
.tr-row{display:flex;flex-wrap:wrap;align-items:center;gap:8px}
.tr-row>.muted{min-width:96px}
.tree-kids{display:flex;flex-wrap:wrap;gap:6px}
.pchip{height:32px;padding:0 12px;border-radius:999px;background:var(--glass-hi);font-size:13.5px;font-weight:600;box-shadow:inset 0 0 0 1px var(--line)}
.pchip.gold{background:linear-gradient(135deg,#FFE27A,#F2B705);color:#4A3500;box-shadow:none}
.pchip.red{background:#FFDCD8;color:#A3160A;box-shadow:none}
.rev{padding:14px 16px;border-radius:18px}
.rv-top{display:flex;justify-content:space-between;gap:10px;align-items:center}
.rv-st{color:#F2B705;letter-spacing:1px}
.rv-st i{font-style:normal;color:var(--line)}
.rev p{margin:6px 0}
.rv-adm{color:#A3160A!important}
.rv-reply{margin-top:8px;padding:10px 12px;border-radius:14px;background:var(--field)}
.rv-reply p{margin:4px 0 0}
.stars-in{display:flex;gap:6px;justify-content:center}
.stars-in button{font-size:40px;line-height:1;color:var(--line);padding:2px 4px}
.stars-in button.on{color:#F2B705}
/* роль, анкета, приглашения, демо */
.role-wrap{display:flex;flex-direction:column;gap:12px;padding-top:4vh}
.rolecard{display:flex;gap:14px;align-items:flex-start;padding:16px;border-radius:var(--r-lg);text-align:left;width:100%}
.rolecard>img{width:76px;height:76px;object-fit:contain;flex:none}
.rolecard>span{flex:1;min-width:0}
.rolecard b{display:block;font-family:var(--font-h);font-size:17px;margin-bottom:4px}
.rolecard>span>span{display:block;color:var(--muted);font-size:14.5px}
.inv-top{display:flex;gap:12px;align-items:flex-start}
.inv-ic img{width:64px;height:64px;object-fit:contain}
.inv-code{display:flex;align-items:baseline;justify-content:space-between;gap:10px;margin:12px 0;padding:14px 16px;border-radius:16px;background:var(--field)}
.inv-code b{font-family:var(--font-h);font-size:26px;letter-spacing:.12em}
.inv-code span{font-size:13.5px;color:var(--muted);text-align:right}
.demo-b{display:flex;gap:12px;align-items:flex-start;margin-top:14px}
.db-ic img{width:64px;height:64px;object-fit:contain}
.demo-b p{margin:4px 0 10px}
.me-rt{display:flex;flex-wrap:wrap;gap:8px}
/* стена */
.wall-in{position:relative;display:flex;flex-wrap:wrap;gap:8px;align-items:flex-end;padding:10px;border-radius:22px;margin-bottom:14px}
.wall-in textarea{flex:1;min-width:0;border:0;background:transparent;resize:none;font:inherit;font-size:16px;padding:8px;outline:none;color:var(--ink)}
.wall-in .circle{width:44px;height:44px;flex:none}
.circle.lime{background:var(--lime);color:var(--lime-ink)}
.wi-rep{width:100%;display:flex;align-items:center;gap:6px;font-size:13px;color:var(--muted);padding:2px 8px}
.wi-rep button svg{width:14px;height:14px}
.wall{display:flex;flex-direction:column;gap:12px}
.wt{display:flex;flex-direction:column;gap:6px}
.wm{padding:12px 14px;border-radius:18px;background:var(--glass);box-shadow:inset 0 0 0 1px var(--glass-edge)}
.wm.rep{margin-left:22px;background:var(--field);box-shadow:none}
.wm.mine{box-shadow:inset 3px 0 0 var(--lime)}
.wm-top{display:flex;justify-content:space-between;gap:10px;align-items:baseline}
.wm-name{font-weight:700;font-size:14.5px;padding:0}
.wm p{margin:4px 0 8px;white-space:pre-wrap;overflow-wrap:anywhere}
.wm-ctl{display:flex;flex-wrap:wrap;gap:6px}
.wr{height:30px;padding:0 10px;border-radius:999px;background:var(--chip);font-size:13.5px;display:inline-flex;align-items:center;gap:4px}
.wr.on{background:var(--lime);color:var(--lime-ink)}
.wr.del svg{width:15px;height:15px}
.h-wic{display:flex;align-items:center;justify-content:space-between;gap:10px}
.h-ic img{width:64px;height:64px;object-fit:contain}
.fav-ic{display:grid;place-items:center;margin:-6px 0 4px}
.fav-ic img{width:84px;height:84px;object-fit:contain}
.inv-ic,.db-ic{flex:none;width:64px}
.rc-wrap{flex-wrap:wrap}
.rc-wrap #roleForm{flex:1 1 100%;margin-top:4px}
.rc-wrap .btn{white-space:normal;height:auto;min-height:54px;padding:10px 18px}
/* курилка на главной — отдельная плашка */
.kur-card{position:relative;display:flex;align-items:center;gap:14px;margin-top:14px;padding:12px 18px 12px 12px;border-radius:var(--r-lg);background:#141513;color:#fff;box-shadow:0 14px 30px rgba(20,30,0,.18)}
.kur-card img{width:64px;height:64px;object-fit:contain;flex:none}
.kur-card b{display:block;font-family:var(--font-h);font-size:20px;font-weight:650;color:var(--lime)}
.kur-card span span{display:block;font-size:13.5px;color:rgba(255,255,255,.7)}
.kur-card .badge{top:12px;right:14px;box-shadow:0 0 0 3px #141513}
:root[data-theme="dark"] .kur-card{background:var(--lime);color:var(--lime-ink)}
:root[data-theme="dark"] .kur-card b{color:var(--lime-ink)}:root[data-theme="dark"] .kur-card span span{color:var(--lime-ink);opacity:.75}
@media (prefers-color-scheme:dark){:root:not([data-theme="light"]) .kur-card{background:var(--lime);color:var(--lime-ink)}:root:not([data-theme="light"]) .kur-card b{color:var(--lime-ink)}:root:not([data-theme="light"]) .kur-card span span{color:var(--lime-ink);opacity:.75}}
.snd-ck{display:flex;gap:10px;align-items:center;margin:0 0 12px;font-size:15px}
.snd-ck input{width:22px;height:22px;accent-color:#7DA600}
.h-learn{margin-top:18px}
/* дерево доверия */
.tree2{position:relative;margin-top:10px;padding:14px;border-radius:20px;background:var(--field);overflow:hidden}
.tree2.bz-gold{background:linear-gradient(160deg,rgba(255,226,122,.45),var(--field) 55%)}
.tree2.bz-red{background:linear-gradient(160deg,rgba(255,180,170,.5),var(--field) 55%)}
.t2-head{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;margin-bottom:12px;font-family:var(--font-h);font-size:14px;font-weight:650}
.t2-head .rt{margin:0}
.t2-lv{position:relative;display:grid;grid-template-columns:86px minmax(0,1fr);align-items:center;gap:10px;padding:8px 0}
.t2-lv+.t2-lv::before{content:"";position:absolute;left:calc(86px + 10px + 22px);top:-8px;height:16px;border-left:2px solid var(--line)}
.t2-lb{font-size:12.5px;color:var(--muted);text-align:right}
.t2-kids{display:flex;flex-direction:column;gap:8px;padding-left:18px;border-left:2px solid var(--line);margin-left:21px}
.t2-kids .tn{position:relative}
.t2-kids .tn::before{content:"";position:absolute;left:-20px;top:50%;width:16px;border-top:2px solid var(--line)}
.tn{display:flex;align-items:center;gap:10px;min-width:0;padding:6px 12px 6px 6px;border-radius:999px;background:var(--glass-hi);text-align:left;box-shadow:inset 0 0 0 1px var(--line);max-width:100%}
.tn.ghost{padding:8px 14px;color:var(--muted);font-size:13.5px;box-shadow:inset 0 0 0 1.5px var(--line);background:transparent;border:0;justify-self:start}
.tn-av{width:32px;height:32px;border-radius:50%;flex:none;display:grid;place-items:center;font-size:12px;font-weight:700;background:var(--chip);overflow:hidden;box-shadow:0 0 0 2.5px #fff}
.tn-av img{width:100%;height:100%;object-fit:cover}
.tn-tx{min-width:0}
.tn-tx b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.tn-tx span{display:block;font-size:12px;color:var(--muted)}
.tn.self{padding:8px 16px 8px 8px;background:var(--ink);color:var(--bg);box-shadow:none}
.tn.self .tn-tx span{color:inherit;opacity:.7}
.tn.self .tn-av{width:40px;height:40px;font-size:14px}
.tn.z-gold .tn-av{box-shadow:0 0 0 2.5px #F2B705;background:#FFE9A0;color:#4A3500}
.tn.z-red .tn-av{box-shadow:0 0 0 2.5px #E5483A;background:#FFDCD8;color:#A3160A}
.tn.z-white .tn-av{box-shadow:0 0 0 2.5px #fff,0 0 0 4px var(--line)}
@media (max-width:380px){.t2-lv{grid-template-columns:70px minmax(0,1fr)}.t2-lv+.t2-lv::before{left:calc(70px + 10px + 22px)}}

/* ===== обновление 8 ===== */
/* настройки-гармошки */
details.fold{padding:0}
details.fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:12px;padding:18px 20px;user-select:none}
details.fold>summary::-webkit-details-marker{display:none}
details.fold>summary h2{margin:0;flex:1}
details.fold>summary .acc-top{flex:1;margin:0}
details.fold .fold-ch{margin-left:auto;width:32px;height:32px;border-radius:50%;display:grid;place-items:center;background:var(--chip,rgba(0,0,0,.05));flex:none;transition:transform .2s}
details.fold .fold-ch svg{width:18px;height:18px}
details.fold[open] .fold-ch{transform:rotate(180deg)}
details.fold .fold-b{padding:0 20px 20px}
details.fold.reset>summary h2{color:var(--danger,#d33)}
.badge-row{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cr-note{display:flex;align-items:center;justify-content:space-between;gap:10px}
.cr-note .btn{flex:none}
/* курилка и отзывы на проверке */
.wm-mod{font-size:13px;color:var(--muted);background:rgba(255,190,0,.14);border-radius:10px;padding:6px 10px;margin:6px 0;display:flex;align-items:center;gap:8px;flex-wrap:wrap}
.wm-mod .wr{padding:4px 10px}
.btn.danger-t{color:var(--danger,#d33);margin-top:8px}
.icpick{max-height:46vh;overflow-y:auto;padding:2px}
/* подсказки-гармошки */
.lesson summary .ls-t{flex:1}
.lesson .fold-ch{width:30px;height:30px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .2s;color:var(--muted)}
.lesson .fold-ch svg{width:18px;height:18px}
.lesson[open] .fold-ch{transform:rotate(180deg)}
.lesson.tipd .ln{background:transparent}
.lesson.tipd p{margin:10px 0 0;color:var(--ink2);line-height:1.5}
.lesson.tipd summary{font-size:16px}
/* чек-листы проектов */
.row.chl .tx{flex:1;min-width:0}
.row.chl .bar{display:block;margin-top:8px;height:6px}
.chl-n{font-weight:700;font-size:15px;flex:none;margin-left:8px}
.lnk{background:none;border:0;padding:0;font:inherit;color:inherit;text-decoration:underline;text-underline-offset:3px;cursor:pointer}
.tn.nolink{cursor:default}
/* аккаунт: компактная плашка «доступ открыт» */
.acc .chip.lime{font-size:12px;padding:3px 10px;height:auto;min-height:0;line-height:1.3}
/* смета: разделы и подразделы заметнее, сворачиваются */
.grp>h3.grp-t,.grp-h h3{position:relative;padding-left:14px;font-size:19px;font-weight:720}
.grp>h3.grp-t::before,.grp-h h3::before{content:"";position:absolute;left:0;top:3px;bottom:3px;width:5px;border-radius:3px;background:var(--lime)}
.grp-h{display:flex;align-items:center;gap:10px;width:100%;padding:12px 18px 8px;background:none;border:0;text-align:left;cursor:pointer;color:inherit;font:inherit}
.grp-h h3{margin:0;flex:1}
.grp-h .sub-sum{font-size:13px;color:var(--muted);white-space:nowrap}
.sub.titled .sub-h{margin:8px 10px 4px;padding:8px 10px 8px 6px;border-radius:14px;background:var(--field)}
.sub-h .sp{flex:1}
.fold-t{display:flex;align-items:center;gap:8px;flex:1;min-width:0;background:none;border:0;padding:0;text-align:left;cursor:pointer;color:inherit;font:inherit}
.fold-t .sh-tx{display:flex;flex-direction:column;min-width:0}
.fold-t h4{margin:0;font-size:15px;font-weight:680;color:var(--ink);line-height:1.25}
.fold-t .sub-sum{font-size:12.5px;color:var(--muted);margin-top:2px}
.fold-t .fold-ch{width:28px;height:28px;border-radius:50%;display:grid;place-items:center;flex:none;transition:transform .2s;color:var(--muted)}
.fold-t .fold-ch svg{width:18px;height:18px}
.sub.folded .sub-b,.grp.folded .sub-b{display:none}
.sub.folded .fold-ch,.grp.folded .grp-h .fold-ch{transform:rotate(-90deg)}
.sub.folded{padding-bottom:2px}
.sub:not(.folded) .sub-h .sub-sum{opacity:.85}
.grp.folded .sub-h{display:none}
/* профиль пользователя */
.pcard-set .ps-row{display:flex;align-items:center;gap:14px;margin:6px 0 14px}
.ps-av{width:64px;height:64px;border-radius:50%;background:var(--lime);color:var(--lime-ink);display:grid;place-items:center;font-weight:750;font-size:22px;overflow:hidden;flex:none}
.ps-av img,.wm-av img{width:100%;height:100%;object-fit:cover}
.ps-tx{display:flex;flex-direction:column;min-width:0}
.ps-tx b{font-size:18px}
.wm-name{display:inline-flex;align-items:center;gap:8px}
.wm-av{width:28px;height:28px;border-radius:50%;background:var(--field);display:grid;place-items:center;font-size:11px;font-weight:700;overflow:hidden;flex:none}
.pinfo{display:flex;align-items:center;gap:14px;margin:0 0 10px}
.pi-ph{width:84px;height:84px;border-radius:22px;object-fit:cover;flex:none}
.pi-tx{display:flex;flex-direction:column;gap:2px}
.pi-about{margin:0 0 12px;line-height:1.5;white-space:pre-line;color:var(--ink2)}

/* ===== обновление 9 ===== */
/* экран не «желе»: ничего не уезжает вбок, без резинового отскока */
html{overscroll-behavior:none}
.view{overflow-x:clip}
.sheet .sh-body{overflow-x:hidden;overscroll-behavior:contain}
.two{grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.fld input,.fld select,.fld textarea{min-width:0;max-width:100%}
.fld input[type="date"]{display:block;-webkit-appearance:none;appearance:none;min-height:52px;text-align:left}
.pick b,.pick span{overflow-wrap:anywhere}
/* главная — один экран, не двигается вверх-вниз */
body[data-view="home"]{position:fixed;inset:0;overflow:hidden}
body[data-view="home"] .view{height:100vh;height:100dvh;display:flex;flex-direction:column;overflow-y:auto;overscroll-behavior:none;padding-bottom:calc(14px + var(--safe-b))}
body[data-view="home"] .home-logo{flex:1 1 auto;min-height:60px;margin:0 -18px!important;display:block;position:relative}
body[data-view="home"] .home-logo img{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);width:auto!important;height:min(150px,82%)!important;aspect-ratio:1;border-radius:22%}
body[data-view="home"] .navcard{min-height:clamp(60px,8.2dvh,90px);margin-bottom:clamp(6px,1.2dvh,12px);flex:none;border-radius:28px;padding:0 22px 0 18px;grid-template-columns:44px 1px minmax(0,1fr) 24px;column-gap:16px!important}
body[data-view="home"] .navcard .ico svg{width:34px;height:34px}
body[data-view="home"] .navcard .div{margin:16px 0}
body[data-view="home"] .navcard b{font-size:19px}
body[data-view="home"] .kur-card{flex:none;margin-top:clamp(4px,1dvh,14px)}
body[data-view="home"] .sync{flex:none;margin:8px 0 0}
/* свайп от левого края = «назад» */
.swipe-ind{position:fixed;left:0;top:50%;width:46px;height:46px;margin-top:-23px;border-radius:50%;background:var(--lime);color:var(--lime-ink);display:grid;place-items:center;z-index:80;pointer-events:none;transform:translateX(-56px);opacity:0;box-shadow:0 8px 20px rgba(60,80,0,.3)}
.swipe-ind svg{width:22px;height:22px}
.swipe-ind.go{background:var(--ink);color:var(--bg)}
/* подсказки из уже введённого */
.ac{display:flex;flex-wrap:wrap;gap:6px;margin-top:2px}
.ac[hidden]{display:none}
.ac button{max-width:100%;min-height:34px;padding:6px 12px;border-radius:999px;background:var(--chip);font-size:14.5px;font-weight:550;color:var(--ink);text-align:left;overflow-wrap:anywhere;line-height:1.2}
.ac button small{color:var(--muted);font-weight:450;margin-left:4px}
.ac .ac-h{width:100%;font-size:12.5px;color:var(--muted);margin:2px 2px 0}
/* финансы: главная */
.tiles.solo{grid-template-columns:1fr!important}
.tiles.solo .tile{flex-direction:row!important;align-items:center!important;justify-content:flex-start!important;min-height:124px!important;padding:16px 22px 16px 130px!important}
.tiles.solo .tile img{left:10px!important;top:50%!important;transform:translateY(-50%)!important;width:104px!important;height:104px!important}
.tiles.solo .tile div{display:flex!important;flex-direction:column;flex:1!important;margin:0!important}
.tiles.solo .tile .sub{font-size:14px;color:var(--muted);margin-top:4px}
/* мне должны: закрытые свёрнуты */
.fin-fold{margin-top:16px}
.fin-fold>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:8px;padding:12px 6px;font-weight:600;color:var(--muted)}
.fin-fold>summary::-webkit-details-marker{display:none}
.fin-fold>summary b{font-size:13px;min-width:24px;height:24px;line-height:24px;text-align:center;border-radius:12px;background:var(--chip);color:var(--ink);padding:0 7px}
.fin-fold>summary svg{width:18px;height:18px;margin-left:auto;transition:transform .2s}
.fin-fold[open]>summary svg{transform:rotate(180deg)}
.fin-fold .list{opacity:.8}
/* статистика */
.fper{display:flex;align-items:center;gap:12px;width:100%;margin:12px 0 0;padding:12px 16px;border-radius:var(--r-md);text-align:left}
.fper svg{width:22px;height:22px;flex:none;color:var(--muted)}
.fper span{flex:1;min-width:0}
.fper b{display:block;font-weight:600;font-size:15.5px}
.fper small{display:block;font-size:13px;color:var(--muted);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.fper em{font-style:normal;font-size:13.5px;font-weight:600;padding:5px 11px;border-radius:999px;background:var(--chip)}
.kpi2{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:8px;margin:12px 0}
.kpi2 .k-main{grid-column:1/-1;background:var(--lime);color:var(--lime-ink);border-radius:var(--r-lg);padding:16px 18px}
.kpi2 .k-main span{display:block;font-size:14px;color:rgba(20,20,20,.62)}
.kpi2 .k-main b{display:block;font-family:var(--font-h);font-size:28px;font-weight:700;letter-spacing:-.03em;margin-top:4px;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}
.kpi2 .k-sm{border-radius:var(--r-md);padding:12px 14px}
.kpi2 .k-sm span{display:block;font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.kpi2 .k-sm b{display:block;font-size:18px;font-variant-numeric:tabular-nums;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.srow{display:flex;align-items:center;gap:12px;width:100%;padding:12px 14px;border-radius:var(--r-md);text-align:left}
.srow .ph{width:48px;height:48px;border-radius:12px;background:var(--field);display:grid;place-items:center;overflow:hidden;flex:none}
.srow .ph img{width:100%;height:100%;object-fit:contain;padding:3px}
.srow .tx{flex:1;min-width:0;display:block}
.srow .hl1{display:flex;justify-content:space-between;gap:10px;font-size:16px}
.srow .hl1 b:first-child{font-weight:600;overflow-wrap:anywhere;min-width:0}
.srow .hl1 b.v{font-variant-numeric:tabular-nums;white-space:nowrap}
.srow .hl1 b.neg{color:var(--danger)}
.srow .tr{display:block;height:7px;border-radius:4px;background:var(--field);overflow:hidden;margin:7px 0 4px}
.srow .tr i{display:block;height:100%;background:var(--lime);border-radius:4px}
.srow .tr.neg i{background:var(--danger)}
.srow .hl2{display:block;font-size:12.5px;color:var(--muted)}
.srow.slnk::after{content:"";width:8px;height:8px;border-top:2px solid var(--muted);border-right:2px solid var(--muted);transform:rotate(45deg);flex:none;margin:0 4px 0 2px}
.srow.slnk:active{transform:scale(.99)}
body[data-view="fins"] .h-sec{margin-top:22px}
/* ПК: окно профиля и другие листы — посередине и с прокруткой */
@media (min-width:900px){
  .sheet-wrap:not(.panel){align-items:flex-start;overflow-y:auto;padding:5vh 16px}
  .sheet-wrap:not(.panel) .sheet-bg{position:fixed}
  .sheet-wrap:not(.panel) .sheet{margin:auto;border-radius:30px;max-height:min(90vh,880px);overflow:hidden}
  .sheet-wrap:not(.panel) .sheet::before{display:none}
}

/* регистрация: только код по центру */
.role-wrap.reg1{min-height:calc(100dvh - 190px);justify-content:center;padding-top:0}
.reg-brand{font-family:var(--font-h);font-size:20px;font-weight:650;letter-spacing:-.01em;text-align:center;margin-bottom:10px}
.reg1 #codeForm .fld .lb{text-align:center}
.reg1 #rcCode{text-align:center;font-size:20px;letter-spacing:.12em}
.reg1 .ferr{text-align:center}
/* выбор должностей */
.rp{display:flex;flex-direction:column;gap:8px}
.rp-top{display:flex;align-items:center;justify-content:space-between;font-size:14px;color:var(--muted)}
.rp-top em{color:var(--danger);font-style:normal}
.rp-n{font-size:12.5px;font-weight:600;padding:3px 10px;border-radius:999px;background:var(--chip);color:var(--ink)}
.rp-sel{display:flex;flex-wrap:wrap;gap:6px}
.rp-sel[hidden]{display:none}
.rp-chip{display:inline-flex;align-items:center;gap:6px;min-height:34px;padding:6px 10px 6px 14px;border-radius:999px;background:var(--lime);color:var(--lime-ink);font-size:14.5px;font-weight:600;text-align:left}
.rp-chip svg{width:14px;height:14px;flex:none}
.rp-search{display:flex;align-items:center;gap:10px;height:50px;padding:0 14px;border-radius:14px;background:var(--field);border:1.5px solid transparent}
.rp-search:focus-within{border-color:var(--ink)}
.rp-search svg{width:18px;height:18px;color:var(--muted);flex:none}
.rp-search input{flex:1;min-width:0;border:0;background:transparent;outline:none;font-size:16px;color:var(--ink)}
.rp-list{max-height:280px;overflow-y:auto;overscroll-behavior:contain;border-radius:14px;background:var(--field);padding:4px 6px 8px}
.rp-g{font-size:12.5px;font-weight:600;color:var(--muted);margin:12px 8px 4px}
.rp-it{display:flex;align-items:center;gap:12px;width:100%;min-height:44px;padding:6px 8px;border-radius:12px;text-align:left;font-size:16px;color:var(--ink)}
.rp-it i{width:24px;height:24px;border-radius:50%;border:1.5px solid var(--muted);display:grid;place-items:center;flex:none}
.rp-it i svg{width:15px;height:15px}
.rp-it.on i{background:var(--lime);border-color:var(--lime);color:var(--lime-ink)}
.rp-it.on{font-weight:600}
.rp-it.off{opacity:.4}
.rp-it:active{background:var(--chip)}
/* QR и счётчик модератора */
.qr-box{display:flex;flex-direction:column;align-items:center;gap:8px;text-align:center}
.qr-box .qr{width:min(70vw,280px);height:auto;border-radius:18px;padding:6px;background:#fff}
.qr-box b{font-family:var(--font-h);font-size:24px;letter-spacing:.12em}
.inv .btns{flex-wrap:wrap}
.adm-cnt{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:14px}
.adm-cnt div{border-radius:14px;background:var(--field);padding:10px 12px}
.adm-cnt b{display:block;font-family:var(--font-h);font-size:22px}
.adm-cnt span{font-size:12.5px;color:var(--muted)}
.btn.ghost{background:transparent;box-shadow:none;color:var(--muted)}
body[data-view="auth"] .reg1{min-height:calc(100dvh - 200px)}
.auth.au2{min-height:calc(100dvh - 200px)}
.auth-logo{display:grid;place-items:center;margin:0 0 22px}
.auth-logo img{width:150px;height:150px;border-radius:36px;box-shadow:0 22px 44px rgba(40,60,0,.22)}

/* ссылка на страницу «О приложении» */
.auth-about{display:block;text-align:center;margin-top:18px;font-size:15px;color:var(--muted);text-decoration:underline;text-underline-offset:3px}
.about-link{display:flex;align-items:center;gap:14px;text-decoration:none}
.about-link>span{flex:1;min-width:0}
.about-link b{display:block;font-size:18px;font-weight:700;margin-bottom:4px}
.about-link>span>span{display:block;font-size:14px;color:var(--muted)}
.about-link svg{width:20px;height:20px;transform:rotate(-90deg);flex:none}
