/* RuvBox site — каркас публичного сайта поверх ruv-ui.css. Только токены kit. */
.site{--site-max:1200px}
.site-wrap{width:100%;max-width:var(--site-max);margin-inline:auto;padding-inline:var(--gutter)}

/* Header */
.site-header{position:sticky;top:0;z-index:var(--z-header);padding-top:var(--safe-top);border-bottom:1px solid transparent;transition:background var(--transition-normal),border-color var(--transition-normal)}
.site-header.is-scrolled{background:var(--header-glass);border-bottom-color:var(--divider);-webkit-backdrop-filter:blur(var(--blur-md)) saturate(140%);backdrop-filter:blur(var(--blur-md)) saturate(140%)}
.site-header__bar{height:72px;display:flex;align-items:center;gap:var(--space-6)}
.site-nav{display:none;align-items:center;gap:var(--space-1);margin-right:auto}
.site-nav a{padding:10px 14px;border-radius:var(--radius-pill);font:600 var(--fs-body)/1 var(--font);color:var(--text-secondary);transition:color var(--transition-fast),background var(--transition-fast)}
.site-nav a:hover,.site-nav a[aria-current=page]{color:var(--text-primary);background:var(--surface)}
.site-header__actions{display:flex;align-items:center;gap:var(--space-2);margin-left:auto}
.site-lang{height:44px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:700 var(--fs-label)/1 var(--font);letter-spacing:.04em;color:var(--text-secondary)}
.site-lang b{color:var(--text-primary)}
.site-auth{display:none}
.site-menu-btn{display:grid}

/* Кнопка входа и аккаунт из web-auth.js */
.telegram-auth-button{display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-5);border-radius:var(--radius-pill);font:700 var(--fs-body-sm)/1 var(--font);white-space:nowrap;border:1px solid var(--border);background:var(--surface);color:var(--text-primary);transition:transform var(--transition-fast),filter var(--transition-fast)}
.telegram-auth-button.button-primary{background:var(--cta-fill);color:var(--cta-text);border-color:transparent;box-shadow:var(--cta-shadow);min-height:56px;width:100%;font-size:var(--fs-control)}
.telegram-auth-button svg{width:18px;height:18px;fill:currentColor}
.telegram-auth-button:active{transform:scale(.98)}
.account-chip{display:inline-flex;align-items:center;gap:var(--space-3);height:48px;padding:0 var(--space-4) 0 4px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border-strong)}
.account-avatar{width:40px;height:40px;border-radius:50%;overflow:hidden;display:grid;place-items:center;background:var(--surface-elevated);font-weight:700}
.account-avatar img{width:100%;height:100%;object-fit:cover}
.account-copy{display:flex;flex-direction:column;line-height:1.15}
.account-copy small{font-size:var(--fs-caption);color:var(--text-muted)}
.account-copy b{font-size:var(--fs-body-sm);max-width:140px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

/* Секции */
.site-main{position:relative;z-index:var(--z-raised);padding-bottom:calc(var(--nav-h) + var(--space-12) + var(--safe-bottom))}
.site-section{padding-block:var(--space-12)}
.site-head{display:grid;gap:var(--space-3);margin-bottom:var(--space-8);max-width:720px}
.site-kicker{font:700 var(--fs-label)/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.site-h1{font:800 clamp(var(--fs-display-sm),7.4vw,var(--fs-display-lg))/1.02 var(--font-display);letter-spacing:-.05em}
.site-h2{font:750 clamp(var(--fs-h1),4.6vw,var(--fs-display))/1.06 var(--font-display);letter-spacing:-.045em}
:is(.site-h1,.site-h2) em{font-style:normal;color:var(--text-secondary)}
.site-lead{font-size:var(--fs-lead);line-height:1.55;color:var(--text-secondary);max-width:56ch}
.site-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}

/* Hero */
.site-hero{display:grid;gap:var(--space-10);align-items:center;padding-block:var(--space-8) var(--space-12)}
.site-hero__copy{display:grid;gap:var(--space-6)}
.site-stats{display:flex;flex-wrap:wrap;gap:var(--space-8);margin-top:var(--space-2)}
.site-stats b{display:block;font:800 var(--fs-h1)/1 var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.site-stats span{font-size:var(--fs-body-sm);color:var(--text-secondary)}
.site-phone{position:relative;width:min(380px,100%);margin-inline:auto;padding:var(--space-5);border-radius:var(--radius-2xl);background:var(--card-fill);border:1px solid var(--border-strong);box-shadow:var(--card-highlight),var(--shadow-floating)}
.site-phone__top{display:flex;align-items:center;justify-content:space-between;margin-bottom:var(--space-5)}
.site-phone__brand{display:flex;align-items:center;gap:var(--space-2);font:750 var(--fs-control)/1 var(--font-display)}
.site-phone__brand img{width:32px;height:32px;border-radius:var(--radius-logo)}
.site-phone h2{font:750 var(--fs-h3)/1.15 var(--font-display);letter-spacing:-.03em;margin:var(--space-1) 0 var(--space-4)}

/* Каталог */
.site-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}
.svc-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg);text-align:left}
.svc-card__top{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3)}
.svc-card__logo{width:56px;height:56px;flex:none;border-radius:var(--radius-logo);overflow:hidden;border:1px solid var(--border);background:var(--surface-elevated)}
.svc-card__logo img{width:100%;height:100%;object-fit:cover}
.svc-card h3{font:700 var(--fs-title)/1.25 var(--font);letter-spacing:-.015em}
.svc-card__handle{font:500 var(--fs-body-sm)/1.2 var(--font);color:var(--text-muted);margin-top:-6px}
.svc-card p{font-size:var(--fs-body);color:var(--text-secondary)}
.svc-card__foot{display:flex;align-items:center;justify-content:space-between;margin-top:auto;padding-top:var(--space-2);font:650 var(--fs-body-sm)/1 var(--font);color:var(--text-secondary)}
.svc-card.is-extra{display:none}
.site-grid.show-all .svc-card.is-extra{display:flex}
.site-more{display:flex;justify-content:center;margin-top:var(--space-6)}

/* Тарифы из pricing-cards.js */
.ruv-catalog-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}
.ruv-plan-card{display:flex;flex-direction:column;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-xl);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight),var(--shadow-card)}
.ruv-plan-card.is-featured{border-color:var(--border-strong)}
.ruv-plan-badge{align-self:flex-start;display:inline-flex;align-items:center;min-height:28px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-caption)/1 var(--font);color:var(--text-secondary)}
.ruv-plan-card h3{font:750 var(--fs-h3)/1.15 var(--font-display);letter-spacing:-.03em}
.ruv-plan-card>p{color:var(--text-secondary);font-size:var(--fs-body);margin-top:-8px}
.ruv-plan-price{display:flex;align-items:baseline;gap:6px}
.ruv-plan-price b{font:800 var(--fs-display-sm)/1 var(--font-display);letter-spacing:-.045em;font-variant-numeric:tabular-nums}
.ruv-plan-price span{color:var(--text-secondary);font-weight:600}
.ruv-period-label{display:grid;gap:var(--space-2);font:600 var(--fs-label)/1.2 var(--font);color:var(--text-secondary)}
.ruv-period{width:100%;height:48px;padding:0 var(--space-10) 0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);color:var(--text-primary);font:600 var(--fs-body)/1 var(--font);-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24' fill='none' stroke='%23989ba3' stroke-width='2' stroke-linecap='round' stroke-linejoin='round'%3E%3Cpath d='m6 9 6 6 6-6'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 16px center;background-size:18px}
.ruv-period:focus{outline:none;border-color:var(--focus)}
.ruv-plan-highlights{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-2);font-size:var(--fs-body);color:var(--text-secondary)}
.ruv-plan-highlights li{display:flex;gap:var(--space-2)}
.ruv-plan-highlights span{color:var(--text-primary)}
.ruv-plan-details summary{cursor:pointer;color:var(--text-secondary);font:600 var(--fs-body-sm)/1.3 var(--font);list-style:none}
.ruv-plan-details summary::-webkit-details-marker{display:none}
.ruv-plan-details summary::after{content:" ›"}
.ruv-plan-details div{display:grid;gap:var(--space-2);margin-top:var(--space-3)}
.ruv-plan-details p{display:flex;justify-content:space-between;gap:var(--space-3);font-size:var(--fs-body-sm);color:var(--text-secondary)}
.ruv-plan-details b{color:var(--text-primary)}
.ruv-plan-card .button{margin-top:auto;display:flex;align-items:center;justify-content:center;min-height:52px;border-radius:var(--radius-pill);font:700 var(--fs-body)/1 var(--font);background:var(--surface);border:1px solid var(--border);color:var(--text-primary)}
.ruv-plan-card .button-primary{background:var(--cta-fill);color:var(--cta-text);border-color:transparent;box-shadow:var(--cta-shadow)}
.catalog-empty{color:var(--text-secondary)}

/* Отзывы, шаги, финал */
.review-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-5);border-radius:var(--radius-lg)}
.review-card p{font-size:var(--fs-body);color:var(--text-primary);white-space:pre-wrap}
.step-card{display:flex;flex-direction:column;gap:var(--space-3);padding:var(--space-6);border-radius:var(--radius-lg)}
.step-card__num{font:700 var(--fs-label)/1 var(--font);letter-spacing:.06em;color:var(--text-muted)}
.step-card h3{font:700 var(--fs-title)/1.25 var(--font)}
.step-card p{color:var(--text-secondary);font-size:var(--fs-body)}
.site-final{display:grid;justify-items:center;text-align:center;gap:var(--space-4);padding:var(--space-12) var(--space-6);border-radius:var(--radius-2xl)}
.site-final img{width:72px;height:72px;border-radius:var(--radius-logo)}
.site-standalone{display:grid;gap:var(--space-5);padding:var(--space-6);border-radius:var(--radius-xl)}
.site-standalone__head{display:flex;align-items:center;gap:var(--space-4)}
.site-standalone__head img{width:64px;height:64px;border-radius:var(--radius-logo);border:1px solid var(--border)}
.site-standalone h3{font:750 var(--fs-h3)/1.15 var(--font-display);letter-spacing:-.03em}
.site-eco{display:grid;gap:var(--space-8);padding:var(--space-8) var(--space-6);border-radius:var(--radius-2xl);overflow:hidden}
.site-eco__logos{display:grid;grid-template-columns:repeat(3,64px);gap:var(--space-3);justify-content:center;align-content:center}
.site-eco__logos img{width:64px;height:64px;border-radius:var(--radius-logo);border:1px solid var(--border);box-shadow:var(--shadow-card)}
.site-eco__logos img.is-core{grid-column:2;grid-row:2;width:64px;height:64px;border-color:var(--border-strong)}

/* Мобильное меню и нижняя навигация сайта */
.site-dock{display:flex}
.site-dock .rui-nav__item:not(.is-active){color:var(--text-secondary)}

/* Footer из footer.js */
.ruv-footer{position:relative;z-index:var(--z-raised);border-top:1px solid var(--divider);padding:var(--space-10) 0 calc(var(--nav-h) + var(--space-10) + var(--safe-bottom))}
.footer-frame{width:100%;max-width:var(--site-max);margin-inline:auto;padding-inline:var(--gutter);display:grid;gap:var(--space-6)}
.footer-grid{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-5)}
.footer-logo{display:flex;align-items:center;gap:var(--space-3);font:750 var(--fs-title)/1 var(--font-display);letter-spacing:-.03em}
.footer-logo img{width:40px;height:40px;border-radius:var(--radius-logo)}
.footer-logo em{font-style:normal;color:var(--text-secondary)}
.footer-nav{display:flex;flex-wrap:wrap;gap:var(--space-2) var(--space-5)}
.footer-nav a,.footer-bottom a{font:600 var(--fs-body-sm)/1.4 var(--font);color:var(--text-secondary)}
.footer-nav a:hover,.footer-bottom a:hover{color:var(--text-primary)}
.footer-bottom{display:flex;flex-wrap:wrap;justify-content:space-between;gap:var(--space-3);font-size:var(--fs-label);color:var(--text-muted);padding-top:var(--space-5);border-top:1px solid var(--divider)}
.skip-link{position:absolute;left:-9999px;top:8px;z-index:var(--z-toast);padding:10px 16px;border-radius:var(--radius-pill);background:var(--cta-fill);color:var(--cta-text)}
.skip-link:focus{left:16px}


@media (min-width:640px){
  .site-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ruv-catalog-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1024px){
  .site-nav,.site-auth{display:flex}
  .site-menu-btn,.site-dock{display:none}
  .site-main{padding-bottom:var(--space-16)}
  .ruv-footer{padding-bottom:var(--space-10)}
  .site-section{padding-block:var(--space-16)}
  .site-hero{grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr);padding-block:var(--space-16)}
  .site-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}
  .site-grid--3{grid-template-columns:repeat(3,minmax(0,1fr))}
  .ruv-catalog-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:var(--space-4)}
  .site-split{display:grid;grid-template-columns:minmax(0,.9fr) minmax(0,1.1fr);gap:var(--space-10);align-items:start}
  .site-eco{grid-template-columns:minmax(0,1.2fr) minmax(0,.8fr);align-items:center;padding:var(--space-12)}
  .site-standalone{grid-template-columns:minmax(0,1fr) auto;align-items:center}
}
@media (min-width:1024px) and (max-width:1199px){.ruv-catalog-grid{grid-template-columns:repeat(3,minmax(0,1fr))}}
.site-phone__logo{width:40px;height:40px;border-radius:var(--radius-logo)}
.site-phone__cta{margin-top:var(--space-4)}
.site-phone .rui-list{background:var(--surface)}
.site-phone .rui-row+.rui-row::before{left:calc(var(--space-5) + 40px + var(--space-4))}
.site-hero__copy>.rui-badge{justify-self:start}
@media (max-width:639px){
  .site-actions>.rui-btn{flex:1 1 auto}
  .svc-card{display:grid;grid-template-columns:auto minmax(0,1fr);column-gap:var(--space-4);row-gap:var(--space-1);align-items:start;padding:var(--space-4)}
  .svc-card__top{grid-row:1/4;align-self:start}
  .svc-card__top .rui-badge{display:none}
  .svc-card__logo{width:52px;height:52px;border-radius:var(--radius-logo)}
  .svc-card h3{font-size:var(--fs-lead)}
  .svc-card__handle{margin-top:0}
  .svc-card p{font-size:var(--fs-body-sm);display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}
  .svc-card__foot{display:none}
  .site-section{padding-block:var(--space-10)}
}
.svc-card__status{display:none}
@media (max-width:639px){
  .svc-card__status{display:inline-flex;align-items:center;gap:5px;margin-left:var(--space-2);font-size:var(--fs-label);color:var(--text-secondary)}
  .svc-card__status::before{content:"";width:6px;height:6px;border-radius:50%;background:var(--text-muted)}
  .svc-card__status.is-success::before{background:var(--success)}
  .svc-card__status.is-warning::before{background:var(--warning)}
}
/* Ruv VPN page */
.vpn-countries{gap:var(--space-2)}
.vpn-country{min-height:40px;padding:0 var(--space-4);font-size:var(--fs-body);color:var(--text-primary)}
.vpn-skel-chip{width:120px;height:40px}
.vpn-gap{margin-top:var(--space-6)}
.vpn-periods{max-width:480px;margin-bottom:var(--space-4)}
.vpn-plan-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}
.vpn-note{margin-top:var(--space-4);padding:var(--space-5)}
@media (min-width:640px){.vpn-plan-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (min-width:1024px){.vpn-plan-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:var(--space-4)}}

/* ===== Партия 1: plans, topup, contacts, updates, profile ===== */
.site-page-head{display:grid;gap:var(--space-5);padding-block:var(--space-8) var(--space-6);max-width:calc(820px + 2 * var(--gutter));margin-inline:0 auto}
@media (min-width:1200px){.site-page-head{margin-inline:calc((100% - var(--site-max)) / 2) auto}}
.site-section--tight{padding-top:0}
.site-skel-plan{height:420px;border-radius:var(--radius-xl)}
.site-skel-update{height:132px;border-radius:var(--radius-lg)}
.step-card__link{align-self:flex-start;margin-top:auto}
.site-standalone__head .rui-badge{margin-bottom:var(--space-2)}
.site-phone__list{margin-top:var(--space-4)}
.site-wallet{font:800 var(--fs-display-sm)/1 var(--font-display);letter-spacing:-.045em;font-variant-numeric:tabular-nums;margin:var(--space-2) 0 var(--space-1)}
.site-metric{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-6);border-radius:var(--radius-lg)}
.site-metric b{font:800 clamp(var(--fs-h2),3.2vw,var(--fs-h1))/1.1 var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.site-metric p{color:var(--text-secondary);font-size:var(--fs-body)}

/* Контакты */
.contact-card{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);color:var(--text-primary);transition:transform var(--transition-fast),border-color var(--transition-fast),background var(--transition-fast)}
.contact-card:hover{border-color:var(--border-strong)}
.contact-card:active{transform:scale(.99)}
.contact-card__icon{width:52px;height:52px;flex:none;display:grid;place-items:center;border-radius:var(--radius-logo);background:var(--icon-fill);border:1px solid var(--border);color:var(--icon-color);overflow:hidden}
.contact-card__icon svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.contact-card__icon--fill svg{fill:currentColor;stroke:none}
.contact-card__icon--img img{width:100%;height:100%;object-fit:cover}
.contact-card__text{display:grid;gap:2px;min-width:0}
.contact-card__text small{font:600 var(--fs-caption)/1.3 var(--font);letter-spacing:.04em;text-transform:uppercase;color:var(--text-muted)}
.contact-card__text b{font:700 var(--fs-lead)/1.25 var(--font);letter-spacing:-.015em;overflow:hidden;text-overflow:ellipsis}
.contact-card__text>span{font-size:var(--fs-body-sm);line-height:1.45;color:var(--text-secondary)}
.contact-card__go{color:var(--text-muted)}
.contact-card__go svg{width:18px;height:18px}
.contact-card--primary{grid-template-columns:auto minmax(0,1fr);padding:var(--space-6);border-radius:var(--radius-xl);border-color:var(--border-strong);margin-bottom:var(--space-3)}
.contact-card--primary .contact-card__icon{width:64px;height:64px;border-radius:var(--radius-logo)}
.contact-card--primary .contact-card__icon svg{width:28px;height:28px}
.contact-card--primary .contact-card__text b{font:750 clamp(var(--fs-h3),3vw,var(--fs-h2))/1.15 var(--font-display);letter-spacing:-.03em}
.contact-card__cta{grid-column:1/-1;justify-self:stretch}
.contact-grid{gap:var(--space-3)}

/* Обновления */
.updates-tools{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3);margin-bottom:var(--space-5)}
.updates-filter{flex:1 1 240px;max-width:360px}
.updates-feed{display:grid;gap:var(--space-3)}
.update-card{display:grid;gap:var(--space-3);padding:var(--space-5) var(--space-6);border-radius:var(--radius-lg);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight)}
.update-card:target{border-color:var(--border-strong)}
.update-meta{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font:600 var(--fs-label)/1.2 var(--font);color:var(--text-muted)}
.update-meta span,.update-meta b{display:inline-flex;align-items:center;min-height:26px;padding:0 10px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);color:var(--text-secondary);font-weight:650}
.update-meta b{color:var(--text-primary)}
.update-card h2{font:700 clamp(var(--fs-title),2.4vw,var(--fs-h3))/1.25 var(--font);letter-spacing:-.02em}
.update-card>p{color:var(--text-secondary);font-size:var(--fs-body);line-height:1.55}
.update-card details summary{display:inline-flex;align-items:center;gap:6px;min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-body-sm)/1 var(--font);cursor:pointer;list-style:none;color:var(--text-primary)}
.update-card details summary::-webkit-details-marker{display:none}
.update-card details summary::after{content:"";width:7px;height:7px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:translateY(-2px) rotate(45deg);margin-left:4px;transition:transform var(--transition-fast)}
.update-card details[open] summary::after{transform:translateY(1px) rotate(-135deg)}
.update-card ul{margin:var(--space-4) 0 0;padding:0;list-style:none;display:grid;gap:var(--space-2)}
.update-card li{position:relative;padding-left:20px;color:var(--text-secondary);font-size:var(--fs-body);line-height:1.5}
.update-card li::before{content:"";position:absolute;left:4px;top:.6em;width:6px;height:6px;border-radius:50%;background:var(--text-muted)}
.update-published{margin-top:var(--space-3);font-size:var(--fs-label);color:var(--text-muted)}
.updates-empty{display:grid;justify-items:center;gap:var(--space-4);padding:var(--space-12) var(--space-6);text-align:center;color:var(--text-secondary);border-radius:var(--radius-lg);border:1px dashed var(--border-strong)}
.updates-empty br{display:none}
.updates-more{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:0 var(--space-6);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-body)/1 var(--font);color:var(--text-primary)}

/* Общие кнопки legacy-скриптов (.button) */
.site :is(.button){display:inline-flex;align-items:center;justify-content:center;gap:var(--space-2);min-height:48px;padding:0 var(--space-5);border-radius:var(--radius-pill);font:650 var(--fs-body)/1 var(--font);background:var(--surface);border:1px solid var(--border);color:var(--text-primary);white-space:nowrap;transition:transform var(--transition-fast),background var(--transition-fast)}
.site :is(.button):hover{background:var(--surface-hover)}
.site :is(.button):active{transform:scale(.98)}
.site .button.button-primary{background:var(--cta-fill);color:var(--cta-text);border-color:transparent;box-shadow:var(--cta-shadow)}

/* Профиль (разметка из web-auth.js) */
.profile-shell{display:grid;gap:var(--space-5);padding-block:var(--space-8) var(--space-12)}
.profile-skel-avatar{width:72px;height:72px;border-radius:50%;flex:none}
.profile-skel-title{width:220px;height:36px;margin-top:var(--space-2);border-radius:var(--radius-xs)}
.profile-skel-card{height:132px;border-radius:var(--radius-lg)}
.profile-login-empty{display:grid;justify-items:start;gap:var(--space-5);max-width:640px;padding:var(--space-8) var(--space-6);border-radius:var(--radius-xl);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight),var(--shadow-card)}
.profile-login-empty .kicker{font:700 var(--fs-label)/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.profile-login-empty h1{font:800 clamp(var(--fs-h1),5.6vw,var(--fs-display))/1.05 var(--font-display);letter-spacing:-.045em}
.profile-login-empty h1 em{font-style:normal;color:var(--text-secondary)}
.profile-login-empty p{color:var(--text-secondary);font-size:var(--fs-control);line-height:1.55}
.profile-login-empty .telegram-auth-button{min-height:56px;padding:0 var(--space-6);font-size:var(--fs-control);background:var(--cta-fill);color:var(--cta-text);border-color:transparent;box-shadow:var(--cta-shadow)}
.profile-auth-status{padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border-strong);font-size:var(--fs-body-sm);color:var(--text-primary)}
.profile-hero{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-5)}
.profile-identity{display:flex;align-items:center;gap:var(--space-4);min-width:0}
.profile-identity>span:last-child{display:grid;gap:4px;min-width:0}
.profile-identity .account-avatar{width:72px;height:72px;font:750 var(--fs-h2)/1 var(--font-display);border:1px solid var(--border-strong)}
.profile-identity small{font:600 var(--fs-label)/1.3 var(--font);color:var(--text-muted)}
.profile-identity h1{font:800 clamp(var(--fs-h1),4.6vw,var(--fs-display-sm))/1.05 var(--font-display);letter-spacing:-.045em;overflow:hidden;text-overflow:ellipsis}
.profile-identity p{color:var(--text-secondary);font-size:var(--fs-body)}
.profile-workspace{display:flex;flex-direction:column;gap:var(--space-4)}
.profile-sidebar{display:contents}
.profile-sidebar nav{order:1}
.profile-content{order:2}
.profile-sidebar>span{display:none}
.profile-sidebar nav{display:flex;gap:4px;padding:5px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);overflow-x:auto;scrollbar-width:none}
.profile-sidebar nav::-webkit-scrollbar{display:none}
.profile-sidebar nav button{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-pill);font:650 var(--fs-body-sm)/1 var(--font);color:var(--text-secondary);white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast)}
.profile-sidebar nav button.is-active{background:var(--cta-fill);color:var(--cta-text);box-shadow:var(--cta-shadow)}
.profile-nav__ic{display:none}
.profile-nav__ic svg{width:18px;height:18px}
.profile-sidebar nav button>span:last-child{display:none}
.profile-admin,.profile-logout{order:3;display:flex;align-items:center;justify-content:center;min-height:48px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-body)/1 var(--font);color:var(--text-secondary)}
.profile-content{display:grid;gap:var(--space-4);min-width:0}
.profile-content-heading small{font:700 var(--fs-caption)/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.profile-content-heading h2{font:750 clamp(var(--fs-h3),3vw,var(--fs-h1))/1.15 var(--font-display);letter-spacing:-.03em;margin-top:4px}
#profilePanel{display:grid;gap:var(--space-4)}
.profile-grid{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}
.profile-card{display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight)}
.profile-card small{font:600 var(--fs-label)/1.3 var(--font);color:var(--text-muted)}
.profile-card strong{font:800 var(--fs-h1)/1.05 var(--font-display);letter-spacing:-.04em;font-variant-numeric:tabular-nums}
.profile-card p{color:var(--text-secondary);font-size:var(--fs-body-sm);line-height:1.45}
.profile-card h3{font:700 var(--fs-lead)/1.25 var(--font)}
.profile-card a{color:var(--text-primary);font-weight:650}
.profile-card dl{display:grid;gap:var(--space-2);margin:var(--space-2) 0 0}
.profile-card dl>div{display:flex;justify-content:space-between;gap:var(--space-3);padding:var(--space-2) 0;border-bottom:1px solid var(--divider);font-size:var(--fs-body-sm)}
.profile-card dl>div:last-child{border-bottom:0}
.profile-card dt{color:var(--text-secondary)}
.profile-card dd{margin:0;font-weight:700;font-variant-numeric:tabular-nums}
.profile-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.profile-actions .button{flex:1 1 auto}
.profile-limits{display:grid;grid-template-columns:minmax(0,1fr);gap:var(--space-3)}
.profile-description{color:var(--text-secondary);font-size:var(--fs-body)}
.profile-transactions{display:grid;border-radius:var(--radius-lg);background:var(--card-fill);border:1px solid var(--border);overflow:hidden}
.profile-transactions>article{display:flex;align-items:center;justify-content:space-between;gap:var(--space-3);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--divider)}
.profile-transactions>article:last-child{border-bottom:0}
.profile-transactions article>span{display:grid;gap:2px;min-width:0}
.profile-transactions small{font-size:var(--fs-label);color:var(--text-muted)}
.profile-transactions strong{font-variant-numeric:tabular-nums;white-space:nowrap}
.profile-empty{display:grid;justify-items:center;gap:var(--space-2);padding:var(--space-10) var(--space-6);text-align:center}
.profile-empty>span{width:56px;height:56px;display:grid;place-items:center;border-radius:50%;background:var(--icon-fill);border:1px solid var(--border);color:var(--icon-color);margin-bottom:var(--space-2)}
.profile-empty h3{font:700 var(--fs-lead)/1.25 var(--font)}
.profile-empty p{color:var(--text-secondary);font-size:var(--fs-body-sm)}
.profile-settings-list{display:grid;border-radius:var(--radius-lg);background:var(--card-fill);border:1px solid var(--border);overflow:hidden}
.profile-setting{display:flex;align-items:center;justify-content:space-between;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-bottom:1px solid var(--divider);cursor:default}
label.profile-setting{cursor:pointer}
.profile-setting:last-child{border-bottom:0}
.profile-setting>span:first-child{display:grid;gap:2px;min-width:0}
.profile-setting b{font:650 var(--fs-control)/1.3 var(--font)}
.profile-setting small{font-size:var(--fs-label);color:var(--text-secondary);overflow-wrap:anywhere}
.profile-setting .button{min-height:40px;font-size:var(--fs-body-sm);padding:0 var(--space-4)}
.profile-switch{display:none}
.profile-role{display:inline-flex;align-items:center;min-height:28px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-caption)/1 var(--font);color:var(--text-secondary);white-space:nowrap}
#settingsStatus{font-size:var(--fs-body-sm);color:var(--text-secondary);min-height:1.4em}
@media (max-width:639px){.profile-hero>.button{width:100%}}
@media (min-width:640px){
  .contact-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .contact-card--primary{grid-template-columns:auto minmax(0,1fr) auto}
  .contact-card__cta{grid-column:auto}
  .profile-grid,.profile-limits{grid-template-columns:repeat(2,minmax(0,1fr))}
}
@media (min-width:1024px){
  .site-page-head{padding-block:var(--space-16) var(--space-8)}
  .contact-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .contact-grid .contact-card{grid-template-columns:minmax(0,1fr) auto;align-content:start;row-gap:var(--space-5)}
  .contact-grid .contact-card__icon{grid-row:1}
  .contact-grid .contact-card__go{grid-row:1;align-self:start}
  .contact-grid .contact-card__text{grid-column:1/-1}
  .profile-shell{padding-block:var(--space-12) var(--space-16)}
  .profile-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .profile-workspace{display:grid;grid-template-columns:260px minmax(0,1fr);gap:var(--space-8);align-items:start}
  .profile-sidebar{display:grid;gap:var(--space-2);min-width:0;position:sticky;top:calc(88px + var(--safe-top));padding:var(--space-3);border-radius:var(--radius-xl);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight)}
  .profile-sidebar>span{display:block;padding:var(--space-2) var(--space-3) 0;font:700 var(--fs-caption)/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
  .profile-sidebar nav{flex-direction:column;padding:0;border:0;background:none;border-radius:0;overflow:visible}
  .profile-sidebar nav button{min-height:48px;padding:0 var(--space-3);border-radius:var(--radius-md);font-size:var(--fs-body);color:var(--text-primary)}
  .profile-sidebar nav button:hover{background:var(--surface)}
  .profile-sidebar nav button.is-active{background:var(--surface-hover);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--border-strong)}
  .profile-nav__ic{display:grid;place-items:center;width:32px;height:32px;border-radius:var(--radius-logo);background:var(--icon-fill);color:var(--icon-color)}
  .profile-sidebar nav button>span:last-child{display:grid;margin-left:auto;color:var(--text-muted)}
  .profile-sidebar nav button>span:last-child svg{width:16px;height:16px}
  .profile-admin,.profile-logout{justify-content:flex-start;min-height:44px;padding:0 var(--space-3);border-radius:var(--radius-md);background:none;border:0;font-size:var(--fs-body-sm)}
  .profile-admin:hover,.profile-logout:hover{color:var(--text-primary);background:var(--surface)}
}
.profile-shell>*,.profile-workspace>*,.profile-sidebar>*{min-width:0;max-width:100%}
.profile-login-empty .telegram-auth-button{max-width:100%;white-space:normal;text-align:center;line-height:1.2}
.site-lang{white-space:nowrap}
@media (max-width:359px){
  .site-header__bar{gap:var(--space-3)}
  .site-header .rui-brand__text{display:none}
  .profile-login-empty{padding:var(--space-6) var(--space-5)}
  .profile-login-empty .telegram-auth-button{width:100%;padding:0 var(--space-4);font-size:var(--fs-body)}
}

/* ===== Партия 2: документы ===== */
@media (max-width:479px){.profile-login-empty .telegram-auth-button{width:100%;padding:0 var(--space-4);font-size:var(--fs-body)}}
.legal-layout{display:grid;gap:var(--space-5);padding-block:var(--space-8) var(--space-6)}
.legal-card{min-width:0;max-width:820px;font-size:var(--fs-control);line-height:1.7;color:var(--text-secondary)}
.legal-kicker{display:block;font:700 var(--fs-label)/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted);margin-bottom:var(--space-4)}
.legal-card h1{font:800 clamp(var(--fs-h1),5.6vw,var(--fs-display))/1.04 var(--font-display);letter-spacing:-.045em;color:var(--text-primary);margin-bottom:var(--space-4)}
.legal-card h2{font:700 clamp(var(--fs-title),2.6vw,var(--fs-h3))/1.25 var(--font);letter-spacing:-.02em;color:var(--text-primary);margin:var(--space-10) 0 var(--space-3);scroll-margin-top:calc(96px + var(--safe-top))}
.legal-card h3{font:650 var(--fs-lead)/1.35 var(--font);color:var(--text-primary);margin:var(--space-6) 0 var(--space-2)}
.legal-card p{margin:0 0 var(--space-3)}
.legal-card a{color:var(--text-primary);text-decoration:underline;text-decoration-color:var(--border-strong);text-underline-offset:3px}
.legal-card strong,.legal-card b{color:var(--text-primary)}
.legal-updated{display:inline-flex;margin:0 var(--space-2) var(--space-2) 0!important;padding:4px 12px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font-size:var(--fs-label);line-height:1.4;color:var(--text-secondary)}
.legal-list{margin:0 0 var(--space-4);padding:0;list-style:none;display:grid;gap:var(--space-2)}
.legal-list li{position:relative;padding-left:22px}
.legal-list li::before{content:"";position:absolute;left:6px;top:.72em;width:6px;height:6px;border-radius:50%;background:var(--text-muted)}
.legal-table-wrap{overflow-x:auto;margin:var(--space-4) 0 var(--space-6);border-radius:var(--radius-lg);border:1px solid var(--border);background:var(--card-fill)}
.legal-table{width:100%;min-width:520px;border-collapse:collapse;font-size:var(--fs-body-sm);line-height:1.5}
.legal-table :is(th,td){padding:var(--space-3) var(--space-4);text-align:left;vertical-align:top;border-bottom:1px solid var(--divider)}
.legal-table tr:last-child td{border-bottom:0}
.legal-table th{font:650 var(--fs-label)/1.3 var(--font);color:var(--text-primary);background:var(--surface)}
.legal-toc{min-width:0}
.legal-toc__box{border-radius:var(--radius-lg);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight)}
.legal-toc__box summary{display:flex;align-items:center;gap:var(--space-2);min-height:52px;padding:0 var(--space-5);font:650 var(--fs-body)/1 var(--font);color:var(--text-primary);cursor:pointer;list-style:none}
.legal-toc__box summary::-webkit-details-marker{display:none}
.legal-toc__box summary::after{content:"";margin-left:auto;width:7px;height:7px;border-right:2px solid var(--text-muted);border-bottom:2px solid var(--text-muted);transform:translateY(-2px) rotate(45deg);transition:transform var(--transition-fast)}
.legal-toc__box[open] summary::after{transform:translateY(1px) rotate(-135deg)}
.legal-toc__count{display:inline-grid;place-items:center;min-width:24px;height:24px;padding:0 6px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font-size:var(--fs-caption);color:var(--text-secondary)}
.legal-toc ol{margin:0;padding:0 var(--space-2) var(--space-3);list-style:none;display:grid;gap:2px;max-height:min(60vh,520px);overflow:auto}
.legal-toc a{display:block;padding:8px var(--space-3);border-radius:var(--radius-sm);font-size:var(--fs-body-sm);line-height:1.4;color:var(--text-secondary);transition:background var(--transition-fast),color var(--transition-fast)}
.legal-toc a:hover{background:var(--surface);color:var(--text-primary)}
.legal-toc a.is-active{background:var(--surface-hover);color:var(--text-primary)}
.legal-more__grid{display:grid;gap:var(--space-3)}
.legal-help{align-content:start}
/* Реквизиты */
.company-intro{font-size:var(--fs-lead);max-width:60ch}
.company-grid{display:grid;gap:var(--space-3);margin:var(--space-6) 0}
.company-card{display:flex;gap:var(--space-4);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight)}
.company-card h2{margin:0 0 var(--space-1);font-size:var(--fs-lead)}
.company-card p{margin:0;font-size:var(--fs-body);line-height:1.5}
.requisites-callout{display:grid;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-xl);background:var(--card-fill);border:1px solid var(--border-strong);box-shadow:var(--card-highlight),var(--shadow-card)}
.requisites-callout b{font:700 var(--fs-title)/1.3 var(--font)}
.requisites-callout p{margin:var(--space-1) 0 0;font-size:var(--fs-body)}
.requisites-callout .button{text-decoration:none;color:var(--cta-text);justify-self:start}

/* /documents */
.documents-workspace{display:grid;gap:var(--space-4)}
.documents-sidebar{display:flex;gap:var(--space-2);overflow-x:auto;scrollbar-width:none;margin-inline:calc(-1 * var(--gutter));padding-inline:var(--gutter)}
.documents-sidebar::-webkit-scrollbar{display:none}
.document-group-title{display:none}
.documents-sidebar button{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);min-height:44px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-body-sm)/1 var(--font);color:var(--text-secondary);white-space:nowrap;transition:background var(--transition-fast),color var(--transition-fast)}
.documents-sidebar button i{font-style:normal;font-size:var(--fs-caption);color:var(--text-muted)}
.documents-sidebar button b{font-weight:650}
.documents-sidebar button.is-active{background:var(--cta-fill);color:var(--cta-text);border-color:transparent;box-shadow:var(--cta-shadow)}
.documents-sidebar button.is-active i{color:inherit;opacity:.6}
.document-view{min-width:0;padding:var(--space-6) var(--space-5);border-radius:var(--radius-xl);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight),var(--shadow-card);opacity:0;transition:opacity .2s var(--ease-out)}
.document-view.is-visible{opacity:1}
.document-view-head{display:grid;gap:var(--space-2);padding-bottom:var(--space-6);border-bottom:1px solid var(--divider)}
.document-view-head span{font:700 var(--fs-caption)/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.document-view-head h2{font:750 clamp(var(--fs-h2),3.6vw,var(--fs-display-sm))/1.1 var(--font-display);letter-spacing:-.035em}
.document-view-head p{color:var(--text-secondary);font-size:var(--fs-control);line-height:1.55}
.document-view-head small{justify-self:start;padding:4px 12px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font-size:var(--fs-label);color:var(--text-secondary)}
.document-sections{display:grid}
.document-sections section{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-4);padding:var(--space-5) 0;border-bottom:1px solid var(--divider)}
.document-sections i{font:700 var(--fs-label)/1.6 var(--font);font-style:normal;color:var(--text-muted);min-width:24px}
.document-sections h3{font:650 var(--fs-lead)/1.35 var(--font);margin-bottom:var(--space-2)}
.document-sections p{color:var(--text-secondary);font-size:var(--fs-body);line-height:1.65;margin:0 0 var(--space-2)}
.document-support{display:grid;gap:var(--space-4);margin-top:var(--space-6);padding:var(--space-5);border-radius:var(--radius-lg);background:var(--surface);border:1px solid var(--border)}
.document-support small{display:block;font-size:var(--fs-label);color:var(--text-muted);margin-bottom:4px}
.document-support b{font:650 var(--fs-control)/1.35 var(--font)}
.document-support .button{justify-self:start}
.legal-link{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-5);border-radius:var(--radius-lg);color:var(--text-primary);transition:border-color var(--transition-fast)}
.legal-link:hover{border-color:var(--border-strong)}
.legal-link__text{display:grid;gap:2px;min-width:0}
.legal-link__text b{font:650 var(--fs-control)/1.3 var(--font)}
.legal-link__text small{font-size:var(--fs-label);color:var(--text-secondary)}
.legal-link__go{color:var(--text-muted)}
.legal-link__go svg{width:18px;height:18px}
@media (min-width:640px){
  .company-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .requisites-callout{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .document-support{grid-template-columns:minmax(0,1fr) auto;align-items:center}
  .document-view{padding:var(--space-8)}
}
@media (min-width:1024px){
  .legal-layout{grid-template-columns:minmax(0,1fr) 300px;gap:var(--space-12);align-items:start;padding-block:var(--space-12) var(--space-8)}
  .legal-toc{grid-column:2;grid-row:1;position:sticky;top:calc(96px + var(--safe-top))}
  .legal-card{grid-column:1;grid-row:1}
  .legal-toc__box summary{pointer-events:none}
  .legal-toc__box summary::after{display:none}
  .legal-more__grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);align-items:start}
  .legal-more .site-standalone{grid-template-columns:minmax(0,1fr)}
  .legal-links{grid-template-columns:repeat(4,minmax(0,1fr))}
  .legal-links .legal-link{grid-template-columns:minmax(0,1fr) auto;align-content:start;row-gap:var(--space-4)}
  .legal-links .legal-link .rui-ic{grid-row:1}
  .legal-links .legal-link__go{grid-row:1}
  .legal-links .legal-link__text{grid-column:1/-1}
  .documents-workspace{grid-template-columns:280px minmax(0,1fr);gap:var(--space-8);align-items:start}
  .documents-sidebar{position:sticky;top:calc(96px + var(--safe-top));flex-direction:column;gap:2px;margin:0;padding:var(--space-3);overflow:visible;border-radius:var(--radius-xl);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight)}
  .document-group-title{display:block;padding:var(--space-3) var(--space-3) var(--space-2);font:700 var(--fs-caption)/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
  .document-group-title:first-child{padding-top:var(--space-2)}
  .documents-sidebar button{justify-content:flex-start;min-height:48px;padding:0 var(--space-3);border:0;border-radius:var(--radius-md);background:none;color:var(--text-primary);white-space:normal;text-align:left;line-height:1.3}
  .documents-sidebar button:hover{background:var(--surface)}
  .documents-sidebar button.is-active{background:var(--surface-hover);color:var(--text-primary);box-shadow:inset 0 0 0 1px var(--border-strong)}
  .documents-sidebar button.is-active i{opacity:1;color:var(--text-muted)}
}
@media (min-width:1024px) and (max-width:1199px){.legal-links{grid-template-columns:repeat(2,minmax(0,1fr))}}
.legal-card>.legal-toc{margin:var(--space-3) 0 var(--space-2)}
.legal-updated{border-radius:var(--radius-sm)}
.legal-card h1,.document-view-head h2,.site-h1{overflow-wrap:break-word;hyphens:auto}
@media (max-width:359px){.legal-card h1{font-size:var(--fs-h1)}}
@media (max-width:1023px){
  .documents-sidebar{align-items:center}
  .document-group-title{display:inline-flex;flex:none;align-items:center;padding:0 2px 0 var(--space-2);font:700 var(--fs-caption)/1 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
  .document-group-title:first-child{padding-left:0}
}

/* ===== Партия 3: сервис, мастер VPN, документы VPN, подключение ===== */
/* Плашка статуса из runtime.js (клик по боту не в сети) */
.runtime-banner{position:fixed;left:50%;bottom:calc(var(--nav-h) + 28px + var(--safe-bottom));z-index:var(--z-overlay);transform:translateX(-50%);width:min(520px,calc(100% - 2 * var(--gutter)));display:flex;align-items:center;gap:var(--space-4);padding:var(--space-4) var(--space-4) var(--space-4) var(--space-5);border-radius:var(--radius-xl);background:var(--surface-elevated);border:1px solid var(--border-strong);box-shadow:var(--shadow-floating);animation:rui-pop .25s var(--ease-out)}
.runtime-banner p{flex:1;font-size:var(--fs-body-sm);line-height:1.45;color:var(--text-primary)}
.runtime-banner .button{min-height:40px;font-size:var(--fs-body-sm)}
@keyframes rui-pop{from{opacity:0;transform:translate(-50%,8px)}to{opacity:1;transform:translate(-50%,0)}}
@media (min-width:1024px){.runtime-banner{bottom:var(--space-8)}}

/* /service */
.svc-page{display:grid;gap:var(--space-6);padding-block:var(--space-6) var(--space-6)}
.svc-back{display:inline-flex;align-items:center;gap:6px;justify-self:start;min-height:40px;padding:0 var(--space-4) 0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-body-sm)/1 var(--font);color:var(--text-secondary)}
.svc-back:hover{color:var(--text-primary)}
.svc-back svg{width:16px;height:16px}
.svc-hero{display:grid;gap:var(--space-6);align-items:center}
.svc-hero__logo{width:112px;height:112px;border-radius:var(--radius-logo);overflow:hidden;border:1px solid var(--border-strong);box-shadow:var(--card-highlight),var(--shadow-floating);background:var(--surface-elevated)}
.svc-hero__logo img{width:100%;height:100%;object-fit:cover}
.svc-hero__copy{display:grid;gap:var(--space-4);min-width:0}
.svc-hero__title{margin-top:var(--space-1)}
.svc-hero__handle{font:600 var(--fs-control)/1.2 var(--font);color:var(--text-muted);margin-top:calc(-1 * var(--space-2))}
.svc-skel-logo{width:112px;height:112px;border-radius:var(--radius-logo)}
.svc-skel-title{width:min(360px,80%);height:56px;border-radius:var(--radius-sm)}
.svc-note{padding:var(--space-5)}
.svc-grid{display:grid;gap:var(--space-3)}
.svc-block{display:grid;gap:var(--space-5);align-content:start;padding:var(--space-6);border-radius:var(--radius-xl)}
.svc-block__head{display:flex;align-items:center;gap:var(--space-4)}
.svc-block__head h2{font:750 var(--fs-h3)/1.2 var(--font-display);letter-spacing:-.03em}
.svc-list,.svc-steps{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-3)}
.svc-list li{display:flex;align-items:flex-start;gap:var(--space-3);font-size:var(--fs-control);line-height:1.45}
.svc-list li svg{flex:none;margin-top:3px;color:var(--success)}
.svc-steps li{display:flex;align-items:center;gap:var(--space-4);padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border);font-size:var(--fs-control)}
.svc-steps b{font:700 var(--fs-label)/1 var(--font);color:var(--text-muted);font-variant-numeric:tabular-nums}
.svc-faq{padding-block:var(--space-6)}
.svc-missing{max-width:560px;margin:var(--space-12) auto;padding:var(--space-10) var(--space-6);text-align:center;justify-items:center}
@media (min-width:640px){.svc-hero{grid-template-columns:auto minmax(0,1fr);gap:var(--space-8)}.svc-hero__logo,.svc-skel-logo{width:160px;height:160px;border-radius:var(--radius-logo)}}
@media (min-width:1024px){.svc-page{padding-block:var(--space-10) var(--space-8);gap:var(--space-8)}.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-4)}.svc-hero__logo,.svc-skel-logo{width:200px;height:200px;border-radius:var(--radius-logo)}}

/* /vpn-guide — мастер подключения (разметка и логика vpn-guide.js без изменений) */
.guide{display:grid;gap:var(--space-6);padding-block:var(--space-6) var(--space-8)}
.wizard-hero{display:grid;gap:var(--space-6);align-items:center;padding-block:var(--space-4)}
.wizard-hero>div:first-child{display:grid;gap:var(--space-4)}
.wizard-hero>div:first-child>span{font:700 var(--fs-label)/1.2 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.wizard-hero h1{font:800 clamp(var(--fs-display-sm),7vw,var(--fs-display-lg))/1.02 var(--font-display);letter-spacing:-.05em}
.wizard-hero h1 em,.wizard-heading h2 em{font-style:normal;color:var(--text-secondary)}
.wizard-hero p{font-size:var(--fs-lead);line-height:1.55;color:var(--text-secondary);max-width:56ch}
.guide-trust-row{display:flex;flex-wrap:wrap;gap:var(--space-2)}
.guide-trust-row span{display:inline-flex;align-items:center;min-height:34px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:600 var(--fs-label)/1 var(--font);color:var(--text-secondary)}
.wizard-hero-art{display:none}
.wizard-progress{display:flex;align-items:center;gap:4px;padding:5px;border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);overflow-x:auto;scrollbar-width:none;position:sticky;top:calc(80px + var(--safe-top));z-index:var(--z-sticky);-webkit-backdrop-filter:blur(var(--blur-md));backdrop-filter:blur(var(--blur-md))}
.wizard-progress::-webkit-scrollbar{display:none}
.wizard-progress em{flex:1 1 8px;min-width:8px;height:1px;background:var(--border)}
.wizard-progress button{flex:none;display:inline-flex;align-items:center;gap:var(--space-2);min-height:40px;padding:0 var(--space-3);border-radius:var(--radius-pill);font:650 var(--fs-label)/1 var(--font);color:var(--text-muted);transition:background var(--transition-fast),color var(--transition-fast)}
.wizard-progress button i{display:grid;place-items:center;width:24px;height:24px;border-radius:50%;border:1px solid var(--border-strong);font:700 var(--fs-caption)/1 var(--font);font-style:normal}
.wizard-progress button b{font-weight:650}
.wizard-progress button:disabled{opacity:.55;cursor:not-allowed}
.wizard-progress button.is-complete{color:var(--text-secondary)}
.wizard-progress button.is-complete i{background:var(--surface-hover)}
.wizard-progress button.is-active:not(.is-complete){background:var(--cta-fill);color:var(--cta-text);box-shadow:var(--cta-shadow)}
.wizard-progress button.is-active:not(.is-complete) i{border-color:transparent;background:rgba(0,0,0,.08)}
@media (max-width:639px){.wizard-progress button:not(.is-active:not(.is-complete)) b{display:none}.wizard-progress button:not(.is-active:not(.is-complete)){padding:0 8px}}
.wizard-step{display:grid;gap:var(--space-5);scroll-margin-top:calc(148px + var(--safe-top))}
.wizard-step[hidden]{display:none}
.wizard-heading{display:grid;gap:var(--space-2);max-width:720px}
.wizard-heading>span{font:700 var(--fs-caption)/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.wizard-heading h2{font:750 clamp(var(--fs-h2),3.6vw,var(--fs-display-sm))/1.1 var(--font-display);letter-spacing:-.035em}
.wizard-heading p{color:var(--text-secondary);font-size:var(--fs-control);line-height:1.55}
.instruction-step-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:var(--space-3)}
.wizard-back{display:inline-flex;align-items:center;min-height:40px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:650 var(--fs-body-sm)/1 var(--font);color:var(--text-secondary)}
.wizard-back:hover{color:var(--text-primary)}
.selected-device-pill{display:inline-flex;align-items:center;min-height:32px;padding:0 var(--space-3);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border-strong);font:650 var(--fs-label)/1 var(--font);color:var(--text-primary)}
.device-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:var(--space-3)}
.device-choice-grid button,.app-choice-grid button{display:grid;gap:var(--space-2);justify-items:start;text-align:left;padding:var(--space-5);border-radius:var(--radius-lg);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight);color:var(--text-primary);transition:transform var(--transition-fast),border-color var(--transition-fast)}
.device-choice-grid button:hover,.app-choice-grid button:hover{border-color:var(--border-strong)}
.device-choice-grid button:active,.app-choice-grid button:active{transform:scale(.98)}
.device-choice-grid button .rui-ic{margin-bottom:var(--space-2)}
.device-choice-grid b{font:700 var(--fs-lead)/1.25 var(--font)}
.device-choice-grid small{font-size:var(--fs-label);color:var(--text-secondary)}
.device-choice-grid i,.app-choice-grid i{font-style:normal;font:650 var(--fs-label)/1 var(--font);color:var(--text-muted);margin-top:var(--space-2)}
.device-choice-grid button:last-child:nth-child(odd){grid-column:1/-1}
.app-choice-grid{display:grid;gap:var(--space-3)}
.app-choice-grid button{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:var(--space-4)}
.app-choice-grid button>span,.summary-icon{display:grid;place-items:center;width:52px;height:52px;flex:none;border-radius:var(--radius-logo);background:var(--icon-fill);border:1px solid var(--border);font:800 var(--fs-title)/1 var(--font-display);color:var(--text-primary)}
.app-choice-grid b{display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-2);font:700 var(--fs-lead)/1.25 var(--font)}
.app-choice-grid em{font-style:normal;display:inline-flex;align-items:center;min-height:22px;padding:0 8px;border-radius:var(--radius-pill);background:var(--cta-fill);color:var(--cta-text);font:700 var(--fs-caption)/1 var(--font)}
.app-choice-grid small{display:block;margin-top:4px;font-size:var(--fs-body-sm);line-height:1.45;color:var(--text-secondary)}
.app-choice-grid i{margin:0}
.app-choice-grid button.is-active{border-color:var(--border-strong);background:var(--surface-hover)}
.guide-stage-layout,.final-connect-grid{display:grid;gap:var(--space-3)}
.instruction-summary,.instruction-card,.guide-check-card,.subscription-key-card,.wizard-help{display:grid;gap:var(--space-4);align-content:start;padding:var(--space-6);border-radius:var(--radius-xl);background:var(--card-fill);border:1px solid var(--border);box-shadow:var(--card-highlight),var(--shadow-card)}
.instruction-summary small,.official-source small,.instruction-card-head span,.guide-check-card>span,.subscription-key-card small,.wizard-help span{font:700 var(--fs-caption)/1.3 var(--font);letter-spacing:.06em;text-transform:uppercase;color:var(--text-muted)}
.instruction-summary h2,.instruction-card-head h3,.guide-check-card h3,.subscription-key-card h3,.wizard-help h2{font:750 var(--fs-h3)/1.2 var(--font-display);letter-spacing:-.03em;color:var(--text-primary)}
.instruction-summary p,.subscription-key-card p,.wizard-help p{color:var(--text-secondary);font-size:var(--fs-body);line-height:1.55}
.official-source{display:grid;gap:4px;padding:var(--space-3) var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border)}
.official-source b{font-size:var(--fs-body-sm);font-weight:600;overflow-wrap:anywhere}
.official-install,.wizard-help>a{display:inline-flex;align-items:center;justify-content:center;min-height:52px;padding:0 var(--space-5);border-radius:var(--radius-pill);background:var(--cta-fill);color:var(--cta-text);box-shadow:var(--cta-shadow);font:700 var(--fs-body)/1.2 var(--font);text-align:center}
.instruction-list{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-3)}
.instruction-list li{display:grid;grid-template-columns:auto minmax(0,1fr);gap:var(--space-4);padding:var(--space-4);border-radius:var(--radius-md);background:var(--surface);border:1px solid var(--border)}
.instruction-list li>i{display:grid;place-items:center;width:32px;height:32px;border-radius:50%;background:var(--surface-elevated);border:1px solid var(--border-strong);font:700 var(--fs-caption)/1 var(--font);font-style:normal;color:var(--text-primary)}
.instruction-list b{display:block;font:650 var(--fs-control)/1.3 var(--font);margin-bottom:4px}
.instruction-list p{font-size:var(--fs-body-sm);line-height:1.55;color:var(--text-secondary)}
.guide-stage-actions,.instruction-actions{display:flex;flex-wrap:wrap;gap:var(--space-3)}
.guide-stage-actions .button,.instruction-actions .button{flex:1 1 auto}
.subscription-key-card{grid-template-columns:auto minmax(0,1fr)}
.subscription-key-card .button{grid-column:1/-1}
.guide-check-card ul{margin:0;padding:0;list-style:none;display:grid;gap:var(--space-3)}
.guide-check-card li{display:flex;gap:var(--space-3)}
.guide-check-card li>i{display:grid;place-items:center;flex:none;width:24px;height:24px;border-radius:50%;background:var(--success);color:#fff;font:700 var(--fs-caption)/1 var(--font);font-style:normal}
.guide-check-card li b{display:block;font:650 var(--fs-body)/1.3 var(--font)}
.guide-check-card li small{font-size:var(--fs-label);color:var(--text-secondary)}
@media (min-width:640px){
  .device-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .device-choice-grid button:last-child:nth-child(odd){grid-column:auto}
  .app-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .subscription-key-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}
  .subscription-key-card .button{grid-column:auto}
  .wizard-help{grid-template-columns:minmax(0,1fr) auto;align-items:center}
}
@media (min-width:1024px){
  .guide{padding-block:var(--space-10) var(--space-12);gap:var(--space-8)}
  .wizard-hero{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}
  .wizard-hero-art{display:grid;justify-items:center;gap:var(--space-4)}
  .wizard-hero-art img{width:200px;height:200px;border-radius:var(--radius-logo);border:1px solid var(--border-strong);box-shadow:var(--shadow-floating)}
  .wizard-hero-art span{display:inline-flex;align-items:center;gap:var(--space-2);min-height:34px;padding:0 var(--space-4);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);font:600 var(--fs-label)/1 var(--font);color:var(--text-secondary)}
  .wizard-hero-art span i{width:8px;height:8px;border-radius:50%;background:var(--success)}
  .wizard-progress{top:calc(88px + var(--safe-top))}
  .device-choice-grid{grid-template-columns:repeat(5,minmax(0,1fr))}
  .app-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
  .guide-stage-layout{grid-template-columns:340px minmax(0,1fr);gap:var(--space-4)}
  .instruction-summary{position:sticky;top:calc(156px + var(--safe-top))}
  .final-connect-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr);gap:var(--space-4)}
}

/* /vpn-documents */
.vpn-doc-chip{color:var(--text-primary)}
.vpn-doc-chip:hover{border-color:var(--border-strong)}
.vpn-docs{display:grid;gap:var(--space-3)}
.vpn-doc{display:grid;gap:var(--space-4);padding:var(--space-6);border-radius:var(--radius-xl);scroll-margin-top:calc(96px + var(--safe-top))}
.vpn-doc__head{display:flex;align-items:center;gap:var(--space-4)}
.vpn-doc__head h2{font:750 var(--fs-h3)/1.2 var(--font-display);letter-spacing:-.03em}
.vpn-public-doc{display:grid;gap:var(--space-2);white-space:pre-line;font-size:var(--fs-body);line-height:1.7;color:var(--text-secondary);max-width:80ch}
.vpn-doc-skel{width:85%}
.vpn-docs>.site-actions{margin-top:var(--space-4)}

/* /vpn-connect */
.vpn-connect .rui-gate__card{max-width:440px}
.vpn-connect .rui-gate__logo img{width:100%;height:100%;object-fit:cover}
.vpn-connect__note{display:flex;align-items:center;justify-content:center;gap:6px;margin-top:var(--space-2);text-align:center}
.vpn-connect__note svg{width:14px;height:14px}
.vpn-docs,.svc-page,.guide,.wizard-step,.svc-grid,.guide-stage-layout,.final-connect-grid,.app-choice-grid,.legal-layout,.profile-shell{grid-template-columns:minmax(0,1fr)}
@media (min-width:1024px){.svc-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guide-stage-layout{grid-template-columns:340px minmax(0,1fr)}.final-connect-grid{grid-template-columns:minmax(0,1.3fr) minmax(0,.7fr)}.app-choice-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.legal-layout{grid-template-columns:minmax(0,1fr) 300px}}
@media (min-width:640px) and (max-width:1023px){.app-choice-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
.site-actions>.rui-btn{white-space:normal;text-align:center}
.selected-device-pill{display:inline-block;line-height:30px}
.vpn-connect__note{display:block}
.vpn-connect__note>span{display:inline-block;vertical-align:-2px;margin-right:6px}

/* ===== Страницы ошибок ===== */
.site-error{position:relative;display:grid;gap:var(--space-5);justify-items:start;padding-block:var(--space-12) var(--space-8);overflow:hidden}
.site-error__code{position:absolute;right:calc(var(--gutter) - .04em);top:var(--space-4);font:800 clamp(120px,28vw,320px)/1 var(--font-display);letter-spacing:-.06em;color:var(--text-primary);opacity:.05;pointer-events:none;user-select:none}
.site-error>*:not(.site-error__code){position:relative}
.site-error__links{width:100%;max-width:560px;margin-top:var(--space-4)}
.site-error-gate .site-kicker{display:block;margin-top:var(--space-2)}
@media (min-width:1024px){.site-error{padding-block:var(--space-16) var(--space-12)}}

/* ===== Глубина: декоративные сферы за первым экраном ===== */
.site{--orb-a:rgba(255,255,255,.10);--orb-b:rgba(255,255,255,.06)}
:root[data-theme=light] .site{--orb-a:rgba(17,18,22,.06);--orb-b:rgba(17,18,22,.04)}
:is(.site-hero,.site-page-head){position:relative;isolation:isolate}
.site-orbs{position:absolute;inset:0;z-index:-1;overflow:hidden;pointer-events:none;-webkit-mask-image:radial-gradient(120% 100% at 50% 40%,#000 45%,transparent 85%);mask-image:radial-gradient(120% 100% at 50% 40%,#000 45%,transparent 85%)}
.site-orb{position:absolute;border-radius:50%;will-change:transform}
.site-orb--a{width:min(520px,80vw);aspect-ratio:1;right:-12%;top:-18%;background:radial-gradient(circle at 38% 34%,var(--orb-a),transparent 62%)}
.site-orb--b{width:min(300px,52vw);aspect-ratio:1;left:-10%;bottom:-14%;background:radial-gradient(circle at 60% 40%,var(--orb-b),transparent 64%)}
.site-page-head .site-orb--a{width:min(420px,70vw);top:-30%}
.site-phone[data-tilt]{transform-style:preserve-3d}

/* ===== Состояния ошибок и пустоты (единый вид) ===== */
.catalog-empty{grid-column:1/-1;display:grid;justify-items:center;gap:var(--space-3);padding:var(--space-10) var(--space-6);border-radius:var(--radius-lg);border:1px dashed var(--border-strong);text-align:center;color:var(--text-secondary);font-size:var(--fs-body)}
.catalog-empty button{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:0 var(--space-5);border-radius:var(--radius-pill);background:var(--surface);border:1px solid var(--border);color:var(--text-primary);font:650 var(--fs-body)/1 var(--font)}
:is(#profilePanel,#profileServices,.vpn-plan-grid) [role=alert]{padding:var(--space-4) var(--space-5);border-radius:var(--radius-md);background:var(--danger-soft);color:var(--danger);font-size:var(--fs-body)}
@media (max-width:639px){.site-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:var(--space-4)}.site-stats b{font-size:var(--fs-h2)}}

/* Переход между страницами: первый экран мягко появляется, не блокируя взаимодействие */
.site-main>:is(section,div):first-child{animation:site-enter 280ms var(--ease-smooth) both}
@keyframes site-enter{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:none}}

/* ===== Анимации сайта: 3D-появление, раскрытие заголовков, переходы страниц ===== */
/* Карточки поднимаются из глубины с лёгким наклоном; соседи — каскадом */
.rui-js-reveal .reveal.reveal-3d{transform-origin:50% 100%;transform:perspective(1100px) translateY(36px) rotateX(10deg) scale(.96);transition:opacity 620ms var(--ease-smooth),transform 760ms var(--ease-smooth);transition-delay:calc(var(--reveal-i,0) * 70ms)}
.rui-js-reveal .reveal.reveal-3d.is-visible{transform:none}
/* Заголовки: слова поворачиваются из-под базовой линии */
/* Без 3D (rotateX/preserve-3d): Chromium иногда не перерисовывал отдельные слова, и они оставались невидимыми */
.site-motion .site-words{hyphens:manual}
.site-motion .sw{display:inline-block;white-space:nowrap;hyphens:none}
.site-motion .sw__i{display:inline-block;opacity:0;transform:translateY(.35em);transition:opacity 480ms var(--ease-smooth),transform 640ms var(--ease-smooth);transition-delay:calc(var(--wi,0) * 45ms + 60ms)}
.site-motion .site-words.is-in .sw__i{opacity:1;transform:none}
/* Страховка: после анимации слова закреплены видимыми без переходов */
.site-motion .site-words.is-done .sw__i{opacity:1;transform:none;transition:none}
/* Переходы между страницами (View Transitions): шапка и док остаются, контент сменяется плавно */
@view-transition{navigation:auto}
.site-header{view-transition-name:site-header}
.site-dock{view-transition-name:site-dock}
::view-transition-old(root){animation:site-vt-out 200ms var(--ease-standard) both}
::view-transition-new(root){animation:site-vt-in 360ms var(--ease-smooth) both}
@keyframes site-vt-out{to{opacity:0;transform:translateY(-10px) scale(.992)}}
@keyframes site-vt-in{from{opacity:0;transform:translateY(14px) scale(.992)}}
@media (prefers-reduced-motion:reduce){
  ::view-transition-group(*),::view-transition-old(*),::view-transition-new(*){animation:none!important}
  .rui-js-reveal .reveal.reveal-3d{transform:none}
}

/* SEO-страницы (seo.py): хлебные крошки и списки на /about */
.seo-crumbs{gap:8px;flex-wrap:wrap;font-size:14px;color:var(--text-secondary)}
.seo-crumbs a{color:inherit;text-decoration:none}
.seo-crumbs a:hover{color:var(--text-primary)}
.seo-crumbs span{color:var(--text-primary)}
.seo-prose{padding:var(--space-6)}
.seo-prose ul{margin:0;padding-left:1.2em;display:grid;gap:10px;color:var(--text-secondary)}
.seo-prose a{color:var(--text-primary);font-weight:600}
.seo-prose p{margin:var(--space-4) 0 0}

/* Отзывы: карточка официального канала — горизонтальная, иконка справа; без отзывов — на всю ширину */
.review-card--channel{flex-direction:row;align-items:center;flex-wrap:wrap;gap:var(--space-4);text-decoration:none;color:inherit}
.review-card--channel .svc-card__logo{grid-row:auto}
.review-card__body{flex:1 1 200px;min-width:0;display:grid;gap:var(--space-1)}
.review-card__body p{color:var(--text-secondary);white-space:normal}
.review-card--channel .rui-btn{flex:none}
.site-grid>.review-card--channel:only-child{grid-column:1/-1}
@media (max-width:639px){.review-card--channel .rui-btn{width:100%}}
/* Каналы: на широком экране все в один ряд, без одиночной карточки во втором ряду */
@media (min-width:1200px){#channelGrid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}

/* Контакты: официальные логотипы площадок во всю круглую иконку */
.contact-card__icon--brand{background:transparent;border-color:transparent;padding:0}
.contact-card__icon--brand svg{width:100%!important;height:100%!important;stroke:none}
.contact-card__icon--img{background:#000}
