/* =====================================================================
   «ЯДРО» — минималистичный футуризм (в духе Nothing / Teenage Engineering):
   графит + тонкая точечная сетка, почти монохром, одна красная точка-сигнал,
   цифры точечной матрицей, широкий гротеск в заголовках, никаких смайликов
   и простыней пояснений — подсказки только по наведению (ⓘ).
   ===================================================================== */
:root{
  color-scheme:dark;
  --bg:#0f0f11;--s1:#151518;--s2:#1b1b1f;--s3:#232328;--line:#26262b;--line2:#34343a;
  --ink:#e9e9e6;--ink2:#b3b3b0;--mute:#7c7c80;
  --rose:#ff4b3e;--rose-s:#2a1614;--gold:#f2b35b;--gold-s:#2a2115;--amber:#f2b35b;
  --ok:#7fd1a6;--ok-s:#15241d;--bad:#ff6b5e;--bad-s:#2a1614;--info:#9aa6ff;
  --heat:linear-gradient(90deg,#6b6b70,#ff4b3e);
  --display:"Unbounded","Geologica",system-ui,sans-serif;--body:"Geologica","Onest",system-ui,sans-serif;
  --mono:"Martian Mono",ui-monospace,monospace;--dot:"Doto","Martian Mono",monospace;
  --r:14px;--r2:10px;
  --grid:radial-gradient(circle,#2a2a30 1px,transparent 1.2px) 0 0/18px 18px;
  --edge:#1d1d21;--well:#121215;--well2:#111114;--dim:#45454c;--line3:#2c2c32;--s0:#0c0c0e;--panel:#141417;
}
body{background:var(--bg)!important;font:14.5px/1.6 var(--body)!important;color:var(--ink)}
body:before{display:none!important}
.main{background:var(--grid),var(--bg)!important;background-attachment:fixed!important}

/* ---- поверхности ---- */
.card,.pnav,.kpi,.tile,.modal,.box,.side-foot{background:var(--s1)!important;border:1px solid var(--line)!important;box-shadow:none!important;backdrop-filter:none!important;border-radius:var(--r)!important}

/* ---- поясняющие простыни убраны: смысл — в подписи, детали — по ⓘ ---- */
.f .hint,.f>.hint,.sec .f .hint{display:none!important}
.sec>.pad>.lead,.sec .lead{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;font-size:13.5px!important;color:var(--mute)!important;max-width:720px}

/* ---- меню ---- */
.side{background:var(--s0)!important;border-right:1px solid var(--line)!important;padding:22px 14px 16px!important;width:232px!important}
.side:before,.side:after{display:none!important}
.brand{display:flex;align-items:center;gap:10px;padding:0 8px 26px!important}
.logo-mark{width:9px;height:9px;border-radius:50%;background:var(--rose);box-shadow:0 0 14px rgba(255,75,62,.7)}
.logo-w{font:500 15px var(--display);letter-spacing:.02em;color:var(--ink);text-transform:lowercase}
.logo-sub{font:400 9px var(--mono);color:var(--mute);letter-spacing:.14em;text-transform:uppercase}
.logo-box{display:none}
.nav-group{font:400 9.5px var(--mono)!important;letter-spacing:.18em!important;color:#5e5e63!important;padding:18px 10px 8px!important;text-transform:uppercase}
.nav-i{padding:9px 12px!important;border-radius:10px!important;gap:12px!important;font:400 14px var(--body)!important;color:var(--ink2)!important;position:relative;background:none!important;box-shadow:none!important}
.nav-i svg{width:18px!important;height:18px!important;padding:0!important;background:none!important;border:0!important;box-shadow:none!important;color:var(--mute)!important}
.nav-i:hover{background:var(--s1)!important;color:var(--ink)!important}
.nav-i.on{background:var(--s2)!important;color:var(--ink)!important}
.nav-i.on svg{color:var(--ink)!important}
.nav-i.on:before{content:"";display:block!important;position:absolute;right:12px;top:50%;width:5px;height:5px;margin-top:-2.5px;border-radius:50%;background:var(--rose);left:auto;bottom:auto;box-shadow:0 0 8px rgba(255,75,62,.8)}
.nav-i.on:after,.pnav-i.on:after{display:none!important}
.nav-i .cnt{background:none!important;color:var(--rose)!important;font:500 11px var(--dot)!important;padding:0!important;border:0!important}
.side-foot{background:none!important;border:0!important;border-top:1px solid var(--line)!important;border-radius:0!important;padding:12px 8px 0!important}
.side-foot .status{font:400 10.5px var(--mono);color:var(--mute);letter-spacing:.02em}
.dot.ok{animation:none!important;box-shadow:0 0 6px var(--ok)!important;background:var(--ok)}

/* ---- меню персонажа ---- */
.pnav{padding:8px!important;background:transparent!important;border:0!important}
.pnav-g{font:400 9.5px var(--mono)!important;letter-spacing:.18em!important;color:#5e5e63!important;padding:18px 10px 6px!important;text-transform:uppercase}
.pnav-i{padding:8px 10px!important;border-radius:10px!important;gap:11px!important;font:400 14px var(--body)!important;color:var(--ink2)!important;background:none!important;position:relative}
.pnav-ic,.pnav-i[data-g] .pnav-ic{background:none!important;box-shadow:none!important;width:18px!important;height:18px!important;color:var(--mute)!important}
.pnav-ic svg{width:17px!important;height:17px!important}
.pnav-i:hover{color:var(--ink)!important;background:var(--s1)!important}
.pnav-i.on{color:var(--ink)!important;background:var(--s2)!important}
.pnav-i.on .pnav-ic{color:var(--ink)!important}
.pnav-i[data-g="0"]{border:1px solid var(--line2)!important;margin-bottom:4px}
.pnav-i[data-g="0"] .pnav-ic{color:var(--rose)!important}
.pnav .pct{width:4px!important;height:4px!important;opacity:.6}

/* ---- типографика ---- */
.head h1,.ov-head h1{font:300 30px/1.1 var(--display)!important;letter-spacing:-.02em!important;text-transform:none!important}
.sec>.pad>h3,.h3,h3{font:400 16px/1.2 var(--display)!important;letter-spacing:-.01em!important;text-transform:none!important}
.label,.t-l,.kpi .label{font:400 9.5px var(--mono)!important;letter-spacing:.16em!important;text-transform:uppercase;color:var(--mute)!important}
.ov-sub,.head .sub{font:400 10.5px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--mute)}
.t-v,.big,.num,.kpi .v,.mode-price b{font-family:var(--dot)!important;font-weight:700!important;letter-spacing:.02em!important;font-variant-numeric:tabular-nums}
.t-v{font-size:30px!important}
.t-v.big-v{font-size:64px!important;line-height:1!important;color:var(--ink)!important}
.f>label,.f label:first-child{font:500 13px var(--body)!important;color:var(--ink)!important}

/* ---- кнопки ---- */
.btn{height:36px;border-radius:99px!important;background:var(--s2)!important;border:1px solid var(--line2)!important;color:var(--ink)!important;font:400 13px var(--body)!important;box-shadow:none!important;padding:0 16px!important}
.btn:hover{background:var(--s3)!important;border-color:var(--dim)!important}
.btn.sm{height:30px;font-size:12.5px!important;padding:0 13px!important}
.btn.pri{background:var(--ink)!important;border-color:var(--ink)!important;color:#111!important;font-weight:500!important}
.btn.pri:hover{background:#fff!important}
.btn.ghost{background:transparent!important;border-color:transparent!important}.btn.ghost:hover{background:var(--s2)!important}
.btn.gold{background:var(--ink)!important;color:#111!important}
.icon-btn{border-radius:99px!important;color:var(--ink2)}.icon-btn:hover{background:var(--s2)!important}
.chip{border-radius:99px!important;font:400 10.5px var(--mono)!important;letter-spacing:.04em}
.chip-btn{border-radius:99px!important;background:transparent!important;border:1px solid var(--line2)!important;color:var(--ink2)!important}
.chip-btn:hover{border-color:var(--mute)!important;color:var(--ink)!important}
.chip-btn.on{border-color:var(--ink)!important;color:var(--ink)!important;background:var(--s2)!important}
.ai-field,.aibtn{filter:grayscale(1)}

/* ---- поля ---- */
input:not([type=range]):not([type=checkbox]):not([type=radio]),select,textarea{background:var(--well2)!important;border:1px solid var(--line2)!important;border-radius:10px!important;color:var(--ink)!important;font:14px/1.55 var(--body)!important}
input:not([type=range]):hover,select:hover,textarea:hover{border-color:var(--dim)!important}
input:not([type=range]):focus,select:focus,textarea:focus{border-color:var(--ink2)!important;box-shadow:0 0 0 3px rgba(233,233,230,.06)!important}
input::placeholder,textarea::placeholder{color:#57575c!important}
option,optgroup{background:var(--s2);color:var(--ink)}
label.price{background:var(--well2);border:1px solid var(--line2);border-radius:10px;display:flex;align-items:center;padding-left:10px}
label.price input{border:0!important;background:transparent!important;padding-left:4px!important;box-shadow:none!important}
label.price span{color:var(--mute);font-family:var(--mono)}
input[type=checkbox]{accent-color:var(--rose)}
input[type=range]::-webkit-slider-runnable-track{background:repeating-linear-gradient(90deg,#3a3a40 0 2px,transparent 2px 6px)!important;height:6px}
input[type=range]::-webkit-slider-thumb{background:var(--ink)!important;border:0!important;width:14px!important;height:14px!important;margin-top:-4px!important;box-shadow:0 0 0 4px var(--bg)!important;border-radius:50%}

/* ---- переключатели ---- */
.switch{width:40px!important;height:22px!important}
.switch i{background:var(--s3)!important;border:1px solid var(--line2)!important;border-radius:99px!important}
.switch i:after{width:16px!important;height:16px!important;left:2px!important;top:2px!important;background:#6b6b70!important;box-shadow:none!important}
.switch input:checked+i{background:var(--ink)!important;border-color:var(--ink)!important}
.switch input:checked+i:after{transform:translateX(18px)!important;background:var(--rose)!important;box-shadow:0 0 8px rgba(255,75,62,.6)!important}

/* ---- сегменты и варианты ---- */
.seg:not(.f .seg),.head .seg,.seg.mini,.tabs{background:var(--s1)!important;border:1px solid var(--line)!important;border-radius:99px!important;padding:3px!important;gap:2px!important}
.seg:not(.f .seg)>div,.head .seg>div,.seg.mini>div,.tabs button{border-radius:99px!important;color:var(--mute)!important;background:none!important;box-shadow:none!important;font:400 12px var(--body)!important;letter-spacing:0;text-transform:none;padding:5px 13px!important}
.seg:not(.f .seg)>div.on,.head .seg>div.on,.seg.mini>div.on,.tabs button.on{color:#111!important;background:var(--ink)!important}
.f .seg:not(.mini)>div{background:transparent!important;border:1px solid var(--line2)!important;border-radius:12px!important}
.f .seg:not(.mini)>div:hover{border-color:var(--dim)!important}
.f .seg:not(.mini)>div.on{background:var(--s2)!important;border-color:var(--ink2)!important}
.f .seg:not(.mini)>div.on::before{border-color:var(--rose)!important;background:radial-gradient(circle,var(--rose) 0 3px,transparent 3.5px)!important}
.f .seg:not(.mini)>div small{color:var(--mute)!important}
.lvl{border-radius:12px!important;background:transparent!important;border-color:var(--line2)!important}
.lvl.on{background:var(--s2)!important;border-color:var(--ink2)!important}

/* ---- медиа-выбор ---- */
.picker .pm{border-radius:10px!important;border:2px solid transparent!important}
.picker .pm.on{border-color:var(--ink)!important}
.picker .pm.on:after,.pk.on:after{display:none!important}
.picker .pm .pm-price{position:absolute;left:6px;bottom:6px;top:auto;height:auto;font:500 10.5px var(--mono)!important;padding:2px 7px;background:rgba(15,15,17,.85)!important;color:var(--ink)!important;border-radius:99px!important}
.picker .pm .pm-price.ok{color:var(--ok)!important}
.picker .pm .pm-pack{position:absolute;right:6px;bottom:6px;left:auto;top:auto;font-size:10px;background:rgba(15,15,17,.85)!important}
.pk{border-radius:10px!important;outline:2px solid transparent!important}.pk.on{outline-color:var(--ink)!important}

/* ---- чат ---- */
.b.bot{background:#26262c!important;border:0!important;color:var(--ink)}
.b.fan{background:var(--s1)!important;border:1px solid var(--line)!important}
.chat-head,.composer{background:var(--s1)!important}
.send{background:var(--ink)!important;color:#111!important}

/* ---- обзор ---- */
.tile.rev{background:var(--s1)!important}
.kpi:first-child:before{display:none}
.dl{font-family:var(--mono)!important;font-size:10.5px!important;border-radius:99px!important}
.dl.up{color:var(--ok)!important;background:var(--ok-s)!important}
.dl.down{color:var(--bad)!important;background:var(--bad-s)!important}
.todo-i .ti{font-size:0!important;width:7px!important;height:7px;flex:none;border-radius:50%;background:#55555a;margin:0 8px}
.todo-i.l0 .ti,.todo-i.l1 .ti{background:var(--rose);box-shadow:0 0 8px rgba(255,75,62,.7)}
.todo b[style*="font:600 15px"]{font:400 16px var(--display)!important}
.hm i[style*="color-mix"]{filter:saturate(.9)}
.modal,#layer .modal{border-radius:18px!important}
.toast{background:var(--s3)!important;border:1px solid var(--line2)!important;border-radius:99px!important}
::-webkit-scrollbar-thumb{background:var(--line2)!important;border-color:var(--bg)!important}

/* =====================================================================
   ЛИЧНОСТЬ — ядро
   ===================================================================== */
.core{position:relative;display:grid;grid-template-columns:320px minmax(0,1fr);gap:28px;align-items:center;padding:40px 44px 34px;margin-bottom:16px;
  border:1px solid var(--line);border-radius:22px;background:var(--well2);overflow:hidden;min-height:340px}
.core-grid{position:absolute;inset:0;background:radial-gradient(circle,#2c2c33 1.1px,transparent 1.3px) 0 0/14px 14px;
  -webkit-mask:radial-gradient(60% 90% at 22% 50%,#000 30%,transparent 75%);mask:radial-gradient(60% 90% at 22% 50%,#000 30%,transparent 75%);opacity:.9}
.core-orb{position:relative;width:260px;height:260px;justify-self:center}
.core-ring{position:absolute;inset:0;border-radius:50%;border:1px dashed #3a3a42}
.core-ring.r2{inset:34px;border-style:dotted;border-color:#44444c}
.core-ring.r3{inset:72px;border:1px solid #2e2e35;background:radial-gradient(circle,#1c1c21,var(--well))}
.core-dot{position:absolute;left:50%;top:50%;width:18px;height:18px;margin:-9px;border-radius:50%;background:#55555c;transition:.4s}
.core.on .core-dot{background:var(--rose);box-shadow:0 0 22px 4px rgba(255,75,62,.55);animation:corePulse 2.6s ease-in-out infinite}
.core.on .core-ring.r1{animation:coreSpin 40s linear infinite;border-color:#4a4a52}
.core.on .core-ring.r2{animation:coreSpin 28s linear infinite reverse;border-color:rgba(255,75,62,.35)}
@keyframes coreSpin{to{transform:rotate(360deg)}}
@keyframes corePulse{50%{box-shadow:0 0 34px 10px rgba(255,75,62,.35)}}
.core-txt{position:relative;display:flex;flex-direction:column;gap:12px;max-width:560px}
.core-k{font:400 10px var(--mono);letter-spacing:.2em;text-transform:uppercase;color:var(--mute)}
.core.on .core-k{color:var(--rose)}
.core-txt h2{font:300 40px/1.05 var(--display);letter-spacing:-.03em;margin:0}
.core-txt p{margin:0;color:var(--ink2);font-size:15px;line-height:1.6}
.core-btn{all:unset;cursor:pointer;display:inline-flex;align-items:center;gap:12px;align-self:flex-start;margin-top:8px;padding:15px 26px;border-radius:99px;
  background:var(--ink);color:#111;font:500 14px var(--body);letter-spacing:.01em;transition:transform .15s,box-shadow .15s}
.core-btn:hover{transform:translateY(-1px);box-shadow:0 10px 30px rgba(233,233,230,.12)}
.core-btn .cb-dot{width:9px;height:9px;border-radius:50%;background:var(--rose);box-shadow:0 0 10px rgba(255,75,62,.8)}
.core.on .core-btn{background:transparent;color:var(--ink);border:1px solid var(--line2)}
.core-stats{grid-column:1/-1;position:relative;display:grid;grid-template-columns:repeat(4,1fr);border-top:1px solid var(--line);margin:8px -44px -34px;padding:16px 44px}
.core-stats div{display:flex;flex-direction:column;gap:2px}
.core-stats b{font:700 26px var(--dot);letter-spacing:.04em}
.core-stats span{font:400 9.5px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}
@media(prefers-reduced-motion:reduce){.core *{animation:none!important}}
@media(max-width:1000px){.core{grid-template-columns:1fr;padding:28px}.core-orb{width:200px;height:200px}.core-stats{grid-template-columns:1fr 1fr;margin:8px -28px -28px;padding:16px 28px}}
.ap-drop{border-radius:16px!important;background:var(--well2)!important}.ap-drop:hover,.ap-drop.over{border-color:var(--ink2)!important;background:var(--s2)!important}
.ap-set,.ap-note{border-radius:12px!important}
.mode.on{background:var(--s2)!important;border-color:var(--ink2)!important}

/* ---- личность: первый запуск и источники ---- */
.st-head{display:flex;align-items:flex-end;justify-content:space-between;gap:12px;margin-bottom:12px}
.st-head h3{margin:4px 0 0!important}
.st-prog{font:400 11px var(--mono);color:var(--mute);letter-spacing:.06em}.st-prog b{font:700 22px var(--dot);color:var(--ink);margin-right:2px}
.st-list{display:flex;flex-direction:column;gap:6px}
.st{display:flex;align-items:center;gap:14px;padding:12px 14px;border:1px solid var(--line);border-radius:12px;background:var(--well)}
.st b{display:block;font:500 14px var(--body)}.st small{color:var(--mute);font-size:12.5px}
.st-n{width:28px;height:28px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;font:500 12px var(--mono);color:var(--mute);flex:none}
.st.ok{opacity:.55}.st.ok .st-n{border-color:var(--ok);color:var(--ok)}
.st.now{border-color:var(--ink2)}.st.now .st-n{background:var(--rose);border-color:var(--rose);color:#fff;box-shadow:0 0 10px rgba(255,75,62,.6)}
.src-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:8px;margin-top:14px}
.src{position:relative;display:flex;flex-direction:column;gap:6px;padding:14px;border:1px solid var(--line);border-radius:14px;background:var(--well);cursor:pointer;transition:border-color .15s}
.src:hover{border-color:var(--dim)}
.src-top{display:flex;align-items:center;gap:10px}.src-top b{font:500 14px var(--body)}
.src-ic{width:28px;height:28px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;color:var(--ink2)}.src-ic svg{width:15px;height:15px}
.src.no .src-ic{border-color:var(--rose);color:var(--rose)}
.src-opt{margin-left:auto;font:400 9.5px var(--mono);color:var(--mute);letter-spacing:.06em}
.src small{color:var(--mute);font-size:12.5px;line-height:1.45;min-height:36px}
.src-bar{height:3px;border-radius:99px;background:var(--s3);overflow:hidden}.src-bar i{display:block;height:100%;background:var(--ink)}
.src.no .src-bar i{background:var(--rose)}
.src-v{font:400 10px var(--mono);letter-spacing:.08em;color:var(--mute);text-transform:uppercase}
.src.ok .src-v{color:var(--ok)}.src.no .src-v{color:var(--rose)}

/* ---- гео ---- */
.geo{margin-top:12px}
.geo-split{display:flex;gap:2px;height:10px;border-radius:99px;overflow:hidden;margin:10px 0 6px}
.geo-split i{background:var(--ink)}
.geo-legend{display:flex;flex-wrap:wrap;gap:14px;font:400 10.5px var(--mono);color:var(--mute);letter-spacing:.06em;margin-bottom:10px}
.geo-legend em{display:inline-block;width:8px;height:8px;border-radius:2px;background:var(--ink);margin-right:6px}
.geo-tbl{display:flex;flex-direction:column;max-height:440px;overflow:auto}
.gt-h,.gt-r{display:grid;grid-template-columns:minmax(180px,1.6fr) repeat(8,minmax(70px,1fr));gap:8px;align-items:center;padding:9px 6px}
.gt-h{position:sticky;top:0;background:var(--s1);border-bottom:1px solid var(--line);z-index:1}
.gt-h span,.gt-h button{all:unset;cursor:pointer;font:400 9.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);text-align:right}
.gt-h span{text-align:left;cursor:default}.gt-h button:hover,.gt-h button.on{color:var(--ink)}
.gt-r{border-bottom:1px solid var(--edge);font-size:13.5px}.gt-r:hover{background:var(--s2)}
.gt-r>span{text-align:right;font-variant-numeric:tabular-nums;color:var(--ink2)}
.gt-r>span.on{color:var(--ink)}.gt-r>span.money{color:var(--ink);font-weight:500}
.gt-c{position:relative;text-align:left!important;display:flex;align-items:center;gap:10px;color:var(--ink)!important;overflow:hidden}
.gt-c b{font:500 10.5px var(--mono);padding:2px 6px;border:1px solid var(--line2);border-radius:5px;color:var(--ink2);min-width:30px;text-align:center}
.gt-bar{position:absolute;left:0;bottom:-6px;height:2px;background:var(--rose);opacity:.7;border-radius:2px}

/* ---- панель фана: правило и вечная память ---- */
.fan-rule-card{border:1px solid var(--line2);border-radius:14px;padding:12px;margin-bottom:10px;background:var(--well)}
.fan-rule-card textarea{margin-top:8px;min-height:54px;background:transparent!important;border-color:var(--line)!important}
.fan-rule-card textarea:focus{border-color:var(--ink2)!important}
.fan-keys{border:1px solid var(--line);border-radius:14px;padding:12px;margin-bottom:10px}
.fan-keys .fk{font-size:13px;color:var(--ink);padding:5px 0;border-top:1px solid var(--edge)}.fan-keys .fk:first-of-type{border-top:0;margin-top:6px}

.xp{display:flex;align-items:center;justify-content:space-between;gap:8px;padding:0 0 10px;margin-bottom:8px;border-bottom:1px solid var(--line);font:400 12px var(--body);color:var(--ink2);cursor:pointer}

.gauge.dm{display:flex;align-items:center;gap:10px;margin:8px 0;font-size:13px;color:var(--ink2)}
.gauge.dm .dots{display:flex;gap:3px}.gauge.dm .dots i{width:7px;height:7px;border-radius:50%;background:var(--line3)}
.gauge.dm .dots i.on{background:var(--ink)}.gauge.dm b{font:700 14px var(--dot);min-width:26px;text-align:right;color:var(--ink)}

/* ---- третий цвет: янтарь = деньги. цифры: точки только на крупных, мелкие — читаемый моно ---- */

.t-v.big-v,.money,.gt-r>span.money,.rev .t-v{color:var(--amber)!important}
.t-v,.core-stats b,.st-prog b{font-family:var(--dot)!important;font-weight:900!important}
.gauge.dm b,.nav-i .cnt,.dl,.gt-r>span,.chip,.lb-n,.pm-price{font-family:var(--mono)!important;font-weight:500!important}
.gauge.dm b{font-size:12px!important}
.t-v{font-size:32px!important;letter-spacing:.04em!important}
.t-v.big-v{font-size:72px!important}
.core-stats b{font-size:30px!important}
.gold,.b .gold,b.gold{color:var(--amber)!important}
.dl.up{color:var(--ok)!important}
/* ---- поле «как с ним себя вести» ---- */
.fan-rule-card{padding:12px 12px 10px!important}
.fan-rule-card textarea{border:0!important;box-shadow:none!important;padding:8px 0 0!important;min-height:64px!important;resize:vertical;font-size:13.5px!important;background:transparent!important}
.fan-rule-card:focus-within{border-color:var(--ink2)!important}
/* ---- банк подсказок ---- */
.bank-btn{all:unset;cursor:pointer;width:26px;height:26px;border-radius:50%;display:grid;place-items:center;border:1px solid var(--line2);color:var(--ink2);font-size:15px;line-height:1;flex:none;transition:.15s}
.bank-btn:hover{border-color:var(--ink);color:var(--ink);background:var(--s2)}
.row>.bank-btn{margin-left:6px}
.bank-pop{position:fixed;z-index:200;width:320px;max-height:360px;overflow:auto;background:var(--s2);border:1px solid var(--line2);border-radius:14px;padding:6px;box-shadow:0 20px 50px rgba(0,0,0,.5)}
.bank-h{font:400 9.5px var(--mono);letter-spacing:.16em;text-transform:uppercase;color:var(--mute);padding:8px 10px 6px}
.bank-i{padding:9px 10px;border-radius:9px;font-size:13.5px;color:var(--ink2);cursor:pointer}
.bank-i:hover{background:var(--s3);color:var(--ink)}
/* ---- модальные окна ---- */
.modal,#layer .modal{border-radius:20px!important;border:1px solid var(--line2)!important;background:var(--panel)!important;box-shadow:0 40px 100px rgba(0,0,0,.6)!important}
/* ---- точечные графики, как на макетах «Ядра» ---- */
.lb-t{height:8px!important;background:repeating-linear-gradient(90deg,var(--line3) 0 6px,transparent 6px 9px)!important;border-radius:0!important}
.lb-t i{background:repeating-linear-gradient(90deg,var(--ink) 0 6px,transparent 6px 9px)!important;border-radius:0!important}
.ov .hm i,.hm i{border-radius:50%!important;aspect-ratio:1!important;height:auto!important;max-width:14px;justify-self:center}
.ov .hm{gap:4px!important}
.mix{height:8px!important;border-radius:0!important;gap:3px!important;background:none!important}
.mix i{border-radius:2px}
.geo-split{height:8px!important;border-radius:0!important;gap:3px!important}
.geo-split i{border-radius:2px;background:var(--amber)!important}
.geo-legend em{background:var(--amber)!important}
.src-bar{height:4px!important;background:repeating-linear-gradient(90deg,var(--line3) 0 4px,transparent 4px 6px)!important;border-radius:0!important}
.src-bar i{background:repeating-linear-gradient(90deg,var(--ink) 0 4px,transparent 4px 6px)!important}
.src.no .src-bar i{background:repeating-linear-gradient(90deg,var(--rose) 0 4px,transparent 4px 6px)!important}
#dropoff h3,#compare h3,.card h3[style]{font:400 16px var(--display)!important;letter-spacing:-.01em!important;text-transform:none!important}
.seg>div.on,.seg.mini>div.on{border:0!important;outline:0!important}

.ap-sets{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))!important}
.ap-set{align-items:flex-start!important}.ap-set img,.ap-set .ph{width:56px!important;height:70px!important}
.ap-set p{margin:6px 0 0;font-size:12.5px;line-height:1.45;color:var(--ink2);display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}

.ap-note-bar{display:flex;align-items:center;gap:12px;padding:12px 16px;margin-bottom:12px;border:1px solid var(--line2);border-radius:14px;background:var(--well);font-size:13.5px;color:var(--ink2)}
.ap-note-bar b{color:var(--ink);font-weight:500}.ap-note-bar .cb-dot{width:8px;height:8px;border-radius:50%;background:var(--rose);box-shadow:0 0 8px rgba(255,75,62,.7);flex:none}

/* ---- окно папки ---- */
.fo{display:grid;grid-template-columns:280px minmax(0,1fr);gap:18px;min-height:360px}
.fo-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(130px,1fr));gap:10px;align-content:start;max-height:60vh;overflow:auto}
.fo-it{position:relative;border:1px solid var(--line);border-radius:12px;overflow:hidden;background:var(--well)}
.fo-it img,.fo-it video{width:100%;height:150px;object-fit:cover;display:block}
.fo-it.bad{border-color:var(--rose)}
.fo-meta{padding:6px 8px;display:flex;flex-direction:column;gap:4px}
.fo-why{font-size:11.5px;color:var(--rose);line-height:1.35}.fo-ok{font:400 10px var(--mono);color:var(--ok);letter-spacing:.06em;text-transform:uppercase}
.fo-acts{position:absolute;top:6px;right:6px;display:flex;gap:4px}.fo-acts .icon-btn{background:rgba(15,15,17,.85)!important}
.ap-set.warn{border-color:var(--rose)!important}
@media(max-width:900px){.fo{grid-template-columns:1fr}}

.mkt{display:grid;grid-template-columns:repeat(5,1fr);gap:8px;margin-top:10px}
.mkt div{border:1px solid var(--line);border-radius:12px;padding:10px 12px;display:flex;flex-direction:column;gap:2px}
.mkt span{font:400 9.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}.mkt b{font:500 16px var(--mono);color:var(--amber)}
.ap-set.pin{border-color:var(--amber)!important;background:linear-gradient(135deg,rgba(242,179,91,.07),transparent 60%),var(--s2)!important}
@media(max-width:900px){.mkt{grid-template-columns:repeat(2,1fr)}}

.fo-free{display:flex;align-items:center;gap:12px;padding:10px 12px;margin:4px 0 10px;border:1px solid var(--line2);border-radius:12px;background:var(--well)}
.fo-free b{display:block;font:500 13.5px var(--body)}.fo-free small{display:block;color:var(--mute);font-size:12px;line-height:1.4}
div.fo-free{flex-direction:column;align-items:flex-start;gap:2px;border-color:var(--amber)}

/* ---- подключения v2 ---- */
.cn2 .card{margin-bottom:14px}
.cn-wiz,.cn-ps{padding:18px 20px}
.cn-wiz-h{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}
.cn-prog{display:flex;gap:4px}.cn-prog i{width:26px;height:4px;border-radius:2px;background:var(--line3)}.cn-prog i.ok{background:var(--ok)}
.cn-step{display:flex;align-items:flex-start;gap:14px;padding:12px 4px;border-top:1px solid var(--edge)}
.cn-step b{display:block;font:500 14.5px var(--body)}.cn-step small{color:var(--mute);font-size:12.5px}
.cn-n{width:28px;height:28px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;font:500 12px var(--mono);color:var(--mute);flex:none}
.cn-step.ok .cn-n{border-color:var(--ok);color:var(--ok)}
.cn-step.now .cn-n{background:var(--rose);border-color:var(--rose);color:#fff;box-shadow:0 0 10px rgba(255,75,62,.6)}
.cn-okt{font:400 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ok);align-self:center}
.cn-how{display:flex;flex-wrap:wrap;gap:6px;align-items:center;margin-top:8px}
.cn-how span{padding:4px 10px;border:1px solid var(--line2);border-radius:99px;font-size:12.5px;color:var(--ink)}.cn-how em{font-style:normal;color:var(--mute)}
.cn-prow{display:flex;align-items:center;gap:14px;padding:12px 4px;border-top:1px solid var(--edge);cursor:pointer}
.cn-prow:hover{background:var(--s2)}.cn-prow svg{width:15px;height:15px;color:var(--mute)}
.cn-dots{display:flex;gap:5px}.cn-dots i{width:8px;height:8px;border-radius:50%;background:var(--line3)}.cn-dots i.ok{background:var(--ink)}
.cn-cnt{font:500 12px var(--mono);color:var(--ink2);min-width:34px;text-align:right}
.cn-more{padding:0!important}.cn-more>summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:14px;padding:16px 20px}
.cn-more>summary::-webkit-details-marker{display:none}
.cn-extra2{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:8px;padding:0 20px 18px}
.cn-x{display:flex;gap:10px;align-items:flex-start;padding:10px 12px;border:1px solid var(--line);border-radius:12px;cursor:pointer}
.cn-x:hover{border-color:var(--line2)}.cn-x b{display:block;font:500 13px var(--body)}.cn-x small{color:var(--mute);font-size:12px}
.cn-xd{width:7px;height:7px;border-radius:50%;background:#44444a;margin-top:6px;flex:none}.cn-x.ok .cn-xd{background:var(--ok)}

/* ---- пульс личности ---- */
.core-stats .money b{color:var(--amber)!important}
.live-dot{display:inline-flex;align-items:center;gap:8px;font:400 10px var(--mono);letter-spacing:.14em;text-transform:uppercase;color:var(--mute)}
.live-dot:before{content:"";width:7px;height:7px;border-radius:50%;background:#44444a}
.live-dot.on{color:var(--rose)}.live-dot.on:before{background:var(--rose);box-shadow:0 0 8px rgba(255,75,62,.8);animation:corePulse 2.6s infinite}
.pf{display:flex;flex-direction:column}
.pf-i{display:flex;align-items:center;gap:12px;padding:10px 4px;border-top:1px solid var(--edge);font-size:13.5px;color:var(--ink2);cursor:default}
.pf-i[onclick]{cursor:pointer}.pf-i[onclick]:hover{background:var(--s2)}
.pf-ic{width:28px;height:28px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;color:var(--ink2);flex:none}.pf-ic svg{width:14px;height:14px}
.pf-i.pf-buy .pf-ic{border-color:var(--amber);color:var(--amber)}.pf-i.pf-guard .pf-ic{border-color:var(--rose);color:var(--rose)}.pf-i.pf-learn .pf-ic{border-color:var(--ok);color:var(--ok)}
.pf-t{font:400 10.5px var(--mono);color:var(--mute);white-space:nowrap}

.pmodes{display:grid;grid-template-columns:repeat(4,1fr);gap:8px;margin-top:4px}
.pmodes .pm{border:1px solid var(--line2);border-radius:12px;padding:11px 13px;cursor:pointer;display:flex;flex-direction:column;gap:2px;transition:.15s}
.pmodes .pm:hover{border-color:var(--dim)}.pmodes .pm b{font:500 14px var(--body)}.pmodes .pm small{color:var(--mute);font-size:12px}
.pmodes .pm.on{border-color:var(--ink2);background:var(--s2)}.pmodes .pm.on b:before{content:"";display:inline-block;width:7px;height:7px;border-radius:50%;background:var(--rose);margin-right:8px;box-shadow:0 0 8px rgba(255,75,62,.7);vertical-align:middle}
.psl{display:flex;flex-direction:column;gap:4px;margin-top:12px}
.psl-r{display:grid;grid-template-columns:170px minmax(0,1fr) 64px;gap:14px;align-items:center;padding:6px 0}
.psl-r span{font-size:13.5px;color:var(--ink2)}.psl-r b{font:500 14px var(--mono);color:var(--amber);text-align:right}
@media(max-width:900px){.pmodes{grid-template-columns:1fr 1fr}.psl-r{grid-template-columns:110px 1fr 56px}}

.pulse-feed.fold .pf{display:none}.pulse-feed.fold .st-head{margin-bottom:0}
.pulse-feed .pf{max-height:420px;overflow:auto}
.aifill svg{width:13px;height:13px;stroke:currentColor;fill:none;stroke-width:1.8}
.chip.strat{border:1px solid var(--line2)}.chip.strat.long{color:var(--amber);border-color:var(--amber)}.chip.strat.fast{color:var(--rose);border-color:var(--rose)}

.ava.has{background-size:cover!important;background-position:center!important;color:transparent!important;border:1px solid var(--line2)}

/* ---- docs ---- */
.doc-q{width:280px!important;border-radius:99px!important}
.doc-wrap{display:grid;grid-template-columns:240px minmax(0,1fr);gap:22px;align-items:start;max-width:1100px}
.doc-nav{position:sticky;top:16px}
.doc-i{padding:8px 12px;border-radius:10px;cursor:pointer;color:var(--ink2);font-size:14px}.doc-i:hover{background:var(--s1);color:var(--ink)}.doc-i.on{background:var(--s2);color:var(--ink)}
.doc-a{padding:26px 30px!important;margin-bottom:14px}.doc-a h2{font:300 28px/1.15 var(--display);letter-spacing:-.02em;margin:6px 0 14px}
.doc-t{font-size:15px;line-height:1.7;color:var(--ink2);max-width:720px}.doc-t b{color:var(--ink);font-weight:500}.doc-t li{margin:6px 0}.doc-t p{margin:0 0 12px}
@media(max-width:900px){.doc-wrap{grid-template-columns:1fr}.doc-nav{position:static}}

/* ---- карта мира ---- */
.wmap{position:relative;margin:10px 0 14px;border:1px solid var(--line);border-radius:14px;background:var(--well2);overflow:hidden}
.wmap svg{display:block;width:100%;height:auto}
.wm-grid circle{fill:#26262c}
.wm-p circle{fill:var(--ink);opacity:.9}.wm-p .halo{fill:var(--ink);opacity:.08}
.wm-p.money circle{fill:var(--amber)}.wm-p.money .halo{fill:var(--amber);opacity:.12}
.wm-p text{fill:var(--ink2);font:500 12px var(--mono);letter-spacing:.08em}
.wm-leg{position:absolute;left:14px;bottom:10px;font:400 9.5px var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute)}

.hum{color:var(--rose);font-size:9px;margin-left:6px;text-shadow:0 0 8px rgba(255,75,62,.8)}
.stabs .pnav-ic,.stabs .pnav-i>span:first-child{filter:grayscale(1);opacity:.75}

/* ---- вход и команда ---- */
.login-veil{position:fixed;inset:0;z-index:500;display:grid;place-items:center;background:radial-gradient(circle,var(--line2) 1px,transparent 1.2px) 0 0/16px 16px,var(--s0)}
.login-box{width:320px;display:flex;flex-direction:column;gap:10px;padding:28px;border:1px solid var(--line2);border-radius:20px;background:var(--panel)}
.tm-u{display:flex;align-items:center;gap:12px;padding:10px 4px;border-top:1px solid var(--edge)}.tm-u.off{opacity:.45}
.tm-u b{display:block;font:500 14px var(--body)}.tm-u small{color:var(--mute);font-size:12px}
.tm-ava{width:34px;height:34px;border-radius:50%;border:1px solid var(--line2);display:grid;place-items:center;font:500 13px var(--mono);color:var(--ink2)}
.tm-audit{display:flex;flex-direction:column;max-height:420px;overflow:auto}
.tm-a{display:flex;gap:12px;align-items:baseline;padding:8px 4px;border-top:1px solid var(--edge);font-size:13px}

/* ---- баланс (искры) ---- */
.bal-grid{display:grid;grid-template-columns:1.1fr 1fr;gap:14px;margin-bottom:14px}@media(max-width:860px){.bal-grid{grid-template-columns:1fr}}
.bal-hero,.bal-vs{padding:22px}
.bal-n{font:400 64px/1.1 var(--dot);color:var(--gold);margin:8px 0 10px;letter-spacing:-1px}.bal-n.zero{color:var(--rose)}
.bal-row{display:flex;align-items:baseline;gap:10px;padding:9px 0;border-top:1px solid var(--edge)}.bal-row span{flex:1;color:var(--ink2)}
.bal-row b{font:500 15px var(--mono)}.bal-row small{color:var(--mute);min-width:70px;text-align:right}
.bal-row .amb{color:var(--gold)}.bal-row .strike{text-decoration:line-through;color:var(--mute)}
.bal-own{display:grid;grid-template-columns:1fr auto;gap:6px 12px;margin-top:12px;padding:12px;border:1px dashed var(--line2);border-radius:var(--r2);font-size:12.5px;color:var(--mute)}
.bal-own b{font:500 13px var(--mono);color:var(--ink)}.ok-t{color:var(--ok)!important}
.bal-bars{display:flex;align-items:flex-end;gap:6px;height:140px;margin-top:12px}
.bal-bars>div{flex:1;height:100%;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;gap:4px}
.bal-bars i{width:100%;max-width:34px;background:var(--gold);border-radius:4px 4px 1px 1px;opacity:.85}.bal-bars small{font:10px var(--mono);color:var(--mute)}

/* ---- досье по полочкам ---- */
.mem-shelves{display:flex;flex-direction:column;gap:10px}
.mem-shelf{border-left:2px solid var(--line2);padding:2px 0 2px 10px}
.mem-k{font:500 10px/1.4 var(--mono);letter-spacing:.12em;text-transform:uppercase;color:var(--mute);margin-bottom:4px}
.mem-f{font-size:12.5px;line-height:1.45;color:var(--ink2);padding:2px 0}
.mem-f.new{color:var(--ink)}.mem-f.new:before{content:"";display:inline-block;width:6px;height:6px;border-radius:50%;background:var(--rose);margin-right:7px;vertical-align:1px}
.mem-f.key{color:var(--ink)}.mem-f.key:before{content:"◆";color:var(--gold);font-size:9px;margin-right:7px;vertical-align:1px}
.mode-split{display:flex;flex-wrap:wrap;gap:4px 10px;font:11px var(--mono);color:var(--mute);margin:-2px 0 8px}

/* ============ мобильная оболочка: верхняя панель + нижнее меню (телефоны) ============ */
.mtop,.mbar,.msheet{display:none}
@media(max-width:900px){
  body{display:block!important;padding:0}
  .side{display:none!important}
  .main{height:auto!important;min-height:100dvh;padding-bottom:calc(72px + env(safe-area-inset-bottom))}
  .mtop{display:flex;align-items:center;gap:10px;position:sticky;top:0;z-index:40;height:52px;padding:0 16px;padding-top:env(safe-area-inset-top);
    background:color-mix(in srgb,var(--bg) 86%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-bottom:1px solid var(--line)}
  .mtop .logo-mark{flex:none}
  .mtop-t{font:500 16px var(--display);letter-spacing:-.01em}
  .mbar{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;left:0;right:0;bottom:0;z-index:45;padding:6px 6px calc(6px + env(safe-area-inset-bottom));
    background:color-mix(in srgb,var(--s1) 92%,transparent);backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border-top:1px solid var(--line)}
  .mb-i{position:relative;display:flex;flex-direction:column;align-items:center;gap:3px;padding:6px 2px;border:0;background:none;color:var(--mute);font:500 10.5px var(--body);border-radius:12px;min-height:50px;-webkit-tap-highlight-color:transparent}
  .mb-i svg{width:22px;height:22px}
  .mb-i.on{color:var(--ink)}.mb-i.on svg{color:var(--rose)}
  .mb-i:active{background:var(--s2)}
  .mb-cnt{position:absolute;top:2px;left:calc(50% + 6px);min-width:17px;height:17px;padding:0 4px;border-radius:9px;background:var(--rose);color:#fff;font:600 10px/17px var(--body);font-style:normal}
  .msheet{display:block;position:fixed;inset:0;z-index:60;background:rgba(0,0,0,.55);opacity:0;pointer-events:none;transition:opacity .2s}
  .msheet.on{opacity:1;pointer-events:auto}
  .msheet-in{position:absolute;left:0;right:0;bottom:0;max-height:82dvh;overflow:auto;background:var(--s1);border-top:1px solid var(--line2);border-radius:22px 22px 0 0;
    padding:8px 14px calc(20px + env(safe-area-inset-bottom));transform:translateY(100%);transition:transform .28s cubic-bezier(.2,.8,.2,1)}
  .msheet.on .msheet-in{transform:none}
  .msheet-grip{width:40px;height:4px;border-radius:2px;background:var(--line2);margin:4px auto 10px}
  .msheet .nav-i{min-height:48px;font-size:15px}
  .msheet .nav-group{display:block!important;margin-top:10px}
  .msheet-foot{margin-top:14px;padding-top:12px;border-top:1px solid var(--line)}
  .page{padding:16px 16px 28px!important}
  .head{flex-wrap:wrap;gap:10px}.head h1{font-size:26px}
  input,select,textarea{font-size:16px!important}   /* iOS не зумит поле при вводе */
  .btn,.icon-btn,.nav-i{min-height:40px}
  .modal{width:calc(100vw - 20px)!important;max-width:none!important;max-height:calc(100dvh - 40px);overflow:auto}
}
@media(prefers-reduced-motion:reduce){.msheet,.msheet-in{transition:none}}

@media(max-width:760px){
  .mb-i svg{fill:none!important;stroke:currentColor;stroke-width:1.6}
  body[data-swipe=l] .main>.page{animation:swL .28s cubic-bezier(.2,.8,.2,1)}
  body[data-swipe=r] .main>.page{animation:swR .28s cubic-bezier(.2,.8,.2,1)}
  .inbox .chat-col{transition:transform .25s cubic-bezier(.2,.8,.2,1)}
}
@keyframes swL{from{transform:translateX(28px);opacity:.4}to{transform:none;opacity:1}}
@keyframes swR{from{transform:translateX(-28px);opacity:.4}to{transform:none;opacity:1}}

/* ---- чат на телефоне: как в мессенджере ---- */
@media(max-width:760px){
  .hide-sm{display:none}
  body:has(.inbox.show-chat) .mtop{display:none}
  .inbox.show-chat{height:100dvh!important}
  .inbox.show-chat .list-col,.inbox.show-chat .acc-col{display:none!important}
  .inbox.show-chat .chat-col{display:flex!important;flex-direction:column;height:100dvh!important;max-height:none!important}
  .chat-head{position:sticky;top:0;z-index:5;gap:8px!important;padding:8px 10px!important;padding-top:calc(8px + env(safe-area-inset-top))!important;flex-wrap:nowrap!important;
    background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px)}
  .chat-head .grow{min-width:0}.chat-head .grow b{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .chat-head .grow .small{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .chat-head .back-btn{width:40px;height:40px;font-size:20px;flex:none}
  .chat-head .btn.sm{padding:0 10px;height:36px;flex:none}
  .chat-head .chip{display:none}
  .bubbles{flex:1;min-height:0;overflow-y:auto;-webkit-overflow-scrolling:touch;padding:12px 10px!important}
  .bubbles .b{max-width:86%!important;font-size:15px}
  .composer{position:sticky;bottom:0;flex-wrap:wrap!important;gap:6px!important;padding:8px 10px calc(8px + env(safe-area-inset-bottom))!important;
    background:color-mix(in srgb,var(--s1) 94%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);border-top:1px solid var(--line)}
  .composer textarea,.composer input[type=text],.composer #msg{flex:1 1 100%!important;order:-1;min-height:44px;border-radius:22px!important}
  .composer .icon-btn{width:40px;height:40px}
  .inbox.prof-open .prof-col{position:fixed!important;inset:0!important;width:auto!important;z-index:70;display:block!important;overflow:auto;background:var(--bg);padding-top:env(safe-area-inset-top)}
}

.prof-back{display:none}
@media(max-width:760px){
  .inbox.prof-open .prof-back{display:flex;align-items:center;position:fixed;top:0;left:0;right:0;z-index:71;height:52px;padding:0 16px;padding-top:env(safe-area-inset-top);
    border:0;border-bottom:1px solid var(--line);background:color-mix(in srgb,var(--bg) 90%,transparent);backdrop-filter:blur(14px);-webkit-backdrop-filter:blur(14px);
    color:var(--ink);font:500 15px var(--body);text-align:left}
  .inbox.prof-open .prof-col{padding-top:calc(60px + env(safe-area-inset-top))!important;padding-left:14px!important;padding-right:14px!important}
  .inbox.prof-open .prof-col .drag{display:none}
}

/* ---- iPad портрет (761–900): оболочка как на телефоне, диалоги в две колонки ---- */
@media(min-width:761px) and (max-width:900px){
  .inbox{display:grid!important;grid-template-columns:300px minmax(0,1fr)!important;grid-template-rows:auto minmax(0,1fr)!important;height:calc(100dvh - 52px - 72px)!important}
  .inbox .acc-col{grid-column:1/-1;flex-direction:row!important;overflow-x:auto;padding:8px 12px!important;border-bottom:1px solid var(--line);height:auto!important}
  .inbox .list-col{max-height:none!important;overflow:auto;border-right:1px solid var(--line)}
  .inbox .chat-col{height:auto!important;min-height:0;display:flex;flex-direction:column}
  .inbox .chat-col .bubbles{flex:1;min-height:0;overflow:auto}
  .inbox .back-btn{display:none}
}
@media(max-width:760px){body:has(.inbox.show-chat) .mbar{display:none}body:has(.inbox.show-chat) .main{padding-bottom:0}}

/* ---- 18+ от фанов: скрыто до нажатия ---- */
.fan-media.nsfw{cursor:pointer;min-width:210px}
.fan-media.nsfw .nsfw-body{display:none}
.fan-media.nsfw.open .nsfw-body{display:block}.fan-media.nsfw.open .nsfw-veil{display:none}
.nsfw-veil{display:flex;flex-direction:column;gap:2px;padding:6px 2px;background:repeating-linear-gradient(135deg,transparent 0 6px,rgba(255,75,62,.07) 6px 12px);border-radius:10px}
.nsfw-veil b{font-size:13.5px}.nsfw-veil span{font-size:12px;color:var(--mute)}
.filters .nsfw-tg{opacity:.55}.filters .nsfw-tg.on{opacity:1;border-color:var(--rose)!important;color:var(--ink)}

/* ---- золотые пресеты ---- */
.gold-pre{border-color:color-mix(in srgb,var(--gold) 28%,var(--line))!important}
.gp-head{display:grid;grid-template-columns:auto 1fr;gap:10px 28px;align-items:end;margin-bottom:16px}
@media(max-width:900px){.gp-head{grid-template-columns:1fr}}
.gp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
@media(max-width:1100px){.gp-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:560px){.gp-grid{grid-template-columns:1fr}}
.gp,.gpt{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:4px;text-align:left;padding:14px 14px 12px;border-radius:14px;
  background:var(--s2);border:1px solid var(--line);color:var(--ink);cursor:pointer;transition:border-color .15s,transform .15s,background .15s;font:inherit;-webkit-tap-highlight-color:transparent}
.gp:hover,.gpt:hover{border-color:var(--line2);transform:translateY(-1px)}
.gp:active,.gpt:active{transform:scale(.985)}
.gp.on,.gpt.on{border-color:var(--gold);background:color-mix(in srgb,var(--gold) 7%,var(--s2))}
.gp-ic{font-size:22px;line-height:1}.gp b,.gpt b{font:500 14.5px var(--display);letter-spacing:-.01em}
.gp small,.gpt small{color:var(--mute);font-size:12.5px;line-height:1.4}
.gp-dna{display:flex;flex-direction:column;gap:4px;width:100%;margin-top:8px}
.gp-dna i{display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px;font-style:normal}
.gp-dna i em{display:block;height:3px;border-radius:2px;background:var(--gold);opacity:.8;grid-column:1;grid-row:1}
.gp-dna i span{font:10px var(--mono);color:var(--mute);letter-spacing:.06em;text-transform:uppercase}
.gp-on{position:absolute;top:12px;right:12px;font:500 10px var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--gold)}
.gp-talk{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px}
@media(max-width:1100px){.gp-talk{grid-template-columns:repeat(2,minmax(0,1fr))}}
.gpt span{font-size:18px}
.gp-head{grid-template-columns:1fr!important}
.gold-pre .gp-head .lead{-webkit-line-clamp:unset!important;display:block!important;max-width:640px}
.gp-grid{grid-template-columns:repeat(auto-fill,minmax(220px,1fr))!important}
.gp-talk{grid-template-columns:repeat(auto-fill,minmax(180px,1fr))!important}
.gp b,.gpt b{overflow-wrap:anywhere;hyphens:auto}

/* ---- два режима персонажа ---- */
.pmode-sw{display:grid;grid-template-columns:1fr 1fr;gap:10px;margin:6px 0 18px}
.pms{display:flex;align-items:center;gap:14px;text-align:left;padding:14px 18px;border-radius:16px;background:var(--s1);border:1px solid var(--line);color:var(--mute);
  font:inherit;cursor:pointer;transition:border-color .2s,background .2s,color .2s;-webkit-tap-highlight-color:transparent}
.pms:hover{border-color:var(--line2);color:var(--ink2)}
.pms.on{cursor:default;color:var(--ink);border-color:var(--rose);background:linear-gradient(135deg,color-mix(in srgb,var(--rose) 10%,var(--s1)),var(--s1) 60%)}
.pms-ic{font-size:24px;line-height:1;filter:grayscale(1);opacity:.6;transition:filter .2s,opacity .2s}.pms.on .pms-ic{filter:none;opacity:1}
.pms b{display:block;font:500 16px var(--display);letter-spacing:-.01em}.pms small{display:block;font-size:12.5px;color:var(--mute);margin-top:2px}
@media(max-width:700px){.pmode-sw{grid-template-columns:1fr 1fr;gap:8px}.pms{padding:12px;gap:10px}.pms small{display:none}.pms-ic{font-size:20px}}
.gp-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}
@media(max-width:1100px){.gp-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}}
@media(max-width:560px){.gp-grid{grid-template-columns:1fr!important}}
.gp-talk{grid-template-columns:repeat(4,minmax(0,1fr))!important}
@media(max-width:1100px){.gp-talk{grid-template-columns:repeat(2,minmax(0,1fr))!important}}

/* ---- режимы: просмотр ≠ запуск ---- */
.pms .grow{min-width:0}
.pms-st{flex:none;display:flex;align-items:center;gap:6px;font:500 10.5px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--mute)}
.pms.live .pms-st{color:var(--ok)}.pms-st i{width:7px;height:7px;border-radius:50%;background:var(--ok);box-shadow:0 0 0 4px color-mix(in srgb,var(--ok) 18%,transparent);animation:pulseOk 2s infinite}
@keyframes pulseOk{50%{box-shadow:0 0 0 7px transparent}}
.pms.on:not(.live){border-color:var(--gold);background:linear-gradient(135deg,color-mix(in srgb,var(--gold) 9%,var(--s1)),var(--s1) 60%)}
.launch{display:grid;grid-template-columns:minmax(0,1.1fr) minmax(0,1fr) auto;gap:18px;align-items:center;padding:16px 18px;margin:-8px 0 18px;border-radius:16px;
  border:1px dashed color-mix(in srgb,var(--gold) 50%,var(--line));background:color-mix(in srgb,var(--gold) 4%,var(--s1))}
.launch-t b{display:block;font:500 15px var(--display);margin:4px 0 2px}.launch-t span{font-size:13px;color:var(--mute)}
.launch-l{display:flex;flex-direction:column;gap:5px}
.ll{display:flex;align-items:center;gap:8px;font-size:13px;color:var(--ink2);cursor:pointer}.ll:hover{color:var(--ink)}
.ll i{flex:none;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font:600 11px var(--body);font-style:normal;background:var(--s3);color:var(--mute)}
.ll.ok i{background:color-mix(in srgb,var(--ok) 20%,transparent);color:var(--ok)}.ll.need i{background:color-mix(in srgb,var(--rose) 22%,transparent);color:var(--rose)}
.ll small{color:var(--mute);font-size:11px}
.launch-go[disabled]{opacity:.45;cursor:not-allowed}
@media(max-width:1000px){.launch{grid-template-columns:1fr}}
@media(max-width:700px){.pms-st{display:none}.pms.live .pms-ic:after{content:"";position:absolute}}

/* ---- бренд Eclipse: тёмный диск с красной короной (затмение) ---- */
.logo-mark{position:relative;width:13px!important;height:13px!important;border-radius:50%;background:var(--bg)!important;
  box-shadow:0 0 0 1.5px var(--rose),0 0 10px 1px rgba(255,75,62,.75),0 0 22px 2px rgba(255,75,62,.25)!important}
.logo-mark:after{content:"";position:absolute;inset:-1px;border-radius:50%;background:radial-gradient(circle at 70% 30%,rgba(255,120,100,.9) 0 1.5px,transparent 2.5px)}
.logo-mark.big{width:22px!important;height:22px!important}
.login-brand{display:flex;align-items:center;gap:12px;margin-bottom:2px}
.logo-w{letter-spacing:.06em!important}
@media(prefers-reduced-motion:no-preference){.logo-mark{animation:corona 5s ease-in-out infinite}}
@keyframes corona{50%{box-shadow:0 0 0 1.5px var(--rose),0 0 14px 2px rgba(255,75,62,.9),0 0 30px 4px rgba(255,75,62,.3)}}

/* ---- две зоны: моя работа / админка ---- */
.area-sw{display:grid;grid-template-columns:1fr 1fr;gap:3px;padding:3px;margin:0 12px 14px;border-radius:12px;background:var(--s2);border:1px solid var(--line)}
.area-sw button{padding:8px 6px;border:0;border-radius:9px;background:none;color:var(--mute);font:500 12.5px var(--body);cursor:pointer;transition:background .15s,color .15s}
.area-sw button:hover{color:var(--ink2)}
.area-sw button.on{background:var(--s1);color:var(--ink);box-shadow:0 0 0 1px var(--line2)}
.area-sw button:last-child.on{color:var(--gold)}
.ad-kpi{display:grid;grid-template-columns:1.4fr 1fr 1fr 1fr;gap:12px;margin-bottom:14px}
@media(max-width:1000px){.ad-kpi{grid-template-columns:1fr 1fr}}
.ad-k{padding:18px 20px}.ad-k small{display:block;color:var(--mute);font-size:12px;margin-top:4px}.ad-k small a{color:var(--ink2);cursor:pointer}
.ad-n{display:block;font:500 30px/1.2 var(--mono);margin-top:8px}.ad-k.big .ad-n{font:400 44px/1.1 var(--dot)}
.ad-n.amb{color:var(--gold)}.bad-t{color:var(--rose)!important}
.ad-grid{display:grid;grid-template-columns:1fr 1fr;gap:14px}@media(max-width:1000px){.ad-grid{grid-template-columns:1fr}}
.fn-row{display:grid;grid-template-columns:170px 1fr 56px 44px;align-items:center;gap:10px;padding:8px 0;border-top:1px solid var(--edge)}
.fn-t{font-size:13px;color:var(--ink2)}.fn-bar{height:8px;border-radius:4px;background:var(--s3);overflow:hidden}.fn-bar i{display:block;height:100%;background:var(--gold);border-radius:4px}
.fn-row b{font:500 14px var(--mono);text-align:right}.fn-row small{color:var(--mute);font:11px var(--mono);text-align:right}
@media(max-width:560px){.fn-row{grid-template-columns:1fr 50px 40px}.fn-bar{grid-column:1/-1;order:5}}
.ad-tbl-wrap{overflow-x:auto}.ad-tbl{width:100%;min-width:720px}.ad-tbl td,.ad-tbl th{padding:11px 14px;vertical-align:middle}
.ad-tbl th.sortable{cursor:pointer}.ad-tbl th.sortable.on{color:var(--gold)}.ad-tbl tr.off{opacity:.45}
.area-sw button{white-space:nowrap;font-size:12px!important;padding:8px 4px!important}

/* ---- качество ---- */
.qa-kinds{display:flex;flex-wrap:wrap;gap:6px;margin-bottom:14px}
.qa-kinds button{padding:7px 12px;border-radius:999px;border:1px solid var(--line);background:var(--s1);color:var(--ink2);font:500 12.5px var(--body);cursor:pointer}
.qa-kinds button b{font:500 12px var(--mono);color:var(--mute);margin-left:4px}.qa-kinds button.on{border-color:var(--gold);color:var(--ink)}.qa-kinds button.on b{color:var(--gold)}
.qa-e{padding:12px 0;border-top:1px solid var(--edge)}.qa-e.done{opacity:.5}
.qa-h{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.qa-h a{margin-left:auto;cursor:pointer;color:var(--ink2)}
.qa-t{margin-top:6px;font-size:13.5px;color:var(--ink);line-height:1.5}.qa-r{font-size:12px;color:var(--mute);margin-top:3px}
.qa-rule{display:flex;align-items:flex-start;gap:8px;padding:8px 0;border-top:1px solid var(--edge);font-size:13px}.qa-rule span{flex:1}

.bal-packs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}
.bp{position:relative;display:flex;flex-direction:column;align-items:flex-start;gap:1px;padding:10px 12px;border-radius:12px;border:1px solid var(--line);background:var(--s2);color:var(--ink);cursor:pointer;font:inherit;text-align:left}
.bp:hover{border-color:var(--gold)}.bp b{font:500 17px var(--mono)}.bp span{font-size:11px;color:var(--mute)}.bp em{font:500 13px var(--body);color:var(--gold);font-style:normal;margin-top:4px}
.bp i{position:absolute;top:8px;right:8px;font:500 10px var(--mono);color:var(--ok);font-style:normal}

.topup{margin-top:16px;display:flex;flex-direction:column;gap:8px}
.tp-row{display:flex;align-items:center;gap:8px;padding:4px 4px 4px 14px;border:1px solid var(--line2);border-radius:14px;background:var(--s2)}
.tp-cur{font:500 18px var(--mono);color:var(--mute)}.tp-row input{flex:1;border:0!important;background:none!important;font:500 20px var(--mono)!important;padding:8px 0!important;min-width:0;box-shadow:none!important}
.tp-q{display:flex;gap:6px;flex-wrap:wrap}.tp-q button{padding:5px 11px;border-radius:999px;border:1px solid var(--line);background:none;color:var(--ink2);font:500 12px var(--mono);cursor:pointer}.tp-q button:hover{border-color:var(--gold);color:var(--ink)}
.tp-calc{font-size:13px;color:var(--ink2)}.tp-calc b{color:var(--gold);font:500 14px var(--mono)}.tp-calc i{color:var(--ok);font-style:normal}
.tp-bonus{display:flex;gap:10px;flex-wrap:wrap;font-size:11.5px;color:var(--mute)}.tp-bonus b{color:var(--ok);font-weight:500}
.ap-req .ap-req-l{display:grid;grid-template-columns:1fr 1fr;gap:6px 18px;margin-top:10px}@media(max-width:800px){.ap-req .ap-req-l{grid-template-columns:1fr}}.ap-req-n{font:500 14px var(--mono);color:var(--rose)}.ap-req-n.ok{color:var(--ok)}

/* ---- читаемые цифры: деньги и ключевые числа — чётким шрифтом (пиксельный резал глаза) ---- */
:root{--num:"Unbounded","Geologica",system-ui,sans-serif}
.t-v,.big,.num,.kpi .v,.mode-price b,.core-stats b,.st-prog b,.bal-n,.ad-k.big .ad-n{font-family:var(--num)!important;font-weight:400!important;letter-spacing:-.03em!important;font-variant-numeric:tabular-nums}
.t-v{font-size:clamp(40px,4.4vw,60px)!important;line-height:1.05!important}
.nav-i .cnt,.gauge.dm b{font-family:var(--mono)!important;font-weight:500!important}

/* ---- центр «Личности»: не ломается при узкой колонке (открыта песочница) ---- */
.editor3 #tabBody{container-type:inline-size}
@container (max-width:820px){
  .core{grid-template-columns:1fr!important;padding:28px!important;text-align:left}
  .core-orb{width:170px!important;height:170px!important;justify-self:start!important}
  .core-txt{max-width:none!important}
  .core-stats{grid-template-columns:1fr 1fr!important}
}
.core-txt h2{overflow-wrap:normal;word-break:normal}

/* ---- купленное медиа: золотая рамка, бейдж суммы, вспышка при первом показе ---- */
.media-b.sold{position:relative;box-shadow:0 0 0 1px rgba(242,179,91,.55),0 10px 40px -12px rgba(242,179,91,.35)!important}
.sold-tag{position:absolute;top:-11px;right:12px;z-index:2;display:flex;align-items:baseline;gap:6px;padding:3px 10px;border-radius:999px;
  background:linear-gradient(135deg,#f6c77a,#e0973a);color:#1a1206;font:600 11px var(--body);box-shadow:0 6px 20px -6px rgba(242,179,91,.8)}
.sold-tag span{font:600 13px var(--num,var(--display));letter-spacing:-.01em}
.media-b.sold-new{animation:soldPop .9s cubic-bezier(.2,.9,.25,1.2)}
.media-b.sold-new:after{content:"";position:absolute;inset:0;border-radius:inherit;pointer-events:none;
  background:linear-gradient(110deg,transparent 30%,rgba(255,221,160,.55) 50%,transparent 70%);background-size:250% 100%;animation:soldShine 1.4s .2s ease-out both}
.media-b.sold-new .sold-tag{animation:soldTag .7s .15s cubic-bezier(.2,.9,.25,1.4) both}
@keyframes soldPop{0%{transform:scale(.96)}55%{transform:scale(1.025)}100%{transform:none}}
@keyframes soldShine{from{background-position:120% 0}to{background-position:-60% 0}}
@keyframes soldTag{from{opacity:0;transform:translateY(8px) scale(.6)}to{opacity:1;transform:none}}
@media(prefers-reduced-motion:reduce){.media-b.sold-new,.media-b.sold-new:after,.media-b.sold-new .sold-tag{animation:none}}

.apd-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px 28px;margin-top:12px}@media(max-width:800px){.apd-grid{grid-template-columns:1fr}}
.apd{display:flex;flex-direction:column;gap:8px}.apd-t{display:flex;justify-content:space-between;gap:10px;font-size:13.5px;color:var(--ink2)}.apd-t b{font:500 12.5px var(--mono);color:var(--gold)}
.apd input[type=range]{width:100%;accent-color:var(--rose)}
