/* rt.css — кабинет менеджера Рефкоманды: заставка, шапка, нижнее меню, шторки, обрезка фото.
   Дизайн-система та же, что в You Shepel и Laya App: стекло, лайм, живой градиент Gemini, бегунок. Золота нет. */
:root {
  --rt-bg: #0b0b0c; --rt-pop: #111114; --rt-tx: #edeae2; --rt-mist: rgba(237,234,226,.58); --rt-faint: rgba(237,234,226,.36);
  --rt-line: rgba(237,234,226,.1); --rt-line2: rgba(237,234,226,.17); --rt-glass: rgba(14,14,16,.6); --rt-glass2: rgba(237,234,226,.06);
  --rt-lime: #d1e05a; --rt-acc: #d1e05a; --rt-limeD: rgba(209,224,90,.13); --rt-amber: #f5c84b; --rt-coral: #fa876b; --rt-sea: #6fd6c9;
  --rt-navbg: rgba(16,16,19,.93); --rt-fade: 11,11,12; --rt-tabc: #807e78;
  --rt-gem: linear-gradient(-45deg, #1a73e8, #4285f4, #7b6ad0, #9b72cb, #c76a9e, #d96570, #e28a45, #f9ab00, #d96570, #9b72cb, #4285f4);
  --rt-gm: conic-gradient(from 0deg, #4285f4, #24c1e0, #9b72cb, #d96570, #f06cb4, #9b72cb, #4285f4);
  --rt-e: cubic-bezier(.22,1,.36,1);
  --rt-safeT: calc(var(--tg-safe-area-inset-top, 0px) + var(--tg-content-safe-area-inset-top, 0px));
  --rt-safeB: var(--tg-safe-area-inset-bottom, env(safe-area-inset-bottom, 0px));
}
:root { --rt-popbg: var(--rt-pop); }
/* попапы в теме Gemini: тот же фон, что у приложения, только без движения */
html.gem { --rt-popbg: linear-gradient(180deg, rgba(11,11,12,.7) 0%, rgba(11,11,12,.5) 45%, rgba(11,11,12,.16) 100%), radial-gradient(70% 46% at 4% 104%, rgba(66,133,244,.62), transparent 74%), radial-gradient(64% 42% at 100% 102%, rgba(217,101,112,.58), transparent 74%), radial-gradient(58% 40% at 52% 112%, rgba(155,114,203,.66), transparent 74%), radial-gradient(60% 26% at 100% -4%, rgba(155,114,203,.32), transparent 72%), #0b0b0c; }
html.light {
  --rt-bg: #f3f3f0; --rt-pop: #fff; --rt-tx: #141416; --rt-mist: rgba(20,20,22,.62); --rt-faint: rgba(20,20,22,.42);
  --rt-line: rgba(20,20,22,.1); --rt-line2: rgba(20,20,22,.18); --rt-glass: rgba(255,255,255,.82); --rt-glass2: rgba(20,20,22,.05);
  --rt-acc: #5f6b10; --rt-limeD: rgba(160,178,30,.16); --rt-navbg: rgba(255,255,255,.96); --rt-fade: 243,243,240; --rt-tabc: #85858a;
}
html.rt-on .card, html.rt-on .amb { display: none !important; }

/* ---------- заставка ---------- */
.rt-splash { position: fixed; inset: 0; z-index: 70; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 24px; background: transparent; transition: opacity .55s ease, transform .55s ease; color: var(--rt-tx); }
.rt-splash[hidden] { display: none; }
.rt-splash.out { opacity: 0; transform: scale(1.04); pointer-events: none; }
.rt-sp-ring { position: relative; isolation: isolate; width: 128px; height: 128px; border-radius: 50%; padding: 3px; margin-bottom: 26px; animation: rtPop .9s cubic-bezier(.2,.9,.2,1.2) both, rtPulse 3s ease-in-out .9s infinite; }
.rt-sp-ring::before { content: ""; position: absolute; inset: -3px; border-radius: 50%; background: var(--rt-gm); animation: rtSpin 3.2s linear infinite; }
.rt-sp-ring::after { content: ""; position: absolute; inset: -6px; border-radius: 50%; background: var(--rt-gm); filter: blur(16px); opacity: .75; z-index: -1; animation: rtSpin 3.2s linear infinite; }
.rt-sp-ring .rt-face { position: relative; width: 100%; height: 100%; border: 3px solid var(--rt-bg); font-size: 38px; }
.rt-sp-hello { font-size: 28px; font-weight: 700; letter-spacing: -.02em; text-align: center; min-height: 40px; }
.rt-sp-hello span { display: inline-block; opacity: 0; transform: translateY(14px); animation: rtWord .55s var(--rt-e) forwards; }
.rt-sp-hello em { font-style: normal; background: var(--rt-gem); background-size: 300% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; display: inline-block; opacity: 0; transform: translateY(14px); animation: rtWord .55s var(--rt-e) forwards, rtGrad 4s linear infinite; }
.rt-sp-step { margin-top: 12px; height: 20px; color: var(--rt-mist); font-size: 14px; overflow: hidden; text-align: center; }
.rt-sp-step span { display: inline-block; animation: rtStep .35s ease both; }
html:not(.fonts) .rt-sp-hello, html:not(.fonts) .rt-sp-step { visibility: hidden; }
.rt-busy { position: fixed; inset: 0; z-index: 95; display: flex; align-items: center; justify-content: center; background: rgba(0,0,0,.34); animation: rtIn .18s ease both; }
.rt-busy span { display: flex; align-items: center; gap: 10px; padding: 11px 16px; border-radius: 16px; background: var(--rt-pop); border: 1px solid var(--rt-line2); color: var(--rt-tx); font-size: 14px; }
.rt-busy b { font-weight: 600; }
.rt-busy i { width: 18px; height: 18px; border-radius: 50%; border: 2px solid var(--rt-line2); border-top-color: var(--rt-lime); animation: rtSpin .8s linear infinite; }
.rt-sp-bar { margin-top: 16px; width: 180px; height: 3px; border-radius: 3px; background: var(--rt-line); overflow: hidden; }
.rt-sp-bar i { display: block; height: 100%; width: 0; border-radius: 3px; background: var(--rt-lime); transition: width .4s ease; }
@keyframes rtSpin { to { transform: rotate(360deg); } }
@keyframes rtPulse { 0%,100% { transform: scale(1); } 50% { transform: scale(1.05); } }
@keyframes rtPop { from { opacity: 0; transform: scale(.6); } }
@keyframes rtWord { to { opacity: 1; transform: none; } }
@keyframes rtGrad { to { background-position: 300% 0; } }
@keyframes rtStep { from { opacity: 0; transform: translateY(10px); } }
@keyframes rtRise { from { opacity: 0; transform: translateY(12px); } }
@keyframes rtFwd { from { opacity: 0; transform: translateX(16px); } }
@keyframes rtBwd { from { opacity: 0; transform: translateX(-16px); } }
@keyframes rtGemT { 0%,100% { transform: translateX(0); } 50% { transform: translateX(-75%); } }
@keyframes rtGlow { 0%,100% { opacity: .22; } 50% { opacity: .42; } }
@keyframes rtSq { 0% { transform: none; } 35% { transform: scaleX(1.28) scaleY(.9); } 70% { transform: scaleX(.96) scaleY(1.03); } 100% { transform: none; } }
@keyframes rtUp { from { transform: translateY(100%); } }
@keyframes rtDown { to { transform: translateY(100%); } }
@keyframes rtIn { from { opacity: 0; } }
@keyframes rtOut { to { opacity: 0; } }
@keyframes rtBar { from { transform: scaleX(0); } }
@keyframes rtCol { from { transform: scaleY(0); } }

/* ---------- каркас ---------- */
#rt { position: fixed; left: 0; right: 0; top: 0; height: var(--tgh, 100dvh); z-index: 3; color: var(--rt-tx); font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); font-size: 15px; line-height: 1.35; -webkit-font-smoothing: antialiased; animation: rtIn .4s ease both; }
#rt[hidden] { display: none; }
:where(#rt, #rtSheet, #rtCrop) button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; text-align: inherit; }
:where(#rt, #rtSheet) svg { fill: none; stroke: currentColor; stroke-width: 1.8; }
.rt-scroll { position: absolute; inset: 0; overflow-y: auto; overscroll-behavior: contain; -webkit-overflow-scrolling: touch; padding: calc(var(--rt-safeT) + 8px) 14px calc(var(--rt-safeB) + 104px); scrollbar-width: none; }
.rt-scroll::-webkit-scrollbar { display: none; }
.rt-view { max-width: 620px; margin: 0 auto; }
.rt-pane { position: absolute; inset: 0; visibility: hidden; opacity: 0; pointer-events: none; transition: opacity .18s ease, visibility 0s .18s; }
.rt-pane.on { visibility: visible; opacity: 1; pointer-events: auto; transition: opacity .18s ease, visibility 0s; }
.rt-new { animation: rtRise .42s var(--rt-e) both; }
.rt-edge { position: absolute; left: 0; right: 0; pointer-events: none; z-index: 4; }
.rt-edge.t { top: 0; height: calc(var(--rt-safeT) + 30px); background: linear-gradient(180deg, rgba(var(--rt-fade),.96) 0%, rgba(var(--rt-fade),.82) 55%, rgba(var(--rt-fade),0) 100%); opacity: var(--rtf, 0); transition: opacity .18s linear; }
.rt-edge.b { bottom: 0; height: calc(var(--rt-safeB) + 112px); background: linear-gradient(0deg, rgba(var(--rt-fade),.94) 0%, rgba(var(--rt-fade),.72) 52%, rgba(var(--rt-fade),0) 100%); }
.rt-prev { display: flex; align-items: center; gap: 8px; margin-bottom: 8px; padding: 8px 12px; border-radius: 14px; background: rgba(245,200,75,.13); border: 1px solid rgba(245,200,75,.3); font-size: 12.5px; color: var(--rt-tx); }
.rt-prev b { font-weight: 700; }
.rt-prev svg { flex: 0 0 18px; width: 18px; height: 18px; color: var(--rt-amber); }

/* ---------- шапка ---------- */
.rt-hero { position: relative; isolation: isolate; display: flex; gap: 13px; align-items: center; padding: 13px; border-radius: 24px; background: var(--rt-glass); border: 1px solid var(--rt-line); overflow: hidden; }
.rt-hero::before { content: ""; position: absolute; inset: 0; z-index: -1; background: radial-gradient(120% 140% at 0% 50%, rgba(155,114,203,.17), transparent 55%); }
.rt-av { position: relative; isolation: isolate; flex: 0 0 74px; width: 74px; height: 74px; border-radius: 50%; padding: 2px; display: block; transition: transform .14s ease; }
.rt-av:active { transform: scale(.95); }
.rt-av::after { content: ""; position: absolute; inset: -2px; border-radius: 50%; background: var(--rt-gem); filter: blur(8px); opacity: .28; z-index: -2; animation: rtGlow 3.2s ease-in-out infinite; }
.rt-av > i { position: absolute; inset: 0; z-index: -1; border-radius: 50%; overflow: hidden; }
.rt-av > i::before { content: ""; position: absolute; top: 0; bottom: 0; left: 0; width: 400%; background: var(--rt-gem); animation: rtGemT 7s ease-in-out infinite; will-change: transform; }
.rt-face { display: flex; align-items: center; justify-content: center; width: 100%; height: 100%; border-radius: 50%; overflow: hidden; border: 2px solid #121214; background: linear-gradient(135deg, #2a2a33, #16161b); color: #edeae2; font-weight: 700; font-size: 24px; }
.rt-face img { width: 100%; height: 100%; object-fit: cover; display: block; }
.rt-plus { position: absolute; right: -1px; bottom: -1px; width: 24px; height: 24px; border-radius: 50%; background: var(--rt-lime); color: #0b0b0c; display: flex; align-items: center; justify-content: center; border: 2px solid #121214; }
.rt-plus svg { width: 13px; height: 13px; stroke-width: 2.6; }
.rt-htx { min-width: 0; flex: 1; }
.rt-hi { font-size: 10.5px; font-weight: 700; letter-spacing: .15em; text-transform: uppercase; color: var(--rt-acc); }
.rt-hero h2 { margin: 3px 0 2px; font-size: 24px; font-weight: 700; letter-spacing: -.01em; line-height: 1.05; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--rt-tx); }
.rt-role { font-size: 12.5px; color: var(--rt-mist); line-height: 1.28; }
@property --p { syntax: "<number>"; inherits: false; initial-value: 0; }
.rt-ring[hidden] { display: none; }
.rt-ring { transition: --p .6s var(--rt-e); --p: 0; --c: var(--rt-lime); position: relative; flex: 0 0 52px; width: 52px; height: 52px; border-radius: 50%; background: conic-gradient(var(--c) calc(var(--p) * 1%), var(--rt-line) 0); display: flex; align-items: center; justify-content: center; }
.rt-ring::before { content: ""; position: absolute; inset: 4px; border-radius: 50%; background: #17171b; }
html.light .rt-ring::before { background: #fff; }
.rt-ring b { position: relative; font-size: 13.5px; font-weight: 700; color: var(--rt-tx); }
.rt-ring.mid { --c: var(--rt-amber); } .rt-ring.lo { --c: var(--rt-coral); }

/* ---------- блоки ---------- */
.rt-sec { margin: 18px 2px 8px; display: flex; align-items: baseline; justify-content: space-between; }
.rt-sec h3 { margin: 0; font-size: 10.5px; font-weight: 700; letter-spacing: .18em; text-transform: uppercase; color: var(--rt-faint); }
.rt-h1 { margin: 2px 2px 10px; font-size: 25px; font-weight: 700; letter-spacing: -.015em; color: var(--rt-tx); }
.rt-note { margin: 2px 2px 10px; font-size: 13px; color: var(--rt-mist); line-height: 1.4; }
.rt-t1 { display: block; font-size: 14px; font-weight: 600; color: var(--rt-tx); line-height: 1.25; }
.rt-t2 { display: block; margin-top: 2px; font-size: 12.5px; color: var(--rt-mist); line-height: 1.3; }
.rt-grid { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 8px; }
.rt-w { position: relative; display: block; padding: 13px 13px 12px; border-radius: 19px; background: var(--rt-glass); border: 1px solid var(--rt-line); transition: transform .14s ease; }
.rt-w small { display: flex; align-items: center; gap: 6px; font-size: 12px; font-weight: 600; color: var(--rt-mist); white-space: nowrap; }
.rt-w small svg { width: 15px; height: 15px; color: var(--rt-acc); flex: 0 0 15px; }
.rt-w b { display: block; margin-top: 8px; font-size: 29px; font-weight: 700; letter-spacing: -.02em; line-height: 1; color: var(--rt-tx); }
.rt-w em { display: block; margin-top: 5px; font-style: normal; font-size: 12px; color: var(--rt-faint); }
.rt-card { padding: 13px; border-radius: 19px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-fun { display: grid; gap: 7px; }
.rt-fs { position: relative; overflow: hidden; display: flex; align-items: center; gap: 9px; min-height: 36px; padding: 6px 11px; border-radius: 11px; background: var(--rt-glass2); }
.rt-fs i { position: absolute; left: 0; top: 0; bottom: 0; width: 0; background: rgba(209,224,90,.2); border-radius: 11px; transition: width .5s var(--rt-e); }
.rt-fs b { position: relative; min-width: 24px; font-size: 16px; font-weight: 700; color: var(--rt-tx); }
.rt-fs span { position: relative; flex: 1; font-size: 13px; color: var(--rt-tx); }
.rt-fs u { position: relative; text-decoration: none; font-size: 12px; font-weight: 600; color: var(--rt-mist); }
.rt-spark { display: flex; align-items: stretch; height: 74px; }
.rt-spark i { flex: 1 1 0; min-width: 0; margin-right: 2px; background: var(--rt-line2); border-radius: 3px 3px 0 0; transform: scaleY(0); transform-origin: bottom; transition: transform .45s var(--rt-e), flex-grow .4s ease, margin .4s ease, opacity .3s ease, background .3s ease; }
.rt-spark i:last-child { margin-right: 0; }
.rt-spark i.off { flex-grow: 0; margin-right: 0; opacity: 0; }
.rt-spark i.hi { background: var(--rt-lime); }
.rt-axis { display: flex; justify-content: space-between; margin-top: 7px; font-size: 11.5px; color: var(--rt-faint); }

/* ---------- бегунок ---------- */
.rt-seg { --n: 3; --i: 0; position: relative; display: grid; grid-template-columns: repeat(var(--n), minmax(0,1fr)); padding: 3px; border-radius: 14px; background: var(--rt-glass); border: 1px solid var(--rt-line); margin-bottom: 10px; }
.rt-seg > i { position: absolute; top: 3px; bottom: 3px; left: 3px; width: calc((100% - 6px) / var(--n)); transform: translateX(calc(var(--i) * 100%)); transition: transform .42s cubic-bezier(.34,1.3,.44,1); }
.rt-seg > i::before { content: ""; position: absolute; inset: 0; border-radius: 11px; background: var(--rt-lime); }
.rt-seg button { font: inherit; background: none; border: 0; cursor: pointer; position: relative; z-index: 1; min-width: 0; padding: 8px 2px; text-align: center !important; font-size: 12.5px; font-weight: 600; letter-spacing: -.1px; white-space: nowrap; color: var(--rt-mist) !important; transition: color .28s ease; }
.rt-seg button.on { color: #0b0b0c !important; }

/* ---------- списки ---------- */
.rt-list { display: grid; gap: 7px; }
.rt-row { display: flex; width: 100%; gap: 11px; align-items: center; padding: 10px 12px; border-radius: 17px; background: var(--rt-glass); border: 1px solid var(--rt-line); transition: transform .14s ease; }
.rt-row:active { transform: scale(.985); }
.rt-ic { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 50%; display: flex; align-items: center; justify-content: center; background: var(--rt-glass2); color: var(--rt-acc); font-size: 13.5px; font-weight: 700; }
.rt-ic svg { width: 20px; height: 20px; }
.rt-tx { min-width: 0; flex: 1; }
.rt-tag { flex: 0 0 auto; padding: 4px 9px; border-radius: 10px; font-size: 11.5px; font-weight: 700; background: var(--rt-glass2); color: var(--rt-mist); }
.rt-tag.ok { background: rgba(111,214,201,.15); color: var(--rt-sea); } .rt-tag.hot { background: rgba(250,135,107,.15); color: var(--rt-coral); } .rt-tag.wait { background: rgba(245,200,75,.14); color: var(--rt-amber); }
html.light .rt-tag.ok { color: #0d7d70; } html.light .rt-tag.hot { color: #c4482a; } html.light .rt-tag.wait { color: #8a6a06; }
.rt-chev { flex: 0 0 16px; width: 16px; height: 16px; color: var(--rt-tabc); }
.rt-empty { padding: 26px 16px; text-align: center; border-radius: 19px; border: 1px dashed var(--rt-line2); color: var(--rt-mist); font-size: 14px; line-height: 1.4; }
.rt-empty b { display: block; margin-bottom: 4px; font-size: 16px; font-weight: 700; color: var(--rt-tx); }
.rt-empty .rt-btn { margin-top: 12px; }

/* ---------- ссылка и кнопки ---------- */
.rt-link { display: flex; gap: 12px; align-items: center; padding: 12px; border-radius: 20px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-lk { min-width: 0; flex: 1; display: block; }
.rt-lk small { display: block; font-size: 12px; font-weight: 600; color: var(--rt-mist); }
.rt-lk b { display: block; margin: 4px 0 3px; font-size: 14.5px; font-weight: 600; word-break: break-all; line-height: 1.25; color: var(--rt-tx); }
.rt-lk u { text-decoration: none; font-size: 12px; font-weight: 700; color: var(--rt-acc); }
.rt-qr { flex: 0 0 76px; width: 76px; height: 76px; border-radius: 13px; overflow: hidden; background: #edeae2; display: block; }
.rt-qr img { width: 100%; height: 100%; display: block; }
.rt-btn { display: flex; width: 100%; align-items: center; justify-content: center !important; gap: 8px; min-height: 46px; padding: 10px 14px; border-radius: 15px; background: var(--rt-lime) !important; color: #0b0b0c !important; font-size: 15px; font-weight: 700; text-align: center !important; transition: transform .14s ease; }
.rt-btn:active { transform: scale(.975); }
.rt-btn svg { width: 18px; height: 18px; stroke: currentColor; }
.rt-btn.ghost { background: var(--rt-glass2) !important; color: var(--rt-tx) !important; border: 1px solid var(--rt-line) !important; }
.rt-std { color: var(--rt-mist) !important; }
.rt-std.act { color: var(--rt-acc) !important; border-color: var(--rt-lime) !important; background: var(--rt-limeD) !important; }
.rt-std.done { color: var(--rt-sea) !important; border-color: rgba(111,214,201,.3) !important; }
html.light .rt-std.done { color: #0d7d70 !important; }
.rt-btns { display: grid; gap: 7px; margin-top: 9px; }
.rt-btns.two { grid-template-columns: minmax(0,1fr) minmax(0,1fr); }
.rt-msg { border-radius: 16px; border: 1px solid var(--rt-line); background: var(--rt-glass); transition: border-color .2s ease; }
.rt-msg:focus-within { border-color: var(--rt-lime); }
.rt-txt { display: block; width: 100%; min-height: 96px; resize: none; overflow: hidden; padding: 12px 12px 2px; border: 0; background: none; color: var(--rt-tx); font: inherit; font-size: 14.5px; line-height: 1.42; outline: none; -webkit-user-select: text; user-select: text; }
.rt-mlink { padding: 0 12px 12px; font-size: 14.5px; line-height: 1.42; color: var(--rt-acc); word-break: break-all; }
.rt-hint { margin: 7px 2px 0; font-size: 12.5px; color: var(--rt-faint); }
.rt-lnk { display: block; margin: 10px auto 0; font-size: 13px; font-weight: 600; color: var(--rt-mist) !important; text-align: center !important; }
.rt-lnk[hidden] { display: none; }

/* ---------- меню ---------- */
.rt-nav { --n: 5; --i: 0; position: fixed; z-index: 6; left: 12px; right: 12px; bottom: calc(var(--rt-safeB) + 10px); max-width: 616px; margin: 0 auto; display: grid; grid-template-columns: repeat(var(--n), minmax(0,1fr)); gap: 2px; padding: 6px; border-radius: 25px; background: var(--rt-navbg); border: 1px solid var(--rt-line); -webkit- box-shadow: 0 14px 34px -14px rgba(0,0,0,.8); }
.rt-nav[hidden] { display: none; }
.rt-ind { position: absolute; z-index: 0; top: 6px; bottom: 6px; left: 6px; width: calc((100% - 12px - (var(--n) - 1) * 2px) / var(--n)); pointer-events: none; transform: translateX(calc(var(--i) * (100% + 2px))); transition: transform .52s cubic-bezier(.34,1.3,.44,1); will-change: transform; }
.rt-ind::before { content: ""; position: absolute; inset: 0; border-radius: 19px; background: var(--rt-lime); box-shadow: 0 6px 18px -8px rgba(209,224,90,.7); }
.rt-nav.mv .rt-ind::before { animation: rtSq .52s cubic-bezier(.3,.7,.4,1); }
.rt-tab { position: relative; z-index: 1; min-width: 0; display: flex !important; flex-direction: column; align-items: center; gap: 4px; padding: 8px 0 7px !important; border-radius: 19px; color: var(--rt-tabc) !important; font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif) !important; font-size: clamp(9.5px, 2.55vw, 11px) !important; font-weight: 600; letter-spacing: -.2px; background: none; border: 0; cursor: pointer; transition: color .3s ease, transform .14s ease; }
.rt-tab:active { transform: scale(.94); }
.rt-tab svg { width: 22px; height: 22px; fill: none; stroke: currentColor; stroke-width: 1.7; stroke-linecap: round; stroke-linejoin: round; }
.rt-tab span { white-space: nowrap; }
.rt-tab.on { color: #0b0b0c !important; }
.rt-tab .rt-bd { position: absolute; top: 3px; left: calc(50% + 6px); min-width: 16px; height: 16px; padding: 0 4px; border-radius: 8px; background: var(--rt-amber); color: #0b0b0c; font-size: 10px; font-weight: 800; line-height: 16px; text-align: center; }
html.rt-kb .rt-nav, html.rt-kb .rt-edge.b { display: none; }
html.rt-ownav .chips.tabs { display: none !important; }
html.rt-ownav .card { padding-bottom: calc(var(--rt-safeB) + 92px); }
html.rt-kb.rt-ownav .card { padding-bottom: 14px; }

/* ---------- шторка ---------- */
#rtSheet { position: fixed; inset: 0; z-index: 40; color: var(--rt-tx); font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); font-size: 15px; line-height: 1.38; }
#rtSheet[hidden] { display: none; }
.rt-sb { position: absolute; inset: 0; background: rgba(0,0,0,.6); animation: rtIn .25s ease both; }
.rt-sc { position: absolute; left: 0; right: 0; bottom: 0; max-height: 88vh; display: flex; flex-direction: column; max-width: 640px; margin: 0 auto; background: var(--rt-popbg); border-radius: 26px 26px 0 0; overflow: hidden; animation: rtUp .42s var(--rt-e) both; }
#rtSheet.closing .rt-sc { animation: rtDown .24s ease forwards; } #rtSheet.closing .rt-sb { animation: rtOut .24s ease forwards; }
.rt-st { position: relative; flex: 0 0 auto; padding: 9px 50px 10px 18px; min-height: 48px; display: flex; align-items: center; font-size: 17px; font-weight: 700; }
.rt-sx { position: absolute; right: 12px; top: 9px; width: 32px; height: 32px; border-radius: 50%; display: flex !important; align-items: center; justify-content: center; background: var(--rt-glass2) !important; }
.rt-sx svg { width: 16px; height: 16px; }
.rt-sbody { overflow-y: auto; overscroll-behavior: contain; padding: 10px 18px calc(var(--rt-safeB) + 26px); -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 12px, #000 calc(100% - 24px), transparent 100%); mask-image: linear-gradient(180deg, transparent 0, #000 12px, #000 calc(100% - 24px), transparent 100%); -webkit-user-select: text; user-select: text; }
.rt-pre { white-space: pre-line; font-size: 15px; line-height: 1.45; color: var(--rt-tx); }
.rt-tl { list-style: none; margin: 8px 0 0; padding: 0 0 0 16px; border-left: 2px solid var(--rt-line); display: grid; gap: 12px; }
.rt-tl li { position: relative; font-size: 14px; color: var(--rt-tx); }
.rt-tl li::before { content: ""; position: absolute; left: -22px; top: 5px; width: 10px; height: 10px; border-radius: 50%; background: var(--rt-line2); }
.rt-tl li.key::before { background: var(--rt-lime); }
.rt-tl time { display: block; font-size: 12px; color: var(--rt-faint); }
.rt-tl small { display: block; font-size: 12.5px; color: var(--rt-mist); }
.rt-kv { display: grid; gap: 1px; margin: 8px 0 12px; border-radius: 16px; overflow: hidden; border: 1px solid var(--rt-line); }
.rt-kv div { display: flex; justify-content: space-between; gap: 12px; padding: 10px 12px; background: var(--rt-glass2); font-size: 14px; }
.rt-kv span { color: var(--rt-mist); } .rt-kv b { font-weight: 600; text-align: right; min-width: 0; word-break: break-word; }
.rt-prof { text-align: center; padding: 4px 0 8px; }
.rt-prof .rt-av { width: 104px; height: 104px; margin: 0 auto 9px; flex: none; }
.rt-prof .rt-face { font-size: 34px; }
.rt-prof h2 { margin: 0; font-size: 21px; font-weight: 700; color: var(--rt-tx); }
.rt-bar { height: 7px; border-radius: 4px; background: var(--rt-glass2); overflow: hidden; margin-top: 6px; }
.rt-bar i { display: block; height: 100%; border-radius: 4px; background: var(--rt-lime); transform-origin: left; animation: rtBar .7s var(--rt-e) both; }
.rt-pl { padding: 11px 0; border-bottom: 1px solid var(--rt-line); }
.rt-pl:last-child { border-bottom: 0; }
.rt-pl div:first-child { display: flex; justify-content: space-between; gap: 10px; font-size: 14.5px; }
.rt-pl b { font-weight: 700; white-space: nowrap; }
.rt-qa { border-bottom: 1px solid var(--rt-line); }
.rt-qa:last-child { border-bottom: 0; }
.rt-qa b { display: block; font-size: 15px; font-weight: 700; margin: 11px 0 3px; color: var(--rt-tx); }
.rt-qa p { margin: 0 0 11px; font-size: 14.5px; color: var(--rt-mist); }
.rt-qrbig { width: min(100%, 300px); margin: 4px auto 10px; border-radius: 18px; overflow: hidden; background: #edeae2; }
.rt-qrbig img { width: 100%; display: block; }
.rt-cap { text-align: center; font-size: 13px; color: var(--rt-mist); word-break: break-all; }

/* ---------- обрезка фото ---------- */
#rtCrop { position: fixed; inset: 0; z-index: 80; background: #08080a; color: #edeae2; display: flex; flex-direction: column; align-items: center; padding: calc(var(--rt-safeT) + 10px) 16px calc(var(--rt-safeB) + 16px); font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); animation: rtIn .22s ease both; }
#rtCrop[hidden] { display: none; }
.rt-crt { font-size: 16px; font-weight: 700; margin-bottom: 16px; }
.rt-crs { position: relative; width: min(100%, 360px); aspect-ratio: 1; overflow: hidden; border-radius: 22px; background: #000; touch-action: none; user-select: none; }
.rt-crs img { position: absolute; left: 0; top: 0; max-width: none; transform-origin: 0 0; pointer-events: none; }
.rt-crm { position: absolute; inset: 0; pointer-events: none; background: radial-gradient(circle closest-side, transparent 0 calc(100% - 1px), rgba(8,8,10,.62) 100%); }
.rt-crm::after { content: ""; position: absolute; inset: 0; border-radius: 50%; box-shadow: 0 0 0 2px rgba(209,224,90,.85) inset; }
.rt-crh { margin: 14px 0 10px; font-size: 12.5px; color: rgba(237,234,226,.56); text-align: center; max-width: 320px; }
.rt-crz { width: min(100%, 320px); accent-color: #d1e05a; }
#rtCrop .rt-btns { width: 100%; max-width: 360px; margin-top: auto; padding-top: 16px; }
#rtCrop .rt-btn.ghost { background: rgba(237,234,226,.1) !important; color: #edeae2 !important; border-color: rgba(237,234,226,.16) !important; }
html.rt-on .toast { z-index: 90; bottom: calc(var(--rt-safeB) + 96px); }
.fstep i { transition: width .5s var(--rt-e); }
.chart .spark i { transition: height .45s var(--rt-e); }
html.rt-stop #rt *, html.rt-stop #rt *::before, html.rt-stop #rt *::after { animation-play-state: paused !important; }

/* «Пригласить»: Партнёры · Личные, карточки продуктов как в кабинете партнёра */
.rt-invn { margin-top: 9px; min-height: 37px; }
.rt-inv { animation: rtInv .24s ease both; }
.rt-inv[hidden] { display: none; }
@keyframes rtInv { from { opacity: 0; transform: translateY(5px); } to { opacity: 1; transform: none; } }
.rt-gap { height: 9px; }
.rt-prod { display: flex; flex-direction: column; padding: 12px; margin-bottom: 9px; border-radius: 20px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-ptop { display: flex; align-items: center; gap: 10px; }
.rt-ptop > i { flex: 0 0 10px; width: 10px; height: 10px; border-radius: 50%; box-shadow: 0 0 12px currentColor; }
.rt-pname { flex: 1; min-width: 0; }
.rt-pname b { display: block; font-size: 14.5px; font-weight: 600; color: var(--rt-tx); }
.rt-pname span { display: block; font-size: 12px; line-height: 1.3; color: var(--rt-mist); }
.rt-pact { position: relative; flex: 0 0 auto; display: grid; justify-items: end; align-items: center; }
.rt-pact > * { grid-area: 1 / 1; transition: opacity .2s ease, transform .2s ease; }
.rt-get { min-height: 36px; padding: 0 12px !important; border-radius: 12px; background: var(--rt-lime) !important; color: #0b0b0c !important; font-size: 12.5px; font-weight: 700; white-space: nowrap; text-align: center !important; }
.rt-px { width: 34px; height: 34px; padding: 0 !important; border-radius: 50%; display: flex; align-items: center; justify-content: center !important; background: var(--rt-glass2) !important; border: 1px solid var(--rt-line) !important; color: var(--rt-mist) !important; opacity: 0; transform: scale(.8); pointer-events: none; }
.rt-px svg { width: 16px; height: 16px; stroke: currentColor; }
.rt-pact.got .rt-get { opacity: 0; transform: scale(.9); pointer-events: none; }
.rt-pact.got .rt-px { opacity: 1; transform: none; pointer-events: auto; }
.rt-px:active, .rt-get:active { transform: scale(.94); }
.rt-pbody { padding-top: 11px; }
.rt-plink { display: flex; gap: 10px; align-items: stretch; margin-bottom: 9px; }
.rt-plink .rt-lk { align-self: center; text-align: left !important; }
.rt-plink .rt-lk b { font-size: 13.5px; }
.rt-mat { flex: 0 0 104px; width: 104px; display: flex; flex-direction: column; gap: 6px; }
.rt-mseg { display: grid; grid-template-columns: 1fr 1fr; gap: 2px; padding: 2px; border-radius: 11px; background: var(--rt-glass2); border: 1px solid var(--rt-line); }
.rt-mseg button { height: 24px; padding: 0 !important; border-radius: 9px; font-size: 9.5px; font-weight: 700; letter-spacing: .05em; text-transform: uppercase; text-align: center !important; color: var(--rt-mist) !important; transition: background .2s ease, color .2s ease; }
.rt-mseg button.on { background: var(--rt-lime) !important; color: #0b0b0c !important; }
.rt-mv { position: relative; flex: 1 1 auto; min-height: 112px; padding: 0 !important; border-radius: 15px; overflow: hidden; display: flex; flex-direction: column; align-items: center; justify-content: center !important; gap: 8px; border: 1px solid var(--rt-line2); transition: transform .15s ease; animation: rtInv .22s ease both; }
.rt-mv:active { transform: scale(.97); }
.rt-mv.qr { background: #edeae2 !important; padding: 9px !important; }
.rt-mv.qr img { width: 100%; aspect-ratio: 1; display: block; }
.rt-mv.st { background: #0b0b0c !important; }
.rt-mv.st img { position: absolute; inset: 0; width: 100%; height: 100%; object-fit: cover; object-position: center top; display: block; }
.rt-mv.make { background: radial-gradient(120% 90% at 50% 0%, rgba(209,224,90,.16), rgba(209,224,90,.03) 70%) !important; border: 1px dashed rgba(209,224,90,.55); }
.rt-mv.make em { width: 32px; height: 32px; border-radius: 50%; background: var(--rt-lime) url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%230b0b0c' stroke-width='2.4' stroke-linecap='round'%3E%3Cpath d='M12 5v14M5 12h14'/%3E%3C/svg%3E") center / 16px no-repeat; box-shadow: 0 0 22px rgba(209,224,90,.45); }
.rt-mv.make span { font-size: 10.5px; font-weight: 700; line-height: 1.25; text-align: center; color: var(--rt-tx); }
.rt-mv.make.busy em { background: none; box-shadow: none; border: 2px solid var(--rt-line2); border-top-color: var(--rt-lime); animation: rtSpin .8s linear infinite; }
.rt-stbig { margin: 4px auto 10px; width: fit-content; max-width: 100%; border-radius: 18px; overflow: hidden; line-height: 0; }
.rt-stbig img { display: block; max-width: 100%; max-height: 58vh; width: auto; height: auto; }
.rt-gap2 { margin-top: 9px; }

/* ---------- Главная: лента и знания ---------- */
.rt-duo { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 8px; height: 228px; margin-top: 12px; }
.rt-log, .rt-kcard { min-width: 0; display: flex; flex-direction: column; border-radius: 19px; background: var(--rt-glass); border: 1px solid var(--rt-line); overflow: hidden; }
.rt-lh { flex: 0 0 auto; padding: 11px 12px 5px; font-size: 13px; font-weight: 700; color: var(--rt-tx); }
.rt-lscr { flex: 1 1 auto; min-height: 0; overflow-y: auto; padding: 0 12px 12px; scrollbar-width: none; --mt: 0px; --mb: 26px; -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 var(--mt), #000 calc(100% - var(--mb)), transparent 100%); mask-image: linear-gradient(180deg, transparent 0, #000 var(--mt), #000 calc(100% - var(--mb)), transparent 100%); }
.rt-lscr::-webkit-scrollbar { display: none; }
.rt-lg { position: relative; display: block; width: 100%; padding: 6px 0 6px 12px; }
.rt-lg > i { position: absolute; left: 0; top: 12px; width: 6px; height: 6px; border-radius: 50%; background: var(--rt-line2); }
.rt-lg.key > i { background: var(--rt-lime); }
.rt-lg b { display: block; font-size: 12.5px; font-weight: 700; line-height: 1.25; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; color: var(--rt-tx); }
.rt-lg span { display: block; font-size: 12px; line-height: 1.28; color: var(--rt-mist); }
.rt-lg small { display: block; margin-top: 1px; font-size: 10.5px; color: var(--rt-faint); }
.rt-lempty { padding: 4px 0; font-size: 12.5px; line-height: 1.38; color: var(--rt-mist); }
.rt-kcard { padding: 12px; }
.rt-kcard .rt-ic { margin-bottom: 9px; background: var(--rt-limeD); }
.rt-kcard b { font-size: 15.5px; font-weight: 700; line-height: 1.2; color: var(--rt-tx); }
.rt-kcard p { flex: 1 1 auto; margin: 5px 0 0; font-size: 12.5px; line-height: 1.36; color: var(--rt-mist); }
.rt-kbtn { position: relative; isolation: isolate; overflow: hidden; flex: 0 0 auto; display: flex !important; width: 100%; min-height: 42px; margin-top: 8px; align-items: center; justify-content: center !important; border-radius: 15px; color: var(--rt-tx) !important; font-size: 15px; font-weight: 700; text-align: center !important; transition: transform .14s ease; }
.rt-kbtn:active { transform: scale(.975); }
.rt-kbtn::before { content: ""; position: absolute; z-index: -2; left: -6%; top: 50%; width: 112%; aspect-ratio: 1; background: var(--rt-gm); animation: rtKb 5s linear infinite; will-change: transform; }
.rt-kbtn::after { content: ""; position: absolute; z-index: -1; inset: 1.5px; border-radius: 13.5px; background: #141418; }
html.light .rt-kbtn::after { background: #fff; }
@keyframes rtKb { from { transform: translateY(-50%) rotate(0deg); } to { transform: translateY(-50%) rotate(360deg); } }

/* ---------- Ментор ---------- */
.rt-mdays { display: flex; gap: 4px; margin-top: 8px; }
.rt-mdays i { flex: 0 0 auto; width: 26px; height: 26px; border-radius: 50%; display: flex; align-items: center; justify-content: center; font-style: normal; font-size: 10px; font-weight: 700; color: var(--rt-faint); background: var(--rt-glass2); }
.rt-mdays i.on { background: var(--rt-limeD); color: var(--rt-acc); }
.rt-mdays i.now { box-shadow: inset 0 0 0 1.5px var(--rt-lime); color: var(--rt-tx); }
.rt-mdays i.on.now { background: var(--rt-lime); color: #0b0b0c; }
.rt-row.on { border-color: var(--rt-lime); background: var(--rt-limeD); }
.rt-qs { padding: 11px 13px; border-radius: 15px; background: var(--rt-limeD); font-size: 14.5px; line-height: 1.4; color: var(--rt-tx); }
.rt-ring.big { flex: 0 0 74px; width: 74px; height: 74px; }
.rt-ring.big::before { inset: 5px; }
.rt-ring.big b { font-size: 18px; }
.rt-mh h2 { margin: 3px 0 4px; font-size: 24px; font-weight: 700; letter-spacing: -.01em; line-height: 1.05; color: var(--rt-tx); }
.rt-mmeta { display: flex; flex-wrap: wrap; gap: 3px 12px; font-size: 12.5px; color: var(--rt-mist); }
.rt-mmeta span { display: inline-flex; align-items: center; gap: 4px; white-space: nowrap; }
.rt-mmeta svg { width: 14px; height: 14px; color: var(--rt-acc); }
.rt-mc { font-size: 12px; font-weight: 700; color: var(--rt-acc); }
.rt-mstk { display: grid; }
.rt-mstk > * { grid-area: 1 / 1; min-width: 0; opacity: 0; visibility: hidden; transition: opacity .22s ease, visibility 0s .22s; }
.rt-mstk > .on { opacity: 1; visibility: visible; transition: opacity .22s ease, visibility 0s; }
.rt-mtw { overflow: hidden; transition: height .32s var(--rt-e); }
.rt-mti { transition: opacity .14s ease; }
.rt-mtip p { margin: 0; font-size: 15px; line-height: 1.4; color: var(--rt-tx); }
.rt-mact { margin-top: 10px; }
.rt-mact .rt-btns { margin-top: 0; }
.rt-mdone { display: flex; align-items: center; gap: 9px; font-size: 14.5px; font-weight: 600; color: var(--rt-tx); }
.rt-mdone svg { flex: 0 0 22px; width: 22px; height: 22px; color: var(--rt-sea); }
.rt-mchk { display: flex; width: 100%; align-items: center; gap: 10px; padding: 10px 12px; border-radius: 15px; background: var(--rt-glass); border: 1px solid var(--rt-line); font-size: 14px; color: var(--rt-tx); transition: transform .14s ease; }
.rt-mchk:active { transform: scale(.985); }
.rt-mchk > i { flex: 0 0 22px; width: 22px; height: 22px; border-radius: 50%; border: 1.5px solid var(--rt-line2); display: flex; align-items: center; justify-content: center; transition: background .18s ease, border-color .18s ease; }
.rt-mchk svg { width: 13px; height: 13px; stroke-width: 2.6; color: #0b0b0c; opacity: 0; }
.rt-mchk.on > i { background: var(--rt-lime); border-color: var(--rt-lime); }
.rt-mchk.on svg { opacity: 1; }
.rt-mchk.on span { color: var(--rt-mist); text-decoration: line-through; }
.rt-mchs { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 7px; }
.rt-mcb { display: flex; flex-direction: column; align-items: center; gap: 3px; padding: 11px 4px 9px; border-radius: 16px; background: var(--rt-glass); border: 1px solid var(--rt-line); text-align: center !important; transition: transform .14s ease; }
.rt-mcb:active { transform: scale(.97); }
.rt-mcb svg { width: 23px; height: 23px; color: var(--rt-mist); margin-bottom: 1px; }
.rt-mcb b { font-size: 12.5px; font-weight: 700; color: var(--rt-tx); }
.rt-mcb small { font-size: 11px; color: var(--rt-faint); }
.rt-mcb.on { border-color: rgba(209,224,90,.34); background: var(--rt-limeD); }
.rt-mcb.on svg, .rt-mcb.on small { color: var(--rt-acc); }
.rt-maud .rt-pl:first-child { margin-top: 0; }
.rt-mtags { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 12px; }
.rt-mtest { position: relative; }
.rt-mtest > b { display: block; padding-right: 42px; font-size: 15px; font-weight: 700; color: var(--rt-tx); }
.rt-mre { position: absolute; right: 10px; top: 10px; width: 34px; height: 34px; border-radius: 50%; display: flex !important; align-items: center; justify-content: center; background: var(--rt-glass2) !important; border: 1px solid var(--rt-line) !important; color: var(--rt-acc); transition: transform .14s ease; }
.rt-mre[hidden] { display: none !important; }
.rt-mre:active { transform: scale(.92) rotate(-30deg); }
.rt-mre svg { width: 17px; height: 17px; }
.rt-mtest p { margin: 4px 0 10px; min-height: 2.8em; font-size: 13px; line-height: 1.4; color: var(--rt-mist); }
.rt-mtest .rt-bar i, #rtQb { animation: none; transition: width .32s var(--rt-e); }
.rt-mhots { display: grid; grid-template-columns: minmax(0,1fr) minmax(0,1fr); gap: 7px; }
.rt-mhot { padding: 9px 11px; border-radius: 13px; background: var(--rt-glass2) !important; border: 1px solid var(--rt-line) !important; font-size: 13px; font-weight: 600; line-height: 1.22; color: var(--rt-tx); transition: transform .14s ease; }
.rt-mhot:active { transform: scale(.97); }
.rt-mfake { display: flex; width: 100%; align-items: center; gap: 8px; margin-top: 9px; padding: 5px 5px 5px 14px; border-radius: 22px; border: 1px solid var(--rt-line2) !important; font-size: 14.5px; color: var(--rt-faint); }
.rt-mfake span { flex: 1 1 auto; }
.rt-mfake i { flex: 0 0 36px; height: 36px; border-radius: 50%; background: var(--rt-lime); color: #0b0b0c; display: flex; align-items: center; justify-content: center; }
.rt-mfake svg { width: 17px; height: 17px; stroke-width: 2; }
.rt-qp { display: flex; flex-direction: column; gap: 7px; margin-bottom: 14px; font-size: 12.5px; color: var(--rt-mist); }
.rt-qin { animation: rtFwd .24s var(--rt-e) both; }
.rt-qt { min-height: 2.44em; margin-bottom: 12px; font-size: 19px; font-weight: 700; line-height: 1.22; color: var(--rt-tx); }
.rt-qo { min-height: 216px; align-content: start; }
.rt-inp { display: block; width: 100%; box-sizing: border-box; height: 48px; padding: 0 14px; border-radius: 15px; border: 1px solid var(--rt-line2); background: var(--rt-glass2); color: var(--rt-tx); font: inherit; font-size: 16px; outline: none; -webkit-user-select: text; user-select: text; }
.rt-inp:focus { border-color: var(--rt-lime); }
.rt-inp::placeholder { color: var(--rt-faint); }

/* окно «В разработке» */
#rtGate { position: fixed; inset: 0; z-index: 60; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(0,0,0,.6); color: var(--rt-tx); font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); animation: rtIn .22s ease both; }
#rtGate[hidden] { display: none; }
#rtGate button { font: inherit; border: 0; cursor: pointer; }
.rt-gc { width: 100%; max-width: 300px; display: flex; flex-direction: column; align-items: center; padding: 22px 20px 18px; border-radius: 24px; background: var(--rt-popbg); border: 1px solid var(--rt-line2); text-align: center; overflow: hidden; animation: rtPop .34s var(--rt-e) both; }
.rt-gc svg { fill: none; stroke: currentColor; stroke-width: 1.8; }
.rt-gc .rt-ic { width: 52px; height: 52px; flex: 0 0 52px; margin-bottom: 11px; background: var(--rt-limeD); }
.rt-gc .rt-ic svg { width: 26px; height: 26px; }
.rt-gc b { font-size: 19px; font-weight: 700; }
.rt-gc p { margin: 5px 0 16px; font-size: 14.5px; color: var(--rt-mist); }

/* чат Ментора */
#rtChat { position: fixed; left: 0; right: 0; top: 0; height: var(--tgh, 100dvh); z-index: 30; display: flex; flex-direction: column; background: var(--rt-popbg); color: var(--rt-tx); font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); font-size: 15px; line-height: 1.38; animation: rtIn .2s ease both; --kk: rgba(237,234,226,.13); --kkd: rgba(237,234,226,.3); --kkf: rgba(237,234,226,.06); --kkfd: rgba(237,234,226,.22); --kbg: rgba(14,14,16,.72); --kpv: #3a3a3f; --kpt: #fff; }
html.light #rtChat { --kk: #fff; --kkd: #d4d4cf; --kkf: rgba(20,20,22,.1); --kkfd: rgba(20,20,22,.2); --kbg: #e3e3de; }
#rtChat[hidden] { display: none; }
#rtChat button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; text-align: inherit; }
#rtChat svg { fill: none; stroke: currentColor; stroke-width: 1.8; }
.rt-chd { flex: 0 0 auto; display: flex; align-items: center; gap: 9px; padding: calc(var(--rt-safeT) + 8px) 14px 9px; border-bottom: 1px solid var(--rt-line); }
.rt-cbk { flex: 0 0 34px; width: 34px; height: 34px; display: flex !important; align-items: center; justify-content: center; border-radius: 50%; background: var(--rt-glass2) !important; }
.rt-cbk svg { width: 18px; height: 18px; transform: rotate(180deg); }
.rt-chd .rt-ic { flex: 0 0 36px; width: 36px; height: 36px; background: var(--rt-limeD); }
.rt-chd b { display: block; font-size: 15.5px; font-weight: 700; line-height: 1.15; }
.rt-chd small { display: block; font-size: 11.5px; color: var(--rt-faint); }
.rt-cw { position: relative; flex: 1 1 auto; min-height: 0; }
.rt-clog { position: absolute; inset: 0; overflow-y: auto; overscroll-behavior: contain; display: flex; flex-direction: column; gap: 8px; padding: 12px 14px 14px; scrollbar-width: none; -webkit-user-select: text; user-select: text; --mt: 0px; --mb: 0px; -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 var(--mt), #000 calc(100% - var(--mb)), transparent 100%); mask-image: linear-gradient(180deg, transparent 0, #000 var(--mt), #000 calc(100% - var(--mb)), transparent 100%); }
.rt-clog::-webkit-scrollbar { display: none; }
.rt-m { flex: 0 0 auto; max-width: 88%; padding: 9px 12px; border-radius: 16px; font-size: 14.5px; line-height: 1.42; white-space: pre-line; animation: rtRise .32s var(--rt-e) both; }
.rt-m.ai { align-self: flex-start; background: var(--rt-glass2); border: 1px solid var(--rt-line); border-bottom-left-radius: 5px; }
.rt-m.me { align-self: flex-end; background: var(--rt-lime); color: #0b0b0c; border-bottom-right-radius: 5px; font-weight: 500; }
.rt-mcopy { display: flex !important; align-items: center; gap: 6px; margin-top: 8px; height: 32px; padding: 0 11px !important; border-radius: 10px; border: 1px solid var(--rt-line2) !important; font-size: 12.5px; font-weight: 600; color: var(--rt-acc); }
.rt-mcopy svg { width: 14px; height: 14px; }
.rt-typ { display: flex; align-items: center; gap: 4px; }
.rt-typ span { margin-right: 4px; font-size: 12px; font-weight: 600; background: var(--rt-gem); background-size: 300% 100%; -webkit-background-clip: text; background-clip: text; color: transparent; animation: rtGrad 2.4s linear infinite; }
.rt-typ i { width: 6px; height: 6px; border-radius: 50%; background: var(--rt-mist); animation: rtDot 1.2s ease-in-out infinite; }
.rt-typ i:nth-of-type(2) { animation-delay: .15s; } .rt-typ i:nth-of-type(3) { animation-delay: .3s; }
@keyframes rtDot { 0%,60%,100% { opacity: .35; transform: none; } 30% { opacity: 1; transform: translateY(-3px); } }
.rt-cfoot { flex: 0 0 auto; padding: 8px 14px calc(var(--rt-safeB) + 10px); }
.rt-cfoot.kb { padding-bottom: 0; }
.rt-cstrip { display: flex; gap: 6px; overflow-x: auto; margin: 0 -14px; padding: 0 14px; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%); }
.rt-cstrip::-webkit-scrollbar { display: none; }
#rtChat .rt-cstrip .rt-mhot { flex: 0 0 auto; padding: 7px 11px; font-size: 12px; white-space: nowrap; }
.rt-cask { display: flex; align-items: center; gap: 8px; margin-top: 8px; padding: 5px 5px 5px 13px; border: 1px solid var(--rt-line2); border-radius: 22px; background: var(--rt-glass2); transition: border-color .2s; }
.rt-cask.on { border-color: rgba(209,224,90,.45); }
.rt-caskin { flex: 1 1 auto; min-width: 0; height: 36px; display: flex; align-items: center; overflow: hidden; white-space: pre; font-size: 16px; font-weight: 500; color: var(--rt-tx); cursor: text; -webkit-user-select: none; user-select: none; }
.rt-caskin .ph { color: var(--rt-faint); font-size: 14.5px; white-space: nowrap; }
.rt-caskin .caret { flex: 0 0 auto; display: inline-block; width: 2px; height: 20px; margin: 0 1px; border-radius: 1px; background: var(--rt-lime); animation: rtCaret 1s steps(1) infinite; }
@keyframes rtCaret { 50% { opacity: 0; } }
.rt-caskgo { flex: 0 0 36px; height: 36px; border-radius: 50%; background: var(--rt-lime) !important; color: #0b0b0c !important; display: flex !important; align-items: center; justify-content: center; }
.rt-caskgo svg { width: 17px; height: 17px; stroke-width: 2; }

/* своя клавиатура, как в Laya App */
.rt-kbd { margin: 8px -14px 0; padding: 7px 4px calc(8px + var(--rt-safeB)); background: var(--kbg); border-top: 1px solid var(--rt-line); touch-action: manipulation; -webkit-user-select: none; user-select: none; -webkit-touch-callout: none; }
.rt-k-row { display: flex; justify-content: center; gap: 5px; padding: 0 2px; margin-bottom: 9px; }
.rt-k-row:last-child { margin-bottom: 0; }
#rtChat .kk, #rtSKb .kk { flex: 1 1 0; min-width: 0; height: 42px; padding: 0; border-radius: 8px; background: var(--kk); color: var(--rt-tx); font-size: 19px; font-weight: 500; line-height: 1; display: grid; place-items: center; box-shadow: 0 1px 0 rgba(0,0,0,.35); transition: background .08s; touch-action: manipulation; -webkit-tap-highlight-color: transparent; text-align: center; }
#rtChat .kk.dn, #rtSKb .kk.dn { background: var(--kkd); }
#rtChat .kk svg, #rtSKb .kk svg { width: 21px; height: 21px; stroke-width: 1.7; }
#rtChat .kk.fn, #rtSKb .kk.fn { background: var(--kkf); font-size: 14px; font-weight: 600; }
#rtChat .kk.fn.dn, #rtSKb .kk.fn.dn { background: var(--kkfd); }
.rt-k-row.r2 .kk.sh, .rt-k-row.r2 .kk.bs { flex: 1.4 1 0; }
#rtChat .kk.sh.on, #rtSKb .kk.sh.on { background: var(--rt-tx); color: var(--rt-bg); }
#rtChat .kk.sh.on svg, #rtSKb .kk.sh.on svg { fill: currentColor; }
.rt-k-row.r3 .kk.fn { flex: 0 0 13%; }
.rt-k-row.r3 .kk.fn.hd { flex: 0 0 11%; }
#rtChat .kk.sp, #rtSKb .kk.sp { flex: 1 1 auto; font-size: 14px; color: var(--rt-mist); }
#rtChat .kk.go, #rtSKb .kk.go { background: var(--rt-lime) !important; color: #0b0b0c; }
#rtChat .kk.go svg, #rtSKb .kk.go svg { width: 19px; height: 19px; stroke-width: 2; }
.rt-k-row.r1:not(:has(.kk:nth-child(10))) { padding: 0 5%; }
.rt-k-emo { display: grid; grid-template-columns: repeat(8, 1fr); gap: 4px; height: 153px; overflow-y: auto; padding: 0 4px; margin-bottom: 9px; scrollbar-width: none; }
.rt-k-emo::-webkit-scrollbar { display: none; }
#rtChat .kk.em, #rtSKb .kk.em { height: 36px; font-size: 24px; background: none; box-shadow: none; }
#rtChat .kk.em.dn, #rtSKb .kk.em.dn { background: var(--kkf); }
.rt-k-pv { position: fixed; z-index: 70; left: 0; top: 0; min-width: 46px; height: 54px; padding: 0 8px; margin-top: -60px; transform: translateX(-50%) scale(.6); opacity: 0; display: grid; place-items: center; border-radius: 12px; background: #3a3a3f; color: #fff; font: 600 30px/1 var(--f-ui, system-ui, sans-serif); box-shadow: 0 8px 24px rgba(0,0,0,.5); pointer-events: none; transition: transform .08s ease-out, opacity .08s; }
.rt-k-pv.on { transform: translateX(-50%) scale(1); opacity: 1; }
.rt-k-pv.alt { background: var(--rt-lime); color: #0b0b0c; }
@media (max-width: 359px) { .rt-duo { height: 268px; } .rt-mdays i { width: 22px; height: 22px; font-size: 9px; } }

/* окно «Знания»: размер постоянный, страницы едут внутри */
.rt-sc.kn { height: calc(var(--tgh, 100dvh) * .88); min-height: 430px; }
.rt-sc.fx { height: calc(var(--tgh, 100dvh) * .8); }
.rt-sc.fx .rt-sbody { flex: 1 1 auto; min-height: 0; }
.rt-sc.kn .rt-sbody { flex: 1 1 auto; min-height: 0; padding: 0; overflow: hidden; -webkit-mask-image: none; mask-image: none; }
.rt-sc.kn .rt-st { overflow: hidden; }
#rtStT { display: block; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; transition: transform .34s var(--rt-e); }
.rt-sc.kn.in #rtStT { transform: translateX(38px); }
.rt-knb { position: absolute; left: 12px; top: 9px; width: 32px; height: 32px; border-radius: 50%; display: flex !important; align-items: center; justify-content: center; background: var(--rt-glass2) !important; opacity: 0; pointer-events: none; transform: translateX(-10px); transition: opacity .22s ease, transform .34s var(--rt-e); }
.rt-knb svg { width: 17px; height: 17px; transform: rotate(180deg); }
.rt-sc.kn.in .rt-knb { opacity: 1; pointer-events: auto; transform: none; }
.rt-knw { position: relative; height: 100%; overflow: hidden; }
.rt-knp { position: absolute; inset: 0; overflow-y: auto; overscroll-behavior: contain; padding: 10px 18px calc(var(--rt-safeB) + 26px); scrollbar-width: none; will-change: transform; -webkit-mask-image: linear-gradient(180deg, transparent 0, #000 12px, #000 calc(100% - 24px), transparent 100%); mask-image: linear-gradient(180deg, transparent 0, #000 12px, #000 calc(100% - 24px), transparent 100%); }
.rt-knp::-webkit-scrollbar { display: none; }
.rt-knp.l { transition: transform .36s var(--rt-e), opacity .24s ease, visibility 0s; }
.rt-knp.d { transform: translateX(100%); visibility: hidden; transition: transform .36s var(--rt-e), visibility 0s .36s; }
.rt-sc.kn.in .rt-knp.l { transform: translateX(-100%); opacity: 0; visibility: hidden; transition: transform .36s var(--rt-e), opacity .2s ease, visibility 0s .36s; }
.rt-sc.kn.in .rt-knp.d { transform: none; visibility: visible; transition: transform .36s var(--rt-e), visibility 0s; }

/* Партнёры: график постоянного размера над кнопками */
.rt-pw { height: 172px; box-sizing: border-box; display: flex; flex-direction: column; margin-bottom: 10px; padding: 11px 13px 10px; }
.rt-pwh { flex: 0 0 auto; display: flex; align-items: center; gap: 9px; }
.rt-pwh > b { font-size: 32px; font-weight: 700; line-height: 1; letter-spacing: -.02em; color: var(--rt-tx); }
.rt-pwh > div:not(.rt-pwl) { min-width: 0; flex: 1 1 auto; }
.rt-pwh span, .rt-pwh small { display: block; }
.rt-pwh > div:not(.rt-pwl) span { font-size: 13px; font-weight: 700; line-height: 1.2; color: var(--rt-tx); }
.rt-pwh small { font-size: 11.5px; line-height: 1.25; color: var(--rt-mist); white-space: nowrap; }
.rt-pwl { flex: 0 0 auto; display: flex; flex-direction: column; gap: 3px; font-size: 11.5px; color: var(--rt-mist); }
.rt-pwl span { display: flex; align-items: center; gap: 5px; }
.rt-pwl i { width: 9px; height: 9px; border-radius: 3px; }
.rt-pwl i.a { background: var(--rt-lime); } .rt-pwl i.b { background: var(--rt-faint); }
.rt-pwc { flex: 1 1 auto; min-height: 0; display: flex; align-items: stretch; gap: 4px; margin-top: 9px; border-bottom: 1px solid var(--rt-line2); }
.rt-pwk { flex: 1 1 0; min-width: 0; display: flex !important; flex-direction: column; justify-content: flex-end; border-radius: 5px 5px 0 0; transition: background .16s ease; -webkit-tap-highlight-color: transparent; }
.rt-pwk.sel { background: var(--rt-glass2) !important; }
.rt-pwk u, .rt-pwk b { display: block; flex: 0 0 auto; width: 100%; height: 0; transition: height .42s var(--rt-e); }
.rt-pwk u { background: var(--rt-faint); border-radius: 4px 4px 0 0; }
.rt-pwk b { background: var(--rt-lime); border-radius: 4px 4px 0 0; }
.rt-pwk u + b { border-radius: 0; }
.rt-pw .rt-axis { flex: 0 0 auto; margin-top: 6px; height: 15px; line-height: 15px; white-space: nowrap; }
html.light .rt-pwk b, html.light .rt-pwl i.a { background: #a4b628; }

.rt-plh { display: block; margin-top: 5px; font-size: 11.5px; line-height: 1.3; color: var(--rt-mist); }
.rt-pst { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 7px; margin-top: 2px; }
.rt-pst div { padding: 9px 10px; border-radius: 14px; background: var(--rt-glass2); border: 1px solid var(--rt-line); }
.rt-pst b { display: block; font-size: 21px; font-weight: 700; line-height: 1.05; color: var(--rt-tx); }
.rt-pst span { display: block; margin-top: 2px; font-size: 11.5px; color: var(--rt-mist); }
.rt-refl .rt-plink { margin-bottom: 0; }

/* Фон Gemini: те же цвета и то же движение, но размытие сделано заранее в маленьких картинках.
   Телефону не надо считать блюр на весь экран 60 раз в секунду. */
html.gem .gembg::before { filter: none; background: url(/assets/gem/c.webp) center / 100% 100% no-repeat; }
html.gem .gembg i { filter: none; background-position: center; background-size: 100% 100%; background-repeat: no-repeat; }
html.gem .gembg .g1 { background-image: url(/assets/gem/g1.webp); }
html.gem .gembg .g2 { background-image: url(/assets/gem/g2.webp); }
html.gem .gembg .g3 { background-image: url(/assets/gem/g3.webp); }
html.gem .gembg .g4 { background-image: url(/assets/gem/g4.webp); }
/* Чат закрывает фон целиком: пока он открыт, фон не двигается. */
html.rt-still .gembg::before, html.rt-still .gembg i { animation-play-state: paused; }
/* Свечение вокруг аватарки: тоже готовая картинка, меняется только прозрачность. */
.rt-av::after { inset: -14px; border-radius: 0; background: url(/assets/gem/a.webp) center / 100% 100% no-repeat; filter: none; }

/* Полоса прокрутки нигде не видна. На iPhone режим touch мешает её скрыть, плавная прокрутка там работает и без него. */
*, *::before, *::after { -webkit-overflow-scrolling: auto !important; scrollbar-width: none !important; -ms-overflow-style: none; }
*::-webkit-scrollbar { display: none !important; width: 0 !important; height: 0 !important; background: transparent; }


/* ---------- цвета этапов, как в You Shepel ---------- */
.rt-s0 { --c: #a29ea8; --cd: rgba(162,158,168,.16); --cf: rgba(162,158,168,.07); }
.rt-s1 { --c: #3fbfe8; --cd: rgba(63,191,232,.22); --cf: rgba(63,191,232,.09); }
.rt-s2 { --c: #5a9bf6; --cd: rgba(90,155,246,.22); --cf: rgba(90,155,246,.09); }
.rt-s3 { --c: #7f93f2; --cd: rgba(127,147,242,.22); --cf: rgba(127,147,242,.09); }
.rt-s4 { --c: #9c87e6; --cd: rgba(156,135,230,.22); --cf: rgba(156,135,230,.09); }
.rt-s5 { --c: #b58be0; --cd: rgba(181,139,224,.22); --cf: rgba(181,139,224,.09); }
.rt-s6 { --c: #d585cf; --cd: rgba(213,133,207,.22); --cf: rgba(213,133,207,.09); }
.rt-s7 { --c: #f06cb4; --cd: rgba(240,108,180,.22); --cf: rgba(240,108,180,.09); }
.rt-s8 { --c: #ee6f90; --cd: rgba(238,111,144,.22); --cf: rgba(238,111,144,.09); }

/* ---------- контейнер выбора продуктов ---------- */
.rt-cs { position: sticky; top: calc(var(--rt-safeT) + 6px); z-index: 5; isolation: isolate; margin: 0 0 11px; padding: 1.5px; border-radius: 19px; overflow: hidden; }
.rt-cs > i { position: absolute; top: 0; bottom: 0; left: 0; width: 400%; z-index: -2; background: var(--rt-gem); animation: rtGemT 7s ease-in-out infinite; will-change: transform; }
.rt-csin { display: flex; align-items: center; gap: 9px; min-height: 60px; padding: 8px 9px 8px 11px; border-radius: 17.5px; background: rgba(18,18,22,.96); }
html.light .rt-csin { background: rgba(255,255,255,.98); }
.rt-csi { flex: 0 0 24px; display: grid; place-items: center; color: var(--rt-acc); }
.rt-csi svg { width: 21px; height: 21px; stroke: currentColor; }
.rt-csi.n { font-size: 24px; font-weight: 700; line-height: 1; }
.rt-cst { flex: 1 1 0; min-width: 0; display: flex; flex-direction: column; gap: 2px; }
.rt-cst b { font-size: 14px; font-weight: 700; color: var(--rt-tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-cs.on .rt-cst b { color: var(--rt-acc); }
.rt-cst span { font-size: 12px; line-height: 1.2; color: var(--rt-mist); }
.rt-cst u { text-decoration: underline; text-underline-offset: 2px; color: var(--rt-tx); }
.rt-csall { flex: 0 0 auto; height: 38px; padding: 0 11px !important; border-radius: 12px; background: var(--rt-glass2) !important; border: 1px solid var(--rt-line2) !important; color: var(--rt-tx) !important; font-size: 12.5px; font-weight: 700; white-space: nowrap; }
.rt-csb { flex: 0 0 40px; height: 40px; padding: 0 !important; border-radius: 12px; background: var(--rt-lime) !important; display: grid !important; place-items: center; color: #0b0b0c !important; }
.rt-csb svg { width: 18px; height: 18px; stroke: currentColor; }
.rt-csx { flex: 0 0 26px; height: 40px; padding: 0 !important; display: grid !important; place-items: center; color: var(--rt-mist) !important; background: none !important; }
.rt-csx svg { width: 15px; height: 15px; stroke: currentColor; }
.rt-ck { position: relative; flex: 0 0 26px; width: 26px; height: 26px; padding: 0 !important; border-radius: 9px; border: 1.5px solid var(--rt-line2) !important; background: var(--rt-glass2) !important; display: grid !important; place-items: center; transition: background .2s ease, border-color .2s ease, transform .14s ease; }
.rt-ck::after { content: ""; position: absolute; inset: -9px; }
.rt-ck:active { transform: scale(.9); }
.rt-ck i { width: 12px; height: 6px; border-left: 2.5px solid #0b0b0c; border-bottom: 2.5px solid #0b0b0c; transform: rotate(-45deg) translate(1px, -1px) scale(0); transition: transform .2s var(--rt-e); }
.rt-ck.on { background: var(--rt-lime) !important; border-color: var(--rt-lime) !important; }
.rt-ck.on i { transform: rotate(-45deg) translate(1px, -1px) scale(1); }
.rt-pdfl { display: grid; gap: 8px; margin-top: 11px; }
.rt-pdfr { display: flex; align-items: center; gap: 8px; }
.rt-pdfv { min-height: 36px; padding: 0 11px !important; border-radius: 12px; background: var(--rt-glass2) !important; border: 1px solid var(--rt-line) !important; color: var(--rt-tx) !important; font-size: 12.5px; font-weight: 700; white-space: nowrap; }

/* ---------- кнопки боковым скроллом ---------- */
.rt-chips { position: relative; display: flex; gap: 6px; margin: 0 -14px 9px; padding: 0 14px; overflow-x: auto; scrollbar-width: none; -webkit-mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%); mask-image: linear-gradient(90deg, transparent 0, #000 14px, #000 calc(100% - 14px), transparent 100%); }
.rt-chips::-webkit-scrollbar { display: none; }
.rt-cp { position: absolute; left: 0; top: 0; width: 0; height: 0; border-radius: 999px; background: var(--rt-lime); transition: left .42s cubic-bezier(.34,1.3,.44,1), width .42s cubic-bezier(.34,1.3,.44,1); }
.rt-chip { position: relative; z-index: 1; flex: 0 0 auto; min-height: 34px; padding: 0 13px !important; border-radius: 999px; font-size: 12.5px; font-weight: 600; white-space: nowrap; background: var(--rt-glass) !important; border: 1px solid var(--rt-line) !important; color: var(--rt-mist) !important; transition: color .25s ease; }
.rt-chip.on { background: none !important; border-color: transparent !important; color: #0b0b0c !important; }
.rt-st3 { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 7px; margin-bottom: 9px; }
.rt-st3 div { padding: 10px 11px 9px; border-radius: 16px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-st3 b { display: block; font-size: 22px; line-height: 1.05; font-weight: 700; color: var(--rt-tx); }
.rt-st3 span { display: block; margin-top: 3px; font-size: 11.5px; line-height: 1.2; font-weight: 600; color: var(--rt-mist); }

/* ---------- поиск со своей клавиатурой ---------- */
.rt-srch { display: flex; align-items: center; gap: 8px; min-height: 42px; padding: 0 12px; margin-bottom: 9px; border-radius: 14px; background: var(--rt-glass); border: 1px solid var(--rt-line); transition: border-color .2s ease; }
.rt-srch.on { border-color: rgba(209,224,90,.5); }
.rt-srt { flex: 1 1 auto; min-width: 0; display: flex; align-items: center; overflow: hidden; white-space: pre; font-size: 14px; color: var(--rt-tx); }
.rt-srt .ph { color: var(--rt-faint); font-size: 13.5px; white-space: nowrap; }
.rt-srcar { flex: 0 0 auto; width: 2px; height: 18px; margin: 0 1px; border-radius: 1px; background: var(--rt-lime); animation: rtCaret 1s step-end infinite; }
.rt-srx { flex: 0 0 26px; height: 26px; padding: 0 !important; border-radius: 50%; display: grid !important; place-items: center; background: var(--rt-glass2) !important; color: var(--rt-mist) !important; }
.rt-srx[hidden] { display: none !important; }
.rt-srx svg { width: 13px; height: 13px; stroke: currentColor; }
#rtSKb { position: fixed; left: 0; right: 0; bottom: 0; z-index: 9; --kk: #2a2a2e; --kkd: #48484d; --kkf: rgba(237,234,226,.13); --kkfd: rgba(237,234,226,.24); --kbg: #17171a; color: var(--rt-tx); font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); }
html.light #rtSKb { --kk: #fff; --kkd: #d4d4cf; --kkf: rgba(20,20,22,.1); --kkfd: rgba(20,20,22,.2); --kbg: #e3e3de; }
#rtSKb[hidden] { display: none; }
#rtSKb button { font: inherit; color: inherit; background: none; border: 0; padding: 0; cursor: pointer; text-align: inherit; }
#rtSKb svg { fill: none; stroke: currentColor; stroke-width: 1.8; }
#rtSKb .rt-kbd { margin: 0; }
html.rt-skb .rt-nav, html.rt-skb .rt-edge.b { display: none; }
html.rt-skb .rt-scroll { padding-bottom: calc(var(--rt-safeB) + 300px); }

/* ---------- карточки списка ---------- */
.rt-cards { display: flex; flex-direction: column; gap: 8px; }
.rt-cards > .rt-dh:first-child { margin-top: 4px; }
.rt-dh { margin: 10px 2px 0; }
.rt-lcd { position: relative; overflow: hidden; isolation: isolate; display: flex !important; flex-direction: column; gap: 8px; width: 100%; padding: 11px 12px 10px !important; border-radius: 19px; text-align: left !important; color: inherit; background: var(--rt-glass) !important; border: 1px solid var(--rt-line) !important; transition: transform .14s ease; }
.rt-lcd:active { transform: scale(.985); }
.rt-lcd::before { content: ""; position: absolute; z-index: -1; left: -60px; top: -80px; width: 200px; height: 180px; border-radius: 50%; background: radial-gradient(circle, var(--cd), transparent 70%); pointer-events: none; }
.rt-lcd-h { display: flex; align-items: center; gap: 10px; }
.rt-lcd-t { flex: 1; min-width: 0; }
.rt-lcd-t b { display: block; font-size: 15px; line-height: 1.2; font-weight: 700; color: var(--rt-tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-lcd-t p { margin: 1px 0 0; font-size: 12.5px; line-height: 1.25; color: var(--rt-mist); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-lcd-t em { font-style: normal; font-weight: 600; color: var(--rt-acc); }
.rt-lcd-h time { flex: none; align-self: flex-start; padding-top: 2px; font-size: 11.5px; color: var(--rt-faint); }
.rt-lcd-f { display: flex; align-items: center; gap: 9px; }
.rt-lcd-b { flex: 1; display: grid; grid-template-columns: repeat(var(--t, 8), 1fr); gap: 3px; }
.rt-lcd-b i { height: 5px; border-radius: 3px; background: var(--cf); }
.rt-lcd-b i.on { background: var(--c); }
.rt-lcd-f span { flex: none; max-width: 56%; font-size: 12px; font-weight: 700; color: var(--c); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-lcd-l { padding: 7px 10px; border-radius: 11px; font-size: 13px; line-height: 1.3; color: var(--rt-tx); background: var(--rt-glass2); display: -webkit-box; -webkit-line-clamp: 2; -webkit-box-orient: vertical; overflow: hidden; }
.rt-lcd-n { display: flex; align-items: center; justify-content: space-between; gap: 8px; font-size: 12px; color: var(--rt-mist); }
.rt-lcd-n > span { flex: 0 1 auto; min-width: 0; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-lcd-id { flex: 1 1 0; min-width: 0; text-align: center; font-style: normal; font-weight: 600; color: var(--rt-tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-lcd-n u { flex: none; text-decoration: none; padding: 3px 8px; border-radius: 8px; font-size: 11.5px; font-weight: 700; color: var(--c); background: var(--cd); }
.rt-lcd-n u.late { color: #fa6f5c; background: rgba(250,111,92,.18); }
.rt-lcd-n u.no { color: var(--rt-faint); background: none; border: 1px dashed var(--rt-line2); }

/* ---------- раскрытая карточка клиента и партнёра ---------- */
.rt-sc.rt-full { height: calc(var(--tgh, 100dvh) - var(--rt-safeT) - 44px); }
.rt-sc.rt-full .rt-st { display: block; padding: 13px 14px 8px; }
.rt-sc.rt-full #rtStT { display: block; }
.rt-cbk { float: left; width: 30px; height: 30px; margin: 0 8px 0 0; padding: 0 !important; border-radius: 50%; display: grid !important; place-items: center; background: var(--rt-glass2) !important; }
.rt-cbk svg { width: 15px; height: 15px; transform: scaleX(-1); stroke: currentColor; fill: none; stroke-width: 2; }
.rt-cth-n { padding-right: 40px; font-size: 20px; line-height: 1.15; font-weight: 700; letter-spacing: -.01em; color: var(--rt-tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-cth-p { margin-top: 2px; font-size: 13px; line-height: 1.2; font-weight: 400; color: var(--rt-mist); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-cth-p em { font-style: normal; font-weight: 600; color: var(--rt-acc); }
.rt-cth-m { display: flex; align-items: center; gap: 7px; margin-top: 5px; font-size: 12px; font-weight: 400; color: var(--rt-mist); min-width: 0; }
.rt-cth-m u { flex: none; text-decoration: none; padding: 2px 7px; border-radius: 7px; font-size: 11.5px; font-weight: 700; color: var(--c); background: var(--cd); }
.rt-cth-m span { white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-cfn { display: flex; margin: 10px -14px 0; padding: 0 14px; overflow-x: auto; scrollbar-width: none; }
.rt-cfn::-webkit-scrollbar { display: none; }
.rt-cfs { flex: none; min-width: 84px; height: 40px; margin-right: -5px; padding: 0 15px 0 17px; display: flex; flex-direction: column; justify-content: center; gap: 1px; color: var(--c); background: var(--cf); -webkit-clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 50%, calc(100% - 9px) 100%, 0 100%, 9px 50%); clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 50%, calc(100% - 9px) 100%, 0 100%, 9px 50%); }
.rt-cfs:first-child { padding-left: 12px; -webkit-clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 50%, calc(100% - 9px) 100%, 0 100%); clip-path: polygon(0 0, calc(100% - 9px) 0, 100% 50%, calc(100% - 9px) 100%, 0 100%); border-radius: 10px 0 0 10px; }
.rt-cfs:last-child { margin-right: 0; }
.rt-cfs b { font-size: 12px; line-height: 1.15; font-weight: 700; white-space: nowrap; color: inherit; }
.rt-cfs span { font-size: 10.5px; line-height: 1.15; font-weight: 400; opacity: .8; white-space: nowrap; }
.rt-cfs:not(.done):not(.now):not(.x) b { opacity: .62; }
.rt-cfs.done { background: var(--cd); }
.rt-cfs.now { color: #0b0b0c; background: var(--c); }
.rt-cfs.x { color: #0b0b0c; background: var(--rt-coral); }
.rt-ctabs { display: flex; gap: 6px; margin-top: 9px; }
.rt-ctabs button { flex: 1 1 auto; height: 32px; padding: 0 6px !important; border-radius: 11px; font-size: 12.5px; font-weight: 700; text-align: center !important; color: var(--rt-mist) !important; background: var(--rt-glass) !important; border: 1px solid var(--rt-line) !important; white-space: nowrap; }
.rt-ctabs button.on { color: var(--c) !important; background: var(--cd) !important; border-color: transparent !important; }
.rt-next { position: relative; overflow: hidden; padding: 12px 14px 13px; border-radius: 19px; margin-bottom: 8px; background: linear-gradient(150deg, var(--cd), var(--cf) 70%); border: 1px solid var(--cd); }
.rt-next.late { --c: #fa6f5c; --cd: rgba(250,111,92,.24); --cf: rgba(250,111,92,.1); }
.rt-next-l { font-size: 12.5px; font-weight: 700; color: var(--rt-mist); }
.rt-next-h { margin-top: 2px; font-size: 22px; line-height: 1.15; font-weight: 700; letter-spacing: -.01em; color: var(--c); }
.rt-next p { margin: 5px 0 0; font-size: 14px; line-height: 1.3; color: var(--rt-tx); }
.rt-want { padding: 12px 14px; border-radius: 19px; background: var(--rt-glass); border: 1px solid var(--rt-line); margin-bottom: 8px; }
.rt-want small { display: block; font-size: 12.5px; font-weight: 700; color: var(--rt-mist); }
.rt-want > b { display: block; margin-top: 2px; font-size: 19px; line-height: 1.2; font-weight: 700; color: var(--rt-tx); overflow-wrap: anywhere; }
.rt-want > b.no { font-size: 15px; font-weight: 600; color: var(--rt-faint); }
.rt-want-t { display: flex; flex-wrap: wrap; gap: 6px; margin-top: 8px; }
.rt-want-t i, .rt-meta i { font-style: normal; padding: 4px 9px; border-radius: 9px; font-size: 12px; color: var(--rt-mist); background: var(--rt-glass2); overflow-wrap: anywhere; }
.rt-ai { padding: 12px 14px; border-radius: 19px; margin-bottom: 8px; background: linear-gradient(150deg, rgba(155,114,203,.2), rgba(106,168,255,.08)); border: 1px solid rgba(155,114,203,.3); }
.rt-ai small { display: flex; align-items: center; gap: 6px; font-size: 12.5px; font-weight: 700; color: #c7a8ee; }
html.light .rt-ai small { color: #6d4aa0; }
.rt-ai small svg { width: 14px; height: 14px; stroke: currentColor; fill: none; stroke-width: 2; }
.rt-ai p { margin: 5px 0 0; font-size: 13.5px; line-height: 1.35; color: var(--rt-tx); }
.rt-obj { margin-top: 8px; padding: 8px 10px; border-radius: 12px; font-size: 13px; line-height: 1.25; color: var(--rt-tx); background: rgba(250,135,107,.13); }
.rt-obj span { display: block; font-size: 11.5px; font-weight: 700; color: var(--rt-coral); }
.rt-meta { display: flex; flex-wrap: wrap; gap: 6px; margin: 10px 0 0; }
.rt-cnote { margin-top: 10px; }
.rt-ctl { position: relative; }
.rt-ctl::before { content: ""; position: absolute; left: 14px; top: 8px; bottom: 14px; width: 2px; background: var(--rt-line2); }
.rt-cti { position: relative; display: grid; grid-template-columns: 30px minmax(0,1fr) auto; column-gap: 10px; padding-bottom: 12px; }
.rt-cti > i { z-index: 1; width: 30px; height: 30px; border-radius: 10px; display: grid; place-items: center; background: var(--rt-pop); border: 1px solid var(--rt-line2); color: var(--rt-mist); }
.rt-cti > i svg { width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 2; }
.rt-cti.st > i { color: #0b0b0c; background: var(--c, var(--rt-lime)); border-color: transparent; }
.rt-cti b { display: block; font-size: 13.5px; line-height: 1.25; font-weight: 600; color: var(--rt-tx); }
.rt-cti p { margin: 2px 0 0; font-size: 12.5px; line-height: 1.3; color: var(--rt-mist); }
.rt-cti time { font-size: 11.5px; color: var(--rt-faint); padding-top: 1px; }
.rt-cchat { display: flex; flex-direction: column; gap: 6px; }
.rt-cday { align-self: center; margin: 6px 0 3px; padding: 3px 9px; border-radius: 8px; font-size: 12px; font-weight: 600; color: var(--rt-mist); background: var(--rt-glass); }
.rt-cmsg { max-width: 84%; padding: 8px 11px 5px; border-radius: 15px; font-size: 13.5px; line-height: 1.3; color: var(--rt-tx); }
.rt-cmsg small { display: block; margin-bottom: 2px; font-size: 11.5px; font-weight: 700; color: var(--rt-acc); }
.rt-cmsg time { display: block; margin-top: 2px; text-align: right; font-size: 10.5px; color: var(--rt-faint); }
.rt-cmsg.c { align-self: flex-start; background: var(--rt-glass2); border-bottom-left-radius: 5px; }
.rt-cmsg.b, .rt-cmsg.m { align-self: flex-end; background: rgba(209,224,90,.13); border-bottom-right-radius: 5px; }
.rt-cmsg.m { background: rgba(111,214,201,.14); }

/* ---------- календарь ---------- */
.rt-cm { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-bottom: 8px; }
.rt-cm b { font-size: 16px; font-weight: 700; color: var(--rt-tx); }
.rt-cmb { flex: 0 0 34px; width: 34px; height: 34px; padding: 0 !important; border-radius: 11px; display: grid !important; place-items: center; background: var(--rt-glass) !important; border: 1px solid var(--rt-line) !important; color: var(--rt-tx) !important; }
.rt-cmb svg { width: 15px; height: 15px; stroke: currentColor; fill: none; stroke-width: 2; }
.rt-cmb svg.rev { transform: scaleX(-1); }
.rt-cal { padding: 9px 7px 7px; border-radius: 20px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-cw { display: grid; grid-template-columns: repeat(7, minmax(0,1fr)); margin-bottom: 4px; text-align: center; font-size: 11px; color: var(--rt-faint); }
.rt-cg { display: grid; grid-template-columns: repeat(7, minmax(0,1fr)); gap: 2px; }
.rt-cd { height: 46px; padding: 7px 0 0 !important; border-radius: 11px; display: flex !important; flex-direction: column; align-items: center; gap: 5px; border: 1px solid transparent !important; background: none !important; color: var(--rt-tx) !important; transition: transform .14s ease; }
.rt-cd:active { transform: scale(.94); }
.rt-cd span { font-size: 13.5px; font-weight: 600; line-height: 1; }
.rt-cd em { display: flex; gap: 2px; height: 5px; font-style: normal; }
.rt-cd em i { width: 5px; height: 5px; border-radius: 50%; }
.rt-cd.out { opacity: .32; }
.rt-cd.has { background: var(--rt-glass2) !important; }
.rt-cd.td { background: var(--rt-lime) !important; color: #0b0b0c !important; }
.rt-cd.td em i { box-shadow: 0 0 0 1px rgba(0,0,0,.35); }
.rt-cfl { display: flex; flex-wrap: wrap; gap: 6px; }
.rt-cf { display: inline-flex !important; align-items: center; gap: 7px; min-height: 34px; padding: 0 12px !important; border-radius: 999px; font-size: 12.5px; font-weight: 600; background: var(--rt-glass) !important; border: 1px solid var(--rt-line) !important; color: var(--rt-tx) !important; transition: opacity .2s ease; }
.rt-cf i { width: 8px; height: 8px; border-radius: 50%; }
.rt-cf em { font-style: normal; color: var(--rt-faint); }
.rt-cf.on { border-color: var(--rt-line2) !important; background: var(--rt-glass2) !important; }
.rt-cf.off { opacity: .5; }
.rt-dayr { padding: 10px 12px; border-radius: 16px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-dayt { display: flex; align-items: center; gap: 9px; font-size: 14px; font-weight: 600; color: var(--rt-tx); }
.rt-dayt i { flex: 0 0 9px; width: 9px; height: 9px; border-radius: 50%; }
.rt-dayt span { flex: 1; min-width: 0; }
.rt-dayt b { font-size: 18px; font-weight: 700; }
.rt-dayr p { margin: 5px 0 0; font-size: 12.5px; line-height: 1.35; color: var(--rt-mist); }

/* большие верхние тумблеры: высота как у кнопки «Поделиться» */
.rt-seg.big { border-radius: 15px; }
.rt-seg.big button { min-height: 46px; padding: 0 2px; font-size: 14px; }
.rt-seg.big > i::before { border-radius: 12px; }
.rt-cm { min-height: 54px; box-sizing: border-box; padding: 3px; border-radius: 15px; background: var(--rt-glass); border: 1px solid var(--rt-line); margin-bottom: 10px; }
.rt-cmb { flex: 0 0 46px; width: 46px; height: 46px; border-radius: 12px; }

/* иконки в тумблерах, как в You Shepel */
.rt-seg button:has(> .sgi) { display: flex; align-items: center; justify-content: center; gap: 5px; }
.rt-seg .sgi { flex: none; width: 15px; height: 15px; fill: none; stroke: currentColor; stroke-width: 2; opacity: .56; transition: opacity .32s ease; }
.rt-seg.big .sgi { width: 18px; height: 18px; }
.rt-seg button.on .sgi { opacity: 1; }
/* виджет по дням, как в «Пульсе» */
.rt-wk { padding: 11px 12px 9px; margin-bottom: 9px; border-radius: 20px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-wk-s { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 8px; }
.rt-wk-s b { display: block; font-size: 22px; line-height: 1.05; font-weight: 700; color: var(--rt-tx); }
.rt-wk-s span { display: block; margin-top: 2px; font-size: 12px; font-weight: 600; color: var(--rt-mist); }
.rt-wk-l { display: flex; gap: 12px; margin: 10px 0 6px; font-size: 12px; color: var(--rt-mist); }
.rt-wk-l span { display: inline-flex; align-items: center; gap: 5px; }
.rt-wk-l i { width: 8px; height: 8px; border-radius: 50%; }
.rt-wk-l i.l { background: linear-gradient(135deg, #24c1e0, #4285f4); }
.rt-wk-l i.s { background: linear-gradient(135deg, #b58be0, #7b6ad0); }
.rt-wk-l i.a { background: linear-gradient(135deg, #f06cb4, #d96570); }
.rt-wk svg { display: block; width: 100%; height: auto; overflow: visible; }
.rt-wk-t { fill: var(--rt-glass2); }
.rt-wk-b { transform-box: fill-box; transform-origin: 50% 100%; animation: rtWkUp .5s cubic-bezier(.2,.8,.2,1) both; }
.rt-wk-n { font: 700 25px "Tilda Sans", sans-serif; fill: var(--rt-tx); }
@keyframes rtWkUp { from { transform: scaleY(0); opacity: 0; } to { transform: none; opacity: 1; } }
.rt-wk-w { display: grid; grid-template-columns: repeat(7, 1fr); margin-top: 5px; text-align: center; font-size: 12px; color: var(--rt-faint); }
.rt-wk-w .now { color: #c7a8ee; font-weight: 700; }
html.light .rt-wk-w .now { color: #6d4aa0; }
.rt-wk svg, .rt-wk svg * { stroke: none; }
.rt-mv.pv { flex: 0 0 112px; height: 112px; min-height: 112px; background: #0b0b0c !important; }
.rt-mv.pv img { display: block; width: 100%; height: 100%; object-fit: cover; }

.rt-wk-l i.g { background: linear-gradient(135deg, #6fd6c9, #3aa99a); }
.rt-card .rt-wk-l { flex-wrap: wrap; gap: 4px 12px; margin-top: 0; }
.rt-chart { min-height: 84px; }
.rt-chart svg { display: block; width: 100%; height: auto; overflow: visible; }
.rt-chart svg, .rt-chart svg * { stroke: none; }
/* цвета четырёх контейнеров главной, те же, что в графике и календаре */
.rt-w { --wc: var(--rt-acc); overflow: hidden; isolation: isolate; }
.rt-w::before { content: ""; position: absolute; z-index: -1; right: -40px; top: -50px; width: 130px; height: 130px; border-radius: 50%; background: radial-gradient(circle, var(--wc), transparent 70%); opacity: .2; pointer-events: none; }
.rt-w small svg { color: var(--wc); }
.rt-w.c-came { --wc: #4f9df0; }
.rt-w.c-regs { --wc: #a58fe6; }
.rt-w.c-leadsAll { --wc: #f06cb4; }
html.light .rt-w.c-came { --wc: #2b78cf; }
html.light .rt-w.c-regs { --wc: #6d4aa0; }
html.light .rt-w.c-leadsAll { --wc: #c93c8a; }

/* два круга в шапке */
.rt-rings { flex: 0 0 auto; display: flex; gap: 8px; align-items: center; }
.rt-hero { gap: 10px; }
.rt-hero h2 { line-height: 1.08; }
.rt-ring.rate { --p: 100; --c: var(--rt-lime); display: grid; place-items: center; align-content: center; gap: 0; }
.rt-ring.rate small { position: relative; font-size: 7.5px; line-height: 1; font-weight: 700; letter-spacing: .1em; text-transform: uppercase; color: var(--rt-mist); }
.rt-ring.rate b { font-size: 12px; line-height: 1.15; white-space: nowrap; letter-spacing: -.02em; }
@media (max-width: 360px) { .rt-hero .rt-av { width: 58px; height: 58px; flex-basis: 58px; } .rt-hero .rt-ring { width: 46px; height: 46px; flex-basis: 46px; } .rt-ring.rate b { font-size: 11px; } .rt-rings { gap: 6px; } }
/* конвертер */
.rt-cvs { margin: -4px 2px 8px; font-size: 12.5px; color: var(--rt-mist); }
.rt-cvb { padding: 10px 13px; border-radius: 16px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.rt-cvh { display: flex; justify-content: space-between; gap: 8px; font-size: 12px; color: var(--rt-mist); }
.rt-cvr { display: flex; align-items: center; justify-content: space-between; gap: 10px; margin-top: 3px; }
.rt-cvr b { min-width: 0; font-size: 25px; line-height: 1.15; font-weight: 700; letter-spacing: -.01em; color: var(--rt-tx); white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
.rt-cvr span { flex: none; font-size: 13.5px; font-weight: 600; color: var(--rt-tx); }
.rt-cvsw { display: flex; justify-content: center; margin: -7px 0; position: relative; z-index: 1; }
.rt-cvsw button { width: 36px; height: 36px; padding: 0 !important; border-radius: 50%; display: grid !important; place-items: center; background: var(--rt-lime) !important; color: #0b0b0c !important; }
.rt-cvsw svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; stroke-linecap: round; stroke-linejoin: round; }
.rt-cvp { display: grid; grid-template-columns: repeat(3, minmax(0,1fr)); gap: 6px; margin-top: 10px; }
.rt-cvp button { height: 44px; padding: 0 !important; border-radius: 13px; text-align: center !important; font-size: 19px; font-weight: 600; color: var(--rt-tx) !important; background: var(--rt-glass) !important; border: 1px solid var(--rt-line) !important; }
.rt-cvp button:active { background: var(--rt-glass2) !important; }
.rt-cvp button[data-v="c"] { font-size: 13.5px; color: var(--rt-mist) !important; }
.rt-cvn { text-align: center; margin-top: 9px; }
/* кольца цельные: один слой с вырезанной серединой, поэтому по краям ничего не просвечивает */
.rt-hero .rt-ring { --rw: 4px; align-self: center; margin: 0; padding: 0 !important; border: 0 !important; border-radius: 50% !important; background: none !important; box-shadow: none !important; line-height: 1; }
html .rt-hero .rt-ring::before, html.light .rt-hero .rt-ring::before { --p: inherit; inset: 0; border-radius: 50%; background: conic-gradient(var(--c) calc(var(--p) * 1%), var(--rt-line2) 0) !important; -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--rw) - .5px), #000 calc(100% - var(--rw))); mask: radial-gradient(farthest-side, transparent calc(100% - var(--rw) - .5px), #000 calc(100% - var(--rw))); }
.rt-hero .rt-ring.big { --rw: 5px; }
.rt-hero .rt-role { font-size: 11px; white-space: nowrap; overflow: hidden; text-overflow: ellipsis; }
html .rt-hero .rt-ring.rate b { color: var(--rt-tx) !important; }
.rt-hero .rt-ring.rate { --rw: 3px; }

/* ---------- Знания ---------- */
.kx-row { gap: 11px; }
.kx-ic { flex: 0 0 38px; width: 38px; height: 38px; border-radius: 12px; display: grid; place-items: center; color: #0b0b0c; box-shadow: 0 6px 18px -8px currentColor; }
.kx-ic svg { width: 20px; height: 20px; fill: none; stroke: #0b0b0c; stroke-width: 1.9; stroke-linecap: round; stroke-linejoin: round; }
.kx-go { flex: 0 0 16px; width: 16px; height: 16px; margin-left: auto; color: var(--rt-faint); fill: none; stroke: currentColor; stroke-width: 2; }
.kx-tag { flex: none; margin-left: auto; padding: 4px 8px; border-radius: 9px; font-style: normal; font-size: 11px; font-weight: 700; white-space: nowrap; color: var(--rt-amber); background: rgba(245,200,75,.14); }
.kx-off { opacity: .72; pointer-events: none; }
.kx-off .kx-ic { box-shadow: none; }
.kx { padding-top: 2px; }
.kx-top { display: flex; gap: 12px; align-items: flex-start; margin-bottom: 14px; padding: 12px; border-radius: 18px; background: linear-gradient(135deg, color-mix(in srgb, var(--kc) 20%, transparent), transparent 75%); border: 1px solid var(--rt-line); }
.kx-top .kx-ic { flex: 0 0 44px; width: 44px; height: 44px; border-radius: 14px; }
.kx-top p { margin: 0; font-size: 14px; line-height: 1.38; color: var(--rt-tx); }
.kx-steps { display: flex; flex-direction: column; }
.kx-s { position: relative; display: grid; grid-template-columns: 30px minmax(0,1fr); column-gap: 11px; padding-bottom: 18px; animation: kxUp .42s var(--rt-e) both; animation-delay: var(--d, 0ms); }
.kx-s::before { content: ""; position: absolute; left: 14px; top: 32px; bottom: 2px; width: 2px; border-radius: 1px; background: linear-gradient(180deg, var(--kc), transparent); opacity: .55; }
.kx-s:last-child { padding-bottom: 6px; }
.kx-s:last-child::before { display: none; }
@keyframes kxUp { from { opacity: 0; transform: translateY(12px); } to { opacity: 1; transform: none; } }
.kx-n { width: 30px; height: 30px; border-radius: 50%; display: grid; place-items: center; font-style: normal; font-size: 14px; font-weight: 700; color: #0b0b0c; background: var(--kc); }
.kx-t > b { display: block; padding-top: 5px; font-size: 15px; line-height: 1.2; font-weight: 700; color: var(--rt-tx); }
.kx-t > p { margin: 4px 0 0; font-size: 13.5px; line-height: 1.38; color: var(--rt-mist); }
.kx-ui { margin-top: 10px; pointer-events: none; -webkit-user-select: none; user-select: none; }
.kx > .kx-ui { margin: 0 0 16px; }
.kx-ui .rt-seg { margin-bottom: 0; }
.kx-ui .rt-btn { margin-top: 0; }
.kx-b { display: flex; align-items: center; justify-content: center; gap: 8px; min-height: 42px; font-size: 14px; }
.kx-b svg { width: 18px; height: 18px; fill: none; stroke: currentColor; stroke-width: 2; }
.kx-link { padding: 10px 12px; border-radius: 14px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-link small { display: block; font-size: 11.5px; color: var(--rt-mist); }
.kx-link b { display: block; padding: 2px 0 3px; font-size: 13.5px; font-weight: 600; color: var(--rt-tx); overflow-wrap: anywhere; }
.kx-link u { text-decoration: none; font-size: 12px; font-weight: 700; color: var(--rt-acc); }
.kx-pair { display: flex; align-items: center; gap: 10px; }
.kx-mseg { flex: 1 1 auto; min-width: 0; }
.kx-mseg b { padding: 0; font-size: 13.5px; }
.kx-mseg span { display: block; margin-top: 2px; font-size: 12.5px; color: var(--rt-mist); }
.kx-st { flex: 0 0 104px; display: flex; flex-direction: column; align-items: center; gap: 6px; padding: 9px 8px; border-radius: 14px; background: linear-gradient(160deg, #1f2a55, #5b3a7c 60%, #d96570); }
.kx-st span { font-size: 9px; font-weight: 700; letter-spacing: .04em; text-transform: uppercase; color: #edeae2; white-space: nowrap; }
.kx-stq { width: 54px; height: 54px; padding: 5px; border-radius: 9px; background: #edeae2; }
.kx-qrs { display: block; width: 100%; height: 100%; }
.kx-st em { padding: 3px 8px; border-radius: 8px; font-style: normal; font-size: 9.5px; font-weight: 700; white-space: nowrap; color: #0b0b0c; background: #d1e05a; }
.kx-msg { display: flex; flex-direction: column; gap: 7px; padding: 12px; margin-bottom: 8px; border-radius: 14px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-msg i { height: 7px; border-radius: 4px; background: var(--rt-line2); }
.kx-msg i.s { width: 60%; background: var(--rt-acc); opacity: .7; }
.kx-apps { display: flex; gap: 6px; margin-top: 8px; }
.kx-apps i { flex: 1; padding: 6px 0; text-align: center; border-radius: 10px; font-style: normal; font-size: 12px; font-weight: 600; color: var(--rt-mist); background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-prod { display: flex; align-items: center; gap: 9px; padding: 8px 10px; margin-bottom: 6px; border-radius: 13px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-prod:last-child { margin-bottom: 0; }
.kx-prod b { padding: 0; font-size: 13.5px; font-weight: 600; }
.kx-prod em { flex: 0 0 9px; width: 9px; height: 9px; border-radius: 50%; }
.kx-cs { position: relative !important; top: 0; margin: 0; }
.kx-cs .rt-csin { min-height: 54px; }
.kx-cs .rt-cst b { padding: 0; }
.kx-cs .rt-csb { display: grid !important; }
.kx-qrb { width: 112px; height: 112px; padding: 9px; border-radius: 15px; background: #edeae2; }
.kx-hero2 { padding: 10px 11px; }
.kx-hero2 h2 { font-size: 19px; }
.kx-av { flex: 0 0 52px; width: 52px; height: 52px; border-radius: 50%; display: grid; place-items: center; font-size: 17px; font-weight: 700; color: var(--rt-tx); background: var(--rt-glass2); border: 2px solid var(--rt-line2); }
.kx-log { padding: 10px 12px; border-radius: 14px; background: var(--rt-glass); border: 1px solid var(--rt-line); display: grid; gap: 8px; }
.kx-log div { position: relative; padding-left: 13px; }
.kx-log i { position: absolute; left: 0; top: 5px; width: 6px; height: 6px; border-radius: 50%; background: var(--rt-lime); }
.kx-log b { padding: 0; font-size: 13px; }
.kx-log span { display: block; font-size: 12px; color: var(--rt-mist); }
.kx-chips { display: flex; gap: 6px; overflow: hidden; }
.kx-chips span { flex: none; padding: 7px 12px; border-radius: 999px; font-size: 12.5px; font-weight: 600; color: var(--rt-mist); background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-chips span.on { color: #0b0b0c; background: var(--rt-lime); border-color: transparent; }
.kx-fn { margin: 0; padding: 0; overflow: hidden; }
.kx-fn .rt-cfs { min-width: 0; flex: 1 1 auto; height: 34px; padding-right: 12px; }
.kx-ui .rt-ctabs span { flex: 1 1 auto; height: 30px; display: grid; place-items: center; border-radius: 10px; font-size: 12px; font-weight: 700; color: var(--rt-mist); background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-ui .rt-ctabs span.on { color: var(--c); background: var(--cd); border-color: transparent; }
.kx-ui .rt-lcd { display: flex !important; }
.kx-ui .rt-lcd-t b, .kx-ui .rt-lcd-n span { padding: 0; }
.kx-cal { display: grid; grid-template-columns: repeat(7, minmax(0,1fr)); gap: 3px; padding: 9px 6px; border-radius: 16px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-cal div { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.kx-cal small { font-size: 10.5px; color: var(--rt-faint); }
.kx-cal b { padding: 0; font-size: 14px; font-weight: 600; }
.kx-cal em { display: flex; gap: 2px; height: 5px; }
.kx-cal em i { width: 5px; height: 5px; border-radius: 50%; }
.kx-cfl { margin-top: 8px; }
.kx-cfl .rt-cf { min-height: 28px; padding: 0 9px !important; font-size: 11.5px; gap: 5px; }
.kx-life { display: grid; grid-template-columns: minmax(0,1fr) 24px minmax(0,1fr); gap: 6px; align-items: center; }
.kx-life > div { text-align: center; }
.kx-life span { display: block; margin-top: 6px; font-size: 12px; color: var(--rt-mist); }
.kx-life > i { display: grid; place-items: center; color: var(--rt-acc); }
.kx-life > i svg { width: 20px; height: 20px; fill: none; stroke: currentColor; stroke-width: 2; }
.kx-ph { display: block; width: 100%; max-width: 132px; height: auto; margin: 0 auto; }
html.light .kx-ph { filter: none; }
.kx-ph, .kx-qrs { stroke: none; fill: none; }
.kx-fn .rt-cfs { padding: 0 11px 0 14px; }
.kx-fn .rt-cfs:first-child { padding-left: 9px; }
.kx-fn .rt-cfs b { font-size: 10.5px; }
.kx-ui .rt-ctabs { margin-top: 7px; }
.kx-hero2 .rt-htx { min-width: 0; }

/* ---------- первый вход: салют ---------- */
.rt-wel { position: fixed; inset: 0; z-index: 62; display: flex; align-items: center; justify-content: center; padding: 24px; background: rgba(5,5,8,.82); transition: opacity .26s ease; font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); }
.rt-wel.out { opacity: 0; }
.rt-wel canvas { position: absolute; inset: 0; width: 100%; height: 100%; pointer-events: none; }
.rt-welc { position: relative; width: 100%; max-width: 330px; padding: 24px 18px 16px; border-radius: 26px; text-align: center; background: var(--rt-pop); border: 1px solid var(--rt-line2); animation: rtPop .6s cubic-bezier(.2,.9,.2,1.2) both; }
.rt-welr { display: block; font-size: 44px; line-height: 1; }
.rt-welc h2 { margin: 12px 0 16px; font-size: 22px; line-height: 1.2; font-weight: 700; color: var(--rt-tx); }
.rt-welc .rt-btn { width: 100%; }
.rt-welc .rt-btn + .rt-btn { margin-top: 8px; }
/* ---------- обучение: подсветка и подсказка ---------- */
#rtTour { position: fixed; inset: 0; z-index: 61; font-family: var(--f-ui, "Tilda Sans", system-ui, sans-serif); }
#rtTour { overflow: hidden; opacity: 1; transition: opacity .3s ease; }
#rtTour.out { opacity: 0; pointer-events: none; }
.rt-tp { position: absolute; left: 0; top: 0; width: 100%; height: 100%; background: rgba(4,4,7,.74); pointer-events: none; }
.rt-tp[data-p="t"] { transform-origin: 50% 0; }
.rt-tp[data-p="b"] { transform-origin: 50% 100%; }
.rt-tp[data-p="l"] { transform-origin: 0 0; }
.rt-tp[data-p="r"] { transform-origin: 100% 0; }
.rt-tsp { position: absolute; overflow: hidden; opacity: 0; transition: opacity .16s ease; pointer-events: none; }
.rt-tsp.on { opacity: 1; transition: opacity .3s ease; }
.rt-tsp u { position: absolute; inset: 2px; display: block; box-shadow: 0 0 0 2px var(--rt-lime), 0 0 0 40px rgba(4,4,7,.74); }
.rt-tc { position: absolute; left: 14px; right: 14px; max-width: 420px; margin: 0 auto; padding: 13px 14px 12px; border-radius: 20px; background: var(--rt-pop); border: 1px solid var(--rt-line2); transition: opacity .34s ease, transform .34s var(--rt-e); }
#rtTour.mv .rt-tc { opacity: 0; transform: translateY(8px); pointer-events: none; transition: opacity .2s ease, transform .2s ease; }
.rt-th { display: flex; align-items: center; justify-content: space-between; gap: 8px; }
.rt-th small { font-size: 12px; font-weight: 700; color: var(--rt-acc); }
.rt-th button { padding: 2px 0 !important; font-size: 12.5px; color: var(--rt-mist) !important; background: none !important; border: 0 !important; }
.rt-tc > b { display: block; margin-top: 4px; font-size: 17px; line-height: 1.2; font-weight: 700; color: var(--rt-tx); }
.rt-tc > p { margin: 4px 0 11px; font-size: 14px; line-height: 1.38; color: var(--rt-mist); }
.rt-tb { display: flex; gap: 8px; }
.rt-tb .rt-btn { flex: 1 1 0; min-height: 42px; font-size: 14px; }
.rt-tb .rt-btn[hidden] { display: none; }
/* кнопка «Далее»: два готовых градиента плавно сменяют друг друга, свечение отдельным слоем. Перерисовки нет, сдвигаться нечему. */
.rt-tn { position: relative; isolation: isolate; flex: 1 1 0; display: flex; align-items: center; justify-content: center; min-height: 42px; padding: 0 14px; border: 0; outline: 0; border-radius: 15px; color: #fff; font-size: 14px; font-weight: 700; cursor: pointer; background-image: var(--rt-gem); background-size: 400% 100%; background-position: 0% 50%; }
.rt-tn::before { content: ""; position: absolute; inset: 0; z-index: -1; border-radius: inherit; background-image: var(--rt-gem); background-size: 400% 100%; background-position: 100% 50%; animation: rtTFade 6s ease-in-out infinite alternate; }
.rt-tn::after { content: ""; position: absolute; inset: 0; z-index: -2; border-radius: inherit; box-shadow: 0 0 18px rgba(106,168,255,.55); animation: rtTGlow 3.2s ease-in-out infinite; }
.rt-tn:active { transform: scale(.98); }
@keyframes rtTFade { from { opacity: 0; } to { opacity: 1; } }
@keyframes rtTGlow { 0%, 100% { opacity: .3; } 50% { opacity: 1; } }
#rtTour, #rtTour button, .rt-wel, .rt-wel button { font-family: "Tilda Sans", system-ui, sans-serif !important; }

/* Знания: реферальная программа */
.kx-flow { display: flex; align-items: center; gap: 3px; }
.kx-flow span { flex: 1 1 0; min-width: 0; min-height: 50px; display: flex; align-items: center; justify-content: center; padding: 6px 3px; border-radius: 12px; text-align: center; font-size: 11.5px; line-height: 1.2; font-weight: 700; color: var(--rt-tx); background: color-mix(in srgb, var(--kc) 18%, var(--rt-glass)); border: 1px solid color-mix(in srgb, var(--kc) 34%, transparent); }
.kx-flow i { flex: 0 0 12px; width: 12px; height: 12px; color: var(--kc); }
.kx-flow i svg { display: block; width: 12px; height: 12px; fill: none; stroke: currentColor; stroke-width: 2.4; }
.kx-plans { display: grid; grid-template-columns: 1fr 1fr; gap: 8px; }
.kx-plans > div { display: flex; flex-direction: column; padding: 11px 11px 12px; border-radius: 16px; background: linear-gradient(155deg, color-mix(in srgb, var(--kp) 24%, transparent), var(--rt-glass) 72%); border: 1px solid color-mix(in srgb, var(--kp) 44%, transparent); }
.kx-plans .sc { --kp: #ac89c9; } .kx-plans .ag { --kp: #d1e05a; }
.kx-plans small { font-size: 12.5px; font-weight: 700; color: var(--kp); }
html.light .kx-plans .ag { --kp: #7d8c17; }
.kx-plans b { padding: 3px 0 0; font-size: 25px; line-height: 1.1; font-weight: 700; color: var(--rt-tx); white-space: nowrap; }
.kx-plans span { font-size: 11.5px; color: var(--rt-mist); }
.kx-plans p { margin: 8px 0 0; font-size: 12px; line-height: 1.3; color: var(--rt-tx); }
.kx-fnl { display: flex; flex-direction: column; align-items: center; gap: 4px; }
.kx-fnl span { min-height: 31px; display: flex; align-items: center; justify-content: center; padding: 4px 8px; border-radius: 10px; text-align: center; font-size: 12px; line-height: 1.15; font-weight: 700; color: #fff; background: linear-gradient(90deg, #4285f4, #9b72cb); }
.kx-fnl .f1 { background: linear-gradient(90deg, #7b6ad0, #9b72cb); } .kx-fnl .f2 { background: linear-gradient(90deg, #9b72cb, #c76a9e); } .kx-fnl .f3 { background: linear-gradient(90deg, #c76a9e, #d96570); }
.kx-fnl em { width: 100%; margin-top: 3px; padding: 7px 8px; border-radius: 10px; text-align: center; font-style: normal; font-size: 12.5px; font-weight: 700; color: #0b0b0c; background: #d1e05a; }
.kx-chan { padding: 10px 11px; border-radius: 15px; background: var(--rt-glass); border: 1px solid var(--rt-line); }
.kx-chan .h { display: flex; align-items: center; gap: 8px; padding-bottom: 8px; }
.kx-chan .h i { flex: 0 0 26px; width: 26px; height: 26px; display: grid; place-items: center; border-radius: 50%; background: var(--kc); }
.kx-chan .h svg { width: 15px; height: 15px; fill: none; stroke: #0b0b0c; stroke-width: 2; }
.kx-chan .h b { padding: 0; font-size: 13px; color: var(--rt-tx); }
.kx-chan .h u { margin-left: auto; padding: 3px 7px; border-radius: 8px; text-decoration: none; font-size: 11px; font-weight: 700; color: var(--rt-amber); background: rgba(245,200,75,.13); }
.kx-chan .r { display: flex; align-items: center; gap: 8px; padding: 6px 0 0; }
.kx-chan .r i { flex: 0 0 34px; height: 24px; border-radius: 7px; background: linear-gradient(135deg, #4285f4, #9b72cb 55%, #d96570); }
.kx-chan .r span { font-size: 12.5px; color: var(--rt-mist); }
.kx-agr { display: grid; grid-template-columns: minmax(0,1fr) 12px minmax(0,.8fr) 12px minmax(0,1fr); align-items: center; }
.kx-agr span, .kx-agr b { min-height: 58px; display: flex; flex-direction: column; align-items: center; justify-content: center; padding: 6px 4px; border-radius: 13px; text-align: center; font-size: 12px; line-height: 1.18; font-weight: 700; color: var(--rt-tx); background: var(--rt-glass); border: 1px solid var(--rt-line2); }
.kx-agr b { color: #0b0b0c; background: #d1e05a; border-color: transparent; }
.kx-agr small { margin-top: 2px; font-size: 10.5px; font-weight: 500; color: var(--rt-mist); }
.kx-agr i { height: 2px; background: #d1e05a; }
.kx-agc { display: flex; flex-wrap: wrap; gap: 5px; margin-top: 7px; }
.kx-agc em { padding: 5px 8px; border-radius: 9px; font-style: normal; font-size: 11.5px; font-weight: 600; color: var(--rt-tx); background: var(--rt-glass2); border: 1px solid var(--rt-line); }

/* Закрытый Ментор как фотография: всё внутри не реагирует и не движется, прокрутка и нажатие остаются на самом экране */
html.rt-mlock #rtP-mentor, html.rt-mlock #rtP-mentor > *, html.rt-mlock #rtP-mentor .rt-view { cursor: pointer; -webkit-tap-highlight-color: transparent; }
html.rt-mlock #rtP-mentor .rt-view * { pointer-events: none !important; animation: none !important; transition: none !important; -webkit-user-select: none; user-select: none; }
html.rt-mlock #rtP-mentor .rt-view *::before, html.rt-mlock #rtP-mentor .rt-view *::after { animation: none !important; transition: none !important; }

/* ---------- производительность: вид тот же, телефону легче ---------- */
/* Фон: размытие считается заранее (картинка), на телефоне только поворот и сдвиг. Круги мягкие сами по себе. */
html.gem .gembg::before { width: 42.5vmax; height: 42.5vmax; margin: -21.25vmax 0 0 -21.25vmax; background: url(/assets/gembg-c.jpg) center / cover no-repeat; filter: none; animation-name: rtBgTurn; transform: scale(4); }
@keyframes rtBgTurn { from { transform: rotate(0deg) scale(4); } to { transform: rotate(360deg) scale(4); } }
html.gem .gembg i { filter: none; }
html.gem .gembg .g1 { background: radial-gradient(circle, rgba(66,133,244,.5), rgba(66,133,244,.26) 34%, rgba(66,133,244,0) 72%); }
html.gem .gembg .g2 { background: radial-gradient(circle, rgba(217,101,112,.45), rgba(217,101,112,.24) 34%, rgba(217,101,112,0) 72%); }
html.gem .gembg .g3 { background: radial-gradient(circle, rgba(155,114,203,.5), rgba(155,114,203,.26) 34%, rgba(155,114,203,0) 72%); }
html.gem .gembg .g4 { background: radial-gradient(circle, rgba(249,171,0,.25), rgba(249,171,0,.13) 34%, rgba(249,171,0,0) 72%); }
/* Зерно без наложения на весь экран */
html.rt-on .grain { mix-blend-mode: normal; opacity: .025; }
/* Пока идёт обучение и на слабых телефонах фоновые переливы стоят. Появление карточек не трогаем. */
html.rt-tour .gembg::before, html.rt-tour .gembg i, html.rt-tour .rt-av::after, html.rt-tour .rt-av > i::before, html.rt-tour .rt-cs > i, html.rt-tour .rt-kbtn::before,
html.rt-lite .gembg::before, html.rt-lite .gembg i, html.rt-lite .rt-av::after, html.rt-lite .rt-av > i::before, html.rt-lite .rt-cs > i, html.rt-lite .rt-kbtn::before { animation-play-state: paused; }

/* r53 08.11 (Артур): «Эффективность» как в кабинете партнёра — дуга настоящим элементом .pc-arc,
   цвет и заполнение в style (effCol в rt.js); старый ::before с --p выключен только у кольца эффективности. */
html body { --pc-track: #343437; }
html.light body { --pc-track: #e1e1e3; }
html .rt-hero .rt-ring.pc-eff::before, html.light .rt-hero .rt-ring.pc-eff::before { display: none !important; }
.rt-hero .rt-ring.pc-eff .pc-arc { position: absolute; inset: 0; z-index: 0; border-radius: 50%; pointer-events: none; background: var(--pc-track);
  -webkit-mask: radial-gradient(farthest-side, transparent calc(100% - var(--rw) - .5px), #000 calc(100% - var(--rw)));
  mask: radial-gradient(farthest-side, transparent calc(100% - var(--rw) - .5px), #000 calc(100% - var(--rw))); }
.rt-hero .rt-ring.pc-eff b { position: relative; z-index: 1; }
#rtSheet .rt-bar i.pc-pbar { animation: none; transition: width .9s cubic-bezier(.2,.8,.2,1); }

/* r54 08.11: «Назад» внизу раздела «Знаний» справа — стиль как у кнопки в шапке (кабинет партнёра v20) */
.kx-end { display: flex; justify-content: flex-end; margin: 18px 0 4px; }
.kx-back { display: inline-flex !important; align-items: center; gap: 6px; height: 38px; padding: 0 16px 0 11px; border: 0; border-radius: 999px; background: var(--rt-glass2) !important; color: var(--rt-tx); font: inherit; font-size: 14px; font-weight: 600; cursor: pointer; transition: transform .14s ease; }
.kx-back:active { transform: scale(.96); }
.kx-back svg { width: 17px; height: 17px; transform: rotate(180deg); fill: none; stroke: currentColor; stroke-width: 2; }

/* ---------- r62 (10.11.2026): перенос из кабинета партнёра — сводка, подгрузка, перелистывание, полоски, виджет «Рефералы» ---------- */
#rtP-contact .rt-wk-s.q4 {grid-template-columns: repeat(4, minmax(0,1fr)); gap: 6px;}
#rtP-contact .rt-wk-s.q4 b {font-size: 20px;}
#rtP-contact .rt-wk-s.q4 span {font-size: 11.5px;}
#rtP-contact .rt-wk-s.q4 .rt-wk-sc {padding-left: 10px; border-left: 1px solid rgba(255,255,255,.1);}
#rtP-contact .rt-card .rt-wk-l {flex-wrap: wrap; gap: 4px 12px; margin-top: 0;}
#rtP-contact .rt-vsum {display: flex; flex-direction: column; gap: 12px; padding: 13px 14px; border-radius: 19px; background: var(--rt-glass); border: 1px solid var(--rt-line);}
#rtP-contact .rt-vsum-t {display: grid; grid-template-columns: repeat(3, 1fr); gap: 6px; text-align: center;}
#rtP-contact .rt-vsum-t b {display: block; font-size: 22px; line-height: 1.1; font-weight: 800; color: var(--rt-tx);}
#rtP-contact .rt-vsum-t span {font-size: 11.5px; color: var(--rt-mist);}
#rtP-contact .rt-vsum-p {display: flex; flex-direction: column; gap: 7px;}
#rtP-contact .rt-vsum-p button {display: grid; grid-template-columns: 74px 1fr 30px; align-items: center; gap: 9px; padding: 0; background: none; border: 0; color: inherit; font: inherit; text-align: left;}
#rtP-contact .rt-vsum-p button.z {opacity: .45;}
#rtP-contact .rt-vsum-p span {font-size: 12.5px; font-weight: 600; color: var(--rt-tx);}
#rtP-contact .rt-vsum-p i {height: 8px; border-radius: 5px; background: var(--rt-glass2); overflow: hidden;}
#rtP-contact .rt-vsum-p em {display: block; height: 100%; width: var(--w); min-width: 4px; border-radius: 5px; background: var(--pc); transition: width .5s cubic-bezier(.2,.8,.2,1);}
#rtP-contact .rt-vsum-p b {text-align: right; font-size: 13px; font-weight: 700; color: var(--pc);}
#rtP-contact .rt-cards > .rt-pgin {animation: rtPgIn .44s cubic-bezier(.2,.8,.2,1) both;}
@keyframes rtPgIn { from { opacity: 0; transform: translateY(14px); } to { opacity: 1; transform: none; } }
#rtP-contact .rt-pgs {height: 46px; display: flex; align-items: center; justify-content: center; gap: 7px; margin: 0; padding: 0; pointer-events: none;}
#rtP-contact .rt-pgs i {width: 7px; height: 7px; border-radius: 50%; background: var(--rt-acc, #d1e05a); opacity: 0; transform: translateY(0); transition: opacity .25s ease;}
#rtP-contact .rt-pgs.on i {opacity: .35; animation: rtPgDot .9s ease-in-out infinite;}
#rtP-contact .rt-pgs.on i:nth-child(2) {animation-delay: .15s;}
#rtP-contact .rt-pgs.on i:nth-child(3) {animation-delay: .3s;}
@keyframes rtPgDot { 0%, 100% { opacity: .3; transform: translateY(0); } 50% { opacity: 1; transform: translateY(-5px); } }
#rtP-contact .rt-vsum-t b, #rtP-contact .rt-vsum-p b {font-variant-numeric: tabular-nums;}
#rtP-contact .rt-vsum-t span {display: inline-block; transition: opacity .16s ease, transform .16s ease;}
#rtP-contact .rt-vsum-t span.rt-sw {opacity: 0; transform: translateY(3px);}
#rtP-contact .rt-vsum-p button {transition: opacity .4s ease;}
#rtP-contact .rt-vsum-p em {transition: width .7s cubic-bezier(.2,.8,.2,1);}
#rtP-contact .rt-cards {position: relative;}
#rtP-contact .rt-cards.rt-sliding {overflow-x: clip; margin-left: calc(var(--gl, 0px) * -1); margin-right: calc(var(--gr, 0px) * -1); padding-left: var(--gl, 0px); padding-right: var(--gr, 0px);}
#rtP-contact .rt-cards > .rt-ghost {position: absolute; left: var(--gl, 0px); right: var(--gr, 0px); display: flex; flex-direction: column; gap: 8px; pointer-events: none; animation: rtGhOut .34s cubic-bezier(.3,.7,.2,1) forwards !important;}
#rtP-contact .rt-cards > .rt-ghost > * {animation: none !important;}
#rtP-contact .rt-cards > .rt-slin {animation: rtSlIn .34s cubic-bezier(.3,.7,.2,1) both !important;}
@keyframes rtGhOut { 0% { transform: none; opacity: 1; } 75% { opacity: 1; } 100% { transform: translateX(calc(var(--d, 1) * -1 * (100% + var(--gl, 0px) + var(--gr, 0px) + 4px))); opacity: 0; } }
@keyframes rtSlIn { from { transform: translateX(calc(var(--d, 1) * (100% + var(--gl, 0px) + var(--gr, 0px) + 4px))); } to { transform: none; } }
#rtP-contact .rt-view {position: relative;}
#rtP-contact .rt-view.rt-pgsliding {overflow-x: clip;}
#rtP-contact .rt-view > .rt-pghost {position: absolute; top: 0; left: 0; right: 0; height: 0; pointer-events: none; animation: rtGhOut .34s cubic-bezier(.3,.7,.2,1) forwards;}
#rtP-contact .rt-view > .rt-pghost *, #rtP-contact .rt-ghost * {animation: none !important;}
#rtP-contact .rt-view > .rt-slpg {animation: rtSlIn .34s cubic-bezier(.3,.7,.2,1) both !important;}
#rtP-contact .rt-noin .rt-cards > * {animation: none !important;}
#rtP-contact .rt-chips {gap: 0; margin: 0 0 9px; padding: 3px; border-radius: 999px; background: var(--rt-glass); border: 1px solid var(--rt-line); -webkit-mask-image: none; mask-image: none;}
#rtP-contact .rt-chip {flex: 1 0 auto; min-height: 34px; padding: 0 9px !important; border-radius: 999px; background: none !important; border: 0 !important;}
/* 10.11 (Артур): текст в чипах периода и проекта — строго по центру */
#rtP-contact .rt-chip {display: flex; align-items: center; justify-content: center; text-align: center !important;}
#rtP-contact .rt-chip.on {background: none !important;}
#rtP-contact .rt-cp {border-radius: 999px;}
@media (max-width: 340px) { #rtP-contact .rt-chip {padding: 0 6px !important; font-size: 12px;} }
#rtP-contact .rt-wk-l i.y {background: linear-gradient(135deg, #f0c66c, #c9963a);}
#rtP-contact .rt-wk-ax {display: flex; justify-content: space-between; margin-top: 5px; font-size: 12px; color: var(--rt-faint);}
#rtP-contact .rt-wk-ax .now {color: #c7a8ee; font-weight: 700;}
html.light #rtP-contact .rt-wk-ax .now {color: #6d4aa0;}
#rtP-contact .rt-wk-l {flex-wrap: wrap; gap: 4px 12px;}
#rtP-contact .rt-nsum .rt-vsum-p > div {display: grid; grid-template-columns: 84px 1fr 30px; align-items: center; gap: 9px;}
#rtP-contact .rt-nsum .rt-vsum-p > div.z {opacity: .45;}
#rtP-contact .rt-cards > .rt-slin.rt-new, #rtP-contact .rt-cards > .rt-pgin.rt-new {animation-name: none;}
#rtP-contact .rt-wk-s.q4 .rt-wk-sc span::before, #rtP-contact .rt-wk-s.q4 .rt-wk-ag span::before {content: none;}
/* Главная «По дням»: без пустой полосы между столбиками и датами */
.rt-chart { min-height: 0; }
.rt-card .rt-axis { margin-top: 5px; }

/* r64 (10.11): активность реферала и вкладка «Сеть» — из кабинета партнёра */
:is(#rt, #rtSheet) .rt-pax {display: grid; grid-template-columns: repeat(4, minmax(0,1fr)); gap: 6px; margin-top: 11px; padding-top: 10px; border-top: 1px solid rgba(255,255,255,.08);}
:is(#rt, #rtSheet) .rt-pax > div {text-align: left; display: block; margin: 0;}
:is(#rt, #rtSheet) .rt-pax b {display: block; font-size: 19px; line-height: 1.05; font-weight: 700; color: var(--rt-tx);}
:is(#rt, #rtSheet) .rt-pax span {display: block; margin-top: 2px; font-size: 11px; line-height: 1.2; color: var(--rt-mist);}
html.light :is(#rt, #rtSheet) .rt-pax {border-top-color: rgba(0,0,0,.08);}
:is(#rt, #rtSheet) .rt-pax-b.late .rt-next-h, :is(#rt, #rtSheet) .rt-lcd-l.late {color: #fa8b7c;}
:is(#rt, #rtSheet) .rt-ncd {margin: 0;}
:is(#rt, #rtSheet) .rt-ncd {display: block; width: 100%; text-align: left; padding: 11px 12px 10px; border-radius: 18px; background: var(--rt-glass); border: 1px solid var(--rt-line); border-left: 3px solid var(--lc); color: inherit; font: inherit;}
:is(#rt, #rtSheet) .rt-ncd.deep {padding: 9px 11px 9px;}
:is(#rt, #rtSheet) .rt-ncd-h {display: flex; justify-content: space-between; align-items: flex-start; gap: 8px;}
:is(#rt, #rtSheet) .rt-ncd-h b {display: block; font-size: 16px; font-weight: 700; color: var(--rt-tx);}
:is(#rt, #rtSheet) .rt-ncd.deep .rt-ncd-h b {font-size: 14.5px;}
:is(#rt, #rtSheet) .rt-ncd-h p {margin: 1px 0 0; font-size: 12.5px; font-weight: 600; color: var(--lc);}
:is(#rt, #rtSheet) .rt-ncd-h time {font-size: 12px; color: var(--rt-faint); white-space: nowrap;}
:is(#rt, #rtSheet) .rt-ncd-o {margin-top: 6px; font-size: 13px; color: var(--rt-mist);}
:is(#rt, #rtSheet) .rt-nbr {display: flex; justify-content: space-between; align-items: center; gap: 8px; margin-top: 8px; padding-top: 8px; border-top: 1px solid rgba(255,255,255,.07); font-size: 12.5px; color: var(--rt-tx);}
:is(#rt, #rtSheet) .rt-nbr u {flex: none; text-decoration: none; padding: 4px 10px; border-radius: 999px; font-weight: 700; font-size: 12px; color: #0b0b0c; background: var(--lc);}
:is(#rt, #rtSheet) .rt-nbr u.on {background: none; color: var(--lc); box-shadow: inset 0 0 0 1.5px var(--lc);}
html.light :is(#rt, #rtSheet) .rt-nbr {border-top-color: rgba(0,0,0,.08);}
:is(#rt, #rtSheet) .rt-nbar {display: flex; gap: 3px; height: 6px; margin-top: 9px; border-radius: 4px; overflow: hidden;}
:is(#rt, #rtSheet) .rt-nbar i {display: block; min-width: 6px; background: var(--lc); border-radius: 3px;}
:is(#rt, #rtSheet) .rt-nbr u {background: var(--rt-lime);}
:is(#rt, #rtSheet) .rt-ncd-o em {font-style: normal; color: var(--lc); font-weight: 600;}
#rtSheet .rt-nlist {display: flex; flex-direction: column; gap: 7px;}
#rtSheet .rt-nteam-b .rt-dh:first-child {margin-top: 2px;}
#rtSheet .rt-nteam-b .rt-sec {margin: 14px 2px 8px;}

/* 10.11 (Артур): «Пригласить» листается слайдером, QR ↔ Стикер — внутри плитки */
.inv-sliding { position: relative; overflow-x: clip; }
.inv-gh { position: absolute; top: 0; left: 0; right: 0; height: 0; pointer-events: none; animation: invGhOut .34s cubic-bezier(.3,.7,.2,1) forwards; }
.inv-gh, .inv-gh * { animation-delay: 0s; }
.inv-gh * { animation: none !important; transition: none !important; }
.inv-in { animation: invIn .34s cubic-bezier(.3,.7,.2,1) both !important; }
.inv-in * { animation: none !important; }
@keyframes invGhOut { 0% { transform: none; opacity: 1; } 75% { opacity: 1; } 100% { transform: translateX(calc(var(--d, 1) * -1 * (100% + var(--gl, 0px) + var(--gr, 0px) + 4px))); opacity: 0; } }
@keyframes invIn { from { transform: translateX(calc(var(--d, 1) * (100% + var(--gl, 0px) + var(--gr, 0px) + 4px))); } to { transform: none; } }
.rt-mat.mat-sw { position: relative; clip-path: inset(-14px 0 -14px 0); }
.rt-mat .mat-gh { position: absolute; margin: 0; pointer-events: none; animation: matOut .32s cubic-bezier(.3,.7,.2,1) forwards; }
.rt-mat .mat-in { animation: matIn .32s cubic-bezier(.3,.7,.2,1) both; }
@keyframes matOut { from { transform: none; } to { transform: translateX(calc(var(--d, 1) * -100% - var(--d, 1) * 8px)); } }
@keyframes matIn { from { transform: translateX(calc(var(--d, 1) * 100% + var(--d, 1) * 8px)); } to { transform: none; } }
