/* Опись — дизайн-система: светлая, спокойная, плотная. Токены → компоненты → экраны. Шрифт Inter (OFL, public/fonts), иконки Lucide (icons.js). */
@font-face{font-family:Inter;src:url(/static/fonts/inter-var.woff2) format("woff2");font-weight:100 900;font-display:swap}
:root{
  --bg:#f5f6f8;--surface:#fff;--surface-2:#f8f9fb;--line:#e7e9ee;--line-2:#d9dde4;
  --text:#101828;--text-2:#475467;--muted:#7a8494;
  --ac:#3a5ccc;--ac-2:#2f4db0;--ac-soft:#eef2fd;--ac-line:#c9d4f5;
  --ok:#15803d;--ok-soft:#ecf8f0;--warn:#b45309;--warn-soft:#fdf5e7;--bad:#c62828;--bad-soft:#fdeeee;--me:#c2410c;--me-soft:#fff3ea;
  --r-s:8px;--r:12px;--r-l:16px;--sh-1:0 1px 2px rgba(16,24,40,.05);--sh-2:0 1px 3px rgba(16,24,40,.06),0 4px 12px rgba(16,24,40,.05);--sh-3:0 8px 28px rgba(16,24,40,.14);
  --s1:4px;--s2:8px;--s3:12px;--s4:16px;--s5:24px;--s6:32px;
  --fs-xs:12px;--fs-s:13px;--fs:15px;--fs-m:16px;--fs-l:18px;--fs-xl:22px;--fs-2xl:28px;
  --tap:44px;--ease:cubic-bezier(.2,.7,.2,1);--top:52px;--nav:60px;
  color-scheme:light}
[hidden]{display:none!important}
*{box-sizing:border-box}html,body{margin:0;padding:0}
body{font-family:Inter,system-ui,-apple-system,"Segoe UI",Roboto,Arial,sans-serif;font-size:var(--fs);line-height:1.45;background:var(--bg);color:var(--text);-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;font-feature-settings:"cv11","ss01";padding-bottom:calc(var(--nav) + env(safe-area-inset-bottom))}
a{color:var(--ac)}h2,h3{letter-spacing:-.01em}
svg.i{width:18px;height:18px;flex:none;fill:none;stroke:currentColor;stroke-width:1.9;stroke-linecap:round;stroke-linejoin:round;vertical-align:-3px;display:inline-block}
.i+*,*+svg.i{margin-left:0}button svg.i,a svg.i,.chip svg.i{margin-right:6px}
.tone-ok{color:var(--ok)}.tone-warn{color:var(--warn)}.tone-bad{color:var(--bad)}
/* шапка */
#top{position:sticky;top:0;z-index:7;background:rgba(255,255,255,.97);backdrop-filter:saturate(1.6) blur(10px);-webkit-backdrop-filter:saturate(1.6) blur(10px);border-bottom:1px solid var(--line)}
.bar{display:flex;align-items:center;gap:var(--s2);padding:0 var(--s3);height:var(--top);max-width:1080px;margin:0 auto}
.bar b{font-size:var(--fs-l);font-weight:650;flex:1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;display:flex;align-items:center;gap:var(--s2)}
#who{font-size:var(--fs-s);color:var(--muted);min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;max-width:34vw}#sync{width:8px;height:8px;border-radius:50%;background:var(--ok);flex:none}#sync.off{background:var(--bad)}
.outb{background:transparent;color:var(--text-2);border:1px solid var(--line);border-radius:999px;height:34px;min-height:34px;padding:0 12px;font-size:var(--fs-s);font-weight:600;flex:none}
#offl{background:var(--bad-soft);color:var(--bad);font-size:var(--fs-s);padding:6px var(--s3);text-align:center}
.back{background:none;color:var(--text);padding:0 6px 0 0;min-height:36px;font-size:var(--fs-l)}
.helpb{background:var(--surface-2);color:var(--text-2);border:1px solid var(--line);border-radius:50%;width:34px;height:34px;min-height:34px;padding:0;font-size:var(--fs-m);font-weight:600;flex:none}
/* кнопки, поля */
button{font:inherit;font-weight:550;cursor:pointer;border:1px solid var(--line-2);border-radius:var(--r-s);padding:10px 14px;background:var(--surface);color:var(--text);min-height:var(--tap);display:inline-flex;align-items:center;justify-content:center;gap:6px;transition:background .15s var(--ease),border-color .15s,box-shadow .15s,transform .1s;-webkit-tap-highlight-color:transparent}
button:hover{background:var(--surface-2)}button:active{transform:scale(.985)}button:disabled{opacity:.45;cursor:default}
button:focus-visible,a:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible{outline:2px solid var(--ac);outline-offset:2px}
button.pri,button.ok{background:var(--ac);border-color:var(--ac);color:#fff}button.pri:hover,button.ok:hover{background:var(--ac-2)}
button.warn{background:var(--warn-soft);border-color:#f3d9ad;color:var(--warn)}button.danger{background:var(--bad);border-color:var(--bad);color:#fff}
button.ghost{background:transparent;border-color:var(--line-2);color:var(--text-2)}
button.link{background:none;border:0;color:var(--ac);min-height:36px;padding:6px 8px;font-weight:550}
button.sm{padding:6px 10px;min-height:34px;font-size:var(--fs-s)}
button.big,.big2{display:flex;width:100%;font-size:var(--fs-m);min-height:52px;margin-top:var(--s2)}
.ibtn{width:var(--tap);min-width:var(--tap);padding:0;flex:none;color:var(--text-2)}.ibtn svg.i{margin:0}.ibtn.on{background:var(--ac-soft);border-color:var(--ac-line);color:var(--ac)}
input,select,textarea{font:inherit;font-size:var(--fs-m);width:100%;padding:10px 12px;border:1px solid var(--line-2);border-radius:var(--r-s);background:var(--surface);color:var(--text);min-height:var(--tap);transition:border-color .15s,box-shadow .15s}
input:focus,select:focus,textarea:focus{outline:0;border-color:var(--ac);box-shadow:0 0 0 3px var(--ac-soft)}
select{appearance:none;-webkit-appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='16' height='16' fill='none' stroke='%237a8494' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m4 6 4 4 4-4'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 10px center;padding-right:32px}
select:disabled,input:disabled{background-color:var(--surface-2);color:var(--muted)}
textarea{min-height:76px;line-height:1.4}
label.f{display:block;margin:var(--s3) 0 6px;font-size:var(--fs-s);font-weight:550;color:var(--text-2)}
.ck{display:flex;align-items:center;gap:var(--s2);margin:var(--s2) 0;font-size:var(--fs)}.ck input{width:18px;height:18px;min-height:0;margin:0;accent-color:var(--ac)}.ck.sm{display:inline-flex;margin:4px 12px 4px 0;font-size:var(--fs-s)}
/* поверхности */
.pad{padding:var(--s3) var(--s4)}
.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-l);margin:var(--s3);padding:var(--s4);box-shadow:var(--sh-1)}
.card h3{margin:0 0 var(--s2);font-size:var(--fs-m);font-weight:650}
details.card>summary{cursor:pointer;min-height:28px;font-size:var(--fs);font-weight:600;list-style:none;display:flex;align-items:center;gap:var(--s2)}
details.card>summary::-webkit-details-marker{display:none}details.card>summary::after{content:"";margin-left:auto;width:8px;height:8px;border-right:2px solid var(--muted);border-bottom:2px solid var(--muted);transform:rotate(45deg);transition:transform .2s var(--ease)}details.card[open]>summary::after{transform:rotate(-135deg)}
.muted{color:var(--muted);font-size:var(--fs-s)}
.grid{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}.grid2{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}
.grid3{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px;margin-top:6px}.grid3 button{min-height:40px;padding:8px 4px;font-size:var(--fs-s)}
table.t{width:100%;border-collapse:collapse;font-size:var(--fs-s)}table.t td,table.t th{border-bottom:1px solid var(--line);padding:8px 6px;text-align:left;vertical-align:top}table.t th{color:var(--muted);font-weight:550}
.prog{height:8px;background:var(--line);border-radius:99px;overflow:hidden;display:flex}.prog i{display:block;height:100%;background:var(--ac);transition:width .3s var(--ease)}.prog.big{height:10px;margin-top:6px}
.lnk{word-break:break-all;font-size:var(--fs-xs);color:var(--muted)}
/* метки и статусы — спокойные: лёгкий фон + текст того же цвета */
.code{font-family:ui-monospace,"SF Mono",Menlo,Consolas,monospace;font-weight:600;font-size:var(--fs-xs);color:var(--text-2);background:var(--surface-2);border:1px solid var(--line);border-radius:6px;padding:1px 6px;white-space:nowrap}
.pill,.sbadge,.wl,.mchip{display:inline-flex;align-items:center;gap:4px;border-radius:99px;padding:1px 8px;font-size:var(--fs-xs);font-weight:550;line-height:18px;white-space:nowrap;border:1px solid var(--line);background:var(--surface-2);color:var(--text-2)}
.sbadge svg.i,.pill svg.i,.wl svg.i{width:13px;height:13px;margin:0}
.cf{border-radius:6px;padding:0 5px;font-weight:600;border:1px solid transparent}
.fl{display:inline-flex;color:var(--warn)}.fl svg.i{width:15px;height:15px}
.nb{position:absolute;top:-3px;right:calc(50% - 22px);background:var(--bad);color:#fff;font-style:normal;font-size:10px;border-radius:9px;padding:0 5px;font-weight:700;line-height:16px;min-width:16px;text-align:center}.nb.up{background:var(--ac)}
/* нижнее меню */
#nav{position:fixed;left:0;right:0;bottom:0;z-index:8;background:rgba(255,255,255,.96);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px);border-top:1px solid var(--line);display:flex;justify-content:center;padding-bottom:env(safe-area-inset-bottom)}
#nav a{flex:1;max-width:140px;text-align:center;color:var(--muted);text-decoration:none;font-size:11px;font-weight:550;padding:7px 0 6px;height:var(--nav);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px}
#nav a span{display:flex;align-items:center;justify-content:center;font-size:20px;position:relative;width:52px;height:28px;border-radius:99px;transition:background .2s var(--ease)}
#nav a span svg.i{width:21px;height:21px;margin:0}
#nav a.on{color:var(--ac)}#nav a.on span{background:var(--ac-soft)}
/* шторка, всплывашка */
.sheet{position:fixed;inset:0;background:rgba(16,24,40,.38);z-index:10;display:flex;align-items:flex-end;justify-content:center;animation:fade .18s var(--ease)}
.sheet-in{background:var(--surface);width:100%;max-width:640px;max-height:90vh;overflow:auto;border-radius:20px 20px 0 0;padding:var(--s3) var(--s4) calc(var(--s4) + env(safe-area-inset-bottom));box-shadow:var(--sh-3);animation:up .22s var(--ease)}
.sheet-in::before{content:"";display:block;width:36px;height:4px;border-radius:4px;background:var(--line-2);margin:0 auto var(--s3)}
.sheet-in h3{margin:0 0 var(--s2);font-size:var(--fs-l)}
@keyframes fade{from{opacity:0}}@keyframes up{from{transform:translateY(24px);opacity:.6}}
#toast{position:fixed;left:50%;transform:translateX(-50%);width:calc(100% - 24px);max-width:520px;bottom:calc(var(--nav) + 12px + env(safe-area-inset-bottom));z-index:20;background:#18212f;color:#fff;padding:10px 12px 10px 16px;border-radius:var(--r);font-size:var(--fs);display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap;box-shadow:var(--sh-3);animation:up .2s var(--ease)}
#toast span{flex:1;min-width:150px}.tundo{background:rgba(255,255,255,.12);border-color:transparent;color:#fff;min-height:36px;padding:6px 12px}
.fab{position:fixed;right:16px;bottom:calc(var(--nav) + 16px + env(safe-area-inset-bottom));z-index:6;border-radius:99px;padding:0 18px;min-height:48px;background:var(--ac);border-color:var(--ac);color:#fff;font-size:var(--fs);box-shadow:var(--sh-3)}
/* скелетон */
.skel{padding:var(--s3)}.skel i{display:block;height:64px;border-radius:var(--r);margin:0 0 var(--s2);background:linear-gradient(90deg,#eceef2 0,#f6f7f9 40%,#eceef2 80%);background-size:300% 100%;animation:sk 1.3s linear infinite}.skel i:first-child{height:96px}
@keyframes sk{to{background-position:-150% 0}}
/* ===== списки вещей ===== */
.kpis{display:flex;gap:6px;margin:var(--s3) 0 0;padding:0 var(--s3);overflow-x:auto;scrollbar-width:none}.kpis::-webkit-scrollbar{display:none}.kpis>div,.kpis>a{flex:1 0 auto;min-width:88px}
.kpis>div,.kpis>a{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:8px 10px;text-decoration:none;color:var(--text)}
.kpis b{display:block;font-size:var(--fs-m);font-weight:650;letter-spacing:-.01em;white-space:nowrap}.kpis span{font-size:11px;color:var(--muted);display:flex;align-items:center;white-space:nowrap}
.kpis .kpi-link{background:var(--ac-soft);border-color:var(--ac-line)}.kpis .kpi-link span{color:var(--ac)}.kpis svg.i{width:14px;height:14px}
.lbar{position:sticky;top:var(--top);z-index:5;background:rgba(245,246,248,.94);backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);padding:var(--s2) var(--s3) 6px;border-bottom:1px solid transparent}
.lrow{display:flex;gap:6px;align-items:center}
.lsearch{flex:1;min-width:0;position:relative;display:block}.lsearch svg.i{position:absolute;left:11px;top:13px;color:var(--muted);pointer-events:none}.lsearch input{padding-left:36px;background:var(--surface)}
.lsel{position:relative;flex:none;width:var(--tap);height:var(--tap);border:1px solid var(--line-2);border-radius:var(--r-s);background:var(--surface);display:flex;align-items:center;justify-content:center;color:var(--text-2)}
.lsel select{position:absolute;inset:0;opacity:0;cursor:pointer;min-height:0}
.lchips{display:flex;gap:6px;overflow-x:auto;padding:var(--s2) 0 2px;scrollbar-width:none;-webkit-overflow-scrolling:touch}.lchips::-webkit-scrollbar{display:none}
.chip{flex:none;display:inline-flex;align-items:center;gap:0;background:var(--surface);border:1px solid var(--line-2);border-radius:99px;padding:0 12px;font-size:var(--fs-s);font-weight:550;min-height:34px;color:var(--text-2);white-space:nowrap}
.chip svg.i{width:15px;height:15px;margin-right:6px}.chip i{font-style:normal;color:var(--muted);margin-left:5px;font-weight:500}
.chip.on{background:var(--text);border-color:var(--text);color:#fff}.chip.on i{color:rgba(255,255,255,.7)}
.chip.ps.me:not(.on){border-color:#f3c9ad;color:var(--me);background:var(--me-soft)}
.lsep{flex:none;width:1px;background:var(--line-2);margin:6px 2px}
.counts{display:flex;flex-wrap:nowrap;overflow-x:auto;gap:6px;padding:6px 0 2px;scrollbar-width:none}.counts::-webkit-scrollbar{display:none}
.cnt,.counts.stages .cnt{flex:none;white-space:nowrap;background:transparent;border:0;border-radius:var(--r-s);padding:4px 10px;font-size:var(--fs-s);font-weight:500;color:var(--text-2);min-height:32px;box-shadow:none}
.cnt b{font-weight:650;color:var(--text);margin-right:5px;display:inline;font-size:var(--fs-s)}
.counts.stages .cnt.on{background:var(--surface);color:var(--text);box-shadow:var(--sh-1);outline:1px solid var(--line-2)}.counts.stages .cnt.mine{color:var(--me)}.counts.stages .cnt.mine.on{background:var(--me-soft);outline-color:#f3c9ad}
.lmore{margin-top:2px}.lmore>summary{list-style:none;cursor:pointer;display:inline-flex;align-items:center;gap:6px;font-size:var(--fs-s);color:var(--text-2);font-weight:550;padding:4px 2px;min-height:30px}.lmore>summary::-webkit-details-marker{display:none}
.lmore svg.i{width:15px;height:15px}.nb2{font-style:normal;background:var(--ac);color:#fff;border-radius:99px;font-size:10px;padding:0 6px;line-height:16px}
.lmore[open]{background:var(--surface);border:1px solid var(--line);border-radius:var(--r);padding:4px 10px 10px;margin-top:6px}
.filters{padding:6px 0;display:flex;flex-wrap:wrap;gap:6px}
.cgrp{margin:var(--s2) var(--s3) 0}
.cgrp>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:var(--s2);padding:10px 4px 6px;font-size:var(--fs-s);font-weight:650;color:var(--text-2);text-transform:none;letter-spacing:.01em;user-select:none}
.cgrp>summary::-webkit-details-marker{display:none}.cgrp>summary svg.i{width:16px;height:16px;color:var(--muted)}
.cgn{font-style:normal;font-weight:550;color:var(--muted);background:var(--surface);border:1px solid var(--line);border-radius:99px;padding:0 7px;font-size:var(--fs-xs);line-height:18px}
.cgs{margin-left:auto;font-weight:600;color:var(--text-2);font-variant-numeric:tabular-nums}.cgrp>summary .cgc{margin-left:auto;transition:transform .2s var(--ease)}.cgs+.cgc{margin-left:6px!important}
.cgrp:not([open])>summary .cgc{transform:rotate(-90deg)}
.list{background:var(--surface);border:1px solid var(--line);border-radius:var(--r-l);overflow:hidden;box-shadow:var(--sh-1)}
.row{display:flex;gap:var(--s3);align-items:center;padding:8px 12px;min-height:60px;cursor:pointer;border-top:1px solid var(--line);position:relative;transition:background .12s}
.list>.row:first-child{border-top:0}.row:hover{background:var(--surface-2)}
.row .th{width:44px;height:44px;border-radius:10px;background:var(--surface-2);border:1px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;color:var(--muted);overflow:hidden}
.row .th img{width:100%;height:100%;object-fit:cover;display:block}
.row .mid{flex:1;min-width:0}
.nm{display:block;font-size:var(--fs);font-weight:550;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.sub{display:flex;align-items:center;gap:6px;margin-top:3px;overflow:hidden;white-space:nowrap;-webkit-mask-image:linear-gradient(90deg,#000 88%,transparent);mask-image:linear-gradient(90deg,#000 88%,transparent)}
.sub .sbadge,.sub .pill{margin:0}
.rt{flex:none;text-align:right}.pr{font-size:var(--fs);font-weight:650;font-variant-numeric:tabular-nums;white-space:nowrap}.pr.rough{color:var(--text-2);font-weight:550;font-size:var(--fs-s)}.pr.sold{color:var(--ok)}
.row.my::before{content:"";position:absolute;left:0;top:10px;bottom:10px;width:3px;border-radius:0 3px 3px 0;background:var(--me)}
.stc{font-size:var(--fs-xs);color:var(--text-2);overflow:hidden;text-overflow:ellipsis}.stc.me{color:var(--me);font-weight:600}.stc.sell{color:var(--ok)}.stc.done{color:var(--muted)}
.rck{width:22px;height:22px;border-radius:7px;border:1.5px solid var(--line-2);flex:none;display:flex;align-items:center;justify-content:center;color:transparent;background:var(--surface);transition:all .12s}
.rck svg.i{width:14px;height:14px;stroke-width:3}.rck.on{background:var(--ac);border-color:var(--ac);color:#fff}.row.sel{background:var(--ac-soft)}
.list.gv{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:var(--s2);background:transparent;border:0;box-shadow:none;overflow:visible}
.gcard{flex-direction:column;align-items:stretch;padding:0;gap:0;border:1px solid var(--line)!important;border-radius:var(--r);background:var(--surface);overflow:hidden;min-height:0}
.gcard .th{width:100%;height:auto;aspect-ratio:4/3;border-radius:0;border:0;border-bottom:1px solid var(--line)}.gcard .th svg.i{width:28px;height:28px}
.gcard .gb{padding:8px 10px 10px;display:flex;flex-direction:column;gap:4px;min-width:0}.gcard .nm{white-space:normal;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;font-size:var(--fs-s);min-height:2.6em}
.gl{display:flex;align-items:center;justify-content:space-between;gap:6px}.gcard .stc{white-space:nowrap}.gcard .sbadge{align-self:flex-start}
.gcard .rck{position:absolute;top:8px;left:8px;z-index:1}.gcard.my::before{top:0;bottom:auto;left:0;right:0;width:auto;height:3px;border-radius:0}
.empty-s{display:flex;flex-direction:column;align-items:center;gap:6px;padding:var(--s6) var(--s4);color:var(--muted)}.empty-s svg.i{width:28px;height:28px}.empty-s b{color:var(--text-2)}
.selbar{position:fixed;left:50%;transform:translateX(-50%);width:calc(100% - 16px);max-width:640px;bottom:calc(var(--nav) + 8px + env(safe-area-inset-bottom));z-index:9;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-l);box-shadow:var(--sh-3);padding:8px 10px;animation:up .2s var(--ease)}
.sb1{display:flex;align-items:center;gap:var(--s2);font-size:var(--fs)}.sb1 b{flex:1}.sb1 .ibtn{border:0;min-height:36px;height:36px}
.sb2{display:flex;gap:var(--s2);margin-top:6px}.sb2 button{flex:1}
body.selon .fab{display:none}body.selon #toast{bottom:calc(var(--nav) + 120px)}
.catpick{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2)}.catpick button{justify-content:flex-start;min-height:52px}
.ctab td{vertical-align:middle}.ctab input{min-height:36px;padding:6px 8px;font-size:var(--fs-s)}
/* карточка вещи */
.photos{display:flex;overflow-x:auto;gap:6px;background:#0f141c;padding:6px;-webkit-overflow-scrolling:touch;min-height:120px;align-items:center;scroll-snap-type:x mandatory}
.photos img,.photos video{height:62vw;max-height:420px;border-radius:10px;flex:none;max-width:92vw;object-fit:cover;scroll-snap-align:center}
.photos .empty{color:#9aa4b2;padding:30px 14px;text-align:center;width:100%}
.ptag{position:relative;flex:none}.ptag span{position:absolute;left:8px;bottom:8px;background:rgba(15,20,28,.7);color:#fff;font-size:var(--fs-xs);padding:2px 8px;border-radius:99px}
.shot{display:flex;align-items:center;gap:var(--s2);padding:10px 0;border-bottom:1px solid var(--line);flex-wrap:wrap}.shot:last-child{border-bottom:0}
.shot .st{width:24px;display:flex;justify-content:center}.shot .lb{flex:1;min-width:0}.shot button{min-height:40px}
.shot .ex{width:52px;height:40px;border-radius:8px;background:var(--surface-2);object-fit:contain;cursor:pointer}
.sbtn{font-weight:600;min-height:52px;border:1px solid var(--line-2)}.sbtn.cur{box-shadow:0 0 0 2px var(--text) inset}
.flags{display:flex;flex-wrap:wrap;gap:6px}
.flag{background:var(--surface);border:1px solid var(--line-2);border-radius:99px;padding:6px 12px;font-size:var(--fs-s);min-height:36px}.flag.on{background:var(--warn-soft);border-color:#f3d9ad;color:var(--warn)}
.prices{display:grid;grid-template-columns:1fr 1fr 1fr;gap:6px}
.src{font-size:var(--fs-s);color:var(--text-2);margin:4px 0}
.log{font-size:var(--fs-s);border-bottom:1px solid var(--line);padding:8px 0;display:flex;gap:var(--s2);align-items:center}.log .t{flex:1}.log.undone{opacity:.45;text-decoration:line-through}
.up{font-size:var(--fs-s);margin:6px 0;padding:8px 10px;background:var(--ac-soft);border-radius:var(--r-s)}
.stepper{display:flex;gap:4px;margin:var(--s3) 0 var(--s2);overflow-x:auto}
.stp{flex:1;min-width:44px;text-align:center;border:1px solid var(--line);border-radius:var(--r-s);padding:5px 2px;font-size:10px;color:var(--muted);background:var(--surface-2)}
.stp b{display:block;font-size:var(--fs-s);font-weight:600}.stp.done{background:var(--ok-soft);border-color:#cfe9d7;color:var(--ok)}.stp.cur{color:#fff;font-weight:700}.stp.off{opacity:.35;text-decoration:line-through}.stepper.mini{flex-wrap:wrap}
.sbx{flex:1;min-width:30%;border:1px solid var(--line);border-radius:var(--r);padding:8px 10px;text-decoration:none;color:var(--text);display:flex;flex-direction:column;font-size:var(--fs-s);background:var(--surface)}
.sbx b{font-size:var(--fs-m)}.sbx i{font-style:normal;color:var(--muted);font-size:var(--fs-xs)}
.whose{border-left:3px solid;background:var(--surface-2);border-radius:var(--r-s);padding:10px 12px;margin-top:var(--s2)}.whose .nxt{margin:4px 0;font-size:var(--fs-m)}
.hello .earn,.earn{display:grid;grid-template-columns:1fr 1fr;gap:var(--s2);margin-top:var(--s2)}
.earn div{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-s);padding:8px 10px;font-size:var(--fs-xs);color:var(--muted)}.earn b{display:block;font-size:var(--fs-l);color:var(--text);font-weight:650}
.act{padding:10px 2px;border-bottom:1px solid var(--line);cursor:pointer}.act:last-child{border-bottom:0}.act .nx{font-size:var(--fs-s);color:var(--text-2);margin-top:2px}
.adv{background:var(--warn-soft);border-radius:var(--r-s);padding:8px 10px;font-size:var(--fs-s);margin-top:6px}
.warnc{background:var(--warn-soft);border-color:#f3d9ad;cursor:pointer}.adminc{border:1px dashed var(--ac-line);background:#fbfcff}
.prange{font-size:var(--fs-l);margin:var(--s2) 0}.an{font-size:var(--fs-s);padding:6px 0;border-bottom:1px solid var(--line);word-break:break-word}
.brief{background:var(--ac-soft);border-radius:var(--r-s);padding:10px;margin-bottom:6px;white-space:pre-wrap}
.draft{background:var(--surface-2);border-radius:var(--r-s);padding:10px}
.hint{font-size:var(--fs-s);color:var(--ac);cursor:pointer}
.conf{border:1px solid #f3d9ad;background:var(--warn-soft);border-radius:var(--r-s);padding:10px;margin:6px 0;font-size:var(--fs-s)}
.drafted{background:#fffcf0!important;border-color:#e9c46a!important}.dnote{background:#fffcf0;border:1px solid #f1dfa6;border-radius:var(--r-s);padding:8px 10px;margin:var(--s2) 0;font-size:var(--fs-s)}
/* загрузка */
.qtot{margin:var(--s3) 0 4px;font-size:var(--fs)}.qhead{font-size:var(--fs-m);font-weight:600}
.qr{display:flex;gap:10px;align-items:center;padding:8px 0;border-bottom:1px solid var(--line)}.qi{display:flex;color:var(--muted)}.qm{flex:1;min-width:0}
.qn{font-size:var(--fs-s);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.qs{font-size:var(--fs-xs);color:var(--muted);margin-top:2px}
.qr.error .qs,.qr.rejected .qs{color:var(--bad)}.qr.waiting .qs{color:var(--warn)}
.honest{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-s);padding:10px 12px;margin-top:var(--s2);font-size:var(--fs-s);line-height:1.4}
/* разбор */
.rgh{display:flex;flex-wrap:wrap;align-items:center;gap:6px;margin-bottom:var(--s2)}
.tiles{display:grid;grid-template-columns:repeat(auto-fill,minmax(140px,1fr));gap:var(--s2)}
.tile{border:2px solid transparent;border-radius:var(--r);background:var(--surface-2);overflow:hidden;cursor:pointer;margin:0;box-shadow:0 0 0 1px var(--line)}
.tile.sel{border-color:var(--ac);background:var(--ac-soft)}
.ti{height:120px;background:#e5e8ee center/cover no-repeat;position:relative;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.vb{position:absolute;left:6px;top:6px;background:rgba(15,20,28,.7);color:#fff;font-size:11px;padding:1px 6px;border-radius:99px}
.ck2{position:absolute;right:6px;top:6px;width:24px;height:24px;border-radius:8px;background:rgba(255,255,255,.92);border:1.5px solid var(--ac);text-align:center;font-weight:700;color:var(--ac);line-height:20px;font-size:13px}
.zoom{position:absolute;right:6px;bottom:6px;background:rgba(15,20,28,.6);color:#fff;border-radius:8px;padding:2px 6px;text-decoration:none;font-size:var(--fs-s);display:flex}
.tc{font-size:var(--fs-xs);padding:6px 8px;line-height:1.35}
.rbar,.rbar2{position:fixed;left:50%;transform:translateX(-50%);width:calc(100% - 16px);max-width:760px;bottom:calc(var(--nav) + 8px + env(safe-area-inset-bottom));z-index:9;background:var(--surface);color:var(--text);border:1px solid var(--line-2);border-radius:var(--r-l);padding:10px 12px;box-shadow:var(--sh-3)}
.rbt{font-size:var(--fs-s);margin-bottom:6px}.rbt a{color:var(--ac);margin-left:var(--s2);cursor:pointer}
.rbb{display:grid;grid-template-columns:1fr 1fr;gap:6px}.rbb button{min-height:42px;font-size:var(--fs-s)}
.legend .wl{margin:2px}.stg p{margin:6px 0}.stg th{width:32%;color:var(--muted);font-weight:550}
.arrow{text-align:center;color:var(--muted);margin:-4px 0}.mapimg{width:100%;border-radius:var(--r);margin-top:6px}
.pj{margin:10px 0 14px;padding-bottom:12px;border-bottom:1px solid var(--line)}.pjs{margin-top:6px}
/* простой режим: главная, знакомство, подсказки */
.big2{background:var(--surface);color:var(--text);border:1px solid var(--line);border-radius:var(--r-l);margin:var(--s2) var(--s3);width:calc(100% - 24px);text-align:left;padding:14px 16px;box-shadow:var(--sh-1);font-weight:600;text-decoration:none;display:block}
.big2 small{display:block;font-weight:400;font-size:var(--fs-s);color:var(--muted);margin-top:2px}
a.big2.lnk{margin:6px 0;width:100%;background:var(--ac-soft);border-color:var(--ac-line);color:var(--ac-2)}
.donow{display:flex;flex-direction:column;align-items:flex-start;width:calc(100% - 24px);margin:var(--s3);padding:18px;border-radius:var(--r-l);background:var(--ac);border-color:var(--ac);color:#fff;text-align:left;box-shadow:0 6px 18px rgba(58,92,204,.25);min-height:96px}
.donow:hover{background:var(--ac-2)}.donow .dn1{display:flex;align-items:center;gap:8px;font-size:var(--fs-xl);font-weight:700;letter-spacing:-.01em}.donow .dn2{display:block;font-size:var(--fs);font-weight:450;margin-top:6px;line-height:1.35;opacity:.92}.donow .dn3{display:block;font-size:var(--fs-l);font-weight:650;margin-top:6px}
.donow.idle{background:var(--ok-soft);color:#14532d;box-shadow:none;border:1px solid #cfe9d7}.donow.idle:hover{background:#e3f4e8}.donow.idle .dn2{color:#245b37}
.onb{padding:var(--s4) var(--s4) 96px;text-align:center;max-width:520px;margin:0 auto}.onb-skip{text-align:right}.onb-skip a{color:var(--text-2);font-size:var(--fs);padding:8px;display:inline-block;text-decoration:none}
.onb-pic{border-radius:24px;height:180px;display:flex;align-items:center;justify-content:center;gap:14px;margin:6px 0 var(--s4);color:var(--ac)}
.onb-pic span{font-size:56px;line-height:1;display:flex}.onb-pic span:nth-child(2){font-size:72px}.onb-pic svg.i{width:56px;height:56px;stroke-width:1.5}.onb-pic span:nth-child(2) svg.i{width:76px;height:76px}
.onb-hi{font-size:var(--fs-xl);font-weight:700}.onb-step{color:var(--muted);font-size:var(--fs-s);margin-top:4px}.onb h2{font-size:var(--fs-2xl);margin:4px 0 var(--s2);letter-spacing:-.02em}.onb p{font-size:var(--fs-m);line-height:1.5;text-align:left;color:var(--text-2)}
.dots{margin:var(--s3) 0}.dots i{display:inline-block;width:8px;height:8px;border-radius:99px;background:var(--line-2);margin:0 4px;transition:width .2s var(--ease)}.dots i.on{background:var(--ac);width:24px}
.onb-btns button{font-size:var(--fs-m);min-height:52px}
.tips .tip{display:flex;gap:var(--s3);align-items:center;padding:10px 0;border-bottom:1px solid var(--line)}
.tips .tip img{width:72px;height:54px;object-fit:contain;background:var(--surface-2);border-radius:var(--r-s);flex:none}.tips .tpic{width:72px;height:54px;display:flex;align-items:center;justify-content:center;background:var(--surface-2);border-radius:var(--r-s);flex:none;color:var(--ac)}.tips .tpic svg.i{width:28px;height:28px}
.tips .tip b{font-size:var(--fs)}
.now{display:flex;gap:var(--s3);align-items:flex-start;margin-top:var(--s3);padding:12px 14px;border-radius:var(--r);background:var(--surface-2);border:1px solid var(--line)}.now .ni{display:flex;color:var(--ac)}.now .ni svg.i{width:22px;height:22px}.now b{font-size:var(--fs-m)}
.now.me{background:var(--me-soft);border-color:#f3c9ad}.now.me .ni{color:var(--me)}.now.done{background:var(--ok-soft);border-color:#cfe9d7}.now.done .ni{color:var(--ok)}
.deal .dealbtns{display:grid;gap:var(--s2)}.deal .dealbtns button{font-size:var(--fs-m);min-height:52px;justify-content:flex-start}
.dealnow{background:var(--me-soft);border-radius:var(--r-s);padding:10px 12px;margin-bottom:var(--s2);font-size:var(--fs-m)}
.callc{border-color:#cfe9d7}.callbtn{display:flex;align-items:center;justify-content:center;gap:8px;background:var(--ac);color:#fff;border-radius:var(--r);padding:12px;font-size:var(--fs-m);font-weight:650;text-decoration:none;margin:10px 0 4px}
.donec{text-align:center}.donec h2{margin:4px 0;font-size:var(--fs-2xl);letter-spacing:-.02em}.bigok{display:flex;justify-content:center;color:var(--ok);margin:var(--s2) 0}.bigok svg.i{width:64px;height:64px;stroke-width:1.6}
ol.next{padding-left:20px;margin:6px 0}ol.next li{margin:6px 0;line-height:1.4}
.pst{display:block;font-size:var(--fs-s);color:var(--text-2);margin-top:3px}
.simple .hello a,#home a#howBtn{color:var(--ac)}
.grp h3{font-size:var(--fs);margin:var(--s2) 0 0}
/* прикидка */
.rrow{display:flex;gap:var(--s2);align-items:flex-start;background:var(--surface);border:1px solid var(--line);border-radius:var(--r);margin:6px var(--s3);padding:10px}
.rrow.sel{border-color:var(--ac-line);background:var(--ac-soft)}
.rrow .th,.rrow2 .th{width:48px;height:48px;border-radius:10px;background:var(--surface-2) center/cover no-repeat;border:1px solid var(--line);flex:none;display:flex;align-items:center;justify-content:center;color:var(--muted)}
.rsel{padding:14px 2px 0;flex:none}.rsel input{width:20px;height:20px;min-height:0;accent-color:var(--ac)}
.rmid{flex:1;min-width:0}.rname{font-size:var(--fs);font-weight:550;line-height:1.3;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.rctl{display:flex;gap:4px;align-items:center;margin-top:6px;flex-wrap:nowrap}
.rin{width:96px!important;flex:none;padding:6px 8px!important;font-size:var(--fs)!important;min-height:38px}.rin.bad{border-color:var(--bad)!important;background:var(--bad-soft)}
.bk{min-height:38px;width:36px;padding:0;background:var(--surface);border:1px solid var(--line-2);border-radius:var(--r-s);flex:none}.bk svg.i{margin:0}
.rhint{font-size:var(--fs-xs);margin-top:4px;line-height:1.35}
.bklegend{display:flex;flex-wrap:wrap;gap:4px 12px;font-size:var(--fs-s);color:var(--text-2);margin:4px 0 6px}
.rbar2 .rb1{display:flex;justify-content:space-between;align-items:center;margin-bottom:6px}
.roughc{text-align:center}.rtot{font-size:var(--fs-2xl);font-weight:700;letter-spacing:-.02em;color:var(--text);margin:4px 0;font-variant-numeric:tabular-nums}
.rnote{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-s);padding:10px 12px;font-size:var(--fs-s);text-align:left;line-height:1.4}
.rgrp h3{display:flex;align-items:baseline;gap:6px;flex-wrap:wrap}.rgsum{margin-left:auto;font-size:var(--fs);color:var(--text-2);font-weight:600;font-variant-numeric:tabular-nums}
.rrow2{display:flex;gap:10px;align-items:center;padding:8px 0;border-top:1px solid var(--line);cursor:pointer}
.rrow2 .mid{flex:1;min-width:0;font-size:var(--fs)}.rr{flex:none;font-weight:600;font-size:var(--fs-s);text-align:right;font-variant-numeric:tabular-nums}
.big2.roughb{background:var(--ac-soft);border-color:var(--ac-line);color:var(--ac-2)}.roughl{display:block;margin-top:var(--s2);color:var(--ac-2);text-decoration:none;background:var(--ac-soft);border-radius:var(--r-s);padding:8px 10px}
.rough1{border-left:3px solid var(--ac)}
.rrow .rctl{flex-wrap:wrap}.rrow .rin{flex:1 1 100%;width:auto!important;min-width:0}.rrow .bk{flex:1 1 0;width:auto;min-width:0}
.rbar2 .rctl .rin{flex:1 1 auto;width:auto!important;min-width:0}.rbar2 .bk{flex:none}
.nw{white-space:nowrap}.rbon #toast{bottom:calc(var(--nav) + 160px)}
/* «Площадки» */
.ob .sum{margin:6px 0;font-size:var(--fs)}
.bubble{border-radius:14px;padding:8px 12px;margin:6px 0;white-space:pre-wrap;max-width:88%;font-size:var(--fs)}
.bubble.in{background:var(--surface-2);border:1px solid var(--line)}.bubble.out{background:var(--ac-soft);margin-left:auto}
.pl{white-space:pre-wrap;font-size:var(--fs-xs);background:var(--surface-2);padding:8px;border-radius:var(--r-s);max-height:240px;overflow:auto}
.tabs{display:flex;gap:4px;flex-wrap:wrap}.tabs button{margin:2px 0}
.iss{padding:8px 10px;border-radius:var(--r-s);margin:4px 0;font-size:var(--fs-s)}
.iss.error{background:var(--bad-soft);border-left:3px solid var(--bad)}.iss.warn{background:var(--warn-soft);border-left:3px solid #e0a43a}.iss.info{background:var(--ac-soft);border-left:3px solid var(--ac)}
.reason{font-size:var(--fs-s);margin:3px 0}
.kitf{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-s);padding:10px;margin:6px 0;white-space:pre-wrap}
.kph{display:inline-block;position:relative;margin:3px}.kph img{width:84px;height:84px;object-fit:cover;border-radius:var(--r-s)}.kph b{position:absolute;left:4px;top:4px;background:rgba(15,20,28,.7);color:#fff;border-radius:99px;padding:0 6px;font-size:var(--fs-xs)}
.dg h2{font-size:var(--fs-l);margin:var(--s3) 0 6px}.dg table{width:100%}
.lintbox{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);padding:10px;margin:var(--s2) 0}
.search{padding:0 var(--s3) var(--s2);display:flex;gap:6px}.search input{flex:1}
/* широкий экран (Сергей с компьютера) */
@media (min-width:760px){
  :root{--top:56px}
  #view{max-width:1080px;margin:0 auto}
  .card,.big2,.donow{max-width:760px;margin-left:auto;margin-right:auto}.big2,.donow{width:calc(100% - 24px)}
  .lbar,.cgrp,.kpis{max-width:1080px;margin-left:auto;margin-right:auto}.lbar{padding-left:var(--s4);padding-right:var(--s4)}.cgrp{padding:0 var(--s4)}.kpis{padding:0 var(--s4)}
  .row{padding:8px 16px}.photos img,.photos video{height:380px}
  .rbb{grid-template-columns:repeat(4,1fr)}
  .catpick{grid-template-columns:repeat(3,1fr)}
}
@media (max-width:380px){.grid2{grid-template-columns:1fr}}
@media (prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}}
.lcats{padding-top:2px}
/* заявки */
.appsh{display:flex;align-items:center;justify-content:space-between;gap:var(--s3)}.appsh .ck{margin:0;flex:none}
.appt{display:flex;align-items:center;gap:var(--s2);flex-wrap:wrap}.appt b{font-size:var(--fs-m)}
.appd{display:flex;gap:var(--s4);flex-wrap:wrap;margin-top:6px;font-size:var(--fs-s);color:var(--text-2)}.appd span{display:inline-flex;align-items:center;gap:6px}.appd svg.i{width:15px;height:15px;color:var(--muted)}
.appw{margin:8px 0 0;font-size:var(--fs);line-height:1.4}
.appa{display:grid;grid-template-columns:80px 1fr auto;gap:var(--s2);align-items:end;margin-top:var(--s3)}.appa label.f{grid-column:1/-1;margin:0}.appa input{text-transform:uppercase}
/* «Продажа»: кто выставляет, цена и аналоги, «Выставлю сам» */
.seg{display:flex;gap:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r);padding:3px}
.seg button{flex:1;min-height:40px;border:0;background:none;color:var(--text-2);border-radius:9px;display:inline-flex;align-items:center;justify-content:center;gap:6px;font-weight:550}
.seg button.on{background:var(--surface);color:var(--text);box-shadow:var(--sh-1)}.seg svg.i{width:16px;height:16px}
.sm1{font-size:var(--fs-s);margin-top:8px;line-height:1.4}
.card h3 svg.i{width:18px;height:18px;color:var(--muted);vertical-align:-3px;margin-right:6px}
.p3{display:grid;grid-template-columns:repeat(3,1fr);gap:6px}.p3 div{background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-s);padding:8px 10px}
.p3 span{display:block;font-size:var(--fs-xs);color:var(--muted)}.p3 b{font-size:var(--fs-m);white-space:nowrap}.p3 div:first-child{background:var(--ac-soft);border-color:var(--ac-line)}.p3 div:first-child b{color:var(--ac-2)}
.pdec{margin-top:var(--s3)}.pnow{font-size:var(--fs);display:flex;align-items:center;gap:6px;margin-bottom:8px}.pnow svg.i{color:var(--ok);width:18px;height:18px}
.prow{display:flex;gap:6px;align-items:stretch}.prow input{flex:1;min-width:0}.prow button{flex:none;white-space:nowrap}
.phist{margin-top:8px;font-size:var(--fs-s)}.phist summary{cursor:pointer;color:var(--text-2);display:flex;align-items:center;gap:6px;list-style:none;min-height:32px}.phist summary::-webkit-details-marker{display:none}
.phist summary svg.i{width:15px;height:15px}.phist div{display:flex;justify-content:space-between;gap:8px;padding:5px 0;border-top:1px solid var(--line)}.phist small{color:var(--muted);white-space:nowrap}.phist .undone span{text-decoration:line-through;color:var(--muted)}
.anh{display:flex;justify-content:space-between;align-items:baseline;margin:var(--s4) 0 4px}.anh .muted{font-size:var(--fs-s)}
.anl{border:1px solid var(--line);border-radius:var(--r);overflow:hidden}
.anr{display:flex;gap:10px;align-items:center;padding:8px 10px;border-top:1px solid var(--line);color:var(--text);text-decoration:none;min-height:56px}.anl>.anr:first-child{border-top:0}
.anr:active{background:var(--surface-2)}.ath{position:relative;width:44px;height:44px;border-radius:8px;background:var(--surface-2);flex:none;display:flex;align-items:center;justify-content:center;overflow:hidden;color:var(--muted)}
.ath img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.ath svg.i{width:18px;height:18px}
.atx{flex:1;min-width:0;display:flex;flex-direction:column}.atx b{font-size:var(--fs-s);font-weight:600;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.atx small{font-size:11.5px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
.ast{display:inline-flex;align-items:center;gap:4px}.ast svg.i{width:12px;height:12px}.ast.warn{color:var(--warn)}.ast.bad{color:var(--bad)}
.apr{display:flex;align-items:center;gap:6px;font-weight:650;font-size:var(--fs-s);white-space:nowrap}.apr svg.i{width:14px;height:14px;color:var(--muted)}
.anr.dead{background:var(--surface-2)}.anr.dead .atx b,.anr.dead .apr{color:var(--muted);text-decoration:line-through}.anr.dead .ath{opacity:.5}
.aadm{display:flex;gap:6px;padding:0 10px 8px 64px;border-top:0}.aadm .sm{min-height:30px;font-size:var(--fs-xs)}
.slink{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.slink a{display:inline-flex;align-items:center;gap:6px}.slink .sm{margin-left:auto}
.sstat{display:flex;gap:6px;margin-top:var(--s3);align-items:flex-end}.sstat label{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;background:var(--surface-2);border:1px solid var(--line);border-radius:var(--r-s);padding:6px 4px}
.sstat label svg.i{width:15px;height:15px;color:var(--muted)}.sstat input{width:100%;border:0;background:none;text-align:center;font-weight:650;font-size:var(--fs-m);padding:2px;min-height:28px}
.sstat span{font-size:11px;color:var(--muted)}.sstat button{flex:none;align-self:stretch}
.stext{margin-top:var(--s3);border-top:1px solid var(--line);padding-top:8px}.stext summary{cursor:pointer;font-weight:600;display:flex;align-items:center;gap:6px;min-height:36px;list-style:none}.stext summary::-webkit-details-marker{display:none}.stext summary svg.i{width:16px;height:16px;color:var(--muted)}
.g2{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.tip{display:flex;gap:10px;align-items:flex-start;padding:9px 0;border-top:1px solid var(--line);font-size:var(--fs);line-height:1.4;cursor:pointer;margin:0}.tipsc h3+.tip{border-top:0}
.tip input{margin-top:3px;flex:none;width:18px;height:18px}.tip.fix span::before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--bad);margin-right:7px;vertical-align:2px}
.tip.info span{color:var(--text-2)}.tip.done span{color:var(--muted);text-decoration:line-through}.tip.done span::before{display:none}
.kitb{width:100%;margin-top:var(--s3);gap:8px}.kitf.pre{white-space:pre-wrap;max-height:180px;overflow:auto}
.kph{display:flex;gap:6px;flex-wrap:wrap}.kph span{position:relative;width:64px;height:64px;border-radius:8px;overflow:hidden;background:var(--surface-2)}.kph img{width:100%;height:100%;object-fit:cover}
.kph i{position:absolute;left:4px;top:4px;font-style:normal;font-size:11px;font-weight:700;background:rgba(16,24,40,.75);color:#fff;border-radius:6px;padding:0 5px}
.lnext{text-align:center;padding:10px 0 24px}.lnext .link{font-size:var(--fs-s)}
.turn{margin-top:6px;font-size:var(--fs-s);color:var(--text-2)}.turn.me{color:var(--me);font-weight:600}.turn .late{display:inline-block;margin-left:2px;padding:0 8px;border-radius:99px;background:var(--warn-soft);border:1px solid #f3d9ad;color:var(--warn);font-size:var(--fs-xs);font-weight:550;line-height:18px}
.row .mid .turn{margin-top:2px}.gcard .gb .turn{margin-top:0;font-size:var(--fs-xs)}
a.btnlink{display:inline-flex;align-items:center;justify-content:center;gap:6px;min-height:34px;padding:6px 10px;border:1px solid var(--line-2);border-radius:var(--r-s);background:var(--surface);color:var(--text);font-size:var(--fs-s);font-weight:550;text-decoration:none}
ol.pubsteps{list-style:none;padding:0;margin:var(--s3) 0 0}.pst{display:flex;gap:var(--s3);align-items:flex-start;padding:var(--s3) 0;border-top:1px solid var(--line)}.pst:first-child{border-top:0}
.pst .pck{flex:none;width:var(--tap);min-width:var(--tap);padding:0;border-radius:50%;color:transparent;background:var(--surface)}.pst .pck svg.i{margin:0}.pst.done .pck{background:var(--ok);border-color:var(--ok);color:#fff}
.pst .pbd{flex:1;min-width:0}.pst .pact{display:flex;flex-wrap:wrap;gap:var(--s2);margin-top:6px;align-items:center}.pst .pact input{flex:1 1 100%}.pst.done .pbd>b{color:var(--muted);text-decoration:line-through}
details.pcats{margin-top:var(--s2)}
.wl.wlok{border-left:6px solid #2e7d32}.wsg{margin-top:6px}.wsg:empty{display:none}#wown{margin:6px 0}
/* Лайтбокс — только div: span.lb в списке кадров это подпись, не чёрный занавес на весь экран. */
div.lb{position:fixed;inset:0;z-index:99;background:rgba(0,0,0,.9);display:flex;flex-direction:column;align-items:center;justify-content:center;gap:12px}div.lb img{max-width:100%;max-height:85vh}.ptag img[data-f]{cursor:zoom-in}
/* без встроенного атрибута стиля в HTML: строгий CSP его не разрешает */
a.ok.big{text-decoration:none}
/* Экраны денег: слой поверх кабинета, пока маршрут не вшит в общий клиент. */
.money-layer{position:fixed;inset:0;z-index:40;overflow:auto;background:var(--bg);padding-bottom:24px}
.money-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;min-height:52px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--line)}
.money-bar b{font-size:18px;font-weight:700}
.money-body{max-width:720px;margin:0 auto}
.money-body .big{margin:12px}
.money-item{display:block;text-decoration:none;color:inherit;font-weight:600}
.money-lead{border-color:var(--ac-line);background:var(--ac-soft)}
.money-num{font-size:28px;font-weight:700;letter-spacing:-.02em}
.money-discount{font-weight:650}
.money-debt{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:8px 0;border-top:1px solid var(--line)}
.money-debt:first-child{border-top:0}
.hello-title{font-size:20px;font-weight:700}
.hello-title-lg{font-size:21px;font-weight:700}
.item-title{font-size:19px;font-weight:600}
.buyer-name{font-size:18px}
.done-line{font-size:17px}
.fine{font-size:12px}
.mark-ok{color:#2e7d32}
.mark-bad{color:#b71c1c}
.mark-hold{color:#b26a00}
.btn-wide{width:100%}
.btn-drop{width:100%;font-size:19px}
.gap-6{margin-top:6px}
.gap-8{margin-top:8px}
.gap-10{margin-top:10px}
.gap-12{margin-top:12px}
.flush{margin-top:0}
.flush-bottom{margin-bottom:0}
.follow{margin:6px 0 0}
.t.owners{margin-top:8px}
.screen-end{height:20px}
.screen-end-md{height:30px}
.screen-end-lg{height:40px}
.screen-end-bar{height:150px}
.draft-body{white-space:pre-wrap;margin-top:6px}
.pre-body{white-space:pre-wrap}
/* «Куда выставить» и лимиты: слой поверх кабинета, пока маршрут не вшит в общий клиент. */
.places-layer{position:fixed;inset:0;z-index:41;overflow:auto;background:var(--bg);padding-bottom:24px}
.places-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;min-height:52px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--line)}
.places-bar b{font-size:18px;font-weight:700}
.places-body{max-width:720px;margin:0 auto;padding:0 12px 24px}
.places-tab{display:flex;margin:12px}
.places-text{white-space:pre-wrap;max-height:240px;overflow:auto;margin:8px 0}
.places-actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.places-warn{margin:6px 0}
.places-limit p{margin:4px 0}
.places-advice{font-weight:650}
/* Очередь и карточка человека: слой поверх кабинета, пока маршрут не вшит в общий клиент. */
.ops-layer{position:fixed;inset:0;z-index:42;overflow:auto;background:var(--bg);padding-bottom:24px}
.ops-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;min-height:52px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--line)}
.ops-bar b{font-size:18px;font-weight:700}
.ops-body{max-width:720px;margin:0 auto;padding:0 12px 24px}
.ops-actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
#opsCounts span{display:inline}#opsCounts span+span:before{content:", "}
#opsAdminLinks{display:flex;flex-direction:column;gap:8px}
.shot-fig{width:100%;max-width:420px;border-radius:10px;background:#f4f6f8}
.zoom-fig{width:100%;border-radius:8px}
.pad.pad-snug{padding-top:4px}
.pad.pad-flat{padding-top:0;padding-bottom:0}
.pad.pad-foot{padding-bottom:0}
.center-note{text-align:center}
.field-gap{margin-top:6px}
.h-gap{margin-top:12px}
.col-sort{width:70px}
.select-fit{width:auto;flex:1;min-width:140px}
.is-dim{opacity:.5}
/* Пачки: слой поверх кабинета, пока маршрут не вшит в общий клиент. */
.review-layer{position:fixed;inset:0;z-index:43;overflow:auto;background:var(--bg);padding-bottom:24px}
.review-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;min-height:52px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--line)}
.review-bar b{font-size:18px;font-weight:700}
.review-body{max-width:720px;margin:0 auto;padding:0 12px 24px}
.review-note{width:100%;box-sizing:border-box;margin:6px 0}
.review-items a{display:inline-block;margin:4px 8px 0 0}
.review-human{white-space:pre-wrap}
#reviewAdminLink,#reviewStrip{display:flex;flex-direction:column;gap:8px}
@media (min-width:900px){
  .review-body{max-width:960px}
}
/* Много вещей: слой поверх кабинета, пока маршрут не вшит в общий клиент. */
.bulk-layer{position:fixed;inset:0;z-index:44;overflow:auto;background:var(--bg);padding-bottom:24px}
.bulk-bar{position:sticky;top:0;z-index:1;display:flex;align-items:center;gap:8px;min-height:52px;padding:8px 12px;background:var(--surface);border-bottom:1px solid var(--line)}
.bulk-bar b{font-size:18px;font-weight:700}
.bulk-body{max-width:720px;margin:0 auto;padding:0 12px 24px}
.bulk-sum{display:flex;flex-wrap:wrap;gap:8px 16px;margin:12px 0}
.bulk-filter{display:flex;flex-wrap:wrap;gap:8px;align-items:end;margin:8px 0}
.bulk-filter select,.bulk-filter input{min-width:120px}
.bulk-actions{display:flex;flex-wrap:wrap;gap:8px;margin:8px 0}
.bulk-row{display:flex;gap:8px;align-items:center}
.bulk-row img{width:48px;height:48px;object-fit:cover;border-radius:8px;background:#eee;flex:none}
.bulk-chosen{font-weight:650}
@media (min-width:900px){
  .bulk-body{max-width:960px}
}
.card.card-edge{border-left-width:8px;border-left-style:solid}
.card-market{border-left:6px solid #1565c0}
.card-fresh{border:2px solid #2e7d32}
.callbtn.tight{margin:0}
.code.batch-id{background:#eee}
.prices.prices-2{grid-template-columns:1fr 1fr}
.prices.prices-stat{grid-template-columns:1.4fr 1fr 1fr 1fr .8fr}
.card.tile.stat-still{cursor:default}
.file-pick{margin-top:6px}
.earn.earn-snug{margin-top:6px}
.fbar{margin:4px 0}
.fbar-name{display:inline-block;width:90px}
.fbar-fill{display:inline-block;height:14px;vertical-align:middle;border-radius:3px}
.bar1{display:inline-block;height:8px;background:#1565c0;vertical-align:middle}
.prog i.fill-bad{background:#b71c1c}
.prog i.fill-wait{background:#f9a825}
.prog i.fill-ok{background:#2e7d32}
.pill.verdict-pill{font-size:15px}
.screen-end-list{height:24px}
/* Предложение оценки на карточке вещи. Без встроенных стилей: строгий CSP. */
.eval-offer{margin:12px}
.eval-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}
.eval-field{display:flex;gap:8px;align-items:flex-start;margin:6px 0}
.eval-analogs a,.eval-offer a{word-break:break-word}
#evalBudget{font-weight:650}
#evalPrice{font-size:20px;font-weight:700}
#evalOffer{max-width:720px}
